user-img

Andrea Favero

  • 1 Projects
  • 0 Followers
  • Aug 12,2026
+ Follow

MirrorBallBot, an innovative ball balancing robot

This is a DIY project, to balance a ball on a plate, characterized by innovative solutions. The project is fully opens source, and well documented. The project has been featured by: Makerprojectlab [https://www.makerprojectlab.com/patterns-in-the-pixels-maker-update/]. Hackster [https://www.hackster.io/news/this-balance-bot-uses-a-mirror-to-see-the-big-picture-c26c68e3fdbe].

MirrorBallBot, an innovative ball balancing robot
 
  • thumbnail-img
 

Story

The robot balances a ball on a translucent platform and can also move the ball along predefined trajectories.

It detects the ball’s position using computer vision and a mirror that increases the Field of View (FoV). This trick makes it possible to use a larger platform while keeping the robot compact.

 

The robot uses an ELECROW 7-inch touchscreen, which is essentially a key enabler for the Finger Follower feature: the ball follows the movement of a finger on the touchscreen in real time. As a result, the platform moves the ball so that it appears on the screen to follow the finger—another innovative feature of this project.

 

The system is based on Raspberry Pi components: a Raspberry Pi 4B+ as the main controller, a Pi Camera V3 Wide, and three RP2040-Zero boards controlling 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 GUI also provides access to several calibration parameters, including the PID gains, which can be adjusted in real time. This makes 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 designed to fit directly onto the Raspberry Pi as a HAT. The board essentially acts as a hub, connecting all the other boards together.

 

The robot is available in two versions: one with a wooden base and one that is fully 3D-printable.

 

The project is complemented by extensive documentation in a 150+ page PDF manual covering many aspects of the build, including the BOM, 3D printing, PCB assembly, wooden base preparation, Raspberry Pi and RP2040 setup, initial testing, full assembly with step-by-step photos, GUI operation, PID tuning, I²C protocol details, configuration parameters, troubleshooting, and a Q&A section.

For the complete BOM, please download and refer to the manual.

 

Code
  • GutHub repository

    https://github.com/AndreaFavero71/mirrorballbot
    View
Schematic and Layout
  • Instruction manual (150+ pages)

    https://github.com/AndreaFavero71/mirrorballbot/blob/main/doc/How_to_make_MirrorBallBot.pdf
    View
CAD-Custom parts and enclosures
Topic
View All

MirrorBallBot, an innovative ball balancing robot

This is a DIY project, to balance a ball on a plate, characterized by innovative solutions. The project is fully opens source, and well documented. The project has been featured by: Makerprojectlab [https://www.makerprojectlab.com/patterns-in-the-pixels-maker-update/]. Hackster [https://www.hackster.io/news/this-balance-bot-uses-a-mirror-to-see-the-big-picture-c26c68e3fdbe].

16
 
0
0
0

Share your project on social media to expand its influence! Get more people to support it.

  • Comments( 0 )
  • Like( 0 )
/1000
Upload a photo:
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP

You May Also Like

View All
Add to cart
Board Type : GerberFile :
Layer : Dimensions :
PCB Qty :
Different PCB Design
PCB Thickness : PCB Color :
Surface Finish : Castellated Hole :
Copper Weight : 1 oz Production Time :
Total: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.

PCB Assembly

PCBA Qty: BomFile:
NO. OF UNIQUE PARTS: NO. of Components:
Country: Shipping Way:
Assembly Cost: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
3dPrintingFile : Size :
Unit : Volumn :
3D Printing Qty : Material :
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Acrylic Type : AcrylicFile :
Dimensions: Engrave:
Acrylic Qty :
Acrylic Thickness:
Acrylic Color:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
CNC Milling File : Size:
Unit: Volumn:
CNC Milling Qty : Material:
Type of Aluminum: Surface Finish:
Tolerance:
Surface Roughness:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Item Price Qty Subtotal Delete
Total: US $0.00
Certified Product | Guaranteed Purchase: Full techsupport