Inspiration
We saw firsthand how challenging home physical therapy can be when patients don’t get immediate feedback. Without real-time guidance, exercises are often performed incorrectly, which slows recovery and frustrates both patients and clinicians. That motivated us to create a cheap, DIY tool that makes rehab measurable, visual, and engaging.
What it does
Streams joint angle and speed in real-time from an Arduino-powered brace.
Auto-detects sessions and reps, so patients don’t need to log anything manually.
Displays live charts, key stats, and progress logs on a sleek web dashboard.
Supports CSV export so therapists can review progress outside the app.
How we built it
We designed a pipeline that spans firmware, backend, and frontend in a lightweight way. The Arduino sketch outputs newline-delimited JSON, which a Python gateway (using PySerial) forwards to a Flask server. That server provides REST endpoints that our single-page Chart.js dashboard polls to render live charts. For teams that want cloud storage, we built an optional Snowflake integration for session persistence and analytics.
Challenges we ran into
Wrestling with Windows COM-port conflicts and permissions.
Ensuring the Arduino always produced perfectly formatted NDJSON without breaking parsing.
Debugging mismatched ports, URLs, and environment variables across multiple services.
Filtering noisy signals in a way that looked smooth and professional without adding lag.
Accomplishments that we're proud of
One of our biggest wins was shipping a smooth end-to-end demo. You strap on the brace, hit start, and watch charts update instantly. We are proud that our rep and session detection worked automatically and that the UI felt polished enough to look like a real product. Most importantly, we proved that the whole system runs entirely locally on any laptop, which makes the concept affordable and accessible.
What we learned
How to design a low-latency telemetry pipeline with resilience at every step
Practical signal filtering techniques such as median filtering, linear gating, and EMA smoothing
The importance of UI and UX polish for hackathon demos since clarity and simplicity help judges focus on the idea
How to bridge hardware, firmware, backend, and frontend in just 36 hours
What's next for TeleROM (Range of Motion)
Adding BLE, WebUSB, and WebSockets for a wireless, real-time experience
A calibration wizard and personalized goal-tracking system
Support for multi-sensor IMUs to capture more complex joint motion
A clinician portal with cloud ingest and longitudinal analytics for remote monitoring


Log in or sign up for Devpost to join the conversation.