💡 Inspiration

Every 3.5 minutes, someone in India dies in a road accident. Not always because help wasn't available — but because it arrived too late.

We asked ourselves a hard question: What happens to a crash victim who is unconscious, injured, or in shock? The answer was sobering — nothing automatic happens. No alert fires. No ambulance is dispatched. Family members find out hours later. The victim lies alone while the Golden Hour — the critical 60-minute window where timely medical care dramatically improves survival — silently runs out.

That single realisation inspired CrashAid.


🚨 What It Does

CrashAid is a fully integrated emergency response system comprising three platforms:

  • 📱 Android App — Always-on crash detection, SOS alerts, AI first aid, voice trigger, offline hospital finder
  • 🌐 Live Web Tracking Portal — No-install real-time location viewer for family and rescuers
  • 🖥️ Admin Dashboard — Centralised incident monitoring and management

The moment a crash is detected, CrashAid:

  1. Runs a 10-second safety window victim can cancel if it's a false alarm
  2. Fires dual-channel SOS alerts via SMS + WhatsApp with live GPS coordinates
  3. Starts real-time breadcrumb GPS tracking streamed to a public web link
  4. Opens AI-powered first aid guidance Google Gemini tailored to the crash context
  5. Shows offline nearby hospitals, blood banks, and police stations — no internet needed

All of this happens automatically, without the victim needing to tap a single button.


🔨 How We Built It

We combined five engineering disciplines into one seamless system:

Crash Detection — Signal Processing at the Edge

Raw triaxial accelerometer data \((A_x, A_y, A_z)\) is filtered to isolate linear acceleration from gravity using a digital low-pass filter:

$$G_n = \alpha \cdot G_{n-1} + (1 - \alpha) \cdot A_n$$

$$L_n = A_n - G_n$$

$$M = \sqrt{L_x^2 + L_y^2 + L_z^2}$$

A two-hit double-threshold + speed gate algorithm validates genuine crashes and eliminates false positives from everyday drops and bumps.

Tech Stack

Layer Technology
Mobile Framework Flutter / Dart (Stable, Dart 3)
State Management Riverpod v2.5.1
Cloud & Auth Firebase Realtime DB + Firebase Auth
Native SMS Kotlin MethodChannels → Android SmsManager
AI First Aid Google Gemini 2.5 Flash API
Maps & Routing OpenStreetMap + flutter_map v7.0.2 + OSRM
Offline DB Bundled SQLite with spatial queries
Voice Trigger Native Android SpeechRecognizer (continuous)

Three Platforms, One Unified System

  • The Flutter app handles crash detection, SOS orchestration, voice activation, and first aid
  • The web tracking portal (hosted on Firebase) streams live GPS breadcrumbs to any browser — no app install needed for rescuers
  • The admin dashboard monitors active incidents and manages system-wide emergency data

🧗 Challenges We Faced

1. Eliminating False Positives in Crash Detection The hardest engineering problem was making the accelerometer algorithm sensitive enough to catch real crashes but immune to speed bumps, phone drops, and potholes. We solved this with a two-hit double-threshold validation requiring both a primary impact spike and a secondary confirmation within a time window, combined with a speed gate that ignores stationary devices.

2. Making It Work Offline Most emergency apps assume internet connectivity — exactly what fails on highways and rural roads. We bundled a pre-compiled SQLite database of Indian emergency services and designed the SOS pipeline to fall back to direct cellular SMS when WhatsApp/internet is unavailable.

3. Zero Friction for Rescuers Family members receiving an SOS should not need to install an app. Our live tracking URL opens in any mobile browser instantly, requiring zero setup from the recipient.

4. 11-Language Localisation India's linguistic diversity meant every UI string, voice trigger word including Hindi "Bachao", and first aid instruction needed to work across 11 regional languages — a significant localisation and testing effort.

5. Always-On Background Service Android aggressively kills background services to save battery. We implemented a foreground service with persistent notification and wake locks to ensure crash detection never goes dormant, even on battery-restricted devices.


📚 What We Learned

  • Real-world sensor data is noisy — signal processing fundamentals matter more than we expected
  • Offline-first architecture is not a feature; for emergency apps in India, it's a necessity
  • The best emergency UX is no UX — automation and zero-tap design saves lives better than any beautiful interface
  • Building for India means designing for WhatsApp, regional languages, two-wheelers, and rural roads — not just urban smartphone users

🔮 What's Next

  • iOS support via Flutter's cross-platform capabilities
  • Integration with India's 112 emergency dispatch API
  • - Wearable smartwatch crash detection as a secondary sensor layer
  • Crowdsourced accident hotspot mapping for road safety authorities

Built With

Share this project:

Updates