ESP32 Gesture Controlled Robot using MPU6050 and ESP-NOW
Control a robot using hand gestures detected by MPU6050 accelerometer/gyroscope on a glove transmitter with ESP-NOW wireless protocol.
- Suitable forB.Tech Embedded students
- Build time3-4 weeks
- LevelIntermediate
- Available atAjvika Labs, Kakinada
About this project
Gesture-controlled robot uses two ESP32 boards: one as hand transmitter (wrist-mounted with MPU-6050 IMU) and one as robot receiver controlling motors. MPU-6050 measures wrist tilt: tilt forward=robot moves forward, tilt backward=backward, tilt left=left, tilt right=right, flat=stop. Rotation along wrist axis controls speed. Data transmitted wirelessly via ESP-NOW (low latency ~5ms, no router needed, 100m range). Robot receiver maps received gesture values to motor PWM commands via L298N motor driver. Glove transmitter: ESP32 + MPU-6050 in 3D printed wrist mount, LiPo battery, OLED display shows current gesture detected and connection status. LED on robot indicates connection (green=connected, red=disconnected). Calibration mode: hold robot stationary with all motors off and press button to calibrate MPU-6050 zero position. Libraries: MPU6050, I2Cdev, ESP-NOW, WiFi, AccelStepper.
Detailed Project Description
ESP32 Gesture Controlled Robot using MPU6050 and ESP-NOW demonstrates closed-loop motion control: sensor input is turned into motor commands so the machine moves precisely and safely.
How It Works
1. Motors/servos are driven through a driver board from the controller's PWM outputs.
2. Commands come from a remote (Wi-Fi/BLE/RF/gesture) or from an autonomous algorithm.
3. Sensors (IMU, encoders, distance, GPS, LiDAR) provide feedback for stabilisation and obstacle avoidance.
4. A control loop adjusts motor outputs several times per second.
Key Components and Their Role
- ESP32: dual-core Wi-Fi + Bluetooth microcontroller that runs the firmware, reads the sensors and hosts the network connection.
- MPU6050: 6-axis accelerometer + gyroscope IMU used for motion, tilt and gesture sensing.
- L298N: dual H-bridge motor driver for DC motors.
- OLED display (SSD1306): 128x64 I2C display used to show live readings and status.
- Li-ion battery + charger (TP4056): portable power with charge management.
- ESP-NOW: connection-less peer-to-peer Wi-Fi protocol between ESP boards.
Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install Arduino IDE, MPU6050 Library, ESP-NOW Protocol and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.
Key Features
- Remote or autonomous control
- Sensor feedback
- Obstacle handling
- Adjustable speed / precision
Expected Output
On completion the student will have a machine that follows the commanded path or task reliably, with telemetry visible to the operator.
Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build
Detailed Project Description
ESP32 Gesture Controlled Robot using MPU6050 and ESP-NOW demonstrates closed-loop motion control: sensor input is turned into motor commands so the machine moves precisely and safely.
How It Works
1. Motors/servos are driven through a driver board from the controller's PWM outputs.
2. Commands come from a remote (Wi-Fi/BLE/RF/gesture) or from an autonomous algorithm.
3. Sensors (IMU, encoders, distance, GPS, LiDAR) provide feedback for stabilisation and obstacle avoidance.
4. A control loop adjusts motor outputs several times per second.
Key Components and Their Role
- ESP32: dual-core Wi-Fi + Bluetooth microcontroller that runs the firmware, reads the sensors and hosts the network connection.
- MPU6050: 6-axis accelerometer + gyroscope IMU used for motion, tilt and gesture sensing.
- L298N: dual H-bridge motor driver for DC motors.
- OLED display (SSD1306): 128x64 I2C display used to show live readings and status.
- Li-ion battery + charger (TP4056): portable power with charge management.
- ESP-NOW: connection-less peer-to-peer Wi-Fi protocol between ESP boards.
Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install Arduino IDE, MPU6050 Library, ESP-NOW Protocol and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.
Key Features
- Remote or autonomous control
- Sensor feedback
- Obstacle handling
- Adjustable speed / precision
Expected Output
On completion the student will have a machine that follows the commanded path or task reliably, with telemetry visible to the operator.
Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build
Technologies used
Hardware components
- ESP32 DevKit x2
- MPU-6050 IMU
- 2WD Robot Chassis
- L298N Motor Driver
- 2x OLED Display
- 2x LiPo Battery
Software & tools
- Arduino IDE
- MPU6050 Library
- ESP-NOW Protocol
What you get
- Working project / hardware kit, tested before delivery
- Complete source code with explanation
- Project demo and guidance for your viva
- Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed.
Payment is in two parts:
• 50% advance to start the project
• Remaining 50% before delivery
Note:
• Documentation and PPT are not included by default
• If you need documentation/PPT, it can be arranged for extra time and cost
We'll confirm the exact timeline and cost with you after reviewing your requirements.