This project leverages gyroscopic sensing to monitor wrist tremors, aiming to mitigate tremors associated with Parkinson's disease.
- STM32F429I-Discovery board (includes L3GD20 gyroscope, ILI9341 LCD, touch controller)
- USB Type-A to Micro-B cable
- PC running Windows, macOS, or Linux
- ARM GCC toolchain or Keil MDK-ARM
- Mbed CLI / Mbed Studio (if using Mbed OS)
- STM32CubeIDE (with STM32F4 HAL and BSP support)
- Install or verify dependencies:
Mbed OS:ARM GCC: ensurepip install mbed-cli
arm-none-eabi-gcc
is in yourPATH
.
STM32CubeIDE: install and add STM32F4 series package via Package Manager. - Configure project parameters in
src/config.h
:
TIME_INTERVAL
: sampling interval in seconds.
RADIUS_X
,RADIUS_Y
,RADIUS_Z
: radius of rotation for each axis in centimeters.
- File → Import → Existing STM32CubeMX Project
- Select the project root directory and click Finish
- In Project Settings → C/C++ General → Paths and Symbols, add
src/drivers
to the Include Paths - Build → Debug (or Run) to flash via the integrated ST‑LINK
- Ensure all
.c/.h
files undersrc/drivers
are included in the build to avoid missing header or linker errors. - Unused drivers can be removed from the project or excluded in your build script.
- If you change sensor wiring or replace peripherals, update
gyro.h
and related BSP driver settings accordingly.