Changes in Picochess V4. Happy new year testing 2026

969 views
Skip to first unread message

Johan Sjöblom

unread,
Jan 6, 2026, 1:07:56 PMJan 6
to PicoChess
Hi all brave testers of Picochess V4. Happy new year testing :-)

Some more steps towards a future with Trixie and standard Pi or Linux installations with Wayland and any audio setting. V4 no longer depends on X-window and pulseaudio. Wayland will be automatically detected for Mame artwork and the kiosk.sh. To stop using dependencies on pulseaudio you have to change one picochess.ini setting. This will later become default, but I thought its safest to keep the default sound system exactly like in Picochess V3 for now...
audio-backend = sox (same as V3 and needs pulseaudio, currently default)
audio-backend = native (with this you no longer depend on pulseaudio)

I placed the kiosk.sh in /opt/picochess so you can launch it from there from autostarts. The kiosk.sh had not been in the repository before. First I copied the V3, and today I changed it to detect Wayland and in that case it skips all the X-windows commands.

- You can control web speech settings with two new picochess.ini settings. Web-speech is not Christina or Al, its the synthetic speech in web clients.  In many Linux and Pi 5 there will be a web speech sound that you have not heard before in Pi 3, 4. To control the speech from the web client use these picochess.ini settings:
Example of default configuration:
## Enable speech synthesis in the web client when accessed from localhost
web-speech-local = False
## Enable speech synthesis in the web client when accessed remotely
web-speech-remote = True

Gerhard picked some code from V3 to V4 support Tabutronic Spectrum, and Chessnut Move eboards, thanks for that :-)

There was a scroll bar missing on the PGN move list if you are not in portrait mode in the web client. For long PGN games this was a problem as you could not scroll down the move list. This is now fixed.

I am sure I made some mistakes somewhere, so please post successes or failures here or open new issues in https://github.com/JohanSjoblom/picochess/issues

-- Johan

Randy Reade

unread,
Jan 6, 2026, 4:01:00 PMJan 6
to pico...@googlegroups.com
Thanks for the continued development of PicoChess and Happy New Year as well. 

Randy


--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/picochess/351b5ab1-84c3-4f25-ab5e-ed7e4fc43977n%40googlegroups.com.

Aldo Bleeker

unread,
Jan 7, 2026, 7:15:11 AMJan 7
to PicoChess
Happy New Year!

PicoChess is coming along nicely!

I tried to run install-picochess.sh again, just to make sure I'm picking up all these lovely improvements, but I got an error message, ydotool couldn't be found. It seems ydotool isn't available in the usual Trixie repositories, but it is in Trixie backports.

First I created file

/etc/apt/sources.list.d/debian-backports.sources

It contains the following.

Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: trixie-backports
Components: main
Enabled: yes
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg


Then I updated the repositories.

sudo apt update

After this install-picochess.sh completed successfully.

Aldo

Aldo Bleeker

unread,
Jan 7, 2026, 9:29:04 AMJan 7
to PicoChess
When I click on the Games tab, and select the first game (Nepomniachtchi vs S), the game is too long to fit in the top right window, so it should have a scroll bar. I do get a scroll bar on my Debian desktop, but it scrolls the entire display, showing blank space below the window, and not the game window unfortunately. When I put Chromium in 1280x720 mode, the game window doesn't have a scroll bar.

Aldo

Aldo Bleeker

unread,
Jan 7, 2026, 10:46:57 AMJan 7
to PicoChess
When I click on the Games tab on my RPi5 with a 7" 1280x720 display, I don't get a scroll bar either.

Aldo

Johan Sjöblom

unread,
Jan 7, 2026, 11:14:23 AMJan 7
to pico...@googlegroups.com
Good catch. I will take a look. It was missing for all resolutions until yesterday and I need to do something for >1024x. Probably easy to fix, lets see.

Johan Sjöblom

unread,
Jan 7, 2026, 1:02:53 PMJan 7
to PicoChess
Fixed!
Just pull in the latest master. I changed 2 characters :-) in master code... on desktop.css I had the max as 1100px and I raised it now to 1280px (line 69).
If there are any other resolutions that does not get the scroll bar on the PGN move list just let me know. Yesterday I tested down to 1024x600 but I forgot to test "upwards" so good catch!
-- Johan

Aldo Bleeker

unread,
Jan 7, 2026, 3:02:28 PMJan 7
to PicoChess
That looks great on my RPi display. It also explains why it isn't working on my Debian desktop. I usually run picochess on the desktop in Firefox or Chromium in a window with a horizontal resolution around 1500 or 1600, and then resize the window vertically until picochess looks good. This isn't a fixed resolution, but it will be something like 1500x850. Or I use F11 to resize the window to full screen. This would be 2560x1440, and it looks a lot like kiosk.sh actually. I've tried it at these larger sizes with the max-width and max-height pushed to these numbers, and picochess not only looked fine, the scroll bar also was visible and working.

The min-width and min-height sound like a sensible precaution, but I'm wondering if max-width and max-height are necessary. I've deleted them, and the display looked great. Maybe this fixes this issue for all window sizes?

Aldo

Johan Sjöblom

unread,
Jan 8, 2026, 2:59:37 AMJan 8
to PicoChess
Good improvement you found. I now changed master and the line 69 in desktop.css now looks like this. No max values any more!
@media (min-width: 800px) and (min-height: 600px) {

The reason for these min values is that 800 protects the portrait mode which kicks in at 768, and the height is according to my testing not reasonable below 600. But yes, I used your great idea and removed the max totally so now all desktop resolutions should work. I tested it on my QHD display with 2560x1440 and I also resized it to 1500x850 and I can still see the scroll bar. We are now closer to a fully working any-screen-any-Linux.

-- Johan

Johan Sjöblom

unread,
Jan 8, 2026, 7:19:46 AMJan 8
to PicoChess
OK, so the master code now always shows the PGN-move-list scroll bar. But there has a long time been an issue with resizing the web client if you have a bigger desktop screen. After a few hours of testing I finally found a solution that required only two lines to be added to desktop.css. I have created a new branch for this to test:
157-web-client-resizing
This PR link will show you how small change it is. As usual we need to test the branch first. I tried different resizing on my QHD screen and it looks nice. Added one line after line 5 and another after 15 in desktop.css. https://github.com/JohanSjoblom/picochess/pull/223/files
I think this takes one more step towards using a full desktop screen and running picochess in a window that you can resize anytime.
-- Johan

Johan Sjöblom

unread,
Jan 8, 2026, 10:08:14 AMJan 8
to PicoChess
And Antonio has a new branch: 202-web-client-opening-book
This branch will allow the user of the web client to browse through all the opening books without any changes to the playing engine. It needs to be tested before we can merge it as it might change some resolution? Should be low risk though. We also have to check that the scroll bars for the move-list is still there. Resizing as mentioned above is in a parallel branch
-- Johan

Johan Sjöblom

unread,
Jan 8, 2026, 12:43:55 PMJan 8
to PicoChess
I tested for a while and the "automatic resize" on desktop mouse-resizing is now in master branch (no need to test 157-web-client-resizing any more). I just need to resize with the mouse on a large desktop until I don't see a vertical scroll bar, then the ratio is ok.
I also made some improvements to the scroll bars in 202-web-client-opening-book, this one still needs more testing so its still in a branch, but it looks good on my test machines. See screen shot!

Screenshot from 2026-01-08 19-40-49.png

Aldo Bleeker

unread,
Jan 8, 2026, 7:43:22 PMJan 8
to PicoChess
I've tried the 157 branch and now the latest master, and it's looking great! I've seen no issues with the display. I can resize the window to the size I want and then adjust it till the picochess window looks good. I can also run kiosk.sh to create a full screen 2560x1440 16:9 display, or alternatively hit F11 to do more or less the same. A large size window on a Debian computer is looking really good now.

I'm trying the 202 branch too, and so far that's looking good as well.

Aldo

Johan Sjöblom

unread,
Jan 9, 2026, 12:23:09 AMJan 9
to PicoChess
Good news. I also tested the 202 and it looks ok. I need to merge it to master to be able to make one final "breaking change" in the github repository: The 202 branch no longer needs the obooksrv. But the books and gamesdb resources are still in the github repository and I need to make them resource files like we did with the engines. The main reason is that users should not get their resources overwritten when they do a picochess update. The picochess update will force the latest repository into /opt/picochess and anything that is in the repository will then overwrite. Next I will therefore remove the gamesdb and books folders from the repository and make the installer download them only if the folders do not exist. This could be the last "breaking change" .... I hope.

Johan Sjöblom

unread,
Jan 9, 2026, 2:15:38 AMJan 9
to PicoChess
Done.
Important update: books and gamesdb are now external resources. If you update via the menu or install-picochess.sh, everything is handled automatically. If you only run git pull, you must also run install-books-games.sh (or install-picochess.sh) to download the books and games database.
Good news: after this update, your books and gamesdb resources will no longer be overwritten by future updates—unless you delete those folders, in which case the latest resources will be downloaded automatically.
-- Johan

Johan Sjöblom

unread,
Jan 9, 2026, 2:40:36 AMJan 9
to PicoChess
What does "breaking change" mean in practice. It means a one-time bump. You need to do update twice to make this work. The first update will only bring the new updater and remove books and gamesdb folders.

Options:
1. two updates using menu,.... or by running sudo ./install-picochess twice!
2. git pull which brings the new install-picochess, and then run sudo ./install-picochess once
For those who can run commands on a ssh or local terminal I recommend the second option but both should work.

After this the books and gamesdb will no longer be overwritten, they are now resources like the engines. So its a one-time-bump!

-- Johan

Johan Sjöblom

unread,
Jan 9, 2026, 4:24:48 AMJan 9
to PicoChess
If you get into trouble with the books and gamesdb folders this is the safest way to restore them:
cd /opt/picochess
./move-books-games-to-backup.sh
./install-books-games.sh
First command moves them to backup, second one fetches the resource files.

gkalab

unread,
Jan 9, 2026, 3:33:30 PMJan 9
to PicoChess
Hi Johan,

the 202 branch changed functionality regarding the "book". It's OK if that is what was wanted, I just want to explain what the obooksrv actually provided. The oboosrv uses a different opening book format than the polyglot book format. The reason for this was that I wanted to see the real metrics of opening book moves from real games from grandmasters. So it was an opening explorer for grandmaster games: it provided the number of games won by white, the number of games won by black and the number of draws for the opening moves in the position, just like e.g. the opening explorer available in Lichess.
The polyglot book format is different: it provides weights for moves in a position. According to http://hgm.nubati.net/book_format.html, the weight is set to "2*(wins)+(draws), globally scaled to fit into 16 bits". What is now displayed as "white" is the weight of the move.

Gerhard

Johan Sjöblom

unread,
Jan 10, 2026, 2:30:00 AMJan 10
to PicoChess
My bad. That loss of functionality was not intentional. Thanks for pointing it out. We need to analyse what can be done. The intention was to be able to browse through all opening books in the web client without affecting the server engine opening book which is still set in picochess.ini configuration.
I will open an issue to see how the use of obooksrv could be restored.
— Johan

Johan Sjöblom

unread,
Jan 10, 2026, 4:52:37 AMJan 10
to PicoChess
I did 2 actions: I hotfixed the obooksrv back to master. And I opened an issue to check how we could wire that functionality back. Might be easy or not... https://github.com/JohanSjoblom/picochess/issues/229
Right now I continue to fix this branch first until it can be merged. Testers welcome to test and comment: 225-quick-menu-for-web-client
-- Johan

Johan Sjöblom

unread,
Jan 10, 2026, 7:47:05 AMJan 10
to PicoChess
OK. The branch 225-quick-menu-for-web-client is now ready for final testing.
There is a tutor tab that shows your mistakes in real time, and now you can see the server analysis both from the engine you selected and from the tutor.
I placed them on the same tab as the web client and tried to align the user experience but comments are very welcome
See screenshot.
-- Johan

Screenshot from 2026-01-10 14-44-22.png

Johan Sjöblom

unread,
Jan 10, 2026, 7:57:22 AMJan 10
to PicoChess
To the above picture. Looking at the "Show Server" will not consume any extra CPU, it just shows what the engine and the tutor are analyzing in the Pico server.
The Start Web will start a web technology based Stockfish in the web client. The engine tab is now hopefully more clear on the fact on what the source of the analysis information is.

The clock display and menu is still the same as before, which is needed at least for DGT 3000 etc. The new Menu tab is just a quick way to get things done.
Example: Click resign, and wait until it says "Black wins" or alike, and then click "Open last game" and it will start autoplaying the game. Or just have a look at the tutor tab to see what your "most learning" mistakes where. In the replay, the opening moves will play fast 1/second, but when the server opening book is exhausted it will start waiting for tutor to reach enough depth so that the quality of the comments in the tutor tab is guaranteed. When you played the game originally you might have moved so fast so that the tutor did not get enough depth. Therefore after replay the quality of the tutor tab is better.

-- comments welcome !

Johan Sjöblom

unread,
Jan 10, 2026, 10:49:55 AMJan 10
to PicoChess
This is now in master, but comments are welcome anyway.

DJ Dekker

unread,
Jan 10, 2026, 2:46:21 PMJan 10
to PicoChess
Hi Johan,


I did 2 actions: I hotfixed the obooksrv back to master. And I opened an issue to check how we could wire that functionality back. Might be easy or not... https://github.com/JohanSjoblom/picochess/issues/229
Right now I continue to fix this branch first until it can be merged. Testers welcome to test and comment: 225-quick-menu-for-web-client
-- Johan

Just updated with git pull to the latest version. The obooksrv service is throwing an error now:

pi@raspberrypi:~ $ systemctl status obooksrv
× obooksrv.service - Opening Book Server
     Loaded: loaded (/etc/systemd/system/obooksrv.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sat 2026-01-10 20:40:23 CET; 22s ago
   Duration: 40ms
 Invocation: 11178113ce2c4e6cb58914508d2c98d3
    Process: 1468 ExecStart=/opt/picochess/obooksrv/obooksrv (code=exited, status=203/EXEC)
   Main PID: 1468 (code=exited, status=203/EXEC)
        CPU: 6ms

jan 10 20:40:23 raspberrypi systemd[1]: Started obooksrv.service - Opening Book Server.
jan 10 20:40:23 raspberrypi (obooksrv)[1468]: obooksrv.service: Unable to locate executable '/opt/picochess/obooksrv/obooksrv': No such file or directory
jan 10 20:40:23 raspberrypi (obooksrv)[1468]: obooksrv.service: Failed at step EXEC spawning /opt/picochess/obooksrv/obooksrv: No such file or directory
jan 10 20:40:23 raspberrypi systemd[1]: obooksrv.service: Main process exited, code=exited, status=203/EXEC
jan 10 20:40:23 raspberrypi systemd[1]: obooksrv.service: Failed with result 'exit-code'.


The file /opt/picochess/obooksrv/obooksrv seems to be missing.

Greetings,
DJ

Johan Sjöblom

unread,
Jan 10, 2026, 3:56:18 PMJan 10
to pico...@googlegroups.com
At the moment master code does not use it... so if you are running master it's ok without,....  
and your case looks like a missing symlink that install-picochess will create... the symlink is not in the repo

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Antonio

unread,
Jan 11, 2026, 10:50:30 AMJan 11
to PicoChess
Este es el estado de Picochess ahora mismo !!!   Muestra información tanto de lo que está pensando el motor contra el que estamos jugando, como el tutor o motorweb !!!

La pantalla se intenta aprovechar al maximo para las resoluciones 1024x600 y botones grandes para el tactil; de ahí que si tenemos activado la pestaña de engine, los botones de la parte derecha cambian de función.
Captura de pantalla 2026-01-11 164545.png
Captura de pantalla 2026-01-11 164532.png
Captura de pantalla 2026-01-11 091928.png
Captura de pantalla 2026-01-11 164629.png

Henri

unread,
Jan 12, 2026, 7:41:14 AMJan 12
to PicoChess
I have a 'minor' problem with the current version of picochess 4 snd only on my Pi4: None of the engines play. The engines load ('ok´) and I can play the first move, after which the move is announced and the clock starts running, but the engine refuses to play a move. I checked, but all engines are executable, so thatś not the problem. Any idea what is causing this?

Henri

Op zaterdag 10 januari 2026 om 21:56:18 UTC+1 schreef messi...@gmail.com:

Antonio

unread,
Jan 12, 2026, 8:06:43 AMJan 12
to PicoChess
Ejecuta el script de instalación de nuevo.

Run the installation script again.

Henri Spijkerman

unread,
Jan 12, 2026, 8:17:07 AMJan 12
to pico...@googlegroups.com
I already tried another image (4.1.7) and updated it. Same results...

Op ma 12 jan 2026, 14:06 schreef Antonio <antonio.z...@gmail.com>:
Ejecuta el script de instalación de nuevo.

Run the installation script again.

--
You received this message because you are subscribed to a topic in the Google Groups "PicoChess" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/picochess/AS2vEfi4BAE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to picochess+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/picochess/dbb76916-76f6-4148-bc04-0c8f933e547cn%40googlegroups.com.

Randy Reade

unread,
Jan 12, 2026, 9:48:13 AMJan 12
to pico...@googlegroups.com
When it fails, what does ‘systemctl status picochess’ give you?

Randy

Johan Sjöblom

unread,
Jan 12, 2026, 9:55:43 AMJan 12
to pico...@googlegroups.com
I will start with a guess. The first move is trying to use an opening book. Check which opening book you have selected in your picochess.ini and check that it exists in the books folder

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Henri

unread,
Jan 12, 2026, 10:17:54 AMJan 12
to PicoChess
When I go to 'Book' in the menu and try to select one, the system freezes and I get a text 'closed' on the right top of the desktop...

Op maandag 12 januari 2026 om 15:55:43 UTC+1 schreef messi...@gmail.com:

Henri

unread,
Jan 12, 2026, 10:22:23 AMJan 12
to PicoChess
- When it fails, what does ‘systemctl status picochess’ give you
 
service enabled, active (running)

Henri 

Randy Reade

unread,
Jan 12, 2026, 10:29:38 AMJan 12
to pico...@googlegroups.com
I was hoping to see the full output but I think Johan’s suspicion was correct.

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Henri

unread,
Jan 12, 2026, 10:49:22 AMJan 12
to PicoChess
Yes, that's it. Even stronger, the whole Books folder had disappeared. I put it back and the ploblem is solved.
Guess the latest update script has something to do with it....

Henri 


Op maandag 12 januari 2026 om 15:55:43 UTC+1 schreef messi...@gmail.com:
I will start with a guess. The first move is trying to use an opening book. Check which opening book you have selected in your picochess.ini and check that it exists in the books folder

Johan Sjöblom

unread,
Jan 12, 2026, 11:18:13 AMJan 12
to PicoChess
Yes, it was my fault as I went for the hopefully last breaking change in the new version. In the autumn we removed engines from the github repository so that future updates would not disturb any engine setups. Now I also removed the gamesdb and books from the repository so that the users who are setting up their own will not be disturbed. This breaking change is a one-time bump. Sorry about that, but it kind of "had to be done". 
I will make a hotfix to the master code so that users are warned if the opening book does not exist, and that it will not crash if it doesnt exist.
PS. I am not planning any more breaking changes DS.
-- Johan

Henri

unread,
Jan 12, 2026, 11:33:33 AMJan 12
to PicoChess
Ok, nice to have it solved. Another thing, I realize I do not get my last game mailed to me anymore, although I have not changed the mailoptions in picochess.ini. Just to let you know....

Henri

Op maandag 12 januari 2026 om 17:18:13 UTC+1 schreef messi...@gmail.com:

Johan Sjöblom

unread,
Jan 12, 2026, 11:35:09 AMJan 12
to PicoChess
Strange... When you dont get mail from a completed game, how did the game end? Did you force it to end, or did it end in a mate or...?

Henri

unread,
Jan 12, 2026, 11:50:49 AMJan 12
to PicoChess
Most games end in mate, but I also use the menu to stop the game, give the result and start a new game. In all cases I used to get a mail, but not anymore. This goes for my P4 with 7 inch touchscreen AND my headless P5.

Henri


Op maandag 12 januari 2026 om 17:35:09 UTC+1 schreef messi...@gmail.com:

Johan Sjöblom

unread,
Jan 12, 2026, 11:54:37 AMJan 12
to PicoChess
When has the mailing worked last. I dont think we have touched anything in that mail function for a very very long time.

Johan Sjöblom

unread,
Jan 12, 2026, 11:59:32 AMJan 12
to PicoChess
Check your log using this command:
cat /opt/picochess/logs/picochess.log | grep "Mail delivery"

Henri

unread,
Jan 12, 2026, 11:59:51 AMJan 12
to PicoChess
Ok, in that case I will try out other mailoptions in picochess.ini. Will let you know the outcome!

Henri

Op maandag 12 januari 2026 om 17:54:37 UTC+1 schreef messi...@gmail.com:

Johan Sjöblom

unread,
Jan 12, 2026, 12:07:05 PMJan 12
to PicoChess
Yes, let me know, there are many things that could have happened. Maybe you now need to use SMTP settings due to changes in your mail service, or maybe you already use it but the password has changed (setting smtp-pass in picochess.ini) etc etc...
The log lines that contain "Mail delivery" will show what is wrong...

Etienne Chaffanjon

unread,
Jan 12, 2026, 12:11:17 PMJan 12
to pico...@googlegroups.com, PicoChess
Hello,
Same issue with email not sent.
Similar settings in picochess.ini as in V3: I changed the google application password but didn’t help. Log says SMTP failed error ERNO101 if I remember correctly
Best regards,
Etienne

Le 12 janv. 2026 à 17:59, Johan Sjöblom <messi...@gmail.com> a écrit :

Check your log using this command:

Johan Sjöblom

unread,
Jan 12, 2026, 12:24:44 PMJan 12
to PicoChess
Etienne, for you it looks like a network error. Can you ping your smtp server?
You have to use SMTP use smtp.gmail.com with one of the following:

STARTTLS: smtp-starttls = True, smtp-encryption = False, smtp-port = 587
or
SSL/TLS: smtp-encryption = True, smtp-starttls = False, smtp-port = 465

-- Johan

Etienne Chaffanjon

unread,
Jan 12, 2026, 12:59:41 PMJan 12
to pico...@googlegroups.com
Thank you Johan, my set up is SSL with smtp-encryption = True.
I did try to add the port but didn't help
I will try to add smtp-starttls = False when back home next week end
Not sure those settings were required before....will see
Best regards,
Etienne


De: pico...@googlegroups.com <pico...@googlegroups.com> de la part de Johan Sjöblom <messi...@gmail.com>
Envoyé: Lundi 12 janvier 2026 18:24
À: PicoChess <pico...@googlegroups.com>
Objet: Re: Changes in Picochess V4. Happy new year testing 2026

Henri

unread,
Jan 12, 2026, 5:30:31 PMJan 12
to PicoChess
Mailservice is running now, produced and used a fresh Google twoway encryption code, that did the trick (I guess) :) 

My gmail-configuration:
smtp-encryption = False
smtp-starttls = True
smtp-port = 587

Henri

Op maandag 12 januari 2026 om 18:07:05 UTC+1 schreef messi...@gmail.com:

Johan Sjöblom

unread,
Jan 13, 2026, 1:10:33 AMJan 13
to PicoChess
Yes, that probably did it. I think Google has tightened security so well done!

Antonio

unread,
Jan 14, 2026, 5:50:12 AMJan 14
to PicoChess
Current state of Picochess version 4, showcasing visual improvements and added features.
Ideas, complaints, suggestions, tests, etc., are welcome! Cheers, Picocheross!

Estado actual de la versión 4 de Picochess, donde se pueden ver las mejoras visuales y funcionalidades añadidas.
Se agradecen ideas, quejas, sugerencias, pruebas, etc etc             Un abrazo Picocheross!!!


https://www.youtube.com/watch?v=N52HFmZZFiE

Johan Sjöblom

unread,
Jan 14, 2026, 1:47:48 PMJan 14
to PicoChess
It is now in master branch so everyone can test it.

Javier

unread,
Jan 14, 2026, 2:19:13 PMJan 14
to pico...@googlegroups.com

Is it better to do a clean install or can we update from the System Picochess menu?



--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Johan Sjöblom

unread,
Jan 14, 2026, 2:42:44 PMJan 14
to pico...@googlegroups.com
You can update from the menu, but I recommend that you update two times! And be patient on the first boot times!

Also those who run sudo ./install-picochess I recommend doing two updates.

Randy Reade

unread,
Jan 14, 2026, 5:58:03 PMJan 14
to pico...@googlegroups.com
I wonder if there is a clean way to update picochess.ini other than manually by the end-user. Perhaps we need to change to a file that only holds the variables, in a specific order, and move the explanations/directions to a separate file. That would make adding/inserting new variables (with default values) easier and new-to-linux users would not need to go through the manual steps. Just thinking out loud.

Randy

Johan Sjöblom

unread,
Jan 15, 2026, 10:36:42 AMJan 15
to PicoChess
Continuing thinking out loud… What about if we just put a cog wheel icon to click somewhere in the web client. That button would open a new settings web page where you could edit any/all picochess.ini value. Would not be too difficult to make I think… at least not a straightfoward page without any styling… just text boxes and drop downs. Of course the settings would not take any effect before next restart but thats not a problem…

Ro Bert

unread,
Jan 15, 2026, 11:11:37 AMJan 15
to PicoChess
Thumbs up. Sounds good. Also a possibility where the settings are explained in detail would be helpful.
Thanx
Robert

Randy Reade

unread,
Jan 15, 2026, 11:16:44 AMJan 15
to pico...@googlegroups.com
That sounds like a good option. Not sure how it would handle text entry fields (e.g. email settings, name, etc.) but I like it.

Randy

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Johan Sjöblom

unread,
Jan 17, 2026, 3:50:34 AMJan 17
to PicoChess
Before adding the cog wheel with settings I now updated the kiosk.sh in /opt/picochess. I am trying to fix a pain point when updating from the menu: When the reboot with the update comes we don't not have any visibility to the tar.gz download progress. If you use ssh or a local keyboard to run install-picochess then you already have this visual info, but not if you update from the menu. And as this update can take 10-15 minutes you have to be really patient with the current updater. This new kiosk version attempts to give that information in a lxterminal before chromium is launched so that you know that "something is downloading and something is happening"

I think the current / latest image of V4 has kiosk.sh in the home directory of the pi user. Anyone who wants to test this new kiosk.sh could replace that with a symbolic link to /opt/picochess/kiosk.sh ... or point to /opt/picochess/kiosk.sh from whatever auto-start mechanism you use. The kiosk.sh in /opt/picochess should also handle Wayland as well as X-window as per an update i did a few weeks ago. Please let me know if you need fixes in the kiosk.sh. It is based on your Wayland testing so keep the information coming so that we can automate this :-)

As usual, "updating the updater" is tricky, and that's why I recommend a double update above. The first "update updates the updater" so only the second update uses this new kiosk.sh. This is a temporary thing of course while the update mechanism is still being fine tuned. For long term when the updater is stable there is of course no need to update twice.

-- Johan

Etienne Chaffanjon

unread,
Jan 17, 2026, 11:10:29 AMJan 17
to pico...@googlegroups.com, PicoChess
Hello, those settings worked for me as well (didn’t need to change google application pw). Thank you.

Le 13 janv. 2026 à 07:10, Johan Sjöblom <messi...@gmail.com> a écrit :

Yes, that probably did it. I think Google has tightened security so well done!

Johan Sjöblom

unread,
Jan 17, 2026, 1:26:21 PMJan 17
to PicoChess
Nice to hear Etienne

And for Randy and others: Now there is a PR open that has a cog wheel setting button. You can now edit picochess.ini without a text editor. And there is help text.
branch to test: 246-picochess-settings-page

Some design decisions I made:
  • To maintain the location in the picochess ini file it now comments when you turn some setting off, and un-comments if you turn the setting on where a comment can be found. This should also improve the situation when you use the menu. Only if you add a setting that does not exist it will add it last in picochess.ini. When you then at some point "move it to the location you want" it should stay there. 
  • For cyber security it asks for your username and password if you are not on localhost (typically you have pi and picochess, but you dont have to have these values)
  • As many drop downs as possible instead of free text (I probably missed some spots)
  • Help text mouse over for desktop users
  • Question-mark icon to click to see help text for touch screens
  • The help text is read from your own picochess.ini file, the web client reads the #-comment lines from picochess.ini so these texts are not hard coded. You want your own text? Just edit your picochess.ini file :-)
As usual, comments are welcome. Its easy to experiment now while we are in a branch and not yet in master.

Javier Lux

unread,
Jan 18, 2026, 3:45:08 AMJan 18
to PicoChess
Good morning Johan, I have tried the new version and I think it is splendid, thank you very much for your time and your great work.  The tutor option of seeing the mistakes you make seems very instructive to me, before the Tutor only marked the big mistakes, and the interface seems fantastic to me, thanks Antonio.  Now I want to try this new version on a DGT 3000, I wanted to ask you if what I should do is add the command sudo ./install-dgtpi-clock.sh in the Terminal or should I do something else...?  Sorry if the question is a bit simple, I'm just a big chess fan but not a programmer.

Johan Sjöblom

unread,
Jan 18, 2026, 4:50:38 AMJan 18
to pico...@googlegroups.com
Yes, after installing V4 on a DGT3000 you need to run
sudo ./install-dgtpi-clock.sh
Let me know if it works. Its a long time since I used my DGT 3000 Pi.

Javier Lux

unread,
Jan 18, 2026, 5:26:10 AMJan 18
to PicoChess
I also prefer the desktop version and even more so with this new, very informative interface, but in my free time from work I find it more comfortable and discreet not to use a screen and just use the clock.  But I have problems installing it…
It tells me:
sudo ./install-dgtpi-clock.sh command not found. 
My process is as follows: I install the v4 version on an RPi4 using a monitor and following the instructions on github, I test that it works well, then I go to the Terminal and type that command so that it is understandable for the DGT3000 but it repeatedly tells me that comman not found.

Antonio

unread,
Jan 18, 2026, 5:28:21 AMJan 18
to pico...@googlegroups.com
cd /opt/picochess

Luego el sudo que pudistes, es eso?

You received this message because you are subscribed to a topic in the Google Groups "PicoChess" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/picochess/AS2vEfi4BAE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to picochess+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/picochess/ae9a8144-a58e-43a7-b88a-48dc187cf1e2n%40googlegroups.com.

Javier Lux

unread,
Jan 18, 2026, 5:49:22 AMJan 18
to PicoChess
Ahora si!  No había puesto ese comando primero . Ahora me sale el siguiente mensaje: 

DGTPi clock installation complete. Please reboot


You need to copy picochess.ini-example-dgtpi-clock to picochess.ini or change picochess.ini file with dgt clock setting dgtpi = True


Me imagino que ahora tengo que hacer esto antes de apagarlo, poner la SD en la Rpi3 que uso para el reloj y arrancarlo no..? 


( actualmente lo uso con una imagen antigua V3.2 que publicó Randy hace tiempo y funciona perfecto )


Johan Sjöblom

unread,
Jan 18, 2026, 6:27:07 AMJan 18
to pico...@googlegroups.com
Ah, did the instructions not include 
cd /opt/picochess
So that you are in the correct folder!

Antonio

unread,
Jan 18, 2026, 1:15:32 PMJan 18
to PicoChess
Work continues to ensure everything is as organized and easily accessible as possible...

Some screenshots in different resolutions show access to the picochess menu.

Captura de pantalla 2026-01-18 191243.png
Captura de pantalla 2026-01-18 191017.png
Captura de pantalla 2026-01-18 191043.png
Captura de pantalla 2026-01-18 191219.png

Johan Sjöblom

unread,
Jan 19, 2026, 1:51:40 AMJan 19
to PicoChess
This is now in master branch. Now everyone can upgrade test and comment.

Dirk

unread,
Jan 19, 2026, 3:42:51 AMJan 19
to pico...@googlegroups.com
That’s really a cool feature - thank you so much for this and the incredible V4 development speed and quality to all developers!

Having now this comfortable picochess ini setting page we shouldn’t forget that we still have lots of DGTPI users (I am one of them -in addition to the other nice hardware options we have ;-) who would like to set (at least most important ones) via teh the internal menu. Thats why I have added all new settings of picochess.ini to the DGT menu as well (although it is a pain to do :-( 

Anyway, really impressive progress with V4.

Dirk

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Javier Lux

unread,
Jan 19, 2026, 3:52:41 AMJan 19
to PicoChess
Raspberry Pi 3b+ 
Certabo board usb 

Good morning, after spending the weekend testing version 4.1.9 adapted to the DGT 3000 clock as a DGTPi, I have to say that it works perfectly, it allows the system to be updated from the clock, it allows the motors to be updated from the clock, it correctly displays the messages on the clock screen and 7 random motors work correctly,  congratulations for this wonderful work you are doing.  But I have found the same problem as in version 3.2, unlike the desktop version, it is not able to link with any Bluetooth board, I have tried Chessnut and Chesslink, and it is only able to recognize the Certabo via USB.  It's a good way to get rid of screens, but what I've missed most is the new error information that the Tutor gives in the desktop version. If they could be seen instead of the joke comments that don't give any useful information, it would be a very good implementation.

Javier

Antonio

unread,
Jan 19, 2026, 5:18:27 AMJan 19
to PicoChess
Cuando mi bluetooth no quiere conectar con la placa, yo ejecuto un script que son los comandos que ya se pasaron por aqui, pero de forma automática. Muchas veces no me hace falta hacer reboot.
Simplemente copia el archivo donde quieras (/home/pi/download   o  /opt/picochess)  , 
se le da permiso de ejecución:
sudo chmod +x Fix_bluetooth.sh   
y se ejecuta     sudo ./Fix_bluetooth.sh
---------------------------------------------------------------------------------------------------
When my Bluetooth won't connect to the board, I run a script that uses the commands already mentioned here, but automatically. Often, I don't need to reboot. 
Simply copy the file wherever you want (/home/pi/download or /opt/picochess), 
then give it execute permissions: 
`sudo chmod +x Fix_bluetooth.sh`
and run `sudo ./Fix_bluetooth.sh`


Fix_bluetooth.sh

Dirk

unread,
Jan 19, 2026, 6:18:37 AMJan 19
to pico...@googlegroups.com, PicoChess
That is a really helpful tool, Antonio!

Maybe we can add this to the system menu!?

Thanks
Dirk

Am 19.01.2026 um 11:18 schrieb Antonio <antonio.z...@gmail.com>:

Cuando mi bluetooth no quiere conectar con la placa, yo ejecuto un script que son los comandos que ya se pasaron por aqui, pero de forma automática. Muchas veces no me hace falta hacer reboot.
--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Javier Lux

unread,
Jan 19, 2026, 7:03:59 AMJan 19
to PicoChess
That sounds really great Antonio, it would be a great advance in the historical problems that Bluetooth causes in connections specially with the DGTPi.  looking forward to trying it.

Johan Sjöblom

unread,
Jan 19, 2026, 9:52:29 AMJan 19
to PicoChess
I opened an issue for us to improve the DGT3000 installation and to add the new Fix_bluetooth.sh
branch: 252-DGT3000
I have not yet done anything, I just created the issue and an "empty" branch. I will add the Fix_bluetooth.sh to that branch into /opt/picochess.

I wonder how we could detect DGT3000 on first installation and let install-picochess do everything automatically?
And I am also wondering when exactly the new Fix_bluetooth.sh is needed... I have a feeling that it would be good to add to the DGT menu to be executed as Dirk said.

-- Johan

Johan Sjöblom

unread,
Jan 19, 2026, 10:03:01 AMJan 19
to PicoChess
OK, I have added the Fix_bluetooth.sh to the branch 252-DGT3000. I changed one minor thing: I removed the hardcoding on Python 3.13 so that it would work on all Python version installations.
Yes, this one would be great to be able to run from the DGT menu... 

Antonio

unread,
Jan 19, 2026, 10:45:11 AMJan 19
to PicoChess
Habría que confirmar con usuarios que realmente soluciona los problemas de conexión.  Tanto si se reinicia cuando se ejecuta como si no es necesario y se soluciona los problemas de bluetooth.

We would need to confirm with users whether it actually solves connection problems. Whether it restarts when running or not, and whether it resolves Bluetooth issues.

Message has been deleted
Message has been deleted

Johan Sjöblom

unread,
Jan 19, 2026, 11:52:31 AMJan 19
to PicoChess
I have created a preliminary PR: https://github.com/JohanSjoblom/picochess/pull/253
To test it you need to checkout the branch 252-DGT3000

It changes install-picochess so that you can give the parameter dgt3000 (or DGT3000) and then it will run also instlal-dgtpi-clock. That script has also been updated so that it can run from any location and it will copy an example dgtpi = true picochess.ini file if one does not already exist.
There is a script there to automatically detect a DGT3000 named check-dgt3000.sh but I did not want to take the risk of automating that check. Users should now if they are installing on a DGT3000 or not :-)

Johan Sjöblom

unread,
Jan 19, 2026, 12:06:39 PMJan 19
to PicoChess
Its very difficult to test installation script changes in a branch. I will merge this so that anyone who wants to test a DGT3000 clock installation can just use the main branch.

Johan Sjöblom

unread,
Jan 19, 2026, 12:21:52 PMJan 19
to PicoChess
Merged, and opened a new issue for the Fix_bluetooth.sh DGT3000 clock menu. If we find that it works well, we add a menu item for it.
-- Johan

Dirk

unread,
Jan 19, 2026, 2:18:17 PMJan 19
to PicoChess
I just tested the bluetooth script: 

I had  a working bt connection to my DGT eBoard, changed eBorad type to chessnut via menu: no connection.

I ran the Fix_bluetooth by Antonio and WITHOUT reboot or stopping and restarting picochess I did an instant connection too my Chessnut Go,

Unfortunately I have no other type of an eBoard.

Dirk 

Javier Lux

unread,
Jan 19, 2026, 6:13:02 PMJan 19
to PicoChess
Raspberry Pi 3B+
Debian Bookworn
Picochess 4.1.9 
DGT3000

Tested Antonio's scripts. 

 1) Fix_bluetooth.sh

Tested the Chessnut Go and Millenium eOne (Chesslink) boards with negative results.  Tried different ignition sequences in both, none with success.  

2) check-dgt-clock.sh

works correctly if its function is to check if the clock is connected, the following message appears: 

Inicio: comprobacion de reloj DGT

Postart: checking for DGT clock


Usando PICO_HOME=/opt/picochess

Using PICO_HOME=/opt/picochess


Paso 1: pruebo DGTPi (I2C) con /opt/picochess/etc/dgtpicom.so

Step 1: probing DGTPi (I2C) with /opt/picochess/etc/dgtpicom.so


Intentos DGTPi: 4 con pausa 0.5s 

DGTPi attempts: 4 with delay 0.5s


Intento DGTPi 1/4

DGTPi attempt 1/4


Reloj detectado via DGTP1 (I2C) 

Clock detected via DGTPi (I2C)


RESULTADO: SI, RELOJ DGT DETECTADO


FRESULT: YES, DGT CLOCK DETECTED



Johan Sjöblom

unread,
Jan 20, 2026, 2:14:19 AMJan 20
to PicoChess
The  check-dgt-clock.sh seems to work fine.
I have a question if anyone knows about Raspbian hardware. Can the execution of the dgtpicom.so library damage the hardware on "normal" Pi3, Pi4, Pi5 that are not DGT3000 clocks and may potentially also have other IC2 connections like screens or other peripherals? Do we have anyone in the group that would know? I have not yet added this successful detection to the GitHub repository, but I did add a safer small check named check-dgt3000.sh that only checks for I2C address...  If someone can say that its safe to use the dgtpicome.so library outside of the DGT3000 clock I can add the succesful check-dgt-clock.sh script to the repository.
I have not yet had time to test on my DGT3000, but I will !

Javier Lux

unread,
Jan 20, 2026, 2:51:10 AMJan 20
to PicoChess
Ggod morning , 

In my case, what I have done is adapt the version that you have on github by doing the following: 
change picochess.ini file with dgt clock setting dgtpi = True.  
I have done it on a Raspberry 4 that I have installed with a screen for the Desi top version.  I took that card out and put it in the Raspberry 3 that I have without a screen just to work with the DGT3000 clock connected by I2C through the GPIO.  Both Raspberrys work correctly, I have not noticed anything strange in their behavior.  The only difference is that my Raspberry 4 detects my Bluetooth boards without problems and the Raspberry 3 does not, it only detects a Certabo board via USB.

Javier Lux

unread,
Jan 20, 2026, 3:42:34 AMJan 20
to PicoChess
Good morning , 

In my case, what I have done is adapt the version that you have on github by doing the following: 

1. sudo ./install-dgtpi-clock.sh
2. Change picochess.ini file with dgt clock setting dgtpi = True.  

I have done it on a Raspberry 4 that I have installed with a screen for the Desi top version.  I took that card out and put it in the Raspberry 3 that I have without a screen just to work with the DGT3000 clock connected by I2C through the GPIO.  Both Raspberrys work correctly, I have not noticed anything strange in their behavior.  The only difference is that my Raspberry 4 detects my Bluetooth boards without problems and the Raspberry 3 does not, it only detects a Certabo board via USB.

Johan Sjöblom

unread,
Jan 20, 2026, 7:09:57 AMJan 20
to PicoChess
Hello

I believe that you always have to use USB for Certabo? See this post: https://groups.google.com/g/picochess/c/OhpP93ISB3Q/m/GPX17Ht6AwAJ

And I improved the installation so next time someone installs a DGT3000 clock you only need to do this:
- sudo ./install-picochess dgt3000
This will install everything needed on a DGT clock and set the dgtpi = true. Note: If you have an old installation with existing picochess.ini from before it will not edit the dgtpi value... For a clean installation you need to first delete your existing picochess.ini (of safer: move it to another name or another place).

When you used  1) Fix_bluetooth.sh , did you remember to use sudo ./Fix_bluetooth.sh? And what was the problem that you were hoping to fix?

Javier Lux

unread,
Jan 20, 2026, 7:19:28 AMJan 20
to PicoChess
Hello Johan , 
Yes, I always use the Certabo with USB, its bluetooth adapter works terribly. I have executed these two commands 

sudo chmod +x Fix_bluetooth.sh
sudo ./Fix_bluetooth.sh .  

The problem I wanted to solve is that my version of Picochess for the DGT3000 with the Raspberry 3 does not recognize my Chessnut Go and Millenium eOne (ChessLink) bluetooth boards.  In the desktop version that I have on a Raspberry 4, it recognizes them immediately.

Johan Sjöblom

unread,
Jan 20, 2026, 8:43:32 AMJan 20
to PicoChess
OK, my first thought is that you don't have cap rights on your bluepy-helper on Pi3? If you run:
sudo /opt/picochess/install-picochess.sh
i will restore all your rights...  

But maybe more importantly I would like to verify that you have a 64bit Pi3 and some other Pi3 settings. Can you run all or some of these commands and tell us what you get on the Pi3:
- uname -m (should be aarch64)
- cat /etc/os-release (will inform us what os version you have)
- cat /boot/firmware/config.txt (or cat /boot/config.txt, here we are looking for uart, serial, or bluetooth rows
- sudo bluetoothctl --version (to see bluetooth version)
- sudo systemctl status bluetooth (is bluetooth running)
- journalctl -u bluetooth -b (did bluetooth start)

Something must be wrong with the Bluetooth settings on your Pi3... ?

Johan Sjöblom

unread,
Jan 20, 2026, 9:05:53 AMJan 20
to PicoChess
If you update your picochess installation your Pi3, either with git pull, or by running install-picochess: You will then get a new script file named "check-bluetooth.sh". If you run that one it will produce a file named bluetooth.txt. I have tried to avoid all sensitive information in that file as much as I can.... If you want to avoid posting it on this group you can just mail me the bluetooth.txt file (or the output of the commands above).

Javier

unread,
Jan 20, 2026, 12:05:26 PMJan 20
to pico...@googlegroups.com
Hi Johan , I just have done your commands:

1) aarch64 
2) Debian bookworn
3) 64 bits arm_64 bits
4) bluetooth daemon v.5.66
5) Loaded : enabled
     Active: active (running)
6) Starting bluetooth services
     Bluetooth management interface 1.23
     initialized 

Ir seems to be ok , i don’t have any message error . I think maybe it will be better to run a new install-picochess as you say ..
    

--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.

Johan Sjöblom

unread,
Jan 20, 2026, 1:19:28 PMJan 20
to pico...@googlegroups.com
Yea, looks good. Despite it's name you can run install-picochess as many times as you want. It will skip system update check if you give it the parameter "pico". Then it's a little bit faster.

Johan Sjöblom

unread,
Jan 23, 2026, 9:12:31 AMJan 23
to PicoChess
I have found the root cause for Bluetooth connections on Trixie Pi3. It means you cannot connect your eboard via Bluetooth.

I have not made any fix yet but here is the problem:

On Trixie and Pi3 native installation the Bluetooth is soft blocked. You can check it by this command:
sudo rfkill list
It will say Soft blocked: yes.

With this block it will not find any Bluetooth board. To unblock it I used this command, followed by bluetooth restart
sudo rfkill unblock bluetooth
sudo systemctl restart bluetooth

This problem comes back after a boot. That could explain why some have seen that the eboard works after install-picochess but not after the next boot. I have to find a solution for this. I could make a unblock-bluetooth.service that is installed on dgt3000 only... but I have to analyse a little bit further.

-- Johan

Johan Sjöblom

unread,
Jan 23, 2026, 9:21:36 AMJan 23
to PicoChess
I added this fix to Fix_bluetooth.sh ... but I still have to do something to make sure a Trixie Pi3 still has bluetooth after reboot.

Johan Sjöblom

unread,
Jan 23, 2026, 10:06:15 AMJan 23
to PicoChess
And the new install-picochess will fix it if you wget the latest one and use parameter dgt3000 on the DGT3000 clock. It then installs a "bluetooth unblocker" service that runs on each boot.

Ro Bert

unread,
Jan 23, 2026, 3:08:20 PMJan 23
to PicoChess
unfortunately the bluetooth connection problem also exists with my chesslink board. so a dgti specific solution would not solve the problem. 
Robert

Johan Sjöblom

unread,
Jan 23, 2026, 3:15:49 PMJan 23
to pico...@googlegroups.com
Ok. Can you run the new sudo ./check-bluetooth.sh script. It writes a bluetooth.txt file with most of the relevant troubleshooting info.

You can then post it here or just ask chatgpt or some AI what's wrong! I have tried to make the information very generic. No MAC addresses etc.

Reply all
Reply to author
Forward
0 new messages