UnPark
AI-powered wearable that detects Parkinson's freezing episodes and cues movement with haptic feedback.
UnPark is an AI-powered wearable device for Parkinson's patients experiencing Freezing of Gait (FOG). An ankle-mounted MPU6050 accelerometer and a Raspberry Pi 4 detect freezing episodes with ~95% accuracy and trigger instant haptic vibration cues to help restore movement, with events synced in real time to an iOS companion app for logging, analytics, and clinical sharing.
The problem
Parkinson's patients experiencing Freezing of Gait can suddenly lose the ability to step forward, and existing mobility aids don't detect a freeze as it happens or cue the patient to move again in real time.
Approach
Built a wearable that continuously reads ankle motion, flags a freeze from sustained stillness rather than a single reading, and closes the loop immediately with a physical vibration cue instead of only logging the event for later.
Architecture
An ankle-mounted MPU6050 accelerometer streams 3D acceleration data to a Raspberry Pi 4. The detection loop maintains a smoothed motion baseline (exponential smoothing) and flags a freeze when both the deviation from baseline and the sample-to-sample derivative stay below threshold for a sustained stillness window, triggering a haptic vibration cue. Freeze events are broadcast in real time over Wi-Fi via a Flask + Flask-SocketIO server running on the Pi, which a Swift iOS app consumes to log events to Firebase and render trend graphs and shareable clinical reports.
What I built
Built the on-device freeze-detection pipeline and the Flask/Flask-SocketIO backend that streams freeze events from the wearable to the companion app in real time, as part of a team at the McMaster MedSprint Hackathon 2025.
Engineering challenges
- Tuning the motion and derivative thresholds and the stillness window to reliably catch a freeze without false-triggering on ordinary standing still.
- Keeping haptic feedback fast enough to be useful, since the freeze needs to be cued while it's still happening, not after.
- Getting sensor data, the freeze-detection loop, and real-time Wi-Fi syncing to the iOS app all running reliably on a single Raspberry Pi.
Results
- Achieved ~95% detection accuracy in controlled testing.
- Delivered sub-100ms response time for haptic feedback.
- Real-time event syncing between the wearable and the iOS app.
- Demonstrated at the McMaster MedSprint Hackathon 2025.
Stack
- Hardware
- Raspberry Pi 4MPU6050 AccelerometerVibration MotorBattery PackAnkle Strap Mounting
- Software
- PythonFlaskFlask-SocketIOeventletSwift (iOS)Firebase
What I'd do differently
Most of the real difficulty wasn't the accelerometer math, it was threshold tuning: distinguishing a genuine freeze from a patient simply standing still meant iterating on sensitivity in real conditions, not just on paper.
Other work
- FPGA Image DecompressionFrom compressed image data to a reconstructed VGA image, all in hardware.
- FoundryWork in progressA sales automation platform for small agencies that researches prospects, drafts grounded outreach, and keeps a human in the loop before anything is sent.
- PockitIn developmentA personal finance and budgeting app that tries to make money feel less overwhelming.