If a driver hasn't slept in 20 hours, would you let them get behind the wheel of an 80,000-pound truck? Probably not. But every day, millions of drivers do exactly that.
Inspiration
Every year, fatigue-related accidents with truck drivers cost the U.S. economy $20 billion and countless lives. Although drivers need to track their hours in a log book, they completely ignore the driver’s actual biological fitness. We were inspired by the idea that being awake for 18 hours is physiologically equivalent to being legally intoxicated! We wanted to build a solution to check driver fatigue in a way we can leverage biometrics data, to ensure the safety of all of us on the road is not compromised.
What it does
FleetGuard is a safety system that verifies whether a driver is fit to drive for their shift before they start their engine. The Driver Scan: Using a 30-second contactless biometric scan on our Swift app, drivers provide pulse rate and breathing rate, which is all sensed through the Presage AI analyzing the biometric data. Our FastAPI backend processes these vitals to calculate a Nonlinear Alertness Index (NAI) and Risk Score. Fleet managers/owners use a React portal to monitor their entire fleet’s readiness, where data is directly being fetched from the Postgres database. If a driver is flagged as high-risk, the employer can be notified on the dashboard, allowing for proactive intervention before an accident occurs.
How we built it
The frontend was built in Swift for iOS, using the Presage SDK to use photoplethysmography (rPPG), extracting vitals directly from the camera’s video feed.
- Frontend: The frontend was built in Swift for iOS, using the Presage SDK to use photoplethysmography (rPPG), extracting vitals directly from the camera’s video feed.
- Backend: A Python/FastAPI server handles the logic on whether the drivers are fit to drive, the backend handles data ingestion and complex physiological modeling.
- Database: PostgreSQL was used for having driver profiles, audit logs, and longitudinal health baselines.
- Employer Portal: A responsive React application that visualizes fleet metrics and provides an intuitive management interface.
- Integration: We fused these disparate data streams into a single Relational Model that tracks everything from Pulse-Respiration Quotients to Fail Reasons.
Challenges we ran into
- Onboarding a complex third-party SDK with limited prior iOS experience, requiring us to quickly understand unfamiliar APIs, data flows, and platform-specific constraints.
- Interpreting and handling biometric data responsibly, ensuring we did not fabricate or misrepresent metrics and only used accurate biometric data that were directly supported by the SDK.
- Designing a clear yet strict pass/fail screening flow that works in a safety-critical context, where ambiguity could lead to misinterpretation.
Accomplishments that we're proud of
This was our first time using Presage Technologies’ Swift SDK, and Swift in general, so it was a very interesting experience constantly learning and looking over docs to understand the code. We were able to successfully implement the code. We also built the full functioning iOS application which has the pre-shift driver camera-based evaluation. Lastly, we are proud of developing the backend and dashboard which syncs everything up in real-time, providing a scalable architecture.
What we learned
We learned how to rapidly and efficiently onboard and work with a complex third-party SDK (Presage) by reading documentation, experimenting, and debugging independently. The complexities of developing a functional and working IOS app using swift We also learned how to collaborate as a team across frontend,backend and mobile development under pressure and limited time.
What's next for FleetGuard
We want to expand FleetGuard to support advanced biological metrics for the screening as they become available through Presage’s advanced applications, such as enhanced stress indicators, compensatory reserve signals, and other specialized measures for high-risk or safety-critical environments. We also want to introduce live notifications and alerts for fleet owners and managers, including real-time SMS or in-app notifications when a driver is flagged as unfit before a shift.
If you're interested to collaborate reach out!
Built With
- fastapi
- postgresql
- presage
- python
- react
- supabase
- swift
Log in or sign up for Devpost to join the conversation.