Project Notes
Project : Universal Chess Board Driver
Author : Luc Porchon
UCB Driver for xboard.
This a driver to use the Novag Universal Chess Board with Tim Mann's xboard.
The driver is written by Luc Porchon (Porchon@myrealbox.com).
This program is free; you can redistribute it and/or modify it as you want.
Please do not hesitate to send me your comments. Feel free to modify it.
I just ask you to send me a description of your modification if it
serves the purpose of the original version.
Please do not modify this header but add your remarks in the section
below.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; this program is free of charge and CANNOT BE
SOLD.
I/ Introduction
I am a happy user of Universal Chessboard from Novag that I connect to my PC
to play with Crafty or FICS through xboard. This board gets several advantages
compare with some of the other chessboards:
1/ the price seems to be the lowest (That was the main argument when I made the
choice ! )
2/ A lot of LEDs to control the computer moves (no need to check the PC monitor)
3/ It can be connected to some commercial softwares like fritz, hiarc...
The disadvantages:
1/ the board size is quite small
2/ it cannot detect the piece type on a given square. It just detect if a piece
is present or not.
)
3/ no driver available for the chess freewares
see Novag's site.
While surfing the web I found the Nick Biggs' web page that describes this Chess
Board protocol. - and I wrote the first version
for MsWindows. Now I run Linux, I've created a Linux version. But, as I wrote it
in Java I think it should not be too difficult to run it on Windows as well. The
principle is to simulate a chess program. Thus you can connect it to xboard to
play with all xboard compatible engines and Internet server using the Zippy
interface.
II/ How to use it
Simply !
You must have javax.comm (comm.jar) already installed (you can get it at sun's web site). To
manage the RS232 port you need to get the RXTX driver.
1- type "make" to compile the source code followed by "make install" to install
the driver in /usr/local/share/ucb directory.
2- Connect your Universal Chessboard (UCB) to your computer.
3- Edit the file /usr/local/share/ucb/bin/ucb to set the port variable to the
value that correspond to the the serial port number where the board is connected
on. Ex: /dev/ttyS0 or /dev/ttyS1 (COM 1 or COM 2) ...
java -jar ucb.jar -streamName=/dev/ttyS0
4- Make a connection test: execute ucb alone; Once the UCB Version shows switch on the
chessboard (PC position).
After a few seconds, UCB send some commands to your PC that displays there meanings. You can
then make a valid move on the board and see it on your monitor. On the other way
try to type in e7e5 on your keyboard and the corresponding LEDs must show on the board.
Otherwise check your connection port if it corresponds to the one you declared in ucb file.
To exit from UCB just type "quit".
5- Once the connection can be established it's the time to use it with xboard !
Here is an example on how to run xboard with UCB:
xboard -cp -fd /usr/local/bin /fcp crafty /scp ucb
or run "ucb" batch file normally installed in directory /usr/local/share/ucb/bin.
But please refer to xboard Documentation to have a complete descritpion on how to
install chess engines as UCB is perceived by xboard as a chess engine.
6- For ICS usage: see the ZIPPY documentation of xboard.
I usually run: xboard -zp -ics -fcp ucb -icshelper timeseal -zippyAcceptOnly 0
and the address of ICS I want to connect to.
TIP: ZIPPY accept all challenges issued by the ICS server! To avoid this problem you can
add -zippyAcceptOnly 0 in the xboard command line.
III/ Thanks
To Nick J Biggs for his impressive
work on the UCB's protocol,
To Tim Mann for his chess
website that is a reference.
IV/ Modification List
LP 01/09/99: V1.1 Windows version.
LP 01/10/02: V2.1 November, 2002
Java version tested with Linux + JDK1.3.1 + comm.jar + RXTX.jar.
LP 01/10/02: v2.2 November, 2002
Fix output printing error
Add "\n" for each "move" command
Add "help" command..