Inspiration
In 2025, e-scooter crashes in Italy injured 3,997 people and killed 25, an 8.7% rise in deaths on the year before (ACI-Istat). Turin feels it directly: between December 2024 and June 2026 the city recorded 577 e-scooter crashes, 552 people injured and 4 deaths. Cars already get help. Since 7 July 2024 the EU General Safety Regulation (2019/2144) has made driver-assistance systems mandatory on every newly registered vehicle, including blind-spot detection and pedestrian and cyclist warnings on new trucks and buses. But that only covers vehicles built from now on. Scooters, bikes, mopeds and every vehicle already on the road get nothing. That is the City Signals challenge as we read it: a real Turin problem, solved with hardware and AI.
What it does
Fà Ballà L'Oeucc is Lombard for "keep your eyes moving", what you say to someone who should be paying attention. It is a portable device you clip to the back of an e-scooter, plus a helmet that tells you what it sees.
- The rear unit watches the road behind you with a camera and an ultrasonic distance sensor. A small AI model running on board recognises vehicles, follows each one, and works out whether it is approaching from behind on your left, on your right, or straight behind you, and how close it is.
- The helmet lights up in red, only when it matters: the right strip lights when a vehicle comes up on your right; the left strip lights when a vehicle overtakes or approaches from behind on your left; the front strip lights when a vehicle is very close, directly behind you.
How we built it
The lights sit at the edge of your field of view, so you know where the danger is without turning your head or looking at a screen. 3. The phone in its handlebar mount shows a live 3D view of the traffic behind you, with the threatening vehicle and the side it is on. It warns only about vehicles closing in from behind. A car you are overtaking, or one parked at the kerb, never sets it off, so riders don't learn to ignore it. The helmet does two more things, for the rider and for the city: Fall detection. A motion sensor on top of the helmet recognises an impact followed by a fall. If the rider does not get up, it raises an alert for the emergency services with the position (a simulated 112 console in our prototype). Pothole reports. A hard knock without a fall is logged as a road defect and sent to a map of Turin that the Comune can use to plan repairs.
Challenges we ran into
Night. At night a car is just two headlights. The off-the-shelf model missed too many overtakes, so we collected footage, auto-labelled it and trained our own. Speed on a Raspberry Pi 4. Every millisecond counted: NCNN export, a smaller rectangular input, and tracking instead of re-detecting. Left or right, reliably. A side that flickers is worse than no warning. Stable zones, and ignoring the vehicles we overtake, took many iterations on real footage.
Accomplishments that we're proud of
A model we trained ourselves that catches 9 of 10 overtakes at night, running on a Raspberry Pi. A helmet that tells you which side without making you look anywhere. A fall detection algorithm, robust to false positives and relying on accelerometer and angles based monitoring and relative attitude estimation. One portable device that fits a scooter today and a city bus tomorrow. A full loop from the road to the Comune: sensor, rider, map.
What we learned
Choosing a model is a measurement problem: we tested overtake by overtake on our own footage instead of trusting benchmarks. A warning is only useful if people keep trusting it. Fewer, better alerts beat a radar that beeps at everything. A mentor's question, "why only bikes?", turned a gadget into a platform.
What's next for Fà Ballà L'Oeucc
Real rides on Turin's streets with the phone's GPS, and close passes on the city map alongside falls and potholes. A side blind-spot version for buses, trams and trucks, where cyclists and scooter riders are most at risk on right turns. Better performance in rain, and a single sealed unit powered by the scooter's battery. The helmet electronics built into a real scooter and bike helmet.
Built With
- arduino
- arduino-uno-q
- bytetrack
- computer-vision
- fastapi
- hc-sr04
- html
- imu
- javascript
- ncnn
- opencv
- python
- raspberry-pi
- sensor-fusion
- sqlite
- three.js
- ultralytics
- ws2813
- yolo
Log in or sign up for Devpost to join the conversation.