Project 001 // Medical Device // Deployed
A patented wearable gait analysis system bringing clinical-grade spatiotemporal measurement from $100,000+ motion-capture laboratories to community physiotherapy clinics in Mumbai — through custom PCB design, real-time embedded firmware, and validated sensor fusion algorithms.
// 01 — Problem Statement
Quantitative gait analysis is the clinical gold standard for diagnosing and monitoring a wide range of neurological and orthopedic conditions — Parkinson's disease, post-stroke rehabilitation, osteoarthritis, and pediatric gait disorders. By measuring 24 spatiotemporal parameters during walking (stride length, cadence, step symmetry, ground reaction forces, joint angle profiles), clinicians can detect subtle deterioration months before symptoms become clinically apparent and objectively track recovery trajectories.
The problem is cost and infrastructure. Laboratory-grade motion capture systems — Vicon, BTS SMART, AMTI force plates — require dedicated rooms, multi-camera arrays, and force-embedded flooring. Capital costs range from $80,000 to $250,000, with annual maintenance contracts in the $15,000–$30,000 range. These systems exist in major hospital research centers. They do not exist in the physiotherapy clinics and elder-care facilities where the patient population that most needs routine monitoring actually receives care.
In Mumbai — a city of 20 million with one of the world's highest concentrations of neurological patients per capita — the standard of care in community clinics is visual gait observation: a physiotherapist watching a patient walk and making subjective notes. This is inconsistent between practitioners, unquantifiable, and incapable of detecting subtle changes between visits.
The Core Question
Can we deliver the same 24 clinical parameters as laboratory systems using wearable sensors that cost 100× less, require no dedicated room, and produce a report a physiotherapist can act on in five minutes?
Clinical Need Context
// 02 — System Architecture
GATTII is a three-module wearable system: two instrumented shoe insoles (left and right) and a waist-mounted processing unit. Each insole houses an IMU array and FSR pressure sensor grid. The waist unit handles Bluetooth aggregation, local computation, and TCP/UDP streaming to a FastAPI backend that generates the clinical report.
Hardware Layer
Firmware Layer
Processing Layer
Backend + Reporting
Design Principle
Every architectural choice traces back to a clinical constraint. UDP over TCP for sensor streaming: latency matters more than reliability for real-time feedback — a dropped packet is better than a 400ms lag. Voronoi over linear interpolation for pressure maps: clinical validity requires matching force-plate CoP trajectories, not just visually plausible interpolation.
// 03 — Hardware Iteration History
Each iteration addressed a specific failure mode discovered in field testing. Lab bench performance was never the problem — the failures always emerged in clinical conditions that couldn't be simulated at a desk.
// 04 — Technical Challenges
Three problems dominated development time and drove the most critical architectural decisions. Each required understanding the physics of the failure before designing a solution.
Problem
MEMS IMU sensors accumulate orientation error through two mechanisms: gyroscope integration error (noise integrates over time, growing as √t) and accelerometer inclination error (linear acceleration contaminates the gravity vector estimate during dynamic motion). Standard EKF correction assumes periods of near-zero acceleration for gravity vector realignment — but gait is continuous dynamic motion. Over a 30-second walk, uncorrected drift reached 8–12° in roll/pitch, making ankle and knee angle measurements clinically useless.
Solution
The key insight was that FSR pressure data provides natural zero-reference states within every gait cycle. During foot-flat stance phase (both heel and forefoot sensors at peak load), the foot is nominally horizontal and stationary for ~100–150ms — a valid window for EKF correction using the accelerometer gravity estimate. By triggering drift correction at each detected foot-flat event rather than on a time basis, we anchor orientation to a biomechanically defined reference that occurs ~60–80 times per minute during normal walking. Cumulative drift reduced from 8–12° to <1.5° over a 30-second session.
Problem
Computing bilateral symmetry indices — the clinical metric most useful for detecting post-stroke gait asymmetry — requires that left and right insole measurements be temporally aligned to within <10ms. The initial BLE implementation produced sync jitter of 160–200ms due to BLE's connection interval architecture (connections share 7.5ms slots, and retransmission creates unbounded jitter under interference). WiFi solved jitter but the naive TCP stack added 380–420ms end-to-end pipeline latency, making real-time visual feedback to the physiotherapist impossible.
Solution
Dual-protocol architecture: UDP for time-critical sensor frames (accept packet loss — a dropped frame is interpolatable; a 400ms lag is not), TCP for session metadata and report data (where reliability matters). FreeRTOS task prioritization assigns the UDP transmission task the highest priority, preempting all other tasks at the 100Hz sampling interrupt. Hardware timestamps from the ESP32's internal RTC synchronize left/right streams via NTP-style offset calculation at session start. End-to-end pipeline latency reduced from 420ms to 260ms. Bilateral sync error: <4ms.
Problem
FSR sensors measure pressure at discrete points. Clinicians need continuous center-of-pressure (CoP) trajectory — the path of the net ground reaction force vector through the stance phase — which is a continuous spatial function, not a point measurement. Naive bilinear interpolation between sensor locations produced CoP trajectories that diverged significantly from force-plate ground truth, particularly at the medial arch where sensor density was insufficient to capture the anatomical pressure gradient.
Solution
Weighted Voronoi tessellation assigns each spatial location to its nearest sensor, weighted by a radial basis function fit to the sensor geometry. Temporal smoothing with a Savitzky-Golay filter removes frame-to-frame noise without introducing phase lag. The CoP trajectory is computed as the load-weighted centroid of active Voronoi cells at each timestep. Validation against a Kistler force plate across 47 healthy subjects: R² = 0.91 for CoP path length, mean lateral deviation <4mm. The one failure mode: CoP estimation at terminal stance (toe-off) degrades as load redistributes to a small forefoot area with low sensor density — flagged in the clinical report with a confidence indicator.
// 05 — Output Data & Clinical Reports
GATTII computes 24 spatiotemporal gait parameters per session, organized into four clinical categories: temporal parameters (timing of gait events), spatial parameters (distances and angles), kinetic parameters (force distribution), and derived indices (symmetry, variability). The output is a structured PDF report designed to fit a physiotherapist's existing workflow — not a raw data dump.
Plantar Pressure Distribution Maps — System Output
Reconstructed pressure heatmaps from FSR array — 3 stance phases × 2 feet. Warmer colors = higher normalized pressure. Generated automatically per session.
// 06 — Validation Results
Validated against laboratory-grade force plates and motion capture systems across 47 healthy subjects and 53 patients with neurological and orthopedic conditions.
Clinical Validation Note
Validation was conducted in collaboration with Dr. Charmi (physiotherapist, Mumbai) and reviewed by 4 orthopedists and 6 physiotherapists. The criterion for clinical acceptance was <10% mean deviation from laboratory reference on each parameter — GATTII achieved <5% mean deviation across temporal parameters and <7% on kinetic parameters. The one parameter below threshold — loading rate at terminal stance — is noted in the clinical report with reduced confidence.
// 07 — Deployment & Impact
After seven hardware iterations and 18 months of clinical validation, GATTII is deployed across physiotherapy clinics and elder-care facilities in Mumbai. The system is used for baseline gait assessment at patient intake, and for longitudinal monitoring at follow-up visits to track recovery or deterioration.
Scale
100+ patient assessments across 3 physiotherapy clinics and 2 elder-care facilities in Mumbai. Conditions covered: post-stroke rehabilitation, Parkinson's monitoring, osteoarthritis, pediatric gait disorders.
IP & Funding
Patent granted: No. 377581 (Application No. 201821005734). $120,000 in angel funding secured to scale manufacturing. Provisional manufacturing partnership under evaluation.
Clinical Partners
Developed in direct collaboration with Dr. Charmi (physiotherapist). Validated with 4 orthopedists and 6 physiotherapists. Clinical report format co-designed with practitioners to fit existing documentation workflows.
Economics
System cost per unit <$500 at current component pricing. Target market: community physiotherapy clinics that cannot justify $100K+ laboratory systems. At <$500, GATTII becomes a routine clinical tool rather than a specialized referral resource.
"Seven iterations wasn't perfectionism — it was learning to design within constraints. Battery life. Sensor noise. Human movement variability. Clinical workflow integration. Each iteration addressed one failure mode that couldn't be discovered in simulation."
// 08 — Key Learnings
I'm seeking full-time roles in robotics, embedded systems, or ML engineering — with a focus on medical technology and wearable devices. Graduating May 2026.
Get in Touch ← All Projects