This project uses an STM32 Nucleo board (STM32G474RE-NUCLEO64) with an IKS01A3 IMU sensor to sense hand motion (accelerometer, gyroscope, magnetometer). It fuses the sensor data using an EKF (Extended Kalman Filter) and converts the estimated orientation / motion into PWM output. The output drives a DC motor (car) and is communicated over Bluetooth.
Built using ChibiOS RTOS.
- Real-time sensor fusion (IMU + magnetometer) using EKF
- PWM output mapping of hand motion to motor control
- Bluetooth interface for remote control / telemetry
- Embedded, real-time operating system ensures responsiveness
- STM32 Nucleo board: STM32G474RE-NUCLEO64
- IMU / magnetometer: IKS01A3 (accelerometer, gyro, magnetometer)
- DC motor + driver (hardware that receives PWM)
- Bluetooth module / interface to transmit / receive commands
-
C language
-
ChibiOS RTOS for task scheduling, timers, etc.
-
EKF algorithm implementation
-
PWM peripherals of STM32 for motor control
-
Bluetooth communication
