Author: LOVRO MRAOVIC
School: Srednja skola za elektrotehniku i racunalstvo
Country: CROATIA
The “AI-Chess” project is a digital version of the chess game that uses the Arduino Mega 2560 microcontroller as the core of the system, along with a TFT LCD touch screen for displaying the board and interacting with the user. This project combines hardware and software components to enable a fully functional chess game with a graphical interface, game logic, the ability to enter moves via a touch screen, and a computer opponent. The primary function of the project is to allow users to play chess on a physical device that simulates a digital chessboard. The TFT screen displays the board and pieces, and the user can move the pieces by touching the screen. The built-in game logic allows for the recognition of legal moves, checking conditions such as checkmate and stalemate, and game management with the ability to analyze moves. One of the key functions of the system is the built-in chess engine that calculates and suggests moves. This engine uses different levels of positional search depth (MINDEPTH, MAXDEPTH, LIMDEPTH) and evaluation functions based on piece weights and position tables. This simulates the thinking of an opponent, who can play against a human. It is also possible to enable the so-called checkmate search – option to search for forced checkmates in several moves.
The project includes saving and loading positions and lots using EEPROM memory. Thus, the user can continue previous games or start new ones from an arbitrary position. Also, the system supports the loading of chess positions using FEN records via the serial port, which enables the entry of positions from external devices. Special attention is paid to the graphical user interface. Various buttons and indicators are implemented on the screen, such as: “START”, “LOAD”, “SAVE”, “ROTATE”, “SOUND”, “BACK”, “DESC”, and others. These buttons allow the user to intuitively interact with the system, such as changing the orientation of the board, turning the sound on or off, saving the current position or starting the game with new conditions. The project uses a series of bitmaps that represent graphic representations of pieces (king, queen, rook,
hunter, jumper, pawn) as well as additional symbols (sound, rotation, save, etc.). This creates an aesthetic that is reminiscent of computer chess games.
It can be used as a tool for learning chess, demonstrating artificial intelligence algorithms (such as minimax), and as an example of hardware and software integration for the development of functional interactive devices. It is also suitable for further development, such as adding networking functions or analytical tools to the game.