Niryo Plays Checkers

Full robotic autonomy, from mechanical design to artificial intelligence

Project overview

"Niryo plays checkers" is a core robotics engineering project built during my degree program. The objective was to make a robot play full checkers games autonomously while respecting official FFJD rules.

Instead of scripted moves, we developed a complete system able to perceive the board in real time through an onboard camera, make strategic decisions, and physically interact with a human player.

Overview of the Niryo plays checkers project
General overview of the demonstrator.

The challenge: starting from a robot only

At project start, we only had the robot (Niryo Ned 2, later replaced by Ned 3). The full gameplay environment had to be designed from scratch.

Niryo Ned 2 used at the beginning of the project
Initial setup with the Niryo Ned 2 robot.

The project relied on three major technical pillars:

  • Mechanical design: custom board, pieces and storage systems adapted to suction-based grasping.
  • Computer vision: robust piece detection despite lighting variations and robot shadows.
  • Game intelligence: rule-compliant decision making with coherent strategic behavior.

Mechanical design and environment

The physical environment was modeled in SolidWorks, considering the robot working radius (490 mm) and suction tool constraints (22.5 mm).

Checkers board design for the Niryo project
Board design adapted to robot kinematics and reach constraints.
  • Custom board: 10x10 checkerboard split into two clip-on parts for easier 3D printing and transport.
  • Storage racks: dedicated paths for captured pieces and promoted queens to keep the game autonomous.
  • Robot optimization: custom tool extension to avoid singularities near the robot base.
  • Rigid base: stable, repeatable robot positioning relative to the board.

An integrated multidisciplinary solution

The final system combines several engineering blocks implemented in Python.

  • Deep-learning vision: CNN trained on 20,000+ images for robust classification of pieces and queens.
  • Geometric calibration: 3-point alignment and homography to convert camera images into a logical board state.
  • Decision engine: prioritized strategy (Capture > Defense > Advancement > Random move) for fluid gameplay.
  • User interface: Tkinter GUI to visualize board reconstruction and validate moves on touchscreen.

Result and portability

The final system was successfully deployed on an embedded platform: Raspberry Pi 5 (8 GB RAM) integrated into a touchscreen tablet. This allows fully autonomous operation without an external computer.

Starting from a bare robot, we delivered a complete demonstrator able to initialize a game, detect mandatory multi-captures, and manage automatic promotion to queens, providing a robust and educational autonomous gameplay experience.

Marc GAUTHIER