picochess v0.9m – remote engine

Despite the installed (local) chess engines picochess is also able to deal with remote engines. The raspberry pi is limited in computing power compared to a standard pc. For this reason it is possible – for a very long time – to run the chess engines on a different computer. The former implementation wasnt too good and had some problems if you for example change the engine with the clock. I now fixed this. From now on, the remote engine doesnt interfere with the local ones.

Following things are also implemented:

  • some flag names are changes to follow the “enable/disable” names like “console” is now “enable-console” and more
  • several chess engines are updated like “Sayuri”, “Arasan”, “Rodent” and more
  • DGT3000 or DGT-Pi users can now turn off the short notation to see something similar as on a DGT-XL clock (“e2e4”). That was a wish from Rudolf. Ha, in meantime i had some conversation with Rudolf and this is not exactly what he wanted 🙂 So, i update my code abit on next release.

How to use the remote engine

I shortly describe how to make use of remote engines. In my example i use my own ubuntu computer locally connected with the dgt board. If your engine server (the pc you want to use the engines from) is somewhere on your LAN or even at some point at the internet just change the parameters. For this test i copied the engines/x86_64 engines to /tmp/test and change abit this /tmp/test/engines.ini file to see a difference to the copied one. For remote engines to work picochess will need a similar folder structure as on the local ones. At first it will look for the engines.ini file and use this information for the (remote) engines.

If your engine server is a windows pc please take into account that you need a ssh-server (not client like putty) running on this windows. For this you need to do something – its not automatically installed (for security reasons). But im not a windows user and therefore i cant tell you what exactly y need to do – as soon i know it, i update this docu. Sorry.

So, as the system is ready i start with the command line like so “./picochess.py -w 8080 -ers localhost -eru your_login_name -erp dont_want_to_tell -erh /tmp/test -er b-texel”

This means:

  • i want a webserver at port 8080 running
  • the engine server i connect to is “localhost” with my username “your_login_name” and pasword “dont_want_to_tell”
  • on this engine server the engines (and engine.ini) is located at “/tmp/test”
  • the start engine i want to begin with is “texel” (without this parameter, picochess using the first available engine in the engine list)

Doing so, picochess will run the same way as any local engine. You can even change the remote engine with the clock buttons. As said above this choose isnt saved to your picochess.ini file. I hope this short docu helps you abit to try this feature yourself. Well, remote engines feature is abit technical. You can enjoy picochess even without using any of this stuff. But if you want to give it a try but have problems please comment here. I will help you.

28 Comments

  1. Happy new year Jürgen and thank you for the new update, especially the long notation which I personally like more than the short one – so many thanks for this.

    Just a quick suggestion: in comparison to the short notation there is are no charactes/symbols for check or if a piece is taken. Is it possible to show these symbols also for long notation or is there a technical restriction?
    So instead of just showing e3d2 the following could be displayed: e3xd2+ And if no piece is taken just display like
    e2-e4. Don‘t know if this would be possible but from my point of view it would be more consistent with a long notation…
    Anyway – I also will try the remote feature (hopefully it will similar work with windows instead of Ubuntu ).
    Many thanks for the update!

    Regards
    Dirk

  2. Hello again,

    I just double checked the long notation display in other chess programs which i like and which work together with dgt 3000 clock and board: in Shredder and Fritz the long notation display even shows the first character of the moved pieces like Ke4xd3+ every time (even for pawns)
    That’s probably the best display for people like me who really like the long notation because it helps avoiding mistakes and recognition of correct piece on board more quickly and safer (at least for me 😉
    Regards
    Dirk

    • Pe4? That looks ugly in my eyes 😉
      To you&Rudolf:
      i can display what i want as long i dont crush the limited 8chars. Would be a problem with Ke4xd3+ (7chars) if i also display a move number.
      But its possible (without numbers then)

  3. admin: i translated the german text to english (with google translator). SORRY, rudolf! (see my answer)

    Hello Jürgen, First of all thanks for the long notation. Glad that it finds Dirk useful. But that was probably a big misunderstanding. I thought, I would have explained it in the forum exactly. I wanted this long notation in the web interface in the browser. Because of course “figurine long notation”. I need that, when I take back moves to try a new variant and it’s just handy when you see how the exact sequence was. In the DGTPi the long notation is not important to me, if one executes the move is clearly drawn from where. But not when you take back moves.
    By the way, I have allowed you to 2018 (as in 2017) again one
    Donate via Paypal for assistance. If you do that via the button on this page, then it is made as a “trader”, I actually wanted to transfer privately. I do not know now if there are costs for you? Greeting Rudolf

    • Dear Rudolf,

      first..Happy new year, and all the best for you in 2018. Thank you very much for your donation.
      And yes, i have to pay a fee cause PayPal doesnt offer free service even for donations.
      Forgive me, if i translate all to english even thats not our mother language – people already complained me, for my bad english texts here 😉 but this side should not have lots of languages mixed up. If you want to tell me something in german, please use my private eMail account. Mea culpa.

      The webserver display is a mirror to the clock display, so it will display what y see on the clock. What exactly is “figurine long notation”? Is that what Dirk just posted? Sorry, i must have misunderstood your forum post. I see if i can correct it (soon).

  4. Hi,

    I have some issues with picochess.ini. If I change something via the menu on the Dgt-pi it writes it to picochess.ini but overwrites whole parts of picochess.ini. If I start with a fresh version of picochess.ini by copying it from the picochess.ini.example file, it gets destroyed again when I change something in the menu.

    Any ideas?

    • Hi Frank-Oliver,
      i tried it with my ubuntu (no dgt clock ready right now). Copy the example file to ini and changed the engine. For me, the file is only changed there, its not destroyed. What exactly y trying to do to crush yr file (=minimal usuage to get a failure)? How you get picochess (by updates, … ?) and y using v0.9m?

  5. I use 0.9m and updated via sudo git pull origin master. I copies picochess.ini.example to picochess.ini and un-commented dgt-pi = true. If I then change something in the menu it writes those changes directly after the dgt-pi = true line and shifts the rest done. That seems ok, but if I change more, e.g. the computer-voice section further done, changing the menu overwrites lines after the Computer-voice flag. I also have some strange behavior that the computer-voice stops talking after the 22nd move and I have to manually turn it back on.

    Sorry for this confusion

    • the other two (voice stops, picochess.ini) i can only say this – in this moment(!):

      – voices are turned off, if one side has lower as 1min rest time. If thats the case, everything is fine 😉

      – did you use any windows editor to edit this file or using for example “nano”? Lateron i can try to find the problem – but as said some hours ago, for me it works fine – at first test. Lets see.

  6. Hi,

    I found some issue with setting voices via the menu system. If I set computer voice = on and select language and name, the system writes ‘user-voice = …’ to picochess.ini instead of ‘computer-voice=…’. I tried this several times.

  7. I did some more tests. Regardless whether I set the user or the computer voice via the menu, the system always writes the User-voice line to the picochess.ini. While I play, settings stay correct. After reboot, only the user voice is activated , the computer voice is lost (as it was not stored in picochess.ini). In addition, the voices stop talking as written in my last post. Only restarting re-activates the User-voice, the computer-voice has to be manually re-set via the menu to work.

  8. Thanks for this quick fix. Now I can play a full game with any voices I like till the end.

    However, if I set voices with the DGT PI menu, it still stores everything under user-voice and nothing under Computer-voice, so after re-start, only the user voice ist still there. If I edit picochess.ini directly, I can set and store both voices.

    Some bug still seems to be there, but less of a problem.

  9. Sorry, I missed zur Post about voices stopping if one player has less than 1 Minute left. So this explains the silence. I have however still the missing computer-voice written to picochess.ini when set in the menu.

  10. Thank You Jürgen for the great news! I will test the 9m within the next days. I use the Remote-Engine-Option with Arena very often. Especially when I travel to tournaments, I like to use my high-end-server with 128 cores with my little Smart-Book to analyse some positions, etc.

    With the 9m I can use my DGT-Board with DGT Pi for analysing games with the high-end-power of a remote-engine. But one little thing should be changed. It would be nice, if I could scroll through the lines of the analysing engine. For the moment I see online one move in the display. This is for real analysing not enough.

    Maybe you can change this and make it possible, to use the -> button to see the next move of the line and with pressing again the button to see the next move and so on.

    Once again Thank you Jürgen, for all the time you invest in this (your) project.

    Benny

    PS:
    Any progress with the MESS?

    • Hi Karol,
      you can reduce the strength by going to “engine” select “Stockfish” , and then you’re asked for the level. Here you can setup 0 (weakest) or any higher number.
      As an alternative you can also use the bQ on line 5 (a5-h5) if you’re in starting position.
      Hints you can get by pressing the “+” button of clock.

      • I meant situations when I’m playing against Rodent III Amy, for example. And I get a hint from stockfish level 20. It would be nice if in the teacher mode I get hints from the selected engine when my move is, for example, much weaker (value to define). It’s not my idea I saw it in the lucas chess program and I really like it. Thank you very much for your work so far. GREAT JOB!!!

        • Oh, a “teacher” mode. I had this idea before too, but as always lots of good ideas but fewer time 😉

          I gonna implement this but dont expect this happening in next few months. Anyway, your improvement suggestion is really appreciatived!

      • I have one more question. If I play against Rodent III Amy and then press + I will get a hint from Rodent III in default values (much stronger).

        • Y will get the so called “ponder” move. So, its based on the last/current search and therefore its what “Amy” would suggest you to play. = If y choose a very weak opponent this move is also weak.

  11. That’s a very good question, I’ve often wondered that. For example, one day I played Stockfish Level 7 and continually pressed + for move hints to see what happened, result I won the game. So do the Hints come from Stockfish Level 20?

    Al.

Leave a Reply

Your email address will not be published.


*