Inspiration

After watching news of earthquake rubble and wildfires cutting off entire forest communities from cell service, we asked: what if the first "responder" on scene wasn't a person, but a drone? In disaster zones with low or zero connectivity, ground teams lose hours just reaching the scene. A drone can be airborne in seconds, scan the area, and stream live camera + health data back to a command dashboard — giving responders a triage picture before boots hit the ground.

What it does

Our system is a custom-built drone paired with a web dashboard that does two things in real time:

  1. Live camera feed — the drone streams video of the search/disaster area to a React-based dashboard so operators can assess rubble, fire spread, or missing-person locations from a safe distance.
  2. Contactless health analytics — using the SmartSpectra SDK, the dashboard extracts heart rate, breathing rate, HRV, and facial expression from any visible person in the camera feed. This means a trapped survivor's vitals can be triaged remotely without any wearable or physical contact.

The result: a single aerial unit that both finds and assesses casualties in one pass.

How we built it

Airframe & Flight:

  • Custom frame from MDF (medium-density fiberboard) and cardboard to keep weight low and cost minimal
  • Flight controller + ESC driving the motors, with a barometer, accelerometer, and magnetometer for altitude hold, stabilization, and heading
  • Radio TX/RX for ground-to-drone control link (works without Wi-Fi/cellular)

Software Stack:

  • Flask (Python) — backend service handling the drone's sensor data and camera stream
  • Node.js — API layer bridging the SmartSpectra SDK and the frontend; also handles real-time video relay
  • React — dashboard UI showing the live camera feed, overlaid vitals (pulse, breathing, expression), and flight telemetry
  • SmartSpectra SDK — integrated via Node.js to run contactless vital-signs analysis on the video stream

Challenges we ran into

  • Underpowered motors — our initial motor choice couldn't lift the airframe + payload. We had to re-tune thrust-to-weight, lighten the frame (cardboard vs. full MDF), and accept a reduced flight envelope.
  • PID tuning — getting stable hover took significant iteration on P, I, and D gains for the flight controller. Small changes in center-of-gravity from sensor placement kept throwing off the loop.
  • Node.js configuration — wiring the SmartSpectra SDK into a Node.js pipeline that also relayed a live video stream without dropping frames was non-trivial; we had to manage async streams and backpressure.
  • Sponsor challenge library/API — integrating the SmartSpectra SDK under the constraints of the sponsor's challenge format (API key auth, specific SDK version, output schema) required reading docs outside our comfort zone and adapting our data flow on the fly.

Accomplishments that we're proud of

  • We got a functional end-to-end pipeline: drone in the air → camera stream → SmartSpectra vitals → React dashboard, all in one hackathon window.
  • The airframe was built from scratch with off-the-shelf materials (MDF, cardboard, wires) — no pre-built drone kit.
  • We successfully ran contactless heart rate and breathing rate on a live video feed and displayed it alongside flight telemetry.

What we learned

  • PID tuning is a physical problem, not just a software one — sensor placement, frame symmetry, and motor alignment all matter as much as the gains.
  • Thrust-to-weight is the first thing to validate before building anything else on a drone.
  • Streaming video + running an ML/SDK pipeline in Node.js taught us a lot about async I/O, frame timing, and when to offload work to a separate process.
  • Working with a sponsor's SDK under time pressure is a different skill than building from scratch — reading unfamiliar docs fast and asking targeted questions is key.

What's next for DroneMeUp

  • Thermal / IR camera — to detect heat signatures of survivors in rubble or at night, extending the search capability beyond visible light.
  • Autonomous search patterns — grid or spiral flight paths so the drone can cover a defined area without manual piloting.
  • Mesh / LoRa radio uplink — to maintain the dashboard link in zero-connectivity zones (forests, collapsed structures).
  • Multi-drone coordination — a swarm that splits the search area and merges vitals on a single dashboard.
  • Longer flight time — better battery management or a tethered option for sustained overwatch.

Built With

Share this project:

Updates

Submission history