Smart IoT chessboard

This project is about creating PCB of a chess board, which is able to give hints regarding the possible figure moves, detect if players follow the rules, and warn them if they are not. It also should be able to connect to the wi-fi network, send game progress to the embedded server, and allow speactators to watch it online.


This project is my bachelor thesis project. I chose to make a chess board because I enjoy playing chess. I wanted to make this project related to the development of the entire IoT embedded system (starting from schematic, PCB, 5V to 3.3V (for LDO) and from 9V to 5V (for Buck converter).

The microcontroller (MCU) used in this PCB is ESP32-C6-WROOM-1-N8. It uses 3.3V and is used to controll the board and connect to the network.

MCU has a PWM signal pin to controll the LEDs on the board. PWM signal is amplified to 5V with MOSFET and then sent to the data input pin of the LED (each LED has integrated circuit which controls its colour).

Each cell has a linear hall-effect sensor. This is an analog sensor which sends the analog signal to the MCU. It is used to detect different figures (with different magnet strengths). MCU turns on the hall sensors in the groups of 4 (it means data only from 4 hall-sensors is read by MCU at the same time). It is done because chosen microcontroller has only 7 independent alanog data channels.

MCU uses 4 to 16 decoder to control the hall-sensors. MCU sends a data signal consisting of 4 bits. Depending on this data signal decoder sends a high level of signal for corresponding pin, which turns on 4 hall-sensors and makes them to read the magnetic field data.


USB-B is used to program the ESP-32 module. PCB has 2 buttons near the MCU. One is resposible for the reboot of the MCU and another is reponsibe for the programming. Using these 2 buttons it is possible to upload the firmware on the ESP-32 through the USB-to-UART converter.


Here is a photo of my PCB:

Apply for sponsorship >>
1600+ Projects Sponsored
May 02,2024
243 viewsReport item
  • Comments(0)
  • Likes(0)
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
0 / 10000