×
HOME ABOUT ME FINAL PROJECT STUDENT AGREEMENT

Applications and Implications, Project Development


This is the seventeenth week in FabAcademy, here you can find my assigments for this week.

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.