Skip to content

A gesture-controlled robot using an MPU-6050 accelerometer, 433 MHz RF modules, and Arduino boards for wireless or wired control.

License

Notifications You must be signed in to change notification settings

Rishab-Agrawal/arduino-gesture-robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gesture-Controlled Arduino Robot

This project implements a gesture-controlled two-wheeled robot using an MPU6050 accelerometer and RF (433 MHz) communication modules. Hand gestures are interpreted by the transmitter Arduino and sent wirelessly to a receiver Arduino, which controls the robot's movement via motor driver outputs.


Demo

The demo shows the gesture-controlled bot via a wired connection with the sensor.

Demo of Gesture controlled bot


Features

  • Independent transmitter and receiver setup using two Arduino boards
  • A wired setup for when the sensor and motor driver are connected to the same Arduino
  • Movement commands: forward, backward, left, right based on tilt direction
  • Simple motor driver control logic with customizable speed and delay

Repository Structure

.
├── wireless_TX.ino              # Transmitter: reads MPU6050 data and sends direction commands via RF
├── wireless_RX.ino              # Receiver: receives RF commands and controls motor driver accordingly
├── wired.ino                    # For wired setup: MPU6050 and motor driver on the same Arduino
├── README.md                    # Project overview and instructions
├── demo.gif                     # Wired gesture controlled bot demonstration
├── .gitignore                   # Specifies untracked files to ignore in version control
├── LICENSE                      # MIT License for usage and distribution


Hardware Requirements

For Wireless Setup

  • 2 × Arduino Uno/Nano
  • 1 × MPU6050 Accelerometer/Gyroscope Module
  • 1 × RF 433 MHz Transmitter Module
  • 1 × RF 433 MHz Receiver Module
  • 1 × Motor Driver Module (e.g., L298N)
  • 2 × DC Motors
  • Jumper wires, breadboard, and power supply

For Wired Setup

  • 1 × Arduino Uno/Nano
  • 1 × MPU6050 Accelerometer/Gyroscope Module
  • 1 × Motor Driver Module (e.g., L298N)
  • 2 × DC Motors
  • Jumper wires, breadboard, and power supply

Libraries Used

Install the following libraries via Library Manager or from GitHub:

For Wireless Setup

  • RH_ASK (RadioHead) – for RF communication
  • MPU6050_tockn – for accessing MPU6050 data
  • SPI – built-in Arduino library for RF module communication
  • Wire – built-in Arduino library for I2C communication with MPU6050

For Wired Setup

  • MPU6050_tockn – for accessing MPU6050 data
  • Wire – built-in Arduino library for I2C communication with MPU6050

Setup Instructions

1. Wireless Mode (with two Arduino boards)

Transmitter Setup (wireless_TX.ino)

  • Connect the MPU6050 to Arduino via I2C (SDA to A4, SCL to A5 on Uno).
  • Connect the RF Transmitter module to a digital pin (e.g., D12).
  • Upload wireless_TX.ino to the transmitter Arduino.

Receiver Setup (wireless_RX.ino)

  • Connect the RF Receiver module to a digital pin (e.g., D11).
  • Connect motor driver inputs to pins 2–7 as defined in the code.
  • Upload wireless_RX.ino to the receiver Arduino.
  • Connect DC motors to the motor driver outputs.

Power Supply

  • Power the transmitter with USB or a portable power bank.
  • Power the receiver Arduino and motors using a suitable external supply (e.g., 6–12V battery).

Accelerometer thresholds for gesture detection are hardcoded in wireless_TX.ino and can be tuned as needed.

2. Wired Mode (with a single Arduino board)

  • Connect both MPU6050 and motor driver to the same Arduino.
  • Use I2C (SDA to A4, SCL to A5) for MPU6050, and pins 2–7 for motor driver.
  • Upload wired.ino to the Arduino.
  • Observe and test the gesture-based movement without needing RF modules.

Author

Rishab Agrawal


License

This project is licensed under the MIT License. See LICENSE for more details.

About

A gesture-controlled robot using an MPU-6050 accelerometer, 433 MHz RF modules, and Arduino boards for wireless or wired control.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages