Inspiration

We are big fans of watching chess. We wanted to posit a contribution to the chess community.

What it does

The camera reads a chess board, determines the best move it should make, and sends the instructions ot a robot to pick up the piece and move it.

How we built it

We trained a YOLO model based on images of our board with an OpenCV pipeline. Next, we built a Stock Fish based Python back-end to validate the moves and determine the best move the robot should make. The UI updates on real time based on the position of the board. A LeRobot was used as the robot to pick up the pieces, the actions were trained by a master arm which is mimicked by a follower with a claw.

Challenges we ran into

The white pieces on the white squares made it hard to identify pieces. It was also tough to position the camera with correct lighting in order to detect the pieces as well. IT was also hard to train the arm to pick up pieces.

Accomplishments that we're proud of

Real time tracking and categorization of chess pieces.

What we learned

It is very hard to categorize 32 different chess pieces on a chessboard. It is also very hard to have a robot pick up chess pieces.

What's next for M8 Bot

Incorporate tracking and categorization with robot arm to enable autonomous chess playing.

Built With

Share this project:

Updates