Alon Borenshtein's Arduino-Powered BotGammon Robot Plays a Mean Game of Backgammon

Recognizing physical dice rolls and carrying out moves on a real board, BotGammon leans on GNU Backgammon for a challenging partner.

Developer Alon Borenshtein has built a robot that plays a mean game of backgammon — taking GNU Backgammon into the real world with a little computer vision and an XY gantry.

"The [robot] includes the following," Borenshtein writes of the project. "Board detection to detect checkers on the board; dice detection, [a neural network] that recognizes the dice; interface with the GNUbg [GNU Backgammon] CLI [Command-Line Interface] for the auto player; board management [to] create movements on the board, [and] some Arduino sketches."

Inspired by similar systems for chess and checkers, BotGammon provides a computer player for backgammon. (📹: Alon Borenshtein)

The robot itself, a Superb Tech XY gantry system, is driven using three Arduino microcontroller boards: a main Arduino UNO R4 WiFi acts as the central control system, a second Arduino runs the Grbl firmware to control the robot's movement, an Arduino Mega handles a graphical user interface, and an Arduino Micro serves as an I2C to serial bridge.

The actual gameplay comes from GNU Backgammon, a free software tool that can analyze games and suggest moves. The software's command-line interface receives information about the board state, including moves made by the human player, and works out the optimal next move — information which is then sent to the robot arm to make the play on the physical board.

"There might be [other backgammon robots]," Borenshtein says of the build, "but I really tried to find one that is really working but couldn't find such. There are several checkers robots and many chess ones, but I didn't find Backgammon."

Source code for the project has been published to GitHub under an unspecified license, along with 3D print files for various components.

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