Chess+Engine+Communication+Protocol

toc
 * Home * Protocols * Chess Engine Communication Protocol**

The **Chess Engine Communication Protocol**, also called **xboard** or **WinBoard** protocoll, is an open [|communication protocol] for chess engines to play games automatically, that is to communicate with other programs including Graphical User Interfaces.

=GUI= A GUI supporting the protocol is known as XBoard or WinBoard, being for Unix (Posix) or Windows operating systems, respectively. Many other GUIs support the protocol, which is based on text commands, while requiring the engine to keep the state of the game internally. While the Universal Chess Interface is somewhat more popular today, the Chess Engine Communication Protocol protocol is preferred by some because it allows greater flexibility for the engine (for instance, in pondering).

=How it began= Tim Mann in an Interview by Frank Quisinsky, April 2000 :  =UML State diagram=
 * [[image:xboard.gif link="http://walkofmind.com/programming/chess/xboard.htm"]] ||
 * WinBoard/XBoard protocol [|UML state diagram] by Alessandro Scotti ||

=Version 2= Harm Geert Muller established a protocol Version 2 in September, 2009, also covering Chess Variants and different board sizes.

=Engines=  =GUIs=
 * WinBoard Engines
 * XBoard Engines

Native

 * WinBoard
 * XBoard

Compatible

 * Arena
 * ChessGUI
 * ChessPartner
 * ChessX
 * Cute Chess
 * EBoard
 * jose
 * PyChess
 * SCID
 * Scid vs. PC
 * Scidb

=Utilities=
 * InBetween
 * PolyGlot
 * Wb2UCI
 * UCI2WB

=See also=
 * CPW-Engine_com
 * Engine Testing
 * GNU Chess
 * icsdrone
 * Pondering
 * UCI
 * Vice XBoard/WiBoard-Videos

=Forum Posts=

1990 ...

 * [|xboard datapoint] by Paul Vaughan, gnu.chess, January 29, 1991
 * [|xboard v1.2] by Chris Sears, gnu.chess, June 14, 1991
 * [|reading in a position and playing in xboard] by Lewis Stiller, gnu.chess, February 20, 1992
 * [|Re: Accessing remote computers with WinBoard] by Tim Mann, gnu.chess, November 7, 1993

1995 ...

 * [|XBoard and WinBoard 3.4, patchlevel 1] by Tim Mann, rec.games.board, December 13 1995
 * [|XBoard and WinBoard, version 3.6.0] by Tim Mann, rgc, May 09, 1997
 * [|new autoplayer interface standard] by Robert Hyatt, CCC, September 15, 1998
 * [|WinBoard and pondering under W98] by Frank Phillips, CCC, July 28, 1999 » Pondering, WinBoard

2000 ...

 * [|Winboard for Dummies] by Russell Reagan, rgcc, June 30, 2001
 * [|xboard and WinBoard 4.2.4 released] by Tim Mann, gnu.chess, December 10, 2001
 * [|what is the importance of the ping command?] by Uri Blass, Winboard Forum, September 24, 2002
 * [|Kiwi for Win98 and input-reading stuff] by Alessandro Scotti, CCC, September 29, 2004 » Kiwi, Windows, C++, Thread

2005 ...

 * [|Safe I/O (repeated)] by Fabien Letouzey, Winboard Forum, February 11, 2005
 * [|A question about kibitz] by Niyaz Khasanov, Winboard Forum, February 18, 2005
 * [|Re: gnuchess/xboard protocol] by Hans Eric Sandström, gnu.org, May 19, 2006
 * [|Authors of WinBoard SMP engines, take note!] by Harm Geert Muller, CCC, October 11, 2008 » Parallel Search, SMP, SMP Engines
 * [|UCI protocol in winboard] by Engin Üstün, Winboard Forum, September 24, 2009 » UCI, WinBoard
 * [|Adapter for non-standard chess engine to Winboard] by Carey, CCC, October 10, 2009

2010 ...

 * [|XBoard and epd tournament] by Vlad Stamate, CCC, January 31, 2010 » Engine Testing
 * [|Aquarium (other GUIs too?) and WB support => I am shocked] by Miguel A. Ballicora, CCC, February 27, 2010
 * 2011**
 * [|WinBoard protocol driver] by Harm Geert Muller, Winboard Forum - Chess Programming Lessons, April 30, 2011
 * [|Starting to use the Winboard Protocol] by Reinhard Scharnagl, Winboard Forum, December 11, 2011
 * 2012**
 * [|XBoard / WinBoard 4.6.0 released] by Harm Geert Muller, CCC, March 11, 2012
 * [|Winboard protocol and fractional increments] by Jon Dart, CCC, September 25, 2012 » Time Management
 * 2013**
 * [|A few questions about CECP] by Martin Sedlak, CCC, January 05, 2013
 * [|WB protocol: describing how a piece moves] by Harm Geert Muller, CCC, October 12, 2013
 * 2014**
 * [|WB protocol extension: thinking output] by Harm Geert Muller, CCC, January 14, 2014
 * [|Handling xboard new game race condition in protover 1 engine] by Matthew Lai, CCC, August 12, 2014
 * [|for Chess-variant authors] by Harm Geert Muller, CCC, September 17, 2014
 * [|XBoard and chess variants] by Evert Glebbeek, CCC, October 28, 2014
 * [|UCCI2WB] by Harm Geert Muller, CCC, October 27, 2014
 * [|WB protocol specs] by Harm Geert Muller, CCC, December 12, 2014

2015 ...

 * [|xboard softquit] by Matthew Lai, CCC, July 26, 2015
 * [|Winboard 2 state diagram] by thevinenator, OpenChess Forum, August 26, 2015
 * [|XBoard for Mac: Zippy problems] by Steven Edwards, CCC, August 29, 2015 » Mac OS
 * [|Suggestions for XBoard documentation] by Steven Edwards, CCC, August 30, 2015
 * [|CECP ('WB protocol') specs] by Harm Geert Muller, CCC, December 28, 2015
 * 2016**
 * [|Release of XBoard 4.9.0 soon] by Harm Geert Muller, CCC, April 07, 2016
 * [|Chess on Android] by Pedro Castro, CCC, April 19, 2016 » Chess for Android, DanaSah
 * [|CECP: Chess variants with dice] by Harm Geert Muller, CCC, May 22, 2016
 * [|ChessGUI Timer Problem] by Dennis Sceviour, CCC, October 24, 2016 » ChessGUI
 * 2017**
 * [|Winboard variants online] by Erin Dame, CCC, March 22, 2017 » Chess Variants
 * [|Winboard questions] by Ed Schroder, CCC, June 26, 2017
 * [|Winboard: Resigning?] by Rasmus Althoff, CCC, June 27, 2017
 * 2018**
 * [|UCI vs Winboard question] by Michael Sherwin, CCC, March 05, 2018 » UCI

=External Links= > [|What is new in XBoard/WinBoard 4.9.0?] by H.G. Muller > [|rshd-readme.txt] by Dan Newman > [|Winboard/XBoard UML state diagram] by Alessandro Scotti
 * [|Chess Engine Communication Protocol from Wikipedia]
 * [|Chess-Engine Communication Protocol] by Harm Geert Muller
 * [|Chess Engine Communication Protocol] by Tim Mann & Harm Geert Muller
 * [|Chess Engine Communication Protocol - New Specs] by Harm Geert Muller
 * [|XBoard News] by Harm Geert Muller
 * [|Tim Mann's Chess Pages, XBoard and WinBoard]
 * [|bug-xboard mail archive]
 * [|Tinkering with Winboard...] by Alessandro Scotti
 * [|FAQ on Winboard and Chess Engines] by Aaron Tay
 * [|Lyapko George's WinBoard related page] (outdated) by George Lyapko
 * [|Winboard and Chess Engines FAQ] from Ron Murawski's [|Computer-Chess Wiki]
 * [|WinBoard development and bugfixing Forum]

=References=
 * Up one Level**