Inspiration

After learning about the risks of sudden braking and rear-end collisions, we wanted to explore how everyday technology could help drivers recognize danger earlier. We saw an opportunity to turn an iPhone’s camera and GPS into an accessible driving safety tool.

What it does

BrakeCheck is an iPhone prototype that uses the camera and GPS to estimate following risk, while keeping a rolling dashcam recording. After a possible impact, an optional check-in can notify confirmed emergency contacts if the driver requests help or doesn’t respond. Our focus is connecting those features while keeping uncertain or stale measurements from producing confident warnings.

How we built it

We built BreakCheck as an iPhone app using Swift. We use YOLO11n to detect vehicles through the phone's camera, while using a separate viewpoint classifier and YOLOP’s lane and road detection help identify the exact vehicle ahead in the same lan. Next, tracking keeps the measurements connected to the same vehicle across frames. The vision models run locally on the iPhone.

After that, we estimate distance from the car in front using the vehicle’s apparent width and camera geometry. Then, by combining those information with GPS speed, we are able to estimate relative movement and following risk.

Further, we built a rolling dashcam and a possible-impact trigger using the phone’s motion sensors. A Railway-hosted backend supports optional check-ins, with ElevenLabs handling speech generation and transcription and Photon providing messaging to confirmed emergency contacts.

Challenges we ran into

Some key technical challenges that we have ran into are selecting the correct car in the exact lane in front in dense traffic, accurate distance estimates despite noise, night-time visibility, as well as the orientation of the iPhone (eg. when the user wants to use google maps on portrait, we wanted our app to run in the background as well).

Accomplishments that we're proud of

We combined multiple features, from vehicle tracking, risk estimates, dashcam recording, and optional contact check-ins in one working prototype that aims to solve a real-world issue.

What we learned

Detecting a car is easier than consistently tracking the correct one. Small distance errors can affect speed estimates, making synchronized measurements and real-world testing essential. False alarms are a major problem in this sort of prediction solutions.

What's next for Break Check

Measure and reduce errors regarding target selection. Minimize false alerts. We also aim to strengthen the reliability of the check-ins and minimize battery usage for longer trips.

Built With

  • core-ml
  • elevenlabs
  • fastapi
  • photon
  • railway
  • swift
  • swiftui
  • yolo11n
  • yolop
Share this project:

Updates

Submission history