
Classic Chess
Standard rules, guided by light
Two players, one board. Lift a piece and its legal squares light up; the board tracks checks, pins, checkmate, and stalemate so nobody has to argue about it. Pawns reaching the last rank auto-queen. Castling and en passant are not implemented.
How it plays
- 1
Set all 32 pieces on their home squares and the game starts itself.
- 2
Lift a piece to see every legal square it can reach.
- 3
Illegal moves flash amber and are refused until you put the piece back.
- 4
Check flashes the whole board red; checkmate ends the game.
- 5
A pawn on the last rank becomes a queen. Castling and en passant are not supported.
- 6
Button A restarts. Button B pauses the board until A is pressed.
What the lights do
Green for empty legal squares, orange-red for captures, gold for a promotion, and a red board-wide flash for check. Rank 1 sweeps as a battery gauge at power-on.
What you'll hear
Every action has its own sound: lifting, putting down, putting back, moving, capturing, promoting, check, and a short fanfare for checkmate. An illegal square buzzes. Volume is adjustable from the Connect page, all the way down to silent.
What you need
- One board
Runs on
Open Chess Board · ESP32-S3
Built by Concept Bytes · based on chess.ino · on OpenChessCore 1.0.0
More classic
Checking your browser…
Make it yours
The Code tab has the whole game — 257 lines of rules, colours, and animations. Everything about the hardware lives in OpenChessCore, so that is all you need to read.
To upload your own version from Arduino IDE, add OpenChessCore.zip as a library, install Adafruit NeoPixel, NimBLE-Arduino, and pick ESP32S3 Dev Module with USB CDC On Boot: Enabled.


