# Waveshare UGV Rover

> Open-source 6-wheel 4WD AI robot platform with dual-controller architecture (ESP32 + Raspberry Pi), computer vision, pan-tilt camera, ESP-NOW communication, and ROS2 support for robotics education and autonomous navigation.

## Quick Facts

- **Brand:** Waveshare
- **Board Type:** robot-platform
- **Price:** ~$244.99
- **Product Readiness:** consumer
- **CPU:** ESP32-WROOM-32 + Raspberry Pi 4B/5
- **CPU Architecture:** Xtensa LX6 dual-core
- **CPU Cores:** 2
- **RAM:** 520KB SRAM
- **PSRAM:** N/A
- **Flash:** 4MB
- **USB:** USB-C (CP2102)
- **Power:** 7-13V DC / 3S 18650 Li-ion
- **Operating Voltage:** 3.3V
- **Dimensions:** 230.42 x 252.40 x 254.53mm
- **Weight:** 2190g
- **Antenna:** IPEX1
- **SD Card:** microSD
- **Display:** 0.96" OLED 128x64

## Connectivity

- **Wifi:** 802.11 b/g/n
- **Bluetooth:** BLE 4.2

## Open Source

- **Firmware:** Yes
- **Schematics:** Yes
- **PCB Layout:** No

## Compatible Firmware

arduino, esp-idf, micropython, ros2

## Use Cases

- mobile-robot
- computer-vision
- autonomous-navigation
- stem-kit
- telepresence-robot
- surveillance-robot
- ros2-robot

## Components

- **ESP32-WROOM-32** (mcu): Dual-core WiFi & BT sub-controller for motion and sensor processing — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.espressif.com%2Fsites%2Fdefault%2Ffiles%2Fdocumentation%2Fesp32-wroom-32_datasheet_en.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **TB6612FNG** (motor-driver): Dual H-bridge MOSFET motor driver, 1.2A continuous per channel — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.sparkfun.com%2Fdatasheets%2FRobotics%2FTB6612FNG.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **QMI8658C** (imu): 6-axis IMU (accelerometer + gyroscope) for motion sensing — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fqstcorp.com%2Fupload%2Fpdf%2F202202%2FQMI8658C%2520datasheet%2520rev%25200.9.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **AK09918C** (magnetometer): 3-axis electronic compass for heading detection — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.akm.com%2Fcontent%2Fdam%2Fdocuments%2Fproducts%2Felectronic-compass%2Fak09918c%2Fak09918c-en-datasheet.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **INA219** (current-sensor): I2C voltage/current/power monitor for battery management — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.ti.com%2Flit%2Fds%2Fsymlink%2Fina219.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **CP2102** (usb-uart): USB-to-UART bridge for programming (x2 on board) — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.silabs.com%2Fdocuments%2Fpublic%2Fdata-sheets%2FCP2102-9.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **SSD1306** (display-driver): 0.96" 128x64 OLED display controller for status monitoring — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fcdn-shop.adafruit.com%2Fdatasheets%2FSSD1306.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **ST3215** (servo): Serial bus servo for pan-tilt, 30 kg.cm torque — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fwiki%2FST3215_Servo&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- **5MP Wide-Angle Camera** (camera): 5MP ultra-wide-angle camera with 160 degree FOV for computer vision — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fwiki%2FUGV-Rover&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)

## Protocols

- **I2C**
- **UART**
- **SPI**
- **PWM**
- **ESP-NOW**

## GPIO Map

| Pin | Name | Type | Functions |
|-----|------|------|-----------|
| GPIO4 | LED/PWM output | — | — |
| GPIO5 | LED/PWM output | — | — |
| GPIO16 | Encoder B input (BENCA) | — | — |
| GPIO17 | Motor A direction (AIN2) | — | — |
| GPIO18 | Servo UART RXD | — | — |
| GPIO19 | Servo UART TXD | — | — |
| GPIO21 | Motor A direction (AIN1) | — | — |
| GPIO22 | Motor B direction (BIN1) | — | — |
| GPIO23 | Motor B direction (BIN2) | — | — |
| GPIO25 | Motor A PWM (PWMA) | — | — |
| GPIO26 | Motor B PWM (PWMB) | — | — |
| GPIO27 | Encoder B input (BENCB) | — | — |
| GPIO32 | I2C SDA | — | — |
| GPIO33 | I2C SCL | — | — |
| GPIO34 | Encoder A input (AENCB, input-only) | — | — |
| GPIO35 | Encoder A input (AENCA, input-only) | — | — |

## Accessories

- external-antenna
- Raspberry Pi
- Raspberry Pi 4B

## Available Software

- **[ugv_base_general](https://openhardware.directory/r?to=https%3A%2F%2Fgithub.com%2Fwaveshareteam%2Fugv_base_general&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)**: ESP32 Arduino firmware for motion control, sensors, and ESP-NOW
- **[ugv_rpi](https://openhardware.directory/r?to=https%3A%2F%2Fgithub.com%2Fwaveshareteam%2Fugv_rpi&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)**: Raspberry Pi Python software with ROS2, OpenCV, and web interface
- **[Jupyter Lab](undefined)**: Interactive programming environment on port 8888
- **[Flask Web App](undefined)**: WebRTC-based control interface on port 5000

## Description

# Waveshare UGV Rover

The Waveshare UGV Rover is an open-source 6-wheel 4WD AI robot platform built around a dual-controller architecture. An ESP32-WROOM-32 handles real-time motion control, sensor fusion, and motor driving, while a Raspberry Pi 4B or 5 serves as the host computer for AI workloads, computer vision, and ROS2 integration.

## Architecture

The dual-controller design cleanly separates concerns: the ESP32 sub-controller manages motors (via TB6612FNG), reads encoders, processes IMU data (QMI8658C + AK09918C), monitors battery voltage (INA219), and handles ESP-NOW wireless communication. The Raspberry Pi host runs Debian Bookworm with ROS2 Humble LTS, OpenCV, MediaPipe, and a Flask-based web control interface with WebRTC video streaming.

## Mechanical Design

The all-metal chassis features 6 wheels (80mm diameter, 42.5mm width) in a 4WD configuration with zero-radius turning capability. An optional 2-DOF pan-tilt module uses ST3215 bus servos (30 kg.cm torque) with IMU-based stabilization. The chassis includes two 1020 European aluminum profile rails and a multi-functional mounting plate with M2.5 holes for LIDAR modules (D500, STL27L) and other peripherals.

## Computer Vision

The 5MP ultra-wide-angle camera (160 degree FOV) enables color recognition, face detection with auto photo/video capture, object recognition, gesture recognition via MediaPipe, and vision-based line tracking for autonomous driving. All vision features are accessible through Jupyter Lab or the web interface.

## Communication

Beyond standard WiFi and Bluetooth, the ESP-NOW protocol enables robot-to-robot wireless communication with approximately 100-microsecond latency, supporting leader-follower formations and swarm behaviors. The web application provides control without installing any software, and a wireless gamepad is included.

## Power System

A 3S UPS module accepts three 18650 lithium batteries (sold separately) with INA219-based real-time voltage and current monitoring. An XH2.54 interface allows connection of larger external battery packs. The system supports 7-13V input.

## GPIO & Expansion

The 40-pin Raspberry Pi-compatible header provides full GPIO access. The ESP32 exposes motor control (PWM on GPIO25/26), encoder inputs (GPIO34/35, GPIO16/27), I2C bus (GPIO32 SDA, GPIO33 SCL), servo UART (GPIO18 RX, GPIO19 TX), and LED/PWM outputs (GPIO4, GPIO5). An SD card slot and OLED display (SSD1306, 128x64) are also onboard.

## Software Ecosystem

The open-source firmware supports Arduino IDE, ESP-IDF, and MicroPython for the ESP32 sub-controller. The Raspberry Pi host supports ROS2, Python, OpenCV, and MediaPipe. Interactive programming is available through Jupyter Lab (port 8888), and the web control interface runs on port 5000.

## Where to Buy

- [Waveshare](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fugv-rover.htm&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export) — $244.99

## Resources

- [product](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fugv-rover.htm&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- [github](https://openhardware.directory/r?to=https%3A%2F%2Fgithub.com%2Fwaveshareteam%2Fugv_base_general&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- [wiki](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fwiki%2FUGV-Rover&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)
- [schematics](https://openhardware.directory/r?to=https%3A%2F%2Fwww.waveshare.com%2Fw%2Fupload%2F3%2F37%2FGeneral_Driver_for_Robots.pdf&ref=openhardware.directory&product=waveshare-ugv-rover&source=md-export)

## Tags

`robotics`, `rover`, `ai-robot`, `esp32`, `raspberry-pi`, `ros2`, `computer-vision`, `4wd`, `open-source`, `stem`

## Images

![Waveshare UGV Rover](https://nbg1.your-objectstorage.com/openhardware-directory/entities/waveshare-ugv-rover/86923231b9c6.jpg)
![Waveshare UGV Rover](https://nbg1.your-objectstorage.com/openhardware-directory/entities/waveshare-ugv-rover/a30a2420ca3d.jpg)
![Waveshare UGV Rover](https://nbg1.your-objectstorage.com/openhardware-directory/entities/waveshare-ugv-rover/8d092bacdfb6.jpg)
![Waveshare UGV Rover](https://nbg1.your-objectstorage.com/openhardware-directory/entities/waveshare-ugv-rover/81f6933a9dd6.jpg)
![Waveshare UGV Rover](https://nbg1.your-objectstorage.com/openhardware-directory/entities/waveshare-ugv-rover/bcc75c6d7f8d.jpg)

---
[View full device page](https://openhardware.directory/devices/waveshare-ugv-rover)