Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

rudra14552/esp32-rover

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
4 Commits
 
 
 
 
 
 

Repository files navigation

ESP32 Rover

A 4-wheel-drive rover built on an ESP32, controlled wirelessly via Bluetooth using the Dabble app's GamePad module. Each wheel is driven independently through two DRV8833 motor driver boards.

Features

  • 4 independently wired DC motors (front-left, front-right, rear-left, rear-right)
  • Bluetooth control via the Dabble app (Android/iOS) — no separate remote needed
  • Skid-steering: d-pad Up/Down/Left/Right control forward, reverse, and turning
  • PWM speed control using the ESP32's ledc peripheral
Proof.Of.Concept.mp4

Hardware Used

  • ESP32 development board
  • 2x DRV8833 motor driver modules (one for front motors, one for rear motors)
  • 4x DC gear motors (4WD chassis)
  • Battery pack (appropriate for your motors)
  • Smartphone with the Dabble app installed

Pin Configuration

Motor Input Pin GPIO
Front-Left IN1 16
Front-Left IN2 17
Front-Right IN1 18
Front-Right IN2 19
Rear-Left IN1 25
Rear-Left IN2 26
Rear-Right IN1 27
Rear-Right IN2 14

Note: DRV8833 uses PWM directly on IN1/IN2 for speed + direction — no separate enable pin is needed.

Wiring Notes

  • Each motor uses 2 GPIOs on the ESP32, connected to its DRV8833 driver's inputs.
  • Front connector on the driver board: Front-Left (IN1, IN2) + Front-Right (IN3, IN4)
  • Rear connector on the driver board: Rear-Left (IN1, IN2) + Rear-Right (IN3, IN4)
  • All grounds (ESP32 + both DRV8833 boards) must be tied together.

Setup / Upload Instructions

  1. Install the Arduino IDE and add ESP32 board support if you haven't already.
  2. Install the DabbleESP32 library (Library Manager → search "Dabble").
  3. Open esp32-rover.ino in the Arduino IDE.
  4. Select your ESP32 board and correct COM port.
  5. Upload the sketch.
  6. Open the Dabble app on your phone, connect to the ESP32 (MyBluetoothCar), select the GamePad module.
  7. Use the d-pad to drive: Up = forward, Down = reverse, Left/Right = turn.

Future Improvements

  • Swap GamePad d-pad for joystick control (analog speed + smoother turning)
  • Add ultrasonic obstacle avoidance
  • Add per-wheel independent control for diagonal/mecanum-style movement

License

This project is licensed under the MIT License.

About

ESP32-based 4WD Bluetooth-controlled rover using DRV8833 motor drivers and the Dabble app's GamePad module.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.