Skip to content

rosterloh/rasprover-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RaspRover

Monorepo for the Waveshare RaspRover mobile robot platform.

Repository layout

firmware/   ESP32 DevKit-C embedded firmware (Rust, no_std + Embassy)
robot/      ROS 2 workspace for the Raspberry Pi host (Lyrical Luth)
data/       Mechanical CAD and reference documents

The ESP32 ROS Driver Board handles low-level motor control, IMU, display, and WiFi. The Raspberry Pi runs the ROS 2 stack for navigation, perception, and simulation.

Prerequisites

Install pixi and rustup, then clone the repo:

git clone https://github.com/rosterloh/rasprover-rs
cd rasprover-rs

The two environments are managed independently — install only what you need.

Firmware (ESP32)

The firmware uses the Espressif esp Xtensa toolchain, which lives outside pixi. Install it once:

pixi run -e firmware setup-toolchain
source ~/export-esp.sh

Configure WiFi credentials (optional — defaults are set in firmware/.cargo/config.toml):

export CONFIG_WIFI_NETWORK="your-ssid"
export CONFIG_WIFI_PASSWORD="your-password"
Task Command
Install environment pixi install -e firmware
Build pixi run -e firmware build
Build & flash pixi run -e firmware flash
Serial monitor pixi run -e firmware monitor
Save binary image pixi run -e firmware firmware-image
Erase flash pixi run -e firmware erase
Binary size stats pixi run -e firmware stats

Logs stream over RTT. Level is controlled by DEFMT_LOG (default: info).

Firmware modules

Module Description
board Shared I2C bus and peripheral initialisation
display SSD1306 OLED via I2C
imu MPU-6050 with Kalman / Mahony filter
motors PWM motor control via LEDC
network WiFi station + DHCP, OTA updates

Robot (ROS 2)

The ROS 2 workspace uses RoboStack Lyrical via pixi.

pixi install -e ros
pixi run -e ros build       # first build (also generates robot/install/setup.sh)

The ros environment activation sources robot/install/setup.sh, which is generated by colcon. Run build once before opening a pixi shell -e ros.

Task Command
Install environment pixi install -e ros
Build workspace pixi run -e ros build
Clean workspace pixi run -e ros clean
Run on hardware pixi run -e ros start
Run simulation pixi run -e ros simulation
Run Gazebo pixi run -e ros gazebo
Open RViz pixi run -e ros rviz

ROS packages

Package Description
rasprover_bringup Launch files for hardware and simulation
rasprover_description URDF, meshes, and RViz config
rasprover_gz Gazebo simulation integration

Links

About

Firmware for the ros_driver board on Rasprover from Waveshare

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors