Digital Signage mit dem Raspberry Pi

  Lioh Möller   Lesezeit: 5 Minuten  🗪 3 Kommentare

Mit dieser Anleitung kannst du in wenigen Schritten einen Raspberry Pi in ein Digital Signage Display umwandeln.

digital signage mit dem raspberry pi

Der Begriff Digital Signage stammt eher aus dem Marketing, denn damit lässt sich gutes Geld verdienen. Im einfachsten Falle handelt es sich um einen Minicomputer der beim Systemstart automatisch den Inhalt einer Webseite im Fullscreen darstellt, wie zum Beispiel einen digitalen Vertretungsplan im Schulumfeld.

Solch eine Lösung lässt sich in wenigen Schritten mit einem Raspberry Pi selbst realisieren.

Als Basis dafür kann die leichtgewichtige Lite Variante des Raspberry Pi OS genutzt werden. Einmal heruntergeladen lässt sich das Image entpacken und daraufhin mit dem Mittel der Wahl (dd, Etcher, etc) auf eine SD-Karte überspielen.

Nach Start in das Betriebssystem erfolgt ein Login an der Konsole mit dem Benutzer pi und dem Passwort raspberry. Hierbei ist zu bedenken, dass aufgrund der Standard-Tastaturbelegung die Tasten y und z im Vergleich zum deutschen Tastaturlayout vertauscht sind.

Der Minicomputer erhält wahlweise über ein Netzwerkkabel oder mittels WLAN eine Verbindung zum Internet.

Ein WLAN-Zugang lässt sich in der Konsolenanwendung raspi-config hinterlegen:

sudo raspi-config

Dort wählt man den Punkt 1 System Options -> S1 Wireless LAN und gibt zunächst den passenden Ländercode an (zum Beispiel CH, DE oder AT). Daraufhin muss man manuell die SSID eintragen und ein PSK hinterlegen.

Zurück im Hauptmenü lässt sich über den Punkt 5 Localisation Options -> L3 Keyboard auch noch gleich das passende Tastaturlayout hinterlegen.

Über S1 System Options -> S5 Autologin wird die automatische Anmeldung des Typs B1 Console konfigurieren, welche später für unser Signage Display benötigt wird.

Wer gerne per SSH auf den Raspi zugreifen möchte, wählt im Hauptmenü etwas versteckt unter 3 Interface Options -> P2 SSH und aktiviert dort den Dienst.

Damit ist die Grundkonfiguration bereits abgeschlossen und nach dem Beenden von raspi-config wird man zu einem Neustart aufgefordert, welcher durchgeführt werden sollte.

Nach dem Startvorgang sollte der pi Benutzer bereits angemeldet sein und es kann mit der Installation der benötigten Komponenten begonnen werden. Die folgenden Schritte können wahlweise auch in einer SSH-Sitzung durchgeführt werden.

sudo apt update
sudo apt install --no-install-recommends xserver-xorg x11-xserver-utils xinit openbox chromium-browser

Nach der Installation kann das Autostart Script des zum Einsatz kommenden Windowmanagers Openbox entsprechend erweitert werden.

sudo nano /etc/xdg/openbox/autostart

# Disable screen saver / screen blanking / power management
xset s off
xset s noblank
xset -dpms

# Disable crashed state in order not to open a new Tab on startup
sed -i 's/"exit_type":"Crashed"/"exit_type":"Normal"/' /home/pi/.config/chromium/Default/Preferences

# Start Chromium
chromium-browser --disable-features=Translate --enable-features=OverlayScrollbar --start-fullscreen --kiosk --app=https://gnulinux.ch

Der Chromium Browser wird dabei im Vollbild ohne Steuerelemente oder störende grafische Overlays im Kiosk-Modus gestartet. Die angegebene URL kann natürlich an die eigenen Bedürfnisse angepasst werden.

Um automatisch beim Systemstart den Xserver zu starten, kann die Datei ~/.bash_profile wie folgt bearbeitet werden:

sudo nano ~/.bash_profile
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx -- -nocursor

Damit ist die Konfiguration des Eigenbau-Signage-Displays bereits abgeschlossen und nach einem Neustart sollte das System direkt den Browser mit der angegebenen URL im Vollbildmodus anzeigen.

Bildquelle: Wikipedia

Tags

Raspberry, Signage, Pi, Options, SSH, Minicomputer, S1

Niko Sagiadinos (SmilControl)
Geschrieben von Niko Sagiadinos (SmilControl) am 19. Februar 2022 um 23:25

Hallo Lioh,

interessanter Lösungsansatz, aber Digital Signage ist mehr, als nur Webseiten im Kioskmodus eines Browser aufzurufen. Da geht es um Playlisten, Fernadministration, Remote Inhalte zu aktualisieren sowie Logs und Abspielstatistiken usw., die inzwischen Basisfunktionalitäten darstellen. Von Interaktion und Schnittstellen möchte ich gar nicht erst anfangen. :-)

Ich finde, der Raspberry Pi ist selbst in seiner 4. Inkarnation dafür nur sehr eingeschränkt zu gebrauchen. Leider, weil ein Raspberry treibertechnisch jedem der viel zu häufig eingesetzten low-cost IoT-Geräte aus Asien, um Längen voraus ist.

Da wäre zum einen dieser Eiertanz mit der Videobeschleunigung in der 64 Bit OS Version. Aber selbst mit 32Bit funktioniert das nicht wirklich out-of-the Box. Man muss wissen, dass 256 MB GPU-Speicher und der fake-kms Treiber aktiviert sein müssen, um 4K Content abzuspielen. Bei 512 MB GPU Speicher stottert es wieder. Außerdem dürfen 4K Inhalte nur h265 encodiert sein und ein bestimmtes Profil dann. Dann kann das wiederum anscheinend nur der vlc und nicht ffmpeg (ffplay). Das alles herauszufinden, artet für normale User bereits in Frustration aus. Ganz zu schweigen von der Videobeschleunigung im Browser.

Was aus meiner Sicht aber (noch) ein totales No-Go für solides Digital Signage auf dem Raspberry darstellt, ist das Fehlen von eMMC-Flash in der Standardversion.

Normale microSD Karten sind auf Lesen optimiert. Sobald ein Nutzer regelmäßig Inhalte aktualisiert, Logs und Abspielreports benötigt, resultiert das in Schreibzugriffe, die ruckzuck das Schreib-Limit der Karte sprengen. Allein nur die Logs töten jede normale microSD innerhalb weniger Monate (Praxiserfahrung). Jetzt stellt Dir vor: Du hast mehrere dutzend Standorte mit Raspberrys am Start.

Grüße Niko

VR
Geschrieben von VR am 25. Mai 2022 um 10:49

Hallo Niko,

ich bin leider erst vor kurzem auf diesen Artikel gestoßen. Kannst du Hardware und Software empfehlen?

Viele Grüße, VR

fit42
Geschrieben von fit42 am 15. Juni 2022 um 09:58

Software könnte Ich als Basis DietPi empfehlen, welches Standardmäßig RAMLog nutzt, also ließe sich die Problematik mit den ständigen Schreibzyklen hiermit vermeiden.