technique:raspberryslideshow

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
technique:raspberryslideshow [2021/04/26 15:46] francoisatechnique:raspberryslideshow [2024/04/02 15:08] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-====== Raspberry Slideshow ====== +**Cette page est obsolèteVeuillez accéder au contenu à son nouvel emplacement : [[https://bibliotech.cemea.org/books/outils-technique/page/raspberryslideshow|raspberryslideshow]]**
- +
-Voir [[.:raspberryslideshow:devcemea|RS version CEMEA en-cours]] pour notes sur les essais de fonctionnaltiés en plus à implémenter +
- +
-===== DONE, ce qui fonctionne ===== +
- +
-1) Télécharger le fichier +
- +
-  la version proposée en téléchargement fonctionne, mais uniquement avec des fichiers installés sur une clef USB (images et vidéos) +
-  La version "payante" mais libre propose l'utilisation de docuements trouvés sur le réseau (http ou partagés sur un serveur) +
- +
-Voir les liens actifs ici : [[https://ladoc.cemea.org/doku.php?id=dsi:tv_diffus_raspberrys|https://ladoc.cemea.org/doku.php?id=dsi:tv_diffus_raspberrys]] +
- +
-2) Extraire le Zip +
- +
-3) Avec BalenaEtcher ou autre logiciel, graver le fichier .img sur une carte micro SD +
- +
-4) Puis l'insérer dans une Raspberry Pi et la redémarrer avec un cable réseau. +
- +
-===== Prise en main ===== +
- +
-Par défaut la version démarre sur un diaporama, pour l'interrrompre, lors d'une transition passer sur une console avec Ctrl-alt F2 ou F3 et s'identifier avec le compte ''pi''  (mdp : ''live''+
- +
-Puis taper : +
-<code> +
- +
-sudo systemctl stop rs +
- +
-</code> +
- +
-===== Préparation ===== +
- +
-Quelques astuces avant de l'utiliser, en supposant que la connexion réseau est opérationnelle. +
- +
-1) lancer +
- +
-<code> +
-sudo raspi-config +
- +
-</code> +
- +
-Utilisateur par défaut (compte sudo) : ''pi'' \\ Mot de passe : ''live'' +
- +
-2) Options à activer depuis le menu : +
- +
-  * 1) changer le mot de passe (de l'utilisateur pi) +
-  * 2) Network : N1 : hostname : à personnaliser, N3 : Predictable : No +
-  * 3) Boot Options : B2 : Wait until Network ? No (disabled) +
-  * 4) Localisation : I1 : Locale : fr_FR.UTF-8 (décocher "en") et validier "fr_FR.UTF-8", I2 : Timezone : "Europe / Paris", I3 : KeyBoard Layout : "Generic 102, Others/French" (puis options par défaut) +
-  * 5) Interfacing Options : SSH enable Yes : (si désactivé) +
-  * 7) Advanced Options : A1 : "expand filesystem" pour augmenter la taille disponible au maximum sur la partition, A3 : Memory : 128, A4 : Audio : force headphone (si besoin de muet) +
-  * 8) mettre à jour raspi-config : update +
-  * 9) Finish pour quitter +
- +
-Et avant de redémarrer, afficher son IP et tester la connexion en ssh : +
- +
-<code> +
-ssh pi@10.1.9.x +
- +
-</code> +
- +
-3) Lancer une mise à jour complète : +
- +
-<code> +
-sudo apt update # vérifie les différences entre paquets locaux et distants +
-sudo apt upgrade # mets à jour les nouveaux paquets +
-sudo apt dist-upgrade # mets à jour les noyaux +
-sudo apt autoremove # supprime les paquets "inutiles" +
- +
-</code> +
- +
-soit en une ligne : +
- +
-<code> +
-sudo apt -y update && apt -y dist-upgrade && sudo apt -y autoremove +
- +
-</code> +
- +
-==== Ajout de configuration Réseau ==== +
- +
-Méthode manuelle pour Wifi en client DHCP +
- +
-Editer le fichier de config ''/etc/network/interfaces''  et rajouter : +
- +
-<code> +
-# wlan +
-auto wlan0 +
-allow-hotplug wlan0 +
-iface wlan0 inet dhcp +
-wpa-ssid "MON-SSID" +
-wpa-psk "mot-de-passe" +
- +
-</code> +
- +
-Et reboot +
- +
-==== Méthode manuelle avec IP fixe en wifi ==== +
- +
-Remplacer le fichier /etc/network/interfaces par le simple contenu : +
- +
-<code> +
-source-directory /etc/network/interfaces.d +
- +
-</code> +
- +
-Modifier ''/etc/wpa_supplicant/wpa_supplicant.conf'' +
- +
-Et rajouter : +
- +
-<code> +
-country=FR +
-network={ +
-    ssid="SSIDdemonwifi" +
-    psk="Motdepasseduwifi" +
-+
- +
-</code> +
- +
-Puis dans ''/etc/dhcpcd.conf'', rajouter la config de l'IP fixe : +
- +
-<code> +
-interface wlan0 +
-static ip_address=192.168.5.201/24 +
-static routers=192.168.5.1 +
-static domain_name_servers=10.1.9.1 +
- +
-</code> +
- +
-Puis lancer pour activer le dhcpcd (client DHCP) +
- +
-<code> +
-sudo systemctl enable dhcpcd +
- +
-</code> +
- +
-Tester la connexion SSH à distance à travers le wifi par exemple. +
- +
-<code> +
-ssh pi@192.168.5.201 # ou 202 - 203 +
- +
-</code> +
- +
-===== Fonctionnement général ===== +
- +
-Placer les fichiers sur une clef USB à la racine (pas de sous-dossiers) et placer la clef dans le Raspberry-Slideshow. +
- +
-Le programmeau démarrage vérifie si la clef USB contient des documents et les copie dans /var/lib/rs/ +
- +
-Puis il les affiche en continu. Depuis la version 13, la clef est démontée une fois les fichiers copiés. +
- +
-Au second redémarrage, il n'est donc plus nécessaire de laisser la clef USB. +
- +
-===== Configuration ===== +
- +
-Il est possible de paraméter certaines options dans le fichier ''/etc/rs.conf''  (comme DEBUG="y" pour voir les logs dans ''/var/log/rs.log''+
- +
-D'autres options d'accès sont paramétrables avec un fichier media.conf à placer dans la clef USB ou dans le dossier ''/var/lib/rs/'' +
- +
-Les scripts se trouvent dans ''/usr/lib/rs/'' +
- +
-==== SSH ==== +
- +
-La version gratuite n'a pas de SSH activé. Il faut l'activer avec raspi-config en local (ou en créant un fichier vide nommé ''ssh''  à la racine de / depuis la carte SD par exemple) +
- +
-==== Activation d'un splashscreen ==== +
- +
-Par défaut, le démarrage est verbeux. Solutions possibles : +
- +
-[[https://yingtongli.me/blog/2016/12/21/splash.html|https://yingtongli.me/blog/2016/12/21/splash.html]] +
- +
-Dans /boot/cmdline.txt, compléter la ligne avec : +
-<code> +
- +
-logo.nologo consoleblank=0 loglevel=1 quiet +
- +
-</code> +
- +
-Rajouter le fichier ''/etc/systemd/system/splashscreen.service'' +
- +
-<code> +
-[Unit] +
-Description=Splash screen +
-DefaultDependencies=no +
-After=local-fs.target +
- +
-[Service] +
-ExecStart=/usr/bin/fbi -d /dev/fb0 --noverbose -a /opt/splash.png +
-StandardInput=tty +
-StandardOutput=tty +
- +
-[Install] +
-WantedBy=sysinit.target +
- +
-</code> +
- +
-Copier le fichier splash voulu dans **/opt/splash.png (à distance)** +
- +
-Activer le service +
- +
-<code> +
-sudo systemctl enable splashscreen +
- +
-</code> +
- +
-==== Extinction automatique à certains moments (si besoin) ==== +
- +
-A heures précises, on peut éteindre le Raspberry. Mais il faudra le rallumer manuellement. (Voir procédure plus bas pour ne pas éteindre le raspberry). +
- +
-<code> +
-sudo crontab -e +
- +
-</code> +
- +
-Et rajouter pour lancer l'extinction à 21h : +
- +
-<code> +
-0 21 * * * /sbin/shutdown -P now +
- +
-</code> +
- +
-==== Extinction / allumage de l'affichage ==== +
- +
-[[https://www.instructables.com/id/Raspberry-Pi-Wall-Display-Without-X-Windows/|https://www.instructables.com/id/Raspberry-Pi-Wall-Display-Without-X-Windows/]] +
- +
-L'idéal est de ne pas l'éteindre, mais de mettre l'affichage en noir et de le relancer à une heure précise. C'est fait ! +
-<code> +
- +
-sudo nano /etc/crontab +
- +
-</code> +
- +
-<code> +
-0 18 * * * root systemctl stop rs.service && tvservice -o # arret de diffusion et extinction de l'écran à 18h +
-30 8 * * mon,tue,wed,thu,fri root tvservice -p && fbset -accel true; fbset -accel false && sleep 3 && systemctl start rs.service # allumage du lundi au vendredi +
-0 9 * * sun,sat root /sbin/reboot # reboot à 9h chaque samedi et dimanche matin +
- +
-</code> +
- +
-Et relancer le service cron pour le prendre en compte +
- +
-<code> +
-sudo systemctl restart cron +
- +
-</code> +
- +
-==== Accès Partage réseau ==== +
- +
-Il est possible d'utiliser l'accès à un partage réseau pour déposer du contenu à diffuser +
- +
-Il est nécessaire de créer un fichier sur la clef USB (ou ailleurs dans un [[https://www.binaryemotions.com/raspberry-slideshow-download/|fichier media.conf]] à créer dans ''/var/lib/rs/''  ), contenant par exemple : +
-<code> +
- +
-# Fichiers statiques à ajouter +
- +
-url: https://www.binaryemotions.com/rs-default-media/verona.san-zeno.jpg +
-url: https://www.binaryemotions.com/rs-default-media/verona.arena.jpg +
- +
-# Server-managed inventory : liste distante de fichiers +
-serverlist: https://www.binaryemotions.com/rs-default-media/images.txt +
- +
-# Samba share : partage réseau +
-smb.share: //ipserveur/partages/cemea-ffe/ressources/films +
-smb.username: ffe +
-smb.password: motdepasse +
- +
-# Dropbox key. +
-dropbox: clef_personnelle_du_compte +
- +
-# Refresh time in seconds. +
-refresh: 600 +
- +
-</code> +
- +
-Cas de l'AN : définir un utilisateur dédié "tvaccueil" qui accèdera au dossier partagé "TV-Accueil"+
- +
-Editer le fichier ''/var/lib/rs/media.conf'' +
- +
-<code> +
-# Samba share : partage réseau +
-smb.share: //10.1.9.1/partages/TV-ACCUEIL/ +
-smb.username: tvaccueil +
-smb.password: motdepasse +
- +
-# Refresh time in seconds. +
-refresh: 600 +
- +
-</code> +
- +
-Et redémarrer le service rs : +
- +
-<code> +
-systemctl restart rs +
- +
-</code> +
- +
-==== Réduire le temps d'affichage des infos réseau au démarrage ==== +
- +
-Modifier la valeur de 10 à 0 dans ''/etc/rs.conf'' +
- +
-<code> +
-INFORMATIONAL_SCREEN_WAIT=0 +
- +
-</code> +
- +
-==== Hack pour allonger délai ==== +
- +
-Rajouter dans ''/etc/rs.conf'' +
- +
-<code> +
-# delay avant lancement du script pour prise en main +
-BOOT_DELAY=120 +
- +
-</code> +
- +
-Et dans ''/usr/lib/rs/rs.sh''  après : +
- +
-<code> +
-loadComponents +
- +
-</code> +
- +
-<code> +
-# ajout de delay +
-if [ -z ${BOOT_DELAY x} ]; then +
-        sleep $BOOT_DELAY +
-fi +
- +
-</code> +
- +
-Cacher le message d'affichage : +
- +
-<code> +
-echo "Initializing, please wait...">/dev/tty1 +
- +
-</code> +
- +
-==== Clavier en azerty en direct ==== +
- +
-<code> +
-sudo nano /etc/default/keyboard +
- +
-</code> +
- +
-Et remplacer "gb" par "fr" si ce n'est pas déjà le cas : +
- +
-<code> +
-XKBLAYOUT="gb" +
-XKBLAYOUT="fr" +
- +
-</code> +
- +
-===== Relancer manuellement le service ===== +
- +
-En cas de modification du code, voici les étapes à respecter pour relancer le diaporama : +
- +
-<code> +
-systemctl stop raspitv # service qui vérifie et génère le nouveau planning s'il a changé +
-systemctl stop rs # service qui diffuse le diaporama +
-systemctl start raspitv # service qui relance la génèrtion du nouveau planning et relance le diaporama +
- +
-</code> +
- +
-Pour info, par défaut, le nouveau plnning est généré sous forme d'image "''planning.png''" dans le dossier ''/var/lib/rs/'' +
- +
-Le fichier ''planning.html''  est aussi le fichier final généré avant transformation en image. +
- +
-Il est possible de consulter la liste des images diffusées en utilisant : +
- +
-<code> +
-journalctl -u rs.service +
- +
-</code> +
- +
-Parcourir le fichier de log avec les flèches du clavier ou espace (pgdown) et "q" pour quitter le fichier. +
- +
  • technique/raspberryslideshow.1619444805.txt.gz
  • Dernière modification : 2021/04/26 15:46
  • de francoisa