Raspberry Pi als Anzeigesystem

Der Raspberry Pi ist ein preiswerter und stromsparender Einplatinencomputer, mit welchem sich in Kombination mit einem HDMI-Display mit verhältnismäßig wenig Aufwand ein Anzeigesystem umsetzen lässt. Raspbian ist ein weit verbreitetes Linux-Betriebssystem für den Mini-Computer.
Die im Folgenden dargestellte Variante startet lediglich einen Browser mit einer gewünschten Webseite im Vollbildmodus, lädt diese in gewünschten Abständen neu und verdunkelt zu gewünschten Zeiten den Bildschirm. Das Konzept geht also davon aus, dass die anzuzeigenden Inhalte bereits in Form einer externen Webseite vorliegen.
Die aktuellen Beschreibungen basieren auf dem Raspberry Pi ab Modell 3 B(+) und Raspbian Pi OS Lite (05/2021).
Installation des Raspberry Pi mit Rasbpian Lite
Raspbian auf SD-Karte kopieren
Am einfachsten kopieren Sie das benötigte Image (Raspian Other → Raspian Pi OS Lite) mit dem Raspberry Pi Imager (Link s. oben) auf eine Micro-SD-Karte. Für unsere Zwecke genügt ein sehr kleines Medium (z. B. 4 GB). Stecken Sie die SD-Karte nach erfolgreichem Kopiervorgang in den Raspberry Pi.
Erster Start und Grundkonfiguration des Systems
Booten Sie den Raspberry Pi, indem Sie ihn mit einer Stromquelle verbinden und melden sich erstmalig mit den Initial-Zugangsdaten (User: pi / PW: raspberry) an.
Warten Sie ggf. die Update-Routine ab und starten Sie im Anschluss die initiale, grafisch gestützte Grundkonfiguration:
sudo raspi-config
Hinweis: Sollte das Tastaturlayout noch nicht stimmen, orientieren Sie sich vorübergehend an der US-Tastaturbelegung: https://de.wikipedia.org/wiki/Tastaturbelegung#USA.
Notwendige Einstellungen in raspi-config
- System Options
- Wireless LAN → ggf. hier Zugangsdaten für WLAN hinterlegen
- Password → Passwort für User pi ändern
- Hostname → ggf. Netzwerknamen des Rasperry Pi einstellen
- Boot / Auto Login → Console Autologin wählen
- Display Options
- Underscan → ggf. schwarze Display-Umrandung entfernen
- Screenblanking → mit "Yes" aktivieren
- Interface Options
- SSH → mit "Yes" aktivieren
- Localisation Options
- Locale: de_DE.UTF-8 aktivieren und als default locale festlegen
- Timezone: Europe/Berlin
- ggf. WLAN-Country festlegen
- Advanced Options
- Expand Filesystem
Anschließend starten Sie das System mit "Reboot" neu.
IP-Adresse herausfinden
Um nachfolgend den Raspberry Pi von der Ferne per SSH bedienen zu können bzw. um ggf. notwendige Firewalleinstellungen tätigen zu können, muss die IP-Adresse und ggf. auch die MAC-Adresse der aktiven Netzwerkkarte ermittelt werden:
sudo ip address
Updates und notwendige Programme installieren
# Paketlisten aktualisieren und installierte Pakete updaten
sudo apt update && sudo apt upgrade -y
# Notwendige Software installieren
sudo apt install --no-install-recommends xserver-xorg x11-xserver-utils xinit openbox xdotool chromium-browser unclutter -y
Skript für automatisches Neuladen des Chrome-Browsers erstellen
Damit die gewünschte Webseite auch nach einem etwaigen Verlust der Netzwerkverbindung erneut geladen werden kann, ist nachfolgendes Skript notwendig. Diese führt mit Hilfe des Programms xdotool die Tastenkombination Shift+F5 auf dem geöffneten Browserfenster aus. Weiter unten wird ein Task eingerichtet, der diese Aktion alle 5 Minuten anstößt.
nano /home/pi/chromium-reload.sh
Datei /home/pi/chromium-reload.sh
#!/bin/bash
WID=$(xdotool search --onlyvisible --class chromium|head -1)
xdotool windowactivate ${WID}
xdotool key Shift+F5
Skript-Datei ausführbar machen
chmod 755 /home/pi/chromium-reload.sh
Einstellungen für den Autostart des X-Servers
sudo nano /etc/xdg/openbox/autostart
Datei /etc/xdg/openbox/autostart
# Am Dateiende einfügen:
# Bildschirmschoner und Bildschirmabschaltung deaktivieren
xset s off
xset s noblank
xset -dpms
# Mauszeiger bei Nichtgebrauch ausblenden
unclutter
# Beenden des X-Servers via Strg+Alt+Backspace
setxkbmap -option terminate:ctrl_alt_bksp
# Chromium zurücksetzen und im Kiosk-Modus mit gewünschter URL starten
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State'
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/; s/"exit_type":"[^"]\+"/"exit_type":"Normal"/' ~/.config/chromium/Default/Preferences
chromium-browser --disable-infobars --disable-features=Translate --kiosk 'https://www.wikipedia.org'
Hinweis: ersetzen Sie in obiger Datei die URL https://www.wikipedia.org durch die anzuzeigende Webseite.
X-Servers ohne Cursor nach Console-Autologin automatisch starten
nano /home/pi/.bash_profile
Datei /home/pi/.bash_profile
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx -- -nocursor
Cronjobs für automatische Bildschirmabschaltung, Neustart und Chromium-Reload-Skript einrichten
crontab -e
# ggf. Nano als Editor auswählen
Datei crontab des users pi
#nach letzter Zeile hinzufügen:
# Display ausschalten täglich von Montag bis Freitag um 16:00 Uhr
0 16 * * 1-5 xset -display :0 dpms force off
# Neustart täglich von Montag bis Freitag um 06:30 Uhr - schaltet auch Display wieder ein
30 6 * * 1-5 sudo reboot
# Skript chromium-reload.sh alle 5 Minuten ausführen
*/5 * * * * sh /home/pi/chromium-reload.sh
HDMI-Einstellungen
Sofern das Display nach dem Booten des Raspberry Pi eingeschaltet wird, kann es vorkommen, dass der HDMI-Ausgang des Mini-Computers nicht aktiviert ist. Außerdem wird beim im Cronjob festgelegten Abschalten des Displays der Bildschirm standardmäßig nicht abgeschaltet (HDMI-Blanking) sondern nur schwarz geschaltet, was unnötig Energie verschwendet. Sofern Sie die Einstellung für HDMI-Blanking setzen, müssen Sie sicherstellen, dass der eingesetzte Bildschirm sich wieder ordnungsgemäß aktiviert, sobald der Raspberry Pi darauf wieder etwas anzeigen will.
sudo nano /boot/config.txt
Datei /boot/config.txt
# Kommentarzeichen (#) entfernen bei:
hdmi_force_hotplug=1
hdmi_drive=2
Gerät neu starten
sudo reboot
Cookie für WebUntis-Monitoransichten hinterlegen
Sofern Sie die WebUntis-Monitoransichten nutzen, können Sie mit folgendem Prozedere das notwendige Cookie im Browser hinterlegen:
- Am Raspberry Pi mit Tastenkombination Strg+Alt+Backspace den X-Server schließen
- Auf Konsole einen neuen X-Server mit Cursor starten: startx
- Mit Tastenkombination Alt+F4 Chromium im Kiosk-Modus schließen
- Rechtsklick auf Desktop → Web Browser
- Anmelden als admin auf WebUntis-Seite und unter Monitoransichten den entsprechenden Monitur für den Browser freigeben
Letzte Aktualisierung der Seite: 2024-02-16 14:17