Gesture Control Glove
Project Overview
The Gesture Control Glove is a wearable human-machine interface that translates natural hand movements into wireless commands for controlling robots and other devices. Five flex sensors mounted along each finger joint output variable resistance values read by an Arduino Nano's ADC. An MPU6050 IMU captures wrist tilt angles in three axes. An NRF24L01 radio module transmits the gesture data packet wirelessly to a receiver robot at ranges up to 100 metres.
Key Features & Implementation
- 10-Channel Gesture Reading: Five flex sensors provide finger curl data (0–90°) while the MPU6050 supplies pitch, roll, and yaw from the DMP (Digital Motion Processor), giving 8 independent input channels fused into a compact 12-byte command packet transmitted at 50Hz.
- Calibrated Gesture Mapping: A calibration routine run on startup maps each sensor's raw ADC range to normalized angles. Gesture thresholds (e.g., all fingers closed = stop, index extended = forward) are configurable via serial monitor without firmware recompilation.
- NRF24L01 Wireless Link: The 2.4GHz NRF24L01+ module provides a reliable full-duplex link with auto-acknowledgement and automatic retransmission, ensuring zero command loss even at maximum range.
Challenges Solved
Flex sensor readings drifted significantly with temperature changes, making consistent gesture detection unreliable. A runtime drift compensation routine averages idle-state sensor values every 10 seconds and subtracts the drift offset from live readings, maintaining ±2° accuracy throughout extended use sessions.