Wachalarm-Monitor/README.md
2023-01-05 14:23:22 +01:00

179 lines
7.8 KiB
Markdown

# Wachalarm-Kiosk
Hier finden Sie ein einfach zu nutzendes SD-Karten-Image für einen **Raspberry Pi**, mit dem der Wachalarm (oder eine andere Webseite) direkt im Vollbild z.B. auf einem Monitor anzeigt werden kann.
## Beispielfoto
![Wachalarm FF Elsterwerda](https://user-images.githubusercontent.com/19272095/89555705-ae166100-d810-11ea-99d6-089c08687a14.png)
## Funktionen
- **Startet unmittelbar im Vollbild** - Chromium Web-Browser mit allen wichtigen Funktionen
- **Automatatische Sicherheitsupdates** - wichtige Updates werden automatisch installiert, bei Bedarf erfolgt in der Nacht ein automatischer Neustart
- **Automatische Wiederherstellung** - bei Neustart oder Stromausfall startet das System im vorherigen Zustand eigenständig neu
- *Optional:* **Stromsparfunktion** - mittels HDMI-CEC kann der Monitor ausgeschaltet werden, sofern kein Einsatz anliegt
- **Maus wird ausgeblendet** - sofern eine Maus angeschlossen ist, wird diese nach inaktivität ausgeblendet
## Inbetriebnahme
1. Benötigt wird ein Raspberry Pi ([kompatible Hardware](#hardware)).
2. [Aktuelles Image](https://github.com/Robert-112/Wachalarm-Kiosk/releases) herunterladen.
3. Dateien entpacken.
4. Image auf eine SD-Karate schreiben. Hierzu kann unter Windows die Anwendung [Win32 Disk Imager](https://sourceforge.net/projects/win32diskimager/) genutzt werden.
5. [Webseite und weitere Optionen festlegen](#konfigurations-datei)
6. *optional*: automatische [WLAN-Verbindung](#wlan-setup) einstellen
7. *optional*: [feste IP-Adresse](#ip-adresse) hinterlegen
8. *optional*: [Passwort](#passwort-ändern) für den Benutzer `pi` ändern
9. SD-Karte in den Raspberry Pi einsetzen und starten.
## Einstellungen
### Konfigurations-Datei
1. SD-Karte in einen PC einlgen (z.B. per USB-Adapter).
2. Unter der Partition "Boot" der SD-Karte findet sich die Datei *[wachalarm_einstellungen.txt](https://github.com/Robert-112/Wachalarm-Kiosk/blob/custom/home/wachalarm_einstellungen.txt)*.
3. folgende Einstellungen können gesetzt werden:
#### Webseite beim Start
Webseite, die beim Start geöffnet werden soll, z.B. https://wachalarm.leitstelle-lausitz.de/waip/520101
```
startup_url=https://wachalarm.leitstelle-lausitz.de/waip/520101
```
#### Standby aktivieren
Automatisches Ausschalten des Bildschirms aktivieren, sofern kein Einsatz anliegt
1 == an, 0 == aus
```
standby_enable=1
```
#### Standby - Alarmmonitore-URL
*(gilt nur wenn Standby aktiv)*
URL zur auswahl der Alarmmonitore, z.B. https://wachalarm.leitstelle-lausitz.de/waip/ .
Die URL ist notwendig damit das Standby-Signal per Websocket korrekt ausgewertet werden kann.
(! dies ist nicht die URL des einzelnen Alarmmonitors !)
```
standby_waipurl=https://wachalarm.leitstelle-lausitz.de/waip
```
#### Standby - Wachennummer
*(gilt nur wenn Standby aktiv)*
Nummer der Wache, für die bei Alarmen der Monitor angeschaltet werden soll, z.B. 520101 für CB FW Cottbus
```
standby_wachennr=520101
```
#### System-Statusmeldungen aktivieren
Automatisches senden von Status-Meldungen des Systems aktivieren.
Es handelt sich um allgemeine Systeminforamtionen wie z.B. Kernel-Version, Hardwaremerkmale & Udpatestatus. Personenbezogene Daten werden nicht ermittelt.
1 == an, 0 == aus
```
report_enable=1
```
#### System-Statusmeldungen - Status-URL
*(gilt nur wenn System-Statusmeldungen aktiv)*
URL an die Status-Meldungen durch das System gesendet werden.
```
report_url=https://wachalarm.leitstelle-lausitz.de/client_statusmessage
```
### WLAN Setup
WLAN-Verbindungen lassen Sich beim Raspberry über eine spezielle Datei vorgeben.
1. SD-Karte in PC einsetzen.
2. In der Boot-Partition eine Datei mit dem Namen `wpa_supplicant.conf` erstellen.
3. Eine fertige Vorlage findet sich hier: [wpa_supplicant.conf](https://github.com/Robert-112/Wachalarm-Kiosk/blob/custom/optional_boot_config/wpa_supplicant.conf)
4. Ersetzen Sie `Name-des-WLANs` und `ganz-geheimes-kennwort` mit Ihren eigenen WLAN-Einstellungen.
5. Datei speichern und SD-Karte wieder in den Raspberry Pi einsetzen. Er sollte sich jetzt eigenständig mit dem WLAN verbinden.
#### Beispiel wpa_supplicant.conf für WLAN _mit Kennwort_
```
country=DE
update_config=1
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
key_mgmt=WPA-PSK
ssid="Name-des-WLANs"
psk="ganz-geheimes-kennwort"
}
```
#### Beispiel wpa_supplicant.conf für WLAN _ohne Kennwort_
```
country=DE
update_config=1
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
ssid="Name-des-WLANs"
key_mgmt=NONE
}
```
## Standardeinstellungen per Script anpassen
Mittels Anpassung der Datei `cmdline.txt` kann beim Start des Raspberry ein Script ausgeführt werden werden.
Über dieses Script können verschiedene Einstellungen individuell angepasst werden.
1. SD-Karte in PC einsetzen.
2. In der Boot-Partition die Datei `cmdline.txt` finden und mit einem Editor öffnen.
3. Am ende der ersten Zeile ein Leerzeichen und folgenden Text hinzufügen (keine neue Ziele):
```systemd.run=/boot/firstrun.sh systemd.run_success_action=reboot systemd.unit=kernel-command-line.target```
(eine bereits angepasste `cmdline.txt`-Dateien finden Sie hier: [optional_boot_config](https://github.com/Robert-112/Wachalarm-Kiosk/blob/custom/optional_boot_config))
Die Änderung der `cmdline.txt` führt dazu, dass beim nächsten Start das Script `/boot/firstrun.sh` einmalig ausgeführt wird. Nach Ausführung entfernt sich das Script selbstständig aus dem Ordner `/boot/` und auch die Anpassung der `cmdline.txt` wird wieder rückgängig gemacht.
### IP-Adresse
Über das Script `firstrun.sh` lässt sich die Datei `/etc/dhcpcd.conf` so bearbeiten, dass die IP-Adresse für LAN und/oder WLAN fest hinterlegt werden.
Ein Beispiel in dem die Netzwerk-Adpater `eth0` und `wlan0` angepasst werden finden sie hier: [firstrun.sh](https://github.com/Robert-112/Wachalarm-Kiosk/blob/custom/optional_boot_config/firstrun.sh)
### Passwort ändern
Mit dem Script `firstrun.sh` lässt sich auch das Passwort des Benutzers `pi` ändern.
Dies erfolgt über nachfolgenden Aufruf:
```echo "pi:ganz_geheim" | sudo chpasswd```
Damit wird der Befehl `chpasswd` ausgeführt und für den Benutzer `pi` als neues Passwort `ganz_geheim` festgelegt.
Ein Beispiel finden sie hier: [firstrun.sh](https://github.com/Robert-112/Wachalarm-Kiosk/blob/custom/optional_boot_config/firstrun.sh)
## Hardware
Dieses Image sollte mit allen [Raspberry Pi's](https://www.raspberrypi.org/products/) funktionieren. Die Versionen 3 und 4 werden empfohlen, weil die kleinen Varianten zu wenig Leistung bieten. 3 und 4 haben zudem ein eingebautes WLAN-Modul.
Stellen Sie sicher, dass Sie eine [kompatible SD-Karte](http://elinux.org/RPi_SD_cards) verwenden (mind. 4 GB). `Class 10`-Karten sollten in jedem Fall funktionieren.
Ein Raspberry Pi benötigt ein [2.5 A USB-Netzteil](https://www.raspberrypi.org/documentation/hardware/raspberrypi/power/README.md).
## Bekannte Fehler
### Kein Ton über HDMI (Raspberry Pi 4)
- stellen Sie sicher das sie das HDMI-Kabel am HDMI-Port 0 des Raspberrys angeschlossen haben (direkt neben dem USB-C-Stromanschluss)
- prüfen Sie ob der Monitor / Fernseher über den angeschlossenen HDMI-Port auch wirklich einen Ton ausgegeben kann
- prüfen Sie mittels `sudo raspi-config` ob HDMI als Audio-Ausgabequelle eingestellt wurde
- mit dem Befehlt `speaker-test` lässt sich die Sound-Ausgabe über die Konsole prüfen (Aufruf der Konsole muss am angeschlossenen Monitor erfolgen, nicht remote per SSH)
### ich benötige ein anderes Kennwort
- öffnen Sie die Eingabekonsole
- `sudo raspi-config`
- Navigieren Sie zu `Change User Password`
- geben Sie ein neues Passwort ein und bestätigen Sie es
- das eingegebene Kennwort gilt für den Benutzer `pi`
## Sonstiges
Dieses Projekt ist ein Fork von [chilipie-kiosk](https://github.com/jareware/chilipie-kiosk). Dort finden sich weitere Informationen und Antworten zu vielen Detailfragen.