haklein / certabo-playground

Scripts, tools, and helpers for the CERTABO usb chess boards
10 stars 5 forks source link

Install on Mac #2

Open LETRA opened 4 years ago

LETRA commented 4 years ago

Good night,

I bought a Certabo board that arrived today and I'm trying to install your app on a Mac.

I have the executable downloaded from http://vt100.at/files/ and a very basic use of brew, pip, pip3, etc.

I have tried several methods to run "certabo-uci-osx" but I can't find the right one.

Some help would be very welcome or a few lines in the readme file.

All the best for you.

haklein commented 4 years ago

Hi LETRA, do you get any error message? br Hari

LETRA commented 4 years ago

Hi haklein,

I don't know what is the command to install your package. I try:

% brew install /Users/letra/Downloads/certabo-uci-osx
% certabo-uci-osx: /Users/letra/Downloads/certabo-uci-osx:1: invalid multibyte char (UTF-8)
% pip install pyinstaller
% DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Requirement already satisfied: pyinstaller in /usr/local/lib/python2.7/site-packages (3.6)
Requirement already satisfied: setuptools in /usr/local/lib/python2.7/site-packages (from pyinstaller) (41.0.1)
Requirement already satisfied: macholib>=1.8 in /usr/local/lib/python2.7/site-packages (from pyinstaller) (1.14)
Requirement already satisfied: altgraph in /usr/local/lib/python2.7/site-packages (from pyinstaller) (0.17)
Requirement already satisfied: dis3 in /usr/local/lib/python2.7/site-packages (from pyinstaller) (0.1.3)
% python /Users/letra/Downloads/certabo-uci-osx
% File "/Users/letra/Downloads/certabo-uci-osx", line 1
SyntaxError: Non-UTF-8 code starting with '\xcf' in file /Users/letra/Downloads/certabo-uci-osx on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
% pip3 install /Users/letra/Downloads/certabo-uci-osx
% ERROR: Exception:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/packaging/requirements.py", line 93, in __init__
    req = REQUIREMENT.parseString(requirement_string)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1939, in parseString
    raise exc
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1929, in parseString
    loc, tokens = self._parse(instring, 0)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1669, in _parseNoCache
    loc, tokens = self.parseImpl(instring, preloc, doActions)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 4037, in parseImpl
    loc, exprtokens = e._parse(instring, loc, doActions)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1669, in _parseNoCache
    loc, tokens = self.parseImpl(instring, preloc, doActions)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 4430, in parseImpl
    return self.expr._parse(instring, loc, doActions, callPreParse=False)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1669, in _parseNoCache
    loc, tokens = self.parseImpl(instring, preloc, doActions)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 4020, in parseImpl
    loc, resultlist = self.exprs[0]._parse(instring, loc, doActions, callPreParse=False)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 1673, in _parseNoCache
    loc, tokens = self.parseImpl(instring, preloc, doActions)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pyparsing.py", line 3228, in parseImpl
    raise ParseException(instring, loc, self.errmsg, self)
pip._vendor.pyparsing.ParseException: Expected W:(abcd...), found '/'  (at char 0), (line:1, col:1)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/constructors.py", line 356, in parse_req_from_line
    req = Requirement(req_as_string)
  File "/usr/local/lib/python3.7/site-packages/pip/_vendor/packaging/requirements.py", line 97, in __init__
    requirement_string[e.loc : e.loc + 8], e.msg
pip._vendor.packaging.requirements.InvalidRequirement: Parse error at "'/Users/l'": Expected W:(abcd...)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 153, in _main
    status = self.run(options, args)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 362, in run
    wheel_cache
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 238, in populate_requirement_set
    wheel_cache=wheel_cache
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/constructors.py", line 395, in install_req_from_line
    parts = parse_req_from_line(name, line_source)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/constructors.py", line 360, in parse_req_from_line
    add_msg += deduce_helpful_msg(req_as_string)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/constructors.py", line 169, in deduce_helpful_msg
    next(parse_requirements(fp.read()))
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcf in position 0: invalid continuation byte
haklein commented 4 years ago

The "certabo-uci-osx" file is a binary generated by pyinstaller. You might need to make it executable ('chmod +x certabo-uci-osx') and then just execute it in the terminal ('./certbao-uci-osx')

haklein commented 4 years ago

If you prefer to run the python script directly, you need to check the repository out from github.

LETRA commented 4 years ago

Thank you. I thought it was an installation package. Now there's a problem running it. Certabo_chess2.9_Mac has an error in Catalina. Pietro said he's going to send me some instructions on how to get the software to run.

Then I can use yours, in conjunction with ChessX for example?

haklein commented 4 years ago

Yes, you can use certabo-uci without the official Certbao software. It's standalone. Just make sure to run the calibration once, to add the pieces (you can set calibration via the UCI engine setting in your favorite chess program).

LETRA commented 4 years ago

Perfect. I just installed it on ChessX. Is the calibration via command line?

haklein commented 4 years ago

no, as stated in my previous update, calibration can be enabled via the UCI engine settings.

LETRA commented 4 years ago

Excuse me, how do I access the UCI engine settings?

haklein commented 4 years ago

that's usually implemented in the chess gui. The UCI engine tells the chess program what config settings it does support, and the chess program provides a settings page for that. In ChessX you would go to the preferences, switch to the Engines tab, select the certabo UCI engine, and press the "Options" button. That will open the Engine Options window specific to the certabo UCI engine (see screenshot).

haklein commented 4 years ago

Screenshot from 2020-03-10 23-35-05

LETRA commented 4 years ago

Got it. I change the value to "true", but nothing happens. The "add piece" option doesn't appear either.

Captura de pantalla 2020-03-10 a las 23 58 37

haklein commented 4 years ago

The osx binary is probably from a version which didn't yet has the Addpiece option. Let's start from the beginning. The certabo board does use a Silabs USB virtual com port. Did you install the driver for that? Otherwise the Certabo wouldn't show up as com port on the mac. The Certabo uci engine does write a log file (I'm unsure where exactly that's stored below your home directory on the mac). This would also be helpful to debug any issues. But I guess that you didn't install the silabs driver (it can be found on the certabo homepage or directly on the silabs homepage).

LETRA commented 4 years ago

Yes, install the driver first, before the official software, with which there are several errors in Mac OS Catalina. Now I will look for a more updated version of ChessX or try XBoard or another program (although there are not many).

LETRA commented 4 years ago

I have updated ChessX to the latest version without the "add piece" option and XBoard closes when I configure Certabo UCI (also it doesn't have a button to configure the calibration I have seen). I don't know what to do. Maybe the software for Certabo is not yet mature for the public to use without developer knowledge.

haklein commented 4 years ago

LETRA, this software is provided by me as individual and not related to Certabo at all. Regarding maturity of this specific UCI driver: it works fine for me, I've played a lot of games using my UCI engine. Mostly with pychess, but I've also tried a bunch of other chess GUIs. From your previous posts on this ticket, I'd assume that you don't have experience with chessx, nor with UCI engines. chessx is a bit special, as it is more a chess database, also supporting engines. For anything to "happen" afte rconfiguring the UCI, you need to start an engine match in chessx, and configure the engine match so that one engine shall be stockfish, lc0, whatever, and the other engine to be the certabo UCI engine. Maybe you want to try some simpler chess GUI than chessx. Also my certabo-UCI engine is a special use case, as from a GUI perspective it's like an engine playing vs engine. That said, it works for me, your mileage may differ, but without a log file it's hard to tell what's going wrong for you (besides my assumptions above that you didn't start an engine tournament)

haklein commented 4 years ago

I forgot to add, if you want to use the "AddPieces" option (which is basically a calibration without resetting the existing data first, e.g. to add a 2nd pair of queens or another set), you can always take the latest version for this UCI engine from this github repo. The 'requirements.txt' file will list all python requirements (you can apply them e.g. by running 'pip3 install --user -r requirements.txt').

LETRA commented 4 years ago

Thank you very much for your help, Haklein. I have no experience with chess engines (many years ago I tried a little Arena and some UCI modules with Fritz 6 or 7) but I have followed all the steps you have indicated. I have been last night doing a Team Viewer session with Pietro and the problem is the driver. For some reason it's not working in mac OS Catalina. We have tried an experimental version that is adapting to this system, but the specific USB driver fails and is surely the reason why I can't use either the official app, or yours, on the Mac.

In Windows 10 LTSC (in my boot camp partition) the official apps work. I'd like to test yours too, if there are any executables or instructions.

haklein commented 4 years ago

@LETRA: that is weird, as I'm using the silabs driver from the Certabo homepage on macOS Catalina (10.15.3) on a Macbook Pro 2015. Albeit it asked me to change some security settings so that the driver would be run.

haklein commented 4 years ago

@LETRA: you need to allow the extension like shown here: https://developer.apple.com/library/archive/technotes/tn2459/_index.html

After that the silab driver worked fine for me.

LETRA commented 4 years ago

I tried it on an iMac 2017 and a newly reinstalled Macbook Air 2012, and on both it's impossible to run the official software. Pietro was connected to my computer via Team Viewer last night for almost two hours.

This is the error log (last lines in loop):

letra@iMac-de-LETRA CERTABO-CHESSBOARDS-SOFTWARE % python3 run.py
pygame 2.0.0.dev6 (SDL 2.0.10, python 3.7.6)
Hello from the pygame community. https://www.pygame.org/contribute.html
2020-03-11 00:36:49,717:utils:Searching for port...
2020-03-11 00:36:49,719:utils:Trying /dev/cu.AirPodsdeLETRA-Wireless
2020-03-11 00:36:55,974:utils:Port is busy, continuing...
2020-03-11 00:36:55,975:utils:Port not found
2020-03-11 00:36:55,975:run:GUI: Board listen port: 3102, gui listen port: 3103
2020-03-11 00:36:55,980:run:1366
2020-03-11 00:36:55,982:run:Calling ['python', 'usbtool.py']
Traceback (most recent call last):
  File "usbtool.py", line 4, in <module>
    import serial.tools.list_ports
ImportError: No module named serial.tools.list_ports
1
2020-03-11 00:36:57,536:run:Xmax = 2880
2020-03-11 00:36:57,536:run:XRESOLUTION = 1366
2020-03-11 00:36:57,660:codes:codes.py - loading calibration
UpdateRecents: about to call HIS_XPC_GetApplicationPolicyForURLs with seed 2680395269
UpdateRecents: received results from HIS_XPC_GetApplicationPolicyForURLs
UpdateRecents: ignoring results because menu isn't open
UpdateRecents: about to call HIS_XPC_GetApplicationPolicyForURLs with seed 2680395269
LETRA commented 4 years ago

Yes, of course the extension is approved. I think they have already verified that there are users who don't work in Catalina and that's why they are developing a new version.

haklein commented 4 years ago

can you do a "ls -l /dev/tty*" and attach the output?

LETRA commented 4 years ago

Pietro just sent me a driver and your engine is running on Hiarcs Chess Explorer !! :)

Captura de pantalla 2020-03-11 a las 15 14 41

LETRA commented 4 years ago
letra@iMac-de-LETRA ~ % ls -l /dev/tty*
crw-rw-rw-  1 root   wheel    2,   0 11 mar 13:09 /dev/tty
crw-rw-rw-  1 root   wheel   18,   2 11 mar 13:09 /dev/tty.AirPodsdeLETRA-Wireless
crw-rw-rw-  1 root   wheel   18,   0 11 mar 13:09 /dev/tty.Bluetooth-Incoming-Port
crw-rw-rw-  1 root   wheel   18,   4 11 mar 15:05 /dev/tty.SLAB_USBtoUART
crw-rw-rw-  1 root   wheel    4,   0 11 mar 13:09 /dev/ttyp0
crw-rw-rw-  1 root   wheel    4,   1 11 mar 13:09 /dev/ttyp1
crw-rw-rw-  1 root   wheel    4,   2 11 mar 13:09 /dev/ttyp2
crw-rw-rw-  1 root   wheel    4,   3 11 mar 13:09 /dev/ttyp3
crw-rw-rw-  1 root   wheel    4,   4 11 mar 13:09 /dev/ttyp4
crw-rw-rw-  1 root   wheel    4,   5 11 mar 13:09 /dev/ttyp5
crw-rw-rw-  1 root   wheel    4,   6 11 mar 13:09 /dev/ttyp6
crw-rw-rw-  1 root   wheel    4,   7 11 mar 13:09 /dev/ttyp7
crw-rw-rw-  1 root   wheel    4,   8 11 mar 13:09 /dev/ttyp8
crw-rw-rw-  1 root   wheel    4,   9 11 mar 13:09 /dev/ttyp9
crw-rw-rw-  1 root   wheel    4,  10 11 mar 13:09 /dev/ttypa
crw-rw-rw-  1 root   wheel    4,  11 11 mar 13:09 /dev/ttypb
crw-rw-rw-  1 root   wheel    4,  12 11 mar 13:09 /dev/ttypc
crw-rw-rw-  1 root   wheel    4,  13 11 mar 13:09 /dev/ttypd
crw-rw-rw-  1 root   wheel    4,  14 11 mar 13:09 /dev/ttype
crw-rw-rw-  1 root   wheel    4,  15 11 mar 13:09 /dev/ttypf
crw-rw-rw-  1 root   wheel    4,  16 11 mar 13:09 /dev/ttyq0
crw-rw-rw-  1 root   wheel    4,  17 11 mar 13:09 /dev/ttyq1
crw-rw-rw-  1 root   wheel    4,  18 11 mar 13:09 /dev/ttyq2
crw-rw-rw-  1 root   wheel    4,  19 11 mar 13:09 /dev/ttyq3
crw-rw-rw-  1 root   wheel    4,  20 11 mar 13:09 /dev/ttyq4
crw-rw-rw-  1 root   wheel    4,  21 11 mar 13:09 /dev/ttyq5
crw-rw-rw-  1 root   wheel    4,  22 11 mar 13:09 /dev/ttyq6
crw-rw-rw-  1 root   wheel    4,  23 11 mar 13:09 /dev/ttyq7
crw-rw-rw-  1 root   wheel    4,  24 11 mar 13:09 /dev/ttyq8
crw-rw-rw-  1 root   wheel    4,  25 11 mar 13:09 /dev/ttyq9
crw-rw-rw-  1 root   wheel    4,  26 11 mar 13:09 /dev/ttyqa
crw-rw-rw-  1 root   wheel    4,  27 11 mar 13:09 /dev/ttyqb
crw-rw-rw-  1 root   wheel    4,  28 11 mar 13:09 /dev/ttyqc
crw-rw-rw-  1 root   wheel    4,  29 11 mar 13:09 /dev/ttyqd
crw-rw-rw-  1 root   wheel    4,  30 11 mar 13:09 /dev/ttyqe
crw-rw-rw-  1 root   wheel    4,  31 11 mar 13:09 /dev/ttyqf
crw-rw-rw-  1 root   wheel    4,  32 11 mar 13:09 /dev/ttyr0
crw-rw-rw-  1 root   wheel    4,  33 11 mar 13:09 /dev/ttyr1
crw-rw-rw-  1 root   wheel    4,  34 11 mar 13:09 /dev/ttyr2
crw-rw-rw-  1 root   wheel    4,  35 11 mar 13:09 /dev/ttyr3
crw-rw-rw-  1 root   wheel    4,  36 11 mar 13:09 /dev/ttyr4
crw-rw-rw-  1 root   wheel    4,  37 11 mar 13:09 /dev/ttyr5
crw-rw-rw-  1 root   wheel    4,  38 11 mar 13:09 /dev/ttyr6
crw-rw-rw-  1 root   wheel    4,  39 11 mar 13:09 /dev/ttyr7
crw-rw-rw-  1 root   wheel    4,  40 11 mar 13:09 /dev/ttyr8
crw-rw-rw-  1 root   wheel    4,  41 11 mar 13:09 /dev/ttyr9
crw-rw-rw-  1 root   wheel    4,  42 11 mar 13:09 /dev/ttyra
crw-rw-rw-  1 root   wheel    4,  43 11 mar 13:09 /dev/ttyrb
crw-rw-rw-  1 root   wheel    4,  44 11 mar 13:09 /dev/ttyrc
crw-rw-rw-  1 root   wheel    4,  45 11 mar 13:09 /dev/ttyrd
crw-rw-rw-  1 root   wheel    4,  46 11 mar 13:09 /dev/ttyre
crw-rw-rw-  1 root   wheel    4,  47 11 mar 13:09 /dev/ttyrf
crw-rw-rw-  1 root   wheel    4,  48 11 mar 13:09 /dev/ttys0
crw--w----  1 letra  tty     16,   0 11 mar 15:17 /dev/ttys000
crw--w----  1 letra  tty     16,   1 11 mar 15:07 /dev/ttys001
crw-rw-rw-  1 root   wheel    4,  49 11 mar 13:09 /dev/ttys1
crw-rw-rw-  1 root   wheel    4,  50 11 mar 13:09 /dev/ttys2
crw-rw-rw-  1 root   wheel    4,  51 11 mar 13:09 /dev/ttys3
crw-rw-rw-  1 root   wheel    4,  52 11 mar 13:09 /dev/ttys4
crw-rw-rw-  1 root   wheel    4,  53 11 mar 13:09 /dev/ttys5
crw-rw-rw-  1 root   wheel    4,  54 11 mar 13:09 /dev/ttys6
crw-rw-rw-  1 root   wheel    4,  55 11 mar 13:09 /dev/ttys7
crw-rw-rw-  1 root   wheel    4,  56 11 mar 13:09 /dev/ttys8
crw-rw-rw-  1 root   wheel    4,  57 11 mar 13:09 /dev/ttys9
crw-rw-rw-  1 root   wheel    4,  58 11 mar 13:09 /dev/ttysa
crw-rw-rw-  1 root   wheel    4,  59 11 mar 13:09 /dev/ttysb
crw-rw-rw-  1 root   wheel    4,  60 11 mar 13:09 /dev/ttysc
crw-rw-rw-  1 root   wheel    4,  61 11 mar 13:09 /dev/ttysd
crw-rw-rw-  1 root   wheel    4,  62 11 mar 13:09 /dev/ttyse
crw-rw-rw-  1 root   wheel    4,  63 11 mar 13:09 /dev/ttysf
crw-rw-rw-  1 root   wheel    4,  64 11 mar 13:09 /dev/ttyt0
crw-rw-rw-  1 root   wheel    4,  65 11 mar 13:09 /dev/ttyt1
crw-rw-rw-  1 root   wheel    4,  66 11 mar 13:09 /dev/ttyt2
crw-rw-rw-  1 root   wheel    4,  67 11 mar 13:09 /dev/ttyt3
crw-rw-rw-  1 root   wheel    4,  68 11 mar 13:09 /dev/ttyt4
crw-rw-rw-  1 root   wheel    4,  69 11 mar 13:09 /dev/ttyt5
crw-rw-rw-  1 root   wheel    4,  70 11 mar 13:09 /dev/ttyt6
crw-rw-rw-  1 root   wheel    4,  71 11 mar 13:09 /dev/ttyt7
crw-rw-rw-  1 root   wheel    4,  72 11 mar 13:09 /dev/ttyt8
crw-rw-rw-  1 root   wheel    4,  73 11 mar 13:09 /dev/ttyt9
crw-rw-rw-  1 root   wheel    4,  74 11 mar 13:09 /dev/ttyta
crw-rw-rw-  1 root   wheel    4,  75 11 mar 13:09 /dev/ttytb
crw-rw-rw-  1 root   wheel    4,  76 11 mar 13:09 /dev/ttytc
crw-rw-rw-  1 root   wheel    4,  77 11 mar 13:09 /dev/ttytd
crw-rw-rw-  1 root   wheel    4,  78 11 mar 13:09 /dev/ttyte
crw-rw-rw-  1 root   wheel    4,  79 11 mar 13:09 /dev/ttytf
crw-rw-rw-  1 root   wheel    4,  80 11 mar 13:09 /dev/ttyu0
crw-rw-rw-  1 root   wheel    4,  81 11 mar 13:09 /dev/ttyu1
crw-rw-rw-  1 root   wheel    4,  82 11 mar 13:09 /dev/ttyu2
crw-rw-rw-  1 root   wheel    4,  83 11 mar 13:09 /dev/ttyu3
crw-rw-rw-  1 root   wheel    4,  84 11 mar 13:09 /dev/ttyu4
crw-rw-rw-  1 root   wheel    4,  85 11 mar 13:09 /dev/ttyu5
crw-rw-rw-  1 root   wheel    4,  86 11 mar 13:09 /dev/ttyu6
crw-rw-rw-  1 root   wheel    4,  87 11 mar 13:09 /dev/ttyu7
crw-rw-rw-  1 root   wheel    4,  88 11 mar 13:09 /dev/ttyu8
crw-rw-rw-  1 root   wheel    4,  89 11 mar 13:09 /dev/ttyu9
crw-rw-rw-  1 root   wheel    4,  90 11 mar 13:09 /dev/ttyua
crw-rw-rw-  1 root   wheel    4,  91 11 mar 13:09 /dev/ttyub
crw-rw-rw-  1 root   wheel    4,  92 11 mar 13:09 /dev/ttyuc
crw-rw-rw-  1 root   wheel    4,  93 11 mar 13:09 /dev/ttyud
crw-rw-rw-  1 root   wheel    4,  94 11 mar 13:09 /dev/ttyue
crw-rw-rw-  1 root   wheel    4,  95 11 mar 13:09 /dev/ttyuf
crw-rw-rw-  1 root   wheel    4,  96 11 mar 13:09 /dev/ttyv0
crw-rw-rw-  1 root   wheel    4,  97 11 mar 13:09 /dev/ttyv1
crw-rw-rw-  1 root   wheel    4,  98 11 mar 13:09 /dev/ttyv2
crw-rw-rw-  1 root   wheel    4,  99 11 mar 13:09 /dev/ttyv3
crw-rw-rw-  1 root   wheel    4, 100 11 mar 13:09 /dev/ttyv4
crw-rw-rw-  1 root   wheel    4, 101 11 mar 13:09 /dev/ttyv5
crw-rw-rw-  1 root   wheel    4, 102 11 mar 13:09 /dev/ttyv6
crw-rw-rw-  1 root   wheel    4, 103 11 mar 13:09 /dev/ttyv7
crw-rw-rw-  1 root   wheel    4, 104 11 mar 13:09 /dev/ttyv8
crw-rw-rw-  1 root   wheel    4, 105 11 mar 13:09 /dev/ttyv9
crw-rw-rw-  1 root   wheel    4, 106 11 mar 13:09 /dev/ttyva
crw-rw-rw-  1 root   wheel    4, 107 11 mar 13:09 /dev/ttyvb
crw-rw-rw-  1 root   wheel    4, 108 11 mar 13:09 /dev/ttyvc
crw-rw-rw-  1 root   wheel    4, 109 11 mar 13:09 /dev/ttyvd
crw-rw-rw-  1 root   wheel    4, 110 11 mar 13:09 /dev/ttyve
crw-rw-rw-  1 root   wheel    4, 111 11 mar 13:09 /dev/ttyvf
crw-rw-rw-  1 root   wheel    4, 112 11 mar 13:09 /dev/ttyw0
crw-rw-rw-  1 root   wheel    4, 113 11 mar 13:09 /dev/ttyw1
crw-rw-rw-  1 root   wheel    4, 114 11 mar 13:09 /dev/ttyw2
crw-rw-rw-  1 root   wheel    4, 115 11 mar 13:09 /dev/ttyw3
crw-rw-rw-  1 root   wheel    4, 116 11 mar 13:09 /dev/ttyw4
crw-rw-rw-  1 root   wheel    4, 117 11 mar 13:09 /dev/ttyw5
crw-rw-rw-  1 root   wheel    4, 118 11 mar 13:09 /dev/ttyw6
crw-rw-rw-  1 root   wheel    4, 119 11 mar 13:09 /dev/ttyw7
crw-rw-rw-  1 root   wheel    4, 120 11 mar 13:09 /dev/ttyw8
crw-rw-rw-  1 root   wheel    4, 121 11 mar 13:09 /dev/ttyw9
crw-rw-rw-  1 root   wheel    4, 122 11 mar 13:09 /dev/ttywa
crw-rw-rw-  1 root   wheel    4, 123 11 mar 13:09 /dev/ttywb
crw-rw-rw-  1 root   wheel    4, 124 11 mar 13:09 /dev/ttywc
crw-rw-rw-  1 root   wheel    4, 125 11 mar 13:09 /dev/ttywd
crw-rw-rw-  1 root   wheel    4, 126 11 mar 13:09 /dev/ttywe
crw-rw-rw-  1 root   wheel    4, 127 11 mar 13:09 /dev/ttywf
haklein commented 4 years ago

Ah perfect, so you're up and running. That's great!

Yeah, in your output I can see the silabs virtual com port: crw-rw-rw- 1 root wheel 18, 4 11 mar 15:05 /dev/tty.SLAB_USBtoUART

Enjoy your Certabo board! And just nag if you hit any issues with the UCI engine.

LETRA commented 4 years ago

Thank you very much for your app and your help (I'll give you the trouble to install it in Windows again) ^^ :)

haklein commented 4 years ago

@LETRA for windows, there is a project from Lars. Frankly I'm not sure if my code works on windows, as it does use fcntl locking, which is not available on win. While this would probably be easy to fix (use different locking on windows), the engine from Lars seems to be in a very good shape with nice documentation: https://www.certabo.com/certabo-forum/topic/certabo-uci-driver-by-lars-nowak/ I'm currently moving all certabo related code in a separate python certabo module, and will use that in my lichess client (already there), the lichess broadcaster and the UCI engine (pending). After that has been done, I'll maybe find time to ensure that this python-certabo module will also run fine on windows.

LETRA commented 4 years ago

Thank you! I'm going to try the Windows app later, but I spent a couple of hours installing your Lichess app on these two computers and I'm very satisfied. I have the impression that it is simpler and more solid than the official app. Also, the moves respond faster (mine and the opponent's) and it doesn't waste so much time. I think the drivers for Chrome and Firefox used by the official app are less solid. I have played two games in Lichess with Safari and without any bug except add piece that doesn't work. I am very happy to use the Certabo board on the Mac for playing online, which is my main operating system. When add piece works in calibration I think I will turn on little Windows for this :)

haklein commented 4 years ago

@LETRA the lichess code is very fresh, just a few days old, but I'm also very happy with the current results. I was talking to Pietro from Certabo, and there will be efforts from them to integrate my board API client code into their GUI and hence make it easier to install and use for users. The official app for the online platforms was released by Certabo before lichess did provide a board API. So it is not using that yet, but hooking into the browser to "simulate" a human interacting with the webpage. That has some drawbacks, as you do see e.g. in regards to speed. AddPiece will be easy to add, I just didn't provide a commandline switch for that yet. I'll do that these days. Nice to hear that you're happy with the code. Thanks for the feedback,

br Hari