Pyros: Wildfire Detection AI in 24 Hours
Wildfire detection is a known hard problem. Satellite coverage has gaps. Ground sensors are expensive. Human spotters don't scale. The existing systems are slow enough that fires get significant spread before containment resources are deployed.
Pyros uses computer vision on aerial or fixed camera feeds to detect wildfire signatures — smoke patterns, thermal anomalies, flame characteristics — and when it detects a high-confidence event, it triggers an AI voice agent that calls the relevant emergency dispatch with a structured incident report.
Why CV + Voice, Not Just CV
Detection alone isn't enough. If Pyros flags a potential wildfire and produces a dashboard notification, someone has to be watching the dashboard. Emergency responders are not watching dashboards at 3am.
The voice agent closes that loop. When detection confidence exceeds the threshold, the system places an outbound call, delivers a structured report (location, confidence level, visual indicators, timestamp), and waits for confirmation. It's designed to fit into existing emergency response workflows rather than requiring dispatchers to learn a new tool.
What Broke at 3am
The voice agent's outbound call integration stopped working at around 3am Sunday. The API we were using for the telephony layer had a rate limit we didn't know about until we hit it during testing. We'd been running back-to-back test calls to tune the voice script and burned through the free tier limit.
We switched to a different provider. Their documentation was worse. It took 90 minutes to get it working again. This is normal hackathon debugging — not a crisis, just a thing you work through.
The Result
Pyros won. The judges responded to the loop closure — detection to automated alert — more than to the CV component specifically. The CV is the harder technical problem, but the voice agent is what made the system feel complete.
What you can build in 24 hours when you stop planning and start shipping is always more than you expect. The constraint removes the option of over-engineering. You build the direct path, and the direct path is usually good enough.
Fire doesn't wait. Neither should detection.