Skip to content

ornicar/chesslink

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chesslink

This is the start of a project to communicate with the chess link.

For inspiration, see

https://github.com/domschl/python-mchess

which is a Python library for communication.

Now that JS has Bluetooth and USB APIs, it is relevant to make a JS implementation of the communication protocol. This project lays the fundation for this.

Usage

Open bluetooth.html in Chrome or Firefox or another browser, which implements the Bluetooth API, and follow the instructions.

USB Note

On Windows, the only drivers that work are the once from Zadig: https://zadig.akeo.ie/

The official drivers are these, and they work with Python MChess, but not in the browser for some reason: https://www.hiarcs.com/eboard/ChessLinkDrivers.htm

Protocol documentation

https://github.com/domschl/python-mchess/blob/master/mchess/magic-board.md

has documentation on the communication protocol. The core parts have been implemented in this JS code.

General bluetooth documentation

Introduction to bluetooth GATT https://www.youtube.com/watch?v=eHqtiCMe4NA&list=PLYj4Cw17Aw7ypuXt7mDFWAyy6P661TD48&index=5

Background info

There is a Java implementation for Android provided by Millenium, which I used as a reference in addition to the Magic-Board code.

Device specific characteristics

List of characteristics: (https://www.microchip.com/forums/m893253.aspx)

// Write Notify
"49535343-026e-3a9b-954c-97daef17e26e"

// Notify. Called TX in Python mchess. Read on this gives 0, 0, 0, 0, 0.
"49535343-1e4d-4bd9-ba61-23c647249616"

// Read. Initial read gives:
// 136, 102, 0, 0, 0, 0, 0, 0, 0   	^B
"49535343-6daa-4d02-abf6-19569aca69fe"

// Write. Called RX in Python mchess
"49535343-8841-43f4-a8d4-ecbe34729bb3"

// Write Notify
"49535343-aca3-481c-91ec-d85e28a60318"

public static String UUIDSTR_ISSC_TRANS_TX = "49535343-1e4d-4bd9-ba61-23c647249616";
public static String UUIDSTR_ISSC_TRANS_RX = "49535343-8841-43f4-a8d4-ecbe34729bb3";

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 81.0%
  • JavaScript 16.8%
  • HTML 2.2%