Inspiration
Exit signs can't move, so in a fire they can point you straight into the flames. We wanted a guide that adapts: a small drone that learns an escape route once, then leads people out, and reroutes if a door is blocked. Hack Dearborn's "conjure reality" theme gave us the second half: the same engine lets you draw a shape in the air with a wand and watch the drone fly it.
What it does
Conjured Exit records a 3D path, cleans it up and flies it back with a Crazyflie 2.1+.
Guide mode: carry the drone along the exit route once. Say "evacuate" and it takes off and leads the way. Say "exit alpha blocked" and it switches to exit B. Spell mode: draw a shape with a wand, save it by name ("save as spiral") and replay it later ("launch spiral"). Everything can be driven by voice, buttons or typed commands. How we built it Tracking: two webcams find colored markers and triangulate the drone's position. For each camera $i$ with projection $\pi_i$, we solve $\hat{X}=\arg\min_X \sum_i \lVert \pi_i(X) - x_i \rVert^2$. Path engine: smooth the recording, then resample it so it flies at a fixed, safe speed. Samples are spaced by arc length $s_k = k\,v\,\Delta t$, not by how fast a person walked. Flight: a custom Bluetooth link to the drone, with a safety layer (geofence, auto-land if tracking is lost). Voice and UI (my part): React and three.js, with a simulator so we could build without hardware. Browser speech recognition sends the same commands the buttons do. We chose uncommon phrases so ordinary talk during the pitch doesn't trigger anything. What we learned Never let voice directly cut the motors: a misheard word shouldn't drop the drone, so voice "abort" lands it, and only the keyboard and STOP button kill the motors. A server saying "command received" doesn't mean the command worked, so the page now checks for failures it can predict. Feedback has to be obvious from across a room: big pop-ups, a live transcript and sounds. Challenges Microphone: Chrome opened the mic but its speech recognizer never reported hearing us, even though we measured loud audio. We added a live trace and a standalone test page to isolate whether it was our code, Chrome, or the mic. (Update this with the outcome before you submit.) Building hardware-heavy software with only a simulator for most of the 24 hours. Keeping a live drone demo reliable with about 7 minutes of battery per charge. What's next
Real buildings have no webcams. Our cameras stand in for building-scale positioning such as UWB anchors, which the Crazyflie ecosystem already supports. The core idea, teach a route once and it works with any positioning system, carries over.
Log in or sign up for Devpost to join the conversation.