Inspiration
Based upon data from the Alpine Club of Canada, among 310 non-traumatic illnesses, hypothermia accounted for 49.4% of all required mountainous rescues. With this being a preventable emergency, we wanted to create a tool, Verge, that helps hikers recognize danger earlier and make safer decisions before conditions become life-threatening.
What it does
Verge helps hikers assess hypothermia risk using environmental conditions and personal factors. It provides clear and actionable safety guidance so users can recognize warning signs and know when to turn back or seek help.
How we built it
We first had to find a way to get reliable temperature data off a headband-mounted sensor pair over wireless, without corrupting the timing our heat-flux model depends on. Since a stalled network call could just as easily hang the whole read loop, we split the system across QNX processes instead of one script.
We also had to reconcile two physically different temperature sensors (a DHT11 and an I2C SPA06-003) that disagreed by a couple degrees at rest, so we calibrated one against the other empirically until they converged at a stable baseline, since our whole measurement depends on the difference between them, not their absolute values.
This let us combine embedded sensor hardware, wireless telemetry, and a real-time OS into a pipeline where a hung network call can't delay a safety-critical warning.
Then the streamed environmental and user-input data is analyzed by a local Llama 1B model in real time using a multithreaded system to identify potential hypothermia risks and generate clear recommendations. These recommendations are then converted into natural speaker voice output, making the information accessible without requiring users to read their screen in difficult or dangerous conditions.
Challenges we ran into
One of our biggest challenges was getting reliable temperature data off a headband-mounted sensor pair over wireless, without corrupting the timing our heat-flux model depends on. Since a stalled network call could just as easily hang the whole read loop, we split the system across QNX processes instead of one script.
We also had to reconcile two physically different temperature sensors (a DHT11 and an I2C SPA06-003) that disagreed by a couple degrees at rest, so we calibrated one against the other empirically until they converged at a stable baseline, since our whole measurement depends on the difference between them, not their absolute values.
Accomplishments that we're proud of
We are proud to have created a tool that works independently of cellular and Wi-Fi connectivity. One of our main goals was to make Verge accessible wherever users may be, including remote areas with limited or no signal. To achieve this, we kept the core experience entirely local, though it would have been significantly easier to connect to the cloud, ensuring that the app remains available and functional even in areas with unreliable connectivity.
What we learned
Before this hackathon, our group did not really have a lot of experience with low level networking. However, through the helpful advice from our mentors in the mentorship cafe, MLH hardware assistance, and the QNX booth, we were able to overcome all of the networking challenges that came our way. Not only did we all gain a better understanding of how circuit boards connected, we also learned how to effectively communicate with our provided sources and mentors.
What's next for Verge
- Trail-condition data to route users to safe spots during emergencies.
- Track ascent rate to warn users when they are climbing too fast.
- Two way voice so user can ask Verge questions about distance and weather.
- Smarter AI predictions that learn users baselines and predict dangers earlier on.
Built With
- python
- qnx
Log in or sign up for Devpost to join the conversation.