MirrorBallBot
This is a ball-balancing robot that I designed from scratch.
Apart from the mirror trick, which increases the camera's field of view, the robot includes another key innovation: the "finger-follower" feature. The finger position is tracked on the robot's touchscreen, and the ball follows it in real time. By watching the display, it appears as though the ball continuously "lands" underneath the finger.
The system is based on Raspberry Pi components: a Raspberry Pi 4B+ as the main controller, a PiCamera V3 Wide, and three RP2040-Zero boards that control three TMC2209 (silent) stepper drivers.
The Raspberry Pi 4B+ communicates with the three RP2040-Zero boards via a custom I²C protocol.
The system processes more than 110 FPS and controls the platform at 17–25 Hz.
The 7-inch touchscreen display (sponsored by ELECROW), together with the GUI application, makes the robot particularly enjoyable to use. The GUI also exposes several calibration parameters, such as the PID gains, which can be adjusted in real time, making the tuning process much more user-friendly and educational.
To minimize wiring and reduce the possibility of connection errors, the robot uses a custom PCB (sponsored by PCBWay) that fits onto the Raspberry Pi as a HAT. This board essentially acts as a hub, connecting all the other boards together.
The project is complemented by extensive documentation (a PDF file of approximately 150 pages) covering many aspects of the build, including: the BOM, 3D printing, PCB assembly, wood base preparation, Raspberry Pi and RP2040 setup, initial testing, full assembly (27 steps with photos), GUI operation, PID tuning, I²C protocol details, configuration parameters, troubleshooting, and a Q&A section.
MirrorBallBot
Project images are for reference only. Actual production is based on the manufacturing files on the project page.
Please review the designer's notes (e.g., PCB thickness) and select the appropriate options.
PCBWay is not responsible
for issues caused by unsuitable parameter selections.
For more important ordering information, please refer to
Read More
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(2)
- Likes(2)
-
Electronic Adam
Jun 10,2026
-
(DIY) C64iSTANBUL
Jun 06,2026
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Andrea Favero
-
Programmable Mist Maker - XIAO / QT PY Extension
994 2 1 -
RadioHAT - Raspberry Pi radio development platform
802 0 2 -
QWIIC-VL53L4CD Time-of-Flight Distance Sensor Module
1020 0 1 -
-
-
-
ARPS-2 – Arduino-Compatible Robot Project Shield for Arduino UNO
3259 0 6 -
-
A Compact Charging Breakout Board For Waveshare ESP32-C3
3880 3 8 -
AI-driven LoRa & LLM-enabled Kiosk & Food Delivery System
4254 2 2







