Software
Konfiguration im Docker-Container
version: '3'
services:
magicmirror:
container_name: mm_sven
image: karsten13/magicmirror:latest
ports:
- "8080:8080"
volumes:
- /mnt/synology_docker/mm_sven/config:/opt/magic_mirror/config
- /mnt/synology_docker/mm_sven/modules:/opt/magic_mirror/modules
- /mnt/synology_docker/mm_sven/css:/opt/magic_mirror/css
restart: unless-stopped
command:
- npm
- run
- server
networks:
default:
ipv4_address: 192.168.178.239
networks:
default:
name: macvlan
external: true
Konfiguration des Raspberry Pi Zero
Zuerst habe ich versucht bei dem Raspberry Pi Zero das Standard-Raspberry-Image zu installieren und ihn dazu zu bringen die MagicMirror-Webseite bei Systemstart zu öffnen. Totaler Fehlschlag - das Teil ist einfach zu schwach. Gottseidank habe ich ein anderes Betriebssystem gefunden, was genau das tut, was ich brauche. Chili-PI. Große Liebe!
Links zum Image und zur Chili-Pi-Anleitung
https://github.com/jareware/chilipie-kiosk/releases/download/v3.0.0-rc4/chilipie-kiosk-3.0.0-rc4.img.tar.gz
https://github.com/jareware/chilipie-kiosk/blob/master/docs/first-boot.md
Erst mal mit ctrl+alt +F2 in den Raspi-Config-Modus und hier SSH aktivieren, Wifi aktivieren, Speicherplatz zuweisen und so weiter. Den Pi kann man dann mit sudo apt-get update / sudo apt-get upgrade auf den neuesten Stand bringen.
Da das Display hochkant eingebaut worden ist, muss die Anzeige noch gedreht werden. In der Anleitung steht zwar etwas anderes - aber bei mir hat das gereicht.
sudo nano /etc/X11/Xsession.d/45x11-rotate_screen
DISPLAY=:0 xrandr --output HDMI-1 --rotate left
Konfiguration vom ioBroker
Simple-SSH Modul installieren
--> npm install simple-ssh
der IObroker bekommt 2 Dateien… eine Spiegel_aus.js und eine Spiegel_an.js
Beispiel Spiegel_aus.js (analog dazu eine Spiegel_an.js erstellen)
var SSH = require('simple-ssh');
var ssh = new SSH({
host: 'chilipie-bad.streb.home',
user: 'pi',
pass: 'tollespasswort'
});
ssh.exec('/home/pi/display-off.sh',{
out: function(stdout) {
console.log(stdout);
}
}).start();
Zur Erläuterung:
der Chili PI hat ein Monitor-einschalt und Monitor-ausschalt-Skript (/home/pi/display-off.sh und display-on.sh)
Das soll über einen Bewegungssensor im ioBroker geschaltet werden - das Display soll ja nicht den ganzen Tag an sein, sondern nur, wenn jemand im Bad rumstromert.
Das simple-SSH Modul was da installiert wurde plus die zwei .js Skripte befähigen den ioBroker dazu sich auf dem Chili Pi anzumelden und das lokale display-off/on Skript auszuführen.
Testweise habe ich den Pi an nen Monitor gehangen und das Ausführen des Skripts an meinen Bewegungsmelder im Büro gebunden (die exec Bausteine). Klappt prima.
