Waveshare UGV Rover - image 1
1 / 5
Waveshare·Robot Platform

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.

Starting from

$244.99

Specifications

CPU Cores2
Clock Speed240MHz
PSRAMN/A
Flash4MB
GPIO Level3.3V
BluetoothBLE 4.2
AntennaIPEX1
StoragemicroSD
Dimensions230.42 x 252.40 x 254.53mm
Weight2190g

Components

Dual-core WiFi & BT sub-controller for motion and sensor processing

Dual H-bridge MOSFET motor driver, 1.2A continuous per channel

6-axis IMU (accelerometer + gyroscope) for motion sensing

3-axis electronic compass for heading detection

I2C Power MonitorCurrent SensorDatasheet

I2C voltage/current/power monitor for battery management

USB-to-UART bridge for programming (x2 on board)

128x64 OLED ControllerDisplay DriverDatasheet

0.96" 128x64 OLED display controller for status monitoring

Serial bus servo for pan-tilt, 30 kg.cm torque

5MP 160-Degree FOV CameraCameraDatasheet

5MP ultra-wide-angle camera with 160 degree FOV for computer vision

Bus Interfaces

I2C
GPIO32 (SDA) / GPIO33 (SCL) — IMU, INA219, OLED
UART
GPIO18 (RXD) / GPIO19 (TXD) — servo control; host comms
SPI
SD card interface
PWM
GPIO25/26 — motor speed control; GPIO4/5 — LED
ESP-NOW
Robot-to-robot wireless communication, ~100us latency

GPIO Map

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)

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.

Use Cases

7

Resources

Where to Buy

Available Software

2

Explore more of the directory — popular use cases, firmware, and specs to browse next.