Márk Polák's Electromechanical Pong Is a Real Bat-and-Ball Game

An X-Y gantry and a line-drawing algorithm delivers a pleasingly mechanical interpretation of Atari's classic tennis-like.

Gareth Halfacree
2 months agoHW101 / Games / Retro Tech

Developer Márk Polák has built a clone of Atari's Pong with one major difference: it's electromechanical, swapping a video display for an X-Y gantry system.

"I fell in love with Atari's version [of Pong] in the arcade and I wanted to have my own," Polák explains of his creation, "so the journey begun, and now I have a working prototype. This is a two player game, each player controls a paddle, the paddles are passing a ball between each other. If a player misses to catch the ball, the other player gets a point. The game is playable, there are some edge case bugs."

The chunky Pong reinterpretation uses an X-Y gantry system using CoreXY kinematics, an approach more normally associated with 3D printers and CNC mills than arcade games. The paddles and "ball" are driven using NEMA 23 stepper motors connected to an Arduino DUE microcontroller board, which uses a hardware timer and an implementation of Bressenham's line-drawing algorithm to handle the ball's movement. Rotary encoders, meanwhile, give the players control — and AlfaZeta mechanical seven-segment displays keep score.

It's Pong, but not as you know it — thanks to one maker's electromechanical reinterpretation. (📹: Márk Polák)

"I will probably abandon the CoreXY gantry and will introduce one more motor to have separate control for the axes, also will skip the rasterization and instead I will time sync the X and Y movements," Polák says of his future plans for improving the prototype. "This will cause rounded corners when the ball bounces but the gameplay will be much more fluid (that's how the Atari Pong table handles it.) I could get the same result but planning the movement in software introduces too much complexity, and I need to rewrite my paddle control code, as currently I am directly sending the rotary encoder pulses to the stepper motor, which works in slow speed but causes step loss in higher sensitivity settings."

Polák has released source code for the project, which requires a beefy 120W power supply to run, on GitHub under an unspecified license; "the readme is a bit outdated," he warns. Additional details are available in the maker's Reddit post.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles