Applications and Implications, Project Development - Assignment:
Project Description
The device I am developing is a movement quality wearable designed to monitor human movement patterns in real time. It is worn on the wrist or forearm and combines multiple sensors to detect abnormal movements and monitor basic vital signs during physical activity.
The core principle of the system is the calculation of jerk, which represents the rate of change of acceleration. Two IMUs work together — the LSM6DS3 built into the XIAO nRF52840 Sense and the BNO085 — fusing their readings to produce a more robust estimate. When the calculated jerk exceeds a threshold, the device simultaneously triggers haptic feedback through a DC motor and a visual alert on the 0.91" OLED display. Under normal conditions that same display shows the user's heart rate as measured by the MAX30102, providing physiological context that complements the movement analysis. The device targets three main scenarios: physical rehabilitation monitoring, support for people with neuromotor conditions such as tremors or spasms, and movement quality assessment in athletes.
Background and Prior Work
Before designing this device I identified relevant prior work in the commercial, clinical, and academic space. These references confirm the viability of the jerk-based approach and informed the design decisions I made.
| Reference | Type | Relation to this project |
|---|---|---|
| Kinesia ONE — Great Lakes NeuroTechnologies | Clinical device | A wrist-worn device that quantifies tremor and dyskinesia in Parkinson's disease using IMU data. The closest existing prior art to this project's objective, validated against clinical scales such as the UPDRS. |
| Apple Watch — fall and crash detection | Commercial product | Detects high-jerk events using consumer-grade accelerometer and gyroscope. Demonstrates the viability of jerk-based alerts on a wrist wearable at mass scale. |
| Empatica E4 / Shimmer Research wearables | Research platform | Established the methodology for ambulatory physiological monitoring — accelerometry, HR, and EDA — in clinical and field settings. Foundation of this project's multisensor approach. |
| Flash & Hogan (1985) — minimum jerk model | Academic paper | Foundational neuroscience paper establishing jerk minimization as the criterion for healthy voluntary arm movement. This is the theoretical basis of the detection algorithm I will develop. |
| IEEE TNSRE — IMU studies on tremor and gait | Academic literature | Studies validating the use of MEMS IMUs for tremor quantification, gait quality scoring, and movement disorder monitoring in clinical and ambulatory contexts. |
References and Sources
For the development of this project I will draw from technical, software, and academic sources covering the selected hardware, firmware libraries, and the theoretical framework behind the detection algorithm.
| Source | Category | Use in the project |
|---|---|---|
| LSM6DS3 Datasheet — STMicroelectronics | Technical / Hardware | Register configuration, measurement ranges, and sampling rates of the IMU integrated in the XIAO. |
| BNO08x Datasheet — CEVA | Technical / Hardware | I2C/SPI protocol, operating modes, internal calibration, and embedded sensor fusion of the secondary IMU. |
| MAX30102 Datasheet — Maxim Integrated | Technical / Hardware | Heart rate sensor configuration, PPG signal filtering, and interrupt handling. |
| XIAO nRF52840 Sense Wiki — Seeed Studio | Technical / Platform | Pinout, Arduino BSP, LSM6DS3 usage examples, and module power management. |
| BNO08x Library — Adafruit / SparkFun | Software | Drivers for reading the secondary IMU and examples using the BNO085's internal sensor fusion. |
| MAX3010x Library — SparkFun | Software | Heart rate calculation algorithm and sensor management from the Arduino environment. |
| Adafruit GFX + SSD1306 Library | Software | Text and graphics rendering on the 0.91" OLED display for the user interface. |
| Flash & Hogan, J. Neuroscience (1985) | Academic | Theoretical foundation of the minimum jerk model applied to movement quality analysis. |
| IEEE TNSRE — IMU studies on tremor and gait | Academic | Validation of the abnormal movement detection approach using wrist accelerometry in real-world contexts. |
| Arduino IDE + nRF52 BSP documentation | Software | Reference for development environment setup, I2C peripheral handling, and GPIO management on the nRF52840. |
System Design
The project involves designing several software and hardware subsystems that work together. Each design deliverable has a specific role within the overall system.
| Deliverable | Description | Tools |
|---|---|---|
| Jerk calculation algorithm | Firmware module that reads acceleration at fixed intervals, computes the finite difference to obtain per-axis jerk, and evaluates the total magnitude against a configurable threshold. | Arduino IDE, C++ |
| IMU sensor fusion | Module that combines LSM6DS3 and BNO085 readings using a weighted average or complementary filter to produce a more accurate and lower-noise acceleration estimate. | Arduino IDE, C++ |
| Full firmware (nRF52840) | Main program managing all sensors over I2C, the alert cycle, display logic, motor control via MOSFET, and system power management. | Arduino IDE, nRF52 BSP |
| Schematic and PCB | Circuit design integrating all components with proper decoupling, I2C pull-up resistors, LiPo charge circuitry, and motor drive. | EasyEDA / KiCad, JLCPCB |
| 3D wrist enclosure | Compact housing designed in two materials: rigid PLA for the main body and flexible TPU for skin-contact zones. Includes a window for the MAX30102, OLED cutout, and charge port access. Snap-fit lid for serviceability. | Fusion 360 / FreeCAD |
| Calibration protocol | Systematic procedure for setting a user-specific jerk threshold based on baseline movement recordings across different activity types. | Firmware + documentation |
Components, Sources, and Costs
Below is the complete bill of materials for the prototype, including each component's function, intended supplier, and estimated unit cost. Prices reflect single-unit or small-batch purchasing. The PCB cost per unit drops significantly at orders of 10 or more.
| Component | Function | Supplier | Est. cost (USD) |
|---|---|---|---|
| XIAO nRF52840 Sense | Main MCU + integrated LSM6DS3 + BLE | Seeed Studio / Amazon | $15 – $20 |
| BNO085 breakout | High-precision secondary IMU with built-in sensor fusion | SparkFun / Adafruit | $15 – $20 |
| MAX30102 module | Heart rate and SpO₂ sensor | Amazon / AliExpress / LCSC | $5 – $8 |
| 0.91" OLED SSD1306 (I2C) | Display for HR readout and visual alerts | Amazon / AliExpress | $4 – $6 |
| Coin DC vibration motor (3V) | Immediate haptic feedback to the user | Adafruit / SparkFun / Amazon | $2 – $4 |
| N-MOSFET + resistors | Motor drive circuit from GPIO pin | DigiKey / LCSC | $0.50 – $1 |
| LiPo battery 200–300 mAh | System power supply | Adafruit / Amazon | $5 – $8 |
| TP4056 charger module | USB charging and LiPo battery protection | Amazon / AliExpress | $1 – $2 |
| Custom PCB (5 units) | Physical integration of all components | JLCPCB / PCBWay | $5 – $12 |
| PLA + TPU filament | Rigid enclosure shell and flexible contact zones | Local fabrication lab | $3 – $5 |
| Silicone wristband | Device mounting on the arm | Amazon | $3 – $5 |
| Misc (wires, headers, capacitors) | General circuit assembly | Local store / LCSC | $3 – $5 |
| Estimated prototype total | $61 – $96 USD |
Fabrication and Development Processes
Building the prototype will involve electronic design, physical fabrication, and programming. On the hardware side, I will design the schematic and PCB layout in EasyEDA or KiCad and send it to JLCPCB for fabrication in a batch of 5 units. Assembly will include soldering of both SMD and through-hole components. For the enclosure, I will model the geometry in Fusion 360 and print it using FDM — PLA for the rigid parts and TPU for the skin-contact zones.
On the software side, I will develop the firmware in the Arduino IDE with the official nRF52840 BSP, covering I2C bus initialization, individual sensor drivers, the IMU fusion module, the jerk algorithm, and the full alert logic. Once the prototype is assembled, I will carry out a systematic threshold calibration by recording reference movements from different people and activity types.
| Process | Tools / Platform |
|---|---|
| Schematic capture and PCB layout | EasyEDA or KiCad |
| PCB fabrication | JLCPCB / PCBWay |
| SMD and through-hole soldering | Soldering station, solder paste, magnifier |
| 3D enclosure modeling | Fusion 360 or FreeCAD |
| FDM 3D printing (PLA + TPU) | Lab 3D printer |
| Firmware development | Arduino IDE + nRF52 BSP + sensor libraries |
| Circuit testing and debugging | Oscilloscope, multimeter, logic analyzer |
| Jerk threshold calibration | Firmware + reference movement recording protocol |
Evaluation
I will evaluate the device through functional, reliability, and usability tests covering each subsystem. Validation will be carried out both on the workbench and through real wear sessions to confirm that the system meets its stated objectives.
| Criterion | Test method | Target |
|---|---|---|
| IMU accuracy | Compare accelerometer output against known gravity vectors and an external reference. | Error < 0.05 g at rest |
| Alert reliability | Perform simulated sudden movements (n ≥ 20 repetitions) and record correct system activations. | True positive rate > 95% |
| False alarm rate | Perform intentional fast normal movements (typing, gesturing) and record incorrect alerts. | < 1 false alert per 5 min of normal activity |
| Feedback latency | Measure time from movement onset to motor trigger using a logic analyzer. | < 150 ms |
| Heart rate accuracy | Compare MAX30102 reading against a fingertip reference oximeter. | Error < ±5 BPM at rest |
| Battery life | Run all sensors continuously and measure time to 10% charge remaining. | ≥ 60 min of continuous active use |
| Wearability and comfort | 30-minute wear session followed by a survey on comfort, strap stability, and display readability. | No discomfort reported; display readable outdoors |
Project Delivery
The project will be delivered physically. The submission will include the fully assembled and functional wearable prototype, ready to be operated and demonstrated in person.