- Install Python 3.7. Do not install the latest 3.8 version as it is not compatible with TensorFlow.
- Install the Arduino application.
- Install DRV8825.h libray from Sketch -> Include Libraries -> Manage Libraries
- Select Arduino Nano from Tools -> Board
- Select ATmega328P (Old Bootloader) from Tools -> Processor
- Connect the Arduino to the laptop containing the rest of the code.
- Upload the automatic.ino file from the repository to the Arduino.
- Install Stockfish.
- Create a new conda environment using the requirements.txt from the repository.
- Configure the constants in config.py, specifically providing paths for the Stockfish engine, the CNN model and the Squares.txt file.
- Install IPWebcam application on an Android phone and start it. Copy the associated IP to the constants in config.py
- Look up the port in Arduino and copy it to the constants as well.
- Place the phone on the stand, making sure the whole chessboard is visible.
- Make sure all the chess pieces are in their correct places.
- Run main.py
Raspberry Turk, by Joey Meyer. His implementation can be found at http://www.raspberryturk.com/