picochess v0.9p – License version

Github statistic LocutusOfPenguin

Howdy registered users! This is my first post with restricted access. Update Christmas 2019: Its now freely available 😉

You probably realized that the last (released) picochess v0.9N version is over 3months old. In past i released new versions every 3weeks in average. Why is that?
I spend too much time on developing picochess over the last 3years. But i have a family, some friends and a real job. So, i had to cut away my active development of picochess. My new role is now a “picochess user”, like anyone else out there.

Saying this im aware that probably noone would continue to bring new features to this product! But for myself i will develop my own ideas for my versions. This 0.9P is the first and its done cause i began already with “P” before i decided to stop (asap).

The main design goal for this version was to continue with the v0.88 (Dispatcher) which means to have two clocks being independent from each other. In older versions if y see a message on one clock its also displayed on the other. Now i can enter the menu on one clock and still see times, best moves and more on the other clock. This is working with DGTPi & DGT3000/XL clock or the DGTPi together with the revelation II. The webserver clock is also independent of the others so y not necessarily need 2 hardware clocks.
The info is now displayed only on the clock y pressed the button on – this allows alot of flexibility.

So far the old reason. Another reason i stopped on picochess for public users is that my work is used by others and i dont get any substantial money back. So i decide to protect my work abit and from now on picochess has a license level system. There is a “free” version, where you can test out picochess. Its limited to only 15moves playing and no position setup. It should be good enough to find out if y want to go any further. You can also get a full version where it behaves the same as before on older versions – but y need an iNet connection to check your license. These license is bound to your dgt board and its limited in time.

Al was so kind to test this together with me. In this moment im not sure, if i continue with this system, but if you want to try it out you can download the try version below. If you have at least a valid month plan you can ask me to send y a license. But for the moment try it out first, im working to make the installation abit easier for you. Saying this, please be aware that this needs for example some linux (copy) commands etc. If y have no idea of linux please do NOT download these files, ok? No refund if y did – esp not if y have a month plan only. For 6,00€ y cant expect i solve all yr problems but i will try to help y (as i did in past too)!

You can no longer download this package (closed on Feb 2019)

Yours, Jürgen


  1. Picochess 0.9n is a fully developed program. Just update the main engine from time to time. Probably I could buy such small updates but rather not a limited license in time.

    • Hi Karol,
      your answer is very much appreciated. For sure 09N is good enough – since its part of a sold(!) hardware. So, its fine to continue to use this.

      Actually, i want to do it the following way:
      get a licence for THIS (buyed) version and/or get a time license for releases in this period (incl. updates). But since im not sure i do have time in future, i began with one system right now 😉

      Engines y can update yourself – you dont need to be a developer – as i did on this version too – but thats no big deal.

      But i like to hear your ideas.

  2. next week i can send y a version – perhaps by eMail or y need to download it from here.

    the main focus i told y already: get two clocks act independent from eachother.
    Despite this:
    – the version also working with Rasp3+
    – new “Network-Wait Flag” how long picochess should wait at startup for a working iNet (before it waits 10sec…can now by decided yrsf)
    – Beeps on Error Message (like “Engine-Error”) can now be turned on/off on its own.
    – ZuriChess now using the same strength settings like the other engines (level 0 = weak)
    – some Engine Updates -> newest versions
    – some small bugfixes, like for example beep like hell on ponder & piep=ALL settings
    – Long notation now is “LAN” no longer XL version, so not “g1f3” instead “Ng1xf3” on clock

    You can search for UCI engines – most y can find on github and compile yrsf (if no binary inside / most done have) but you can also ask AL to give y his engines ready to be copied in yr engine folder. Al is currently in holiday but y can find his contact at google picochess forum

  3. Dear Jürgen,

    I understand the reasons and therefor I will give you a little support to you with my account. Please tell me details how I can get access to your github for downloading the changes for the new version 0.9P?

    Manfred / 2018-04-20

  4. Dear Jürgen,
    thank you very much for supporting picochess for such a long time for free!
    I just created an account with a 1 year subscription. This I did also to honor your work you already accomplished. Don’t put yourself under to much pressure for the further development of picochess. Having fun with what you do, should always have the highest priority.
    Yours Jürgen

  5. Dear Jürgen,
    thanks for your kind words and yr subscription!
    Well, i learned that there is something else as picochess in life 😉
    But i liked to work on it and it gave me alot of joy in past years.

  6. Hallo. I have pay 1 Month plan for the 0.9p Version. Where I found it. And I need this Version as IMG for Sd-Card. I cant use the Online-Update.

    • Hi Peter,
      you can find the download link on bottom of main text. But there is no IMG to download. You need to copy these downloaded files over an old image (actually: your picochess folder) y have – as the docu saying inside.

  7. Hello. I copied the download 09.p over the old IMG (09.j). no change. The watch will still show 09.j? No Linux freak. Please send me back my money. Thanks

  8. Hi Peter,
    sorry that y not satisfied. But y got what y paid for – hard as it sounds. You cant find somewhere its said, y get an IMAGE and from former posts y know already, that i dont provide these images (so, its nothing new – but y *still* used/downloaded it, no? => thats yr fault).

    If y put the files in correct way, it will show y a 0.9P version – on “try” state…and with the license i would have send y (and anyone else) lateron, as soon i got the info, i need (see docu) to a full version.
    How about y wait abit? I’ll see if i can do this image JUST FOR Y…but i dont want to promise y anything, ok??

    Giving y money back is easier for me, believe me. I will change my text abit to keep away people with strange expectations like y. Im doing all this for fun, making people (users) happy not to get small money.

  9. 750MB (compressed) +33% eMail? NO…something else? Y need to download it from somewhere IF – and only IF – i really do it (you understood, that i offered NOTHING!). But y still do not have yr license file on it. Or should i also do that?!?

    I tell y a joke:
    Person: going inside shop and asking the price of product.
    Seller: 100 US$
    Person: tooo much…and talking long time for reasons to reduce price.
    Person: How much now?
    Seller: 150US$
    Person: why that? its now more expensive as at the start
    Seller: Yes, cause y costed me alot of my time.

    => My time & your money is out…Wait please and hope, pray, go to court,… 🙂

  10. I create sd card 0.9e then copy/overwrite downloaded files into folder picochess. I create picochess.ini and enable update but nothing hapennign on the dgt clock when i run computer with board. Mayby I mixed something.

    • In meantime i tried it myself and it works as i expected. Just be sure, y have all in one TOP folder (even the zip & tar produce their own TOP ones). Its at end similar to the old picochess.

  11. I tried everything that came to my mind but it does not work. I tried to update only the main engine. Did not work. Without a detailed instruction from the beginning to the end or the img version, it is a waste of our time.

    • But i explained it already many times. You untar the new 09P-file and the base-zip file, that gets y two folders, and then y combine them to one. You dont(!) use any old picochess folder/file structure…everything from scratch. As a result y get something like this:
      0.9p structure

      Then y run the pip3 command and you can try to start “python3 ./picochess.py” …to see if y get any errors. Please dont try something, follow me, then y get our both time to an absolute minimum 😉

  12. I deleted the old Picochess folder in version 0.9e. Then I copied two packages into the new picochess folder, just like on screenshots. Then I started pip3 install -U -r requirements.txt in the picochess folder. Something has been installed. Then I ran python3 ./picochess.py and got some engine errors. I think I need some fresh air, best regards.

    • If y send me these “engine errors” or even better the complete log, i might be able to help y 😉
      Which Rasp y are using?

  13. Dear Jürgen,

    it is a little bit disappointing. I made several tries – but no success. After the version message “… 9P” on my DGT3000 the program is frozen. That’s certainly my fault.

    Sorry, it would be better, when all picochess friends directed by a really clear/easy step by step procedure/checklist with Linux commands.


    • No idea why y all have so many problems.
      If y follow what i said (and y dont need to experiment how i perhaps meant it), it should work. For Al it was so. Perhaps im not good in explaining?

      Is there really noone who succeed? Anyone with skype account and time => Manfred perhaps?

      • Dear Jürgen,

        Please, on which way I can send you the logfile? The last rows of the logfile content are:

        2018-04-30 13:54:29.930 INFO threading – run: (ser) clock new time received l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:08:58.307 WARNING threading – run: (ser) clock illegal new time received (11, 6, 44, 0, 21, 0, 16)
        2018-04-30 14:08:59.099 INFO threading – run: (ser) clock new time received l:(0, 0, 0) r:(0, 0, 0)
        2018-04-30 14:08:59.100 INFO threading – run: (ser) clock not connected, sending old time l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:08:59.941 INFO threading – run: (ser) clock new time received l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:09:55.430 INFO threading – _bootstrap_inner: msgdisplay_queue ready
        2018-04-30 14:09:55.433 INFO threading – _bootstrap_inner: msgdisplay_queue ready
        2018-04-30 14:09:55.434 INFO threading – _bootstrap_inner: msgdisplay_queue ready
        2018-04-30 14:09:55.441 INFO threading – _bootstrap_inner: [web] dgtdisplay_queue ready
        2018-04-30 14:09:55.447 INFO threading – _bootstrap_inner: evt_queue ready
        2018-04-30 14:09:55.449 INFO threading – run: incoming_board ready
        2018-04-30 14:09:55.456 INFO threading – _bootstrap_inner: [ser] dgtdisplay_queue ready
        2018-04-30 14:09:55.458 INFO threading – _bootstrap_inner: dgt_queue ready
        2018-04-30 14:09:55.473 INFO threading – _bootstrap_inner: msgdisplay_queue ready
        2018-04-30 14:09:55.489 ERROR picochess – main: OS error in starting engine
        Traceback (most recent call last):
        File “uci.py”, line 148, in uci.UciEngine.__init__ (uci.c:5251)
        File “/usr/local/lib/python3.4/dist-packages/chess/uci.py”, line 688, in uci
        return self._queue_command(command, async_callback)
        File “/usr/local/lib/python3.4/dist-packages/chess/uci.py”, line 666, in _queue_command
        return future.result(timeout=FUTURE_POLL_TIMEOUT)
        File “/usr/lib/python3.4/concurrent/futures/_base.py”, line 402, in result
        return self.__get_result()
        File “/usr/lib/python3.4/concurrent/futures/_base.py”, line 354, in __get_result
        raise self._exception
        File “/usr/lib/python3.4/concurrent/futures/thread.py”, line 54, in run
        result = self.fn(*self.args, **self.kwargs)
        File “/usr/local/lib/python3.4/dist-packages/chess/uci.py”, line 682, in command
        File “/usr/local/lib/python3.4/dist-packages/chess/uci.py”, line 291, in send_line
        return self.process.send_line(line)
        File “/usr/local/lib/python3.4/dist-packages/chess/engine.py”, line 181, in send_line
        self.process.stdin.write(string + “\n”)
        BrokenPipeError: [Errno 32] Broken pipe
        2018-04-30 14:10:01.419 INFO threading – run: (ser) clock new time received l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:10:01.420 INFO threading – run: (ser) clock still in set mode, sending old time l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:10:03.184 INFO threading – run: (ser) clock new time received l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:10:03.185 INFO threading – run: (ser) clock still in set mode, sending old time l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:10:04.044 INFO threading – run: (ser) clock new time received l:(0, 0, 0) r:(0, 0, 0)
        2018-04-30 14:10:04.046 INFO threading – run: (ser) clock not connected, sending old time l:(0, 15, 0) r:(0, 15, 0)
        2018-04-30 14:10:04.936 INFO threading – run: (ser) clock new time received l:(0, 15, 0) r:(0, 15, 0)



  14. Hello Jürgen,

    I bought 1-month access today hoping to download picochess v0.9p for my DGT-Pi. Currently, I have picochess v0.9l working just fine. I used ApplePi-Baker, latest version, but it will not recognize the downloaded picochess v0.9p file (v0.9p-f595.tar). I am no expert in these things, but I think that if I had the same file with an IMG extension, I could install it successfully with ApplePi-Baker just as I did dgtpi_v0.9l.img. Would you be able to provide that for me, please? I appreciate your consideration and effort very much.

    Yours sincerely,

    D Scott Meadows

  15. Hello Jürgen,

    I forgot to mention I am using a MacBook Pro running High Sierra (latest operating system). Thanks.


    D Scott Meadows

  16. Hi Manfred (&Karol)
    do y have a picochess.ini file in place (perhaps the one from old picochess)?
    If yes, please move it away..if not please move it inside yr new folder – but answer above Q first.
    You can also try to start picochess by hand with “-e” parameter like: “python3 ./picochess.py -e b-texel”

    • Dear Jürgen,

      thanks for your help.

      In the meantime I found my fault within the wide field of access rights of files
      and folders.

      I urgently recommend all folks a comparison between rights/groups etc. of an running old picochess V09N and the new V09P. Please correct the differences to the functional right level with “chmod” and perhaps with “chown”. My mistake was arising when I inserted the prepared picochess.picochess folder with “SCP” from my MobaXTerm on PC into the target Raspberry system.

      Picochess V0.9P is now principal running with sound and web server.



      • I can provide a script to set folder&file rights correctly. No big deal. But it shouldnt be needed, if y clone from my github. Hmmm.

  17. Hi Douglas,
    oh my dear … You should read my text before y download 🙂 If y see my answer to Peter, its same problem. I will try (no promise!) , but its alot of effort for me. I can understand its easier for y but on windows (or apple) if y install a program the users also not get a whole OS system 😉
    Even i send y such an image, y still need to put the license file on one linux partition (/opt)…You all need to learn linux abit, please.

  18. My problem is I have downloaded the: Picochess-RaspberryPi-v09e-img.tgz It is 1 169 997 kB big.
    But it will not extract, using 8zip.
    Any idea?

  19. I did not have picochess.ini I changed the name of the new picochess.ini.example to picochess.ini in the folder / opt / picochess. Picochess started with 0.9P and usbboard message on the clock but error engine. I follow
    “python3 ./picochess.py -e b-texel” still engine errors.
    I tried compiled stockifsh for armv7 but it does not work on my 0.9n
    sudo apt-get install git g++
    git clone https://github.com/official-stockfish/Stockfish.git
    cd Stockfish/src
    make help
    make profile-build ARCH=armv7
    It works whith “make profile-build ARCH=x86-64”

  20. Here are the commands y need to run inside yr 0.9P folder to correct (maybe wrong) rights:
    find engines/armv6l/ -type f -exec chmod 755 {} \;
    find engines/armv6l/*.* -type f -exec chmod 644 {} \;
    find engines/armv7l/ -type f -exec chmod 755 {} \;
    find engines/armv7l/*.* -type f -exec chmod 644 {} \;

    find engines/rodent3/ -type f -exec chmod 644 {} \;
    find engines/ -type d -exec chmod 755 {} \;

  21. Karol:
    you dont need to make it so complex (=compile yrsf). the provided a-stockf should run. You can see that yrsf if y going inside the engines/armXXX folder, and just type “./a-stockf” [&& “uci” and “quit”]
    I guess, y have the same right problem as Manfred…so,try to run the above find commands.

    Btw. you dont need to copy the example file if y dont change something inside there (cause all commands are commented out for safety). So, even with yr (renamed) ini file all standards are loaded, which is OKAY.

  22. Jürgen Précour, I have now downloaded and IMG and this /P-thing. When I get my DGT-kit I will test it. But already now I want to thank you for this. I can tell by reading all the comments here, and your quick reply to my question before, that you are doing a fine job for us! Many thanks for this!! I have payed one week, but will glad to pay more to support you when I have this thing up and running. 🙂

  23. Hi Joakim,
    thanks for yr words. But i *think* y not allowed to download this “P-thing” cause it needs a month-plan at least;-)
    Great it works for y now! Thats what its all about when i began with picochess. Make people happy with things i loved to do.

  24. I try
    find engines/armv7l/ -type f -exec chmod 755 {} \;
    find engines/armv7l/*.* -type f -exec chmod 644 {} \;

    in /opt/picochess folder and I received such a message
    missing operand for each engine file in separate row.

  25. 3 Nicknames in 6 + 8 + 11 chars => your license name (see howto)
    yr Board ID. Y can also tell me the one from the console prints (=4 chars) when y run picochess with yr connected(!) board.

  26. Dear Jürgen,
    how are the character abbreviations set in the web server? Language is set to German, short notation. Output language for moves in the DGT3000 is German, but the web server shows moves in English. See, e.g. “SF3” within DGT3000, the web server shows “Nf3”. This was fine in the old V09N, here was the output “Sf3”.

  27. Manfred:
    Im back from my holiday.
    Short test doesnt show a problem with the webserver display. I still get “Sf3”. hmmm.

    Today i also updated several engines to its newest versions.

Leave a Reply

Your email address will not be published.


This site uses Akismet to reduce spam. Learn how your comment data is processed.