little_rook_chess

olikraus edited this page Aug 30, 2015 · 4 revisions

Little Rook Chess

Little Rook Chess is available as an example file with U8glib. This page will describe details of the chess engine and implementation for the Arduino Environment.

Development Goals

  • A chess game with a nice user interface
  • Should run on a Arduino Uno Board
  • Use a graphical LCD as user interface

Artistic Challenge

A surprisingly high amount of time was spent on the design of the board and the chess pieces. The big challenge has been the monochrome display with only 64x64 pixel size for the board. Please let me know if there is any better idea for the design.

chess/chess_pieces.jpg

Game Rules

Important rules like

  • castling and
  • en passant

are supported. Current limitations are

  • no minor pawn conversion (pawn is always converted to queen),
  • no detection of threefold repetition and
  • no implementation of the fifty move rule.

Game Engine

The game engine is very simple:

  • Min/Max search algorithm
  • Material based evaluation with some position weight

User Interface

  • Only valid moves are allowd
  • Some "undo" is possible

Pictures

Pictures below are created with the dogm128 library. Little Rook Chess has been taken over from dogm128 library.

Little Rook Chess with the DOGM128 Shield

chess/dogm128_shield_chess_640.jpg

Little Rook Chess with the DOGS102 Shield

chess/dogs102_shield_chess_512.jpg