Ceci est une ancienne révision du document !
Raspberry Slideshow
Voir 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)
https://www.binaryemotions.com/raspberry-slideshow-download/
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 :
sudo systemctl stop rs
Préparation
Quelques astuces avant de l'utiliser, en supposant que la connexion réseau est opérationnelle.
1) lancer
sudo raspi-config
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 filesysteme, A3 : Memory : 128, A4 : Audio : force headphone (si besoin de muet)
- 8) mettre à jour raspi-config
- 9) Finish pour quitter
Et avant de redémarrer, afficher son IP et tester la connexion en ssh :
ssh pi@10.1.9.x
3) Lancer une mise à jour complète :
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"
Et reboot
Fonctionnement
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.config
(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/
Le compte par défaut est “pi” avec le mot de passe “live” (compte sudo).
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
Dans /boot/cmdline.txt, compléter la ligne avec :
logo.nologo consoleblank=0 loglevel=1 quiet
Rajouter le fichier /etc/systemd/system/splashscreen.service
[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
Copier le fichier splash voulu dans /opt/splash.png (à distance)
Activer le service
sudo systemctl enable splashscreen
Ajout de Wifi
Editer le fichier de config /etc/network/interfaces et rajouter :
# wlan auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp wpa-ssid "MON-SSID" wpa-psk "mot-de-passe"
Et relancer la connexion avec :
ifdown wlan0 && sleep 5 && ifup wlan0
Extinction automatique à certains moments (dates ?)
A heures précises, on peut éteindre le Raspberry. Mais il faudra le rallumer manuellement.
sudo crontab -e
Et rajouter pour lancer l'extinction à 21h :
0 21 * * * /sbin/shutdown -P now
Extinction / allumage de l'affichage
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 !
sudo nano /etc/crontab
0 18 * * * root systemctl stop rs.service && tvservice -o # extinction à 18h 30 8 * * mon,tue,wed,thu,fri root tvservice -p && fbset -accel true; fbset -accel false && sleep 3 && systemctl start rs.service # reboot du lundi au vendredi 0 9 * * sun,sat root /sbin/reboot # reboot
Et relancer le service cron pour le prendre en compte
sudo systemctl restart cron
Accès Partage réseau
Fonctionnalités à tester, à détailler :
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 fichier media.conf), contenant :
# 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éseeau 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
Réduire le temps d'affichage des infos réseau au démarrage
Modifier la valeur de 10 à 0 dans /etc/rs.conf
:
INFORMATIONAL_SCREEN_WAIT=0
Hack pour allonger délai
Rajouter dans /etc/rs.conf
# delay avant lancement du script pour prise en main BOOT_DELAY=120
Et dans /usr/lib/rs/rs.sh
après :
loadComponents
# ajout de delay if [ -z ${BOOT_DELAY x} ]; then sleep $BOOT_DELAY fi
Cacher le message d'affichage :
echo "Initializing, please wait...">/dev/tty1
Clavier en azerty en direct
sudo nano /etc/default/keyboard
Et remplacer “gb” par “fr” si ce n'est pas déjà le cas :
XKBLAYOUT="gb" XKBLAYOUT="fr"