Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
projets:biohacklab:borne_arcade [2025/09/18 17:06]
emoc [Configurer le démarrage automatique]
projets:biohacklab:borne_arcade [2026/03/26 22:34] (Version actuelle)
emoc [mars 2026]
Ligne 145: Ligne 145:
 Pour rétablir la partition en lecture, il faut 2 reboot : Pour rétablir la partition en lecture, il faut 2 reboot :
 dans raspi-config,​ désactiver l'​Overlay File System, puis reboot \\ dans raspi-config,​ désactiver l'​Overlay File System, puis reboot \\
-dans raspi-config,​ passer la partition en écriture, puis reboot \\+dans raspi-config,​ passer la partition en écriture ​(overlay file system), puis reboot \\
  
 (Voir ici pour le détail de la procédure complète : https://​core-electronics.com.au/​guides/​read-only-raspberry-pi/​) (Voir ici pour le détail de la procédure complète : https://​core-electronics.com.au/​guides/​read-only-raspberry-pi/​)
Ligne 227: Ligne 227:
   * + liste des bugs remontés   * + liste des bugs remontés
  
 +===== Maintenance =====
 +
 +==== sept. 2025 ====
 +
 +Le système démarre, le navigateur (chromium) s'​ouvre,​ mais ne charge pas la page... Il s'agit d'un bug connu de chrome sur raspberry pi : le bug du premier onglet! En effet, l'​écran reste blanc et le curseur de chargement tourne indéfiniment,​ si on recharge la page (<​key>​F5</​key>​),​ tout fonctionne normalement. \\
 +
 +Plusieurs solutions possibles, dépendantes du serveur d'​affichage utilisé, X11 ou Wayland, car il y a une transition en cours dans le monde linux entre les deux. Avec X11 on peut utiliser xdotool qui permet d'​envoyer des frappes clavier fake vers une fenêtre, avec Wayland on ne peut pas (pas de communication entre les fenêtres/​applications pour des raisons de sécurité... \\
 +
 +Après essais de différentes solutions, ça ne fonctionne toujours pas, une autre possibilité est d'​ouvrir un serveur de debugging sur chromium et de luis envoyer des commandes pour déclencher un rechargement de la page.
 +
 +Sur X11 et Wayland : https://​nullrequest.com/​posts/​whywaylandisthefuture
 +
 +On peut connaître le système d'​affichage utilisé avec : ''​echo $XDG_SESSION_TYPE''​
 +
 +Essai avec le serveur de debugging : sans succès / TODO ajouter code autostart + script python (cf. rep /​home/​xor/​.config/​labwc) \\
 +
 +Essai avec firefox en mode kiosque : sans succès :/ (à creuser... cf. https://​wiki.mozilla.org/​Firefox/​CommandLineOptions )
 +
 +Finalement comme solution temporaire, on ajoute un mini clavier USB dans la borne, sur lequel il faut appuyer sur F5 quand ça mouline sur un premier onglet blanc : ça fonctionne mais c'est moche
 +
 +==== mars 2026 ====
 +
 +Passage en mode écriture \\
 +On peut choisir entre X et Wayland (via raspi-config / advanced options / Wayland) : je choisis openbox + Xorg \\
 +Infos sur X.org : https://​doc.ubuntu-fr.org/​xorg \\
 +Ce qui rend possible l'​utilisation de xdotool, nouveau test réalisé après modification du fichier autostart \\
 +On peut recharger la page avec 
 +  xdotool search --onlyvisible --class chromium windowactivate --sync %1 key F5 windowactivate $(xdotool getactivewindow)
 +Ça fonctionne **si** la page a déjà été correctement chargée mais comme ce n'est pas le cas, ce n'est toujours pas la solution ...
 +
 +utilisation de xdotool : https://​unix.stackexchange.com/​a/​87839
 +Pour la suite 
 +<​code>​
 +#!/bin/bash
 +
 +# X plutôt que Wayalnd doit être activé (via raspi-config)
 +cd /​home/​xor/​borne_biohacklab_ui_v5/​
 +/​usr/​bin/​python -m http.server &
 +unclutter -idle 1 &  # ne fonctionne qu'​avec X pas wayland
 +sleep 8
 +#chromium --start-fullscreen --start-maximized --noerrdialogs --disable-infobars --kiosk http://​localhost:​8000
 +chromium --kiosk --noerrdialogs --disable-session-crashed-bubble --disable-infobars http://​localhost:​8000/​index.html &
 +#​chromium-browser --kiosk "​http://​localhost:​8000/​index.html"​ --noerrdialogs --disable-session-crashed-bubble --disable-infobars --remote-debugging-port=9222 --remote-allow-origins=http://​localhost:​9222 &
 +#​chromium-browser --kiosk --noerrdialogs --disable-session-crashed-bubble --disable-infobars &
 +#sleep 15
 +#/​home/​xor/​.config/​labwc/​chromium_reload_first_tab.py
 +sleep 15
 +xdotool search --onlyvisible --class chromium key F5 # ne fonctionne pas avec wayland!
 +#wtype -M ctrl r -m ctrl
 +#firefox --kiosk "​http://​localhost:​8000/​index.html"​
 +
 +
 +xdotool search --onlyvisible --class chromium windowactivate --sync %1 key F5 windowactivate $(xdotool getactivewindow)
 +
 +
 +Petite fonction pour vérifier que la page recharge bien
 +
 +function changeBackground(color) {
 +   ​document.body.style.background = '#'​+(Math.random()*0xFFFFFF<<​0).toString(16);​
 +}
 +window.addEventListener("​load",​function() { changeBackground('​red'​) });
 +
 +
 +</​code>​
  • projets/biohacklab/borne_arcade.1758207967.txt.gz
  • Dernière modification: 2025/09/18 17:06
  • par emoc