Skip to content

F4llenDeath/smart-walker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart Walker

A SwiftUI + embedded hardware project for the Spring 2026 UW Madison BME Design Smart Walker project. The iOS app connects via BLE to three sensor modules mounted on a walker — two ESP32 load cells (feet) and a Raspberry Pi + TI AWR1843 mmWave radar — to display live weight, distance, and walking speed data. Trials can be recorded per patient and exported as CSV.

Features

Live BLE Telemetry

  • Real-time weight (left/right foot), distance traveled, and walking speed from 3 BLE sensor modules
  • One-tap start/stop with data captured at 200ms intervals
  • Live elapsed timer (MM:SS.cc) during trial recording

Patient Management

Add patients via a popup picker; trials are organized per patient

Trial History

  • View past trials with summary stats (duration, distance, avg speed, avg weight)
  • Speed chart — line chart showing walking speed over time
  • Weight distribution chart — dual-line chart (left/right foot pressure) over time
  • Delete trials from the detail page (trash icon with confirmation)
  • Share trial data as CSV via the iOS share sheet for further analysis
  • All patient and trial data saved to JSON, survives app restarts

Auto-Connect & Reconnect

  • BLE manager identifies devices by name and reconnects automatically on disconnect
  • Intuitive BLE connection status indicator
  • Simulation mode — toggle simulated sensor data for testing without hardware

Project Structure

Smart Walker/
├── controller/
│   ├── swLeftFoot.ino          # ESP32 left foot load cell → BLE
│   ├── swRightFoot.ino         # ESP32 right foot load cell → BLE
│   ├── swRadar.py              # Raspberry Pi AWR1843 radar via USB → BLE
│   └── AWR1843config.cfg       # TI mmWave radar configuration
│
└── Smart Walker/               # iOS app (SwiftUI)
    ├── Smart_WalkerApp.swift   # App entry point, injects dependencies
    ├── ContentView.swift       # Main dashboard (telemetry, trials, patient selector)
    ├── PatientPickerSheet.swift# Patient selection popup sheet
    ├── TrialDetailView.swift   # Trial summary, charts, CSV export
    ├── BluetoothManager.swift  # CoreBluetooth multi-connection manager
    ├── DataStore.swift         # Patient/trial persistence (JSON)
    └── Models/
        ├── Patient.swift       # Patient data model
        └── Trial.swift         # Trial + DataPoint models, CSV export

Acknowledgments

About

UW Madison BME design Smart Walker project

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors