The Mini Wheelbot is a balancing, reaction wheel unicycle robot designed as a testbed for learning-based control. It is an unstable system with highly nonlinear yaw dynamics, non-holonomic driving, and discrete contact switches in a small, powerful, and rugged form factor. The Mini Wheelbot can use its wheels to stand up from any initial orientation – enabling automatic environment resets in repetitive experiments.
An overview of Wheelbot Hardware is available here:
The Mini Wheelbot is introduced in the paper: Henrik Hose, Jan Weisgerber, and Sebastian Trimpe. "The Mini Wheelbot: A Testbed for Learning-based Balancing, Flips, and Articulated Driving", accepted to the IEEE International Conference on Robotics and Automation ICRA (2025).
Please cite our paper on the Mini Wheelbot:
@inproceedings{hose2025miniwheelbot,
title={The Mini Wheelbot: A Testbed for Learning-based Balancing, Flips, and Articulated Driving},
author={Hose, Henrik and Weisgerber, Jan and Trimpe},
year={2025},
booktitle={2025 IEEE International Conference on Robotics and Automation (ICRA)}
}
The following papers use Mini Wheelbot:
- Henrik Hose, Jan Weisgerber, and Sebastian Trimpe. "The Mini Wheelbot: A Testbed for Learning-based Balancing, Flips, and Articulated Driving", accepted to the IEEE International Conference on Robotics and Automation ICRA (2025).
- Hose, Henrik, Paul Brunzema, Alexander von Rohr, Alexander Gräfe, Angela P. Schoellig, and Sebastian Trimpe. "Fine-Tuning of Neural Network Approximate MPC without Retraining via Bayesian Optimization." In CoRL Workshop on Safe and Robust Robot Learning for Operation in the Real World. 2024.
This repo contains the following materials:
- PCB Schematics: PCBs used on the Mini Wheelbot
- Meshes: for visualization
- Wheelbot-Lib: C++20 code running on the Mini Wheelbots Buildroot Linux
- Scripts: Collection of Python Scripts used for system identification, keyboard control, etc.
- Simulation: ODEs describing the Mini Wheelbot's dynamics in different Python and simulation in Acados.
- Microcontroller software running on STM32 microcontrollers on the Mini Wheelbot.
Related repositories:
- Yaw control neural network approximate MPC: Dataset synthesis and neural network training in Jax for nonlinear yaw control on the Mini Wheelbot.
The Mini Wheelbot's development has been made possible thanks to these open-source projects:
- modm: A modern C++ barebone embedded library generator
- KiCAD: A Cross Platform and Open Source Electronics Design Automation Suite
- CasADi: A symbolic framework for numeric optimization implementing automatic differentiation
- Buildroot: A tool to generate embedded Linux systems through cross-compilation.
- acados: Fast and embedded solvers for nonlinear optimal control.
- µMotor: A motor controller for BLDC and DC motors up to 250W.
- JAX: Composable transformations of Python+NumPy programs.
If you are interested in building your own Mini Wheelbot, contact us.