ReachGuard — Additional Technical Details and Project Update
We wanted to share a few details that didn't make it into our original submission, especially about the wearable firmware, hardware validation, and contact escalation.
1. Embedded wearable and interaction design
Reach began with a simple goal: make asking for help easier, especially for older adults who may not have their phone within reach during an emergency.
Rather than building another multifunctional smartwatch, we focused on a lightweight, purpose-built wearable with straightforward physical controls and a minimal learning curve.
Our Arduino Nano 33 BLE Sense Rev2 prototype uses three dedicated buttons: Emergency, Medical, and Family.
The embedded C++ firmware includes a finite-state machine, interrupt-driven input handling, 30 ms debouncing, a 1.5-second hold requirement, and a five-second cancellation window. It also handles overlapping button presses and a button held continuously without release.
2. BLE reliability and acknowledgment
We implemented a custom BLE Alert/ACK/Status protocol with bounded retries and explicit LED feedback.
A successful Bluetooth transmission isn't treated as proof of delivery. The iPhone gateway saves an alert before sending an application-level ACK.
If the gateway doesn't acknowledge the alert, the wearable retries and eventually displays an error rather than falsely reporting success.
3. Priority-based contact escalation
An important feature built during this hackathon was our new contact escalation workflow, extending CallGate's pre-existing authentication, contact roles, and audit infrastructure.
Instead of sending one notification and stopping, the system prioritizes close family members and continues to other configured contacts when someone doesn't respond.
If a contact selects "I can't help," the request moves to the next contact immediately. "I can help" records acceptance and stops the active rotation.
This is currently implemented through authorized web pages, not real phone calls.
4. Testing and validation
Our recorded development tests include:
- 85/85 embedded firmware unit tests passed.
- 22/22 iPhone gateway unit tests passed.
- 100/100 repeated BLE happy-path tests passed.
- Real-hardware testing of buttons, cancellation, reconnects, and acknowledgments.
- A one-hour BLE bench test with 410 of 417 measured alerts delivered. The seven unsuccessful deliveries were associated with Bluetooth disconnections and surfaced as errors; the device did not reset.
We also demonstrated a real physical button press traveling through BLE, the iPhone gateway, backend persistence, and contact acknowledgment for the same event.
What matters most to us is where the complexity lives.
The person asking for help should only need a simple physical action. The system handles delivery, retries, contact priority, and response tracking.
Simple for the wearer doesn't mean simple to engineer.
ReachGuard is a hackathon research prototype. It currently requires a nearby iPhone gateway and does not provide emergency dispatch or two-way wearable voice calls.
Firmware and iPhone gateway repository:
https://github.com/Iridium0317/WearableEmergencyAssistanceSystem
Integrated ReachGuard repository:
https://github.com/Cyberchopin/reachguard
Log in or sign up for Devpost to join the conversation.