Zum Inhalt springen
IoT 21 Aufrufe

[HOW TO] Raspberry Pi Chromium kiosk mode Autostart und Vollbildmodus

Christoph Purin Christoph Purin
[HOW TO] Raspberry Pi Chromium kiosk mode Autostart und Vollbildmodus

Kurzanleitung - Kiosk Mode mit Chromium Raspbian Buster auf einem Raspberry PI 4 oder 3 zu realisieren. Einsatz von z. B. io.Broker, Monitoring etc. Diese Methode ist geeignet, wenn diese Privat im Einsatz ist.

Dies ist einer von vielen Wegen die nach Rom führen. Ich bevorzuge diesen Weg, da ich damit die wenigsten Probleme hatte.

In Kombination mit dem Automatischen ein und Ausschalten vom Raspberry Display ist es eine gut funktionierende Lösung.

Vorbereitung

Wir benötigen einen Raspberry PI, ein Display.
Die Installation von Raspbian, habe ich bereits hier erklärt.

Zusätzlich zur Grundinstallation benötigen wir noch diese Pakete:

sudo apt-get install chromium-browser
sudo apt-get install unclutter

Einen Browser: chromium-browser - versteht sich und den unclutter damit wir den Mauszeiger ausblenden können. Dieser stört in den meisten fällen.

Konfiguration Autostart

Wir öffnen nun die Autostartdatei, um dieser mitzuteilen, dass wir den Chromium und wenn gewünscht ohne "Mauszeiger" ein Browser Fenster öffnen möchten. Dazu öffnen wir die folgenden Konfigurationsdateien.
Beim Raspberry PI4 mit Buster:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart 

bzw. bei den älteren Systemen:

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

Wir fügen nun diese Codezeilen zu den bestehenden dazu!

# Mauszeiger Ausblenden
@unclutter

# Bildschirmschoner ausschalten
#@xscreensaver -no-splash  
@xset s off
@xset -dpms
@xset s noblank

# startet Chromium im vollbild und incognito Modus - öffnet die Webseite http://b12w4.myraidbox.de
@chromium-browser --incognito --kiosk http://b12w4.myraidbox.de 

Danach Speichern und Schließen sowie den Raspberry neu starten.
STRG + o und STRG + x

sudo reboot

Tipp – Webcam mit Benutzername und Passwort öffnen:

@chromium-browser --incognito --kiosk http://user:password@192.168.0.100/bild.jpg 

Zwischen Benutzername und Passwort muss ein "Doppelpunkt" : das ganze gefolgt von einem @ Zeichen.
Damit kann z. B. eine Mobotix Kamera direkt in ein Livestream geladen werden.

Tipp - io.Broker / lokale Seiten / localhost

Wenn Ihr lokale Webseiten die sowieso auf demselben Raspberry gehostet sind öffnen möchtet, könnt Ihr als Link "localhost" verwenden.

@chromium-browser --incognito --kiosk http://localhost:8081/...

Weitere Attributen, display, position

Um verschiedene Bildschirme ansteuern zu können, wird ein weiteres Attribut beim Autostart benötigt -- display=:0

@chromium-browser --display=:0 --incognito --kiosk http://localhost:8081/...

Auch kann das Fenster auf einem Monitor positioniert werden, macht im Vollbildmodus natürlich keinen Sinn :)

@chromium-browser --display=:0 --display=:0 --incognito http://localhost:8081/...

Sichere Methode - etwas komplizierter

Hier eine alternative sichere Methode sollte der Vollbildmodus an öffentlichen Screens benötigt werden.

Quellen: https://www.raspberrypi.org/documentation/hardware/display/troubleshooting.md

Teilen

Ähnliche Beiträge

Kommentare 17

Florian
Hallo,
Danke für die sehr Gute Anleitung,
Jetzt wäre es für mich gut wenn nach einer bestimmten Zeit der Bildschirm ausgeht. Wie setzte ich das am besten um.
Angeschlossen ist ein Touchscreen.
Mfg
Christoph Purin
Hallo Florian,

ich löse, dass über zwei Einträge in der Crontab, um die Helligkeit zuschalten.
<code>0 21 * * * echo 1 > /sys/class/backlight/rpi_backlight/bl_power
0 7 * * * echo 0 > /sys/class/backlight/rpi_backlight/bl_power</code>

Um 21:00 schalte ich das Backlight aus und um 7:00 wieder an.

Gruß
Stoffl
Martin
Hallo,

vielen Dank für die sehr gute Anleitung. Mit einem Display klappt es einwandfrei.
Jetzt will ich versuchen zwei Display in einem Raspberry Pi zu machen.
Gibt es auch Einleitung dafür? Bis jetzt erkennt das Raspi nur ein Display, obwohl beide Displays schon eingesteckt sind.

Viele Grüße,
Martin
Neandertaler
Hallo, ich benutze ein Raspberry Pi Zero und versuche ein DAKBoard dadrauf anzuzeigen.
Wenn ich das DAKBoard so aufrufe funktioniert das auch.
Nun wollte ich es aber im Kiosk Modus starten aber nach dem Neustart bekomme ich nur ein schwarzes Bild. Wenn ich in den Taskmanager gehe sehe ich das Chromium offen ist, aber halt nur als schwarzer Screen. wodran könnte das liegen oder wie könnte ich das beheben?
Aner
Hallo zusammen,
ich habe am Pi einen Autostart hinterlegt, indem eine Webseite geöffnet wird.
@unclutter
#@xscreensaver -no-splash
@xset s off
@xset -dpms
@xset s noblank
@chromium-browser --incognito --kiosk https://www.welt.de

Ich wollte nun die Webseite ändern und habe die URL geändert. Nach sudo reboot öffnet er aber immer noch die alte Webseite. Was mache ich hier falsch? Kann mir jemand helfen?
Wakil Ebrahimi
Danke für die sehr Gute Anleitung,
funktioniert alles sauber aber am Ende habe ich nur eine schwarze Seite mit der Fehlermeldung "Untitled" und die Webseite wird nicht geladen. weder http noch https

Kannst ihr bitte mir dabei helfen?

Beste Grüße
Wakil
Christoph Purin
Hallo Wakil, wie schaut deine Configdatei aus? '
Kannst du einen Screenshot oder den Code hier posten?

danke
Stoffl
Thomas Ströbele
Hallo,
super Anleitung hat auf Anhieb funktioniert.
Ich habe an meinem Raspi einen Fernseher über HDMI hängen.
Im KIOSK Modus kommt dauerhaft eine Ansage.
Klar könnte ich nun einfach die Lautstärke abdrehen. Eleganter wäre es natürlich wenn man Absage abschalten könnte.
Eine Idee?
Vielen Dank für die Unterstützung
Thomas
Thorsten Seide
Hallo,
danke für die Anleitung, klappt soweit. Ich habe es mit einem PiZero umgesetzt, leider ist dieser zu schwach dafür. Ich hatte dann die Idee es mit der Lite Version zu versuchen, aber dabei lässt sich die Playlist nicht starten. Würde es auch mit der Lite Version eine Möglichkeit geben?
Gruß Thorsten
Christoph Purin
Hallo Thorsten, leider wüsste ich spontan hier keine Lösung.
Du könntest dem RPI etwas mehr Leistung geben und dann die normale Version nochmals probieren.
lg
Stoffl
Michael
Hallo,

danke für die tolle anleitung.

Habe nur ein probem, an meinem tv habe ich im kiosk modus einen scharzen rand um das bild.
so als wäre er nich tkomplett im vollbild modus.
wenn ich das normale pi desktop anzeige ist alles gut.

jemand eine idee?

lg
mike
Christoph Purin
Hallo Mike, vielen lieben Dank.
Kannst du ein Foto Teilen, damit ich sehe, wie das genau aussieht?

Liebe Grüße
Stoffl
Michael
Hi, wenn ich wüsste wie ich hier ein foto einfügen kann gere :-)
Michael
Habs mal so gemacht
https://share-your-photo.com/5b131e764b
Michael
Hi, nochmals.

Habe es gefunden, es war der underscan aktiviert. :-)
Christoph Purin
Hallo Michael, perfekt vielen Dank für deine Rückmeldung
Kevin Luderer
Servus,
Echt gute Anleitung! Vielen Dank!
Ich habe nur Touch Display an meinen Pi und möchte gerne nur über das Display den Kiosk Modus (also Vollbildmodus) beenden. Alt+F4 funktioniert mit Tastatur. Wie bekomme ich das nur über das Display hin?
Villeicht weist du ja was...:)

MFG
Kevin
Christoph Purin
Hallo Kevin,
wenn du die Windows Taste drückst, kannst du über das menü Zubehör in den Taskmanager dort den Prozess chromium... meisten der mit dem meisten Arbeitsspeicher killen.
Menü: <img src="https://stoffl.info/wp-content/uploads/2021/02/Taskmanager.png" alt="Menü Bild" />
<img src="https://stoffl.info/wp-content/uploads/2021/02/chromium.png" alt="Chromium Prozess" />
Ich habe es nochmals mit alt + F4 probiert - bei mir geht das reibungslos.

Die Tastatureinstellungen sind richtig gesetzt?

Versuche es alternativ über VNC - damit muss es gehen.

Gruß
Stoffl
Klaus-Dieter Brinkmann
Sehr gute Anleitung, hat sofort geklappt.
Gibt es eine Möglickeit die Anzeige zur vergrössen Ctrl/+ o.ä.
stoffl
Hallo Klaus-Dieter, vielen Dank :) freut mich wenn es funktioniert.

ich hab zu deiner Frage spontan keine Lösung. Sowie im google lediglich eine Virtuelle Tastatur gefunden, die als extension im Chromium installiert werden kann.

Es gibt bereits mit dem Mai update eine Lupe, eventuell kann dir dieser helfen?
https://www.bitblokes.de/raspberry-pi-os-update-mai-2020-es-gibt-ein-buecherregal-und-eine-lupe/

Gruß
Stoffl
Gerhard Bauer
Servus Stoffl,

ui, super. Jetzt stell dir aber mal vor, dass ich keinerlei Ahnung hätte von Linux. :)

Ich muss das nicht in die Autostart schreiben, sondern nur einmal auf die von dir geschilderte Weise crontab aufrufen und dann die Werte eingeben?

Aus Sicherheitsgründen - weil ich ja nicht weiß, wann das Ding genau abstürzt - würde ich gerne das Ding jeden Tag um 6.30 Uhr in der Früh restarten...
Stimmt dann die Zeile
30 6 * * * sudo reboot
?

Wird crontab immer automatisch gestartet oder muss das ins autostart?

Nur um vorzubeugen: Wenn ich den Raspberry mit einer Tastatur verbinde, um das alles einzugeben, reicht ein Strg+F4 zum beenden des Kiosk-Modes und dann ein Strg+Alt+T fürs Terminal?

Viele Grüße
Christoph Purin
Hallo Gerhard,

<code>30 6 * * * sudo reboot</code> ist richtig :)
um es ganz nobel zu machen:
<code>30 6 * * * sudo reboot >/dev/null 2>&1</code> Damit wird bei einer Ausgabe, die Ausgabe verworfen.

Ja, du kannst einfach eine Tastatur anschließen und die Tastaturkürzel verwenden - wenn du einen Touch auch integriert hast, sollte dieser auch funktionieren.
Ich drücke selber immer auf die "Windows" Taste für das Menü und navigiere mich per Pfeiltasten durch.

Mit "Alt + F4" schließt es bei mir die Fenster.

Bitte schau aber auch mal in die LOGS <code>/var/logs/</code> Ordner, dort sollte es eine Datei "Syslog" geben - eventuell findest du dort heraus, warum sich der Raspberry hier verabschiedet. (Alle Logs sind normalerweise dort drinnen, je nachdem was alles installiert ist.)

Mit <code>sudo nano /var/log/syslog </code> den log öffnen und du kannst mit <code>STRG+W</code> und dann einfach <code>STRG+V</code> an das Ende der Datei springen.
Danach mit Pfeiltasten nach oben oder unten springen.
<code>STRG+W</code> Und Begriff eingeben um zu suchen - mit enter bestätigen. Mit nochmaligen <code>str+w</code> springt er durch die Suchergebnisse.

<code>STRG + x</code> - schließen (sollte eine Meldung wegen speichern kommen, einfach N drücken.)

Hoffe, du kommst dahinter, warum der RPI immer aussetzt.
Ein zu schwaches Netzteil hast du bereits ausgeschlossen? PI4 braucht richtig viel Strom, 3A + würde ich dir empfehlen. Bei PI3 mindestens 2,1 / 2,5 bevorzugt verwenden.

<strong>VNC</strong>
Edit: -- Wenn du VNC aktivierst in den <code>sudo raspi - config</code> über das Terminal - dann kannst du mit VNC auf deinen Raspberry zugreifen und auch bedienen - dann musst du nicht die 4 Meter hoch.
<code>sudo raspi-config
3 - Interface Options
P3 - VNC
aktivieren - JA</code>

Auf deinem PC das Tool VNC herunterladen: <a href="https://www.realvnc.com/de/connect/download/viewer/" target="_blank" rel="noopener nofollow ugc">https://www.realvnc.com/de/connect/download/viewer/</a>

Danach einfach neue Verbindung -> IP von deinem Raspberry -> verbinden und mit den Raspberry Zugangsdaten (Benutzer: pi Passwort:raspberry) anmelden.
Schon hast du das Bild vom Raspberry auf deinem Gerät.


Gruß
Stoffl
Gerhard Bauer
Die Anleitung funktionierte bei mir ganz hervorragend, danke. Einmal pro Woche (meist am Wochenende - aber warum nur...?) crasht der Chromium mit

Oh nein!
Fehler beim Anzeigen dieser Webseite
Fehlercode 9
Weitere Informationen

Nun habe ich das Ding in vier Meter Höhe installiert und das anschließen von / arbeiten mit Tastatur &amp; Maus da oben ist eher blöd.

Wie kann ich den Fehler denn beheben? Ich habe gegooglet, aber nicht mal was zu dem Fehlercode gefunden.
Kann ich Chromium bzw. den Raspberry so einstellen, dass er diese Errors abfängt? Bzw. meinetwegen auch einmal am Tag einen Restart macht oder so, das wäre mir egal...
Christoph Purin
Hallo Gerhard,

ich habe das über einen Neustart, der einmal pro Woche gemacht wird, gelöst.
Das Problem tritt bei mir auf, wenn der Arbeitsspeicher ans Limit kommt.

<code>sudo crontab -e</code>

und dort habe ich einfach diesen Eintrag hinzugefügt:
<code>
0 6 * * 1 sudo reboot
</code>


Gruß
Stoffl
Sascha
Vielen lieben Dank, klappte auf Anhieb und ist mehr als nützlich.

Gibt es eine Möglichkeit diese Funktion individuell für Display A &amp; B beim Raspberry PI 4 zu konfigurieren?

Beste Grüße
Sascha
Christoph Purin
Hallo Sascha,
soweit ich weiß, kann dies über die Attribute "<code> --display=:0</code>" gesteuert werden.

<code>chromium-browser --display=:0 --kiosk --incognito --window-position=0,0 http://webseite.info</code>

Über "<code>--windows-postion=0,0</code>" kann die Position gesteuert werden.

Ich hoffe, das funktioniert bei dir

Gruß
Stoffl
Sascha Dämgen
Hallo Christoph,

Leider scheint das bei mir nicht zu funktionieren,

--display=:0 funktioniert, aber sobald ich es mit --display=:1 versuche, erhalte ich nur den Denktophintergrund ohne Startmenü.

Gruß

Sascha
Christoph Purin
Hallo Sascha, mit display=1 übergibst du den Chromium Browser an den Bildschirm 1 von deinem Raspberry.
Der Link ist korrekt?

Gruß
Stoffl
Sascha Dämgen
Hallo Christoph,

Ich versuchte es erst so:
(Ziel: Loxone Webinterface auf 0 und IOBroker auf 1)

@chromium --display=:0 --kiosk http://192.168.169.197/
@chromium --display=:1 --kiosk http://192.168.169.25:8081/

Da gab er mir den Browser auf Display 0 und auf 1 nur den Denktophintergrund. Dann versuchte ich das mit einer Zeile zu testen.

@chromium --display=:1 --kiosk http://192.168.169.197/

ergibt kein Browser Fenster und auf beiden Displays nur den Desktop Hintergrund.

@chromium --display=:0 --kiosk http://192.168.169.197/

ergibt das Browser Fenster auf Display 0 und auf 1 nur den Denktophintergrund. (wie am Anfang mit der 2 Zweiligen Anweisung)

Und jup, die Links funktionieren, ich nutze sie mit deiner Anleitung jetzt auf 3 Displays, superstabil, auch nach zahlreichen Neustarts.

Beste Grüße
Sascha

ps. RaspiOS ist frisch aufgesetzt, nur die regulären Updates, keine Tools, läuft eigentlich supergut mit 2 Browsern/Displays im GUI.
Christoph Purin
Hallo Sascha, ich verstehe
<code>@chromium-browser --disable-infobars --window-position=0,0 --window-size=900,440 --app=http://*address1* --user-data-dir="/home/pi/Documents/Profiles/1
@chromium-browser --disable-infobars --window-position=0,500 --window-size=900,440 --app=http://*address2* --user-data-dir="/home/pi/Documents/Profiles/2
@chromium-browser --disable-infobars --window-position=0,1000 --window-size=900,440 --app=http://*address3* --user-data-dir="/home/pi/Documents/Profiles/3</code>

Quelle: https://www.raspberrypi.org/forums/viewtopic.php?t=257688

Hier sind die möglichen Optionen, eventuell hilft dir das weiter.
https://peter.sh/experiments/chromium-command-line-switches/

Leider hab ich zu wenig HDMI Adapter, um beide Monitore an meinem PI4 anzuschließen.
Ich hoffe, du kommst damit etwas weiter - mit <code>--app</code>

Gruß
Stoffl
Hakan
Hallo, erstmal vielen Dank. Ich kann leider keine längeren Webseiten hinzufügen z.B: 192.178.168.20:8022/vis/edit.html#PW_Eingabe

Hier wird nur bis 192.178.168.20:8022 und der rest nicht mit übertragen.

An was kann das liegen ?
Christoph Purin
Hallo Hakan,
vielen dank :)
zum Anzeigen bei IOBroker muss anstatt von edit.html index.html eingefügt werden.
Anstatt: 192.178.168.20:8022/vis/edit.html#PW_Eingabe
richtig: 192.178.168.20:8022/vis/index.html#PW_Eingabe

Beim Port bin ich mir bei dir nicht sicher, ob 8022 - ich muss mit Port 8082 den View ansprechen.

Meine Config:

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@unclutter
@xset s off
@xset -dpms
@xset s noblank
@chromium-browser --incognito --kiosk http://localhost:8082/vis/index.html#stoffl-home
@/home/pi/auto.sh

Gruß
Stoffl
Tristan
Funtkioniert einwandfrei, Wenn ich einen API Key habe für eine bestimmte Seite, wo müsste ich den angeben bzw. zusätzliche konfiguration machen?
Christoph Purin
Hallo Tristan, das kann ich dir so nicht beantworten, wie schaut der link dazu aus? meistens, aber nicht immer wird das mit der URL mit angegeben.

Gruß
Stoffl
Tobias
Hallo Stoffl,
herzlichen Dank für die gute und kompakte Anleitung! Funktioniert perfekt!

Eine Frage hätte ich noch, weil ich selbst nicht auf die Lösung komme:
Wenn ich den Kiosk-Mode über ALT+F4 verlassen habe, kann ich ihn aktuell nur durch Reboot wieder starten.
Wie müsste ein Skript bzw. eine Desktop-Verknüpfung aussehen, um wieder in den Kiosk-Mode zu kommen?
(das selbe Skript als SH oder PY-Datei scheint ja nicht zu gehen - sorry, bin kein Programmierer ;-)

Danke und viele Grüße
Tobias
stoffl
Hallo Tobias,
vielen Dank.

Derzeit kenne ich nur die Lösung über einen Neustart. Ich habe auch bereits im Internet recherchiert, leider ohne Erfolg.
Sollte ich fündig werden, aktualisiere ich den Artikel.

Gruß
Stoffl
Michael
Hallo,

bei mir funktioniert folgender Weg:
Datei am Desktop anlegen (z.B. start.sh)
Richtigen Befehl reinkopieren (bei mir funktionierte nur "chromium" anstatt chromium-browser -&gt; hat wohl kein Kiosk mode)
Datei mit chmod +x ausführbar machen und dann doppelklicken.

Gutes Tutorial, danke.

Gruß,
Michael
Jörg
Der Chromium-Browser heißt inzwischen nur noch Chromium, daher muss bei neuen Versionen die Befehlszeile entsprechend angepasst werden.

VG

Jörg
stoffl
Hallo Jörg, vielen Dank für den Hinweis!
Gruß
Stoffl

Kommentar hinterlassen

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmst du der Verwendung von Cookies zu. Datenschutzerklärung