Four arms keep a ping pong ball bouncing on a tilting plate

Oct 10, 2026 Last reply: 3 hours ago 4 Replies
Jump to replies (4)

Most ball-on-plate projects tilt a single surface with two axes of motion. This one goes further: four articulated aluminum arms, each driven by its own stepper motor, move a clear plate, bouncing and balancing an orange ping pong ball in full 3D. Compared with the usual two-axis tilting approach, that feels like a different league of mechanics and control.



The hardware story is just as good. Electron Dust machined every aluminum part on a small desktop CNC mill, a Benbox CNC 1310, and picked geared steppers over linear actuators for cost and availability reasons. A Teensy 4.0 is on the parts list along with four StepperOnline DM442S drivers and Nema 17 motors wearing 5:1 planetary gearboxes, all fed by a 48V 8A supply. Vision comes from a See3CAM_CU135 camera under the plate, pushing 120 FPS into OpenCV on a Windows machine, with a custom Unity application handling a split-screen 3D simulation that mirrors the real robot's movements and ball trajectory.



Some details really stand out. The inverse kinematics were sorted out early, partly during commutes on public transport. The machine computes the ball's 3D position from the image data, a typical bounce move takes about 300 milliseconds, and no new command is accepted until the current one finishes. Circle detection finds the ball in the raw image, and an inset display breaks the pipeline into color channel separation and Hough transform stages. Unlike earlier versions that used sound, this iteration relies on vision alone.



One open question remains: with two balls in play, the second could hit the plate before the first bounce move finishes, and two balls would eventually collide given the centering behavior. Whether it could briefly juggle two balls under the right conditions is unconfirmed. Whether 3D printed parts could stand in for the aluminum is untested too, and the whole thing landed in the $1000 range despite efforts to keep spending down, after half a year of weekends.



Project by Electron Dust. Watch it on their YouTube channel:

formatting link


Going with geared steppers instead of linear actuators looks like a clever call to me. Nema 17 motors with 5:1 planetary gearboxes are cheap and easy to source, and the machine still pulls off smooth moves with a typical bounce taking about 300 milliseconds. The trade-off, in my view, is likely extra compliance compared with proper linear stages, but the bouncing and balancing results look excellent.

Curious what happens if a second ball rolls onto the plate while the first one is still bouncing. Does the tracking simply lock onto one of them, and can the arms react in time between bounces?

Circle detection runs on the raw image, and when several circles appear the biggest one is taken as the ball. With two balls in play it would go for the one nearest the camera. The catch is that it keeps whichever ball it tracks centered, and two balls would eventually collide. The second ball could also hit the plate before the first bounce move finishes, leaving no time to react.

A fun variation would be syncing the bounces to one-second intervals, like a ticking clock. The plate tracking already holds the ball centered, and pacing the bounces evenly seems within reach of the existing control loop. Painting hour marks on the clear plate and bouncing at each position in turn would turn the whole thing into a working kinetic clock.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required