Ich baue mir einen MagicMirror

Mein „MagicMirror“, noch ohne Spiegel. Im „Endausbau“ auf dem grossen Display werde ich noch einen Familienkalender einblenden.

Bei einem MagicMirror verbaut man ein Display hinter einem Zwei-Weg-Glasspiegel und kann so eine Vielzahl von Informationen anzeigen. Standardmässig ist die Uhrzeit, das Datum, ein Kalender und ein Wetterbericht dabei. Natürlich kann man die gesamte Anzeige vollständig an die eigenen Bedürfnisse anpassen und so noch weitere Informationen anzeigen. Hier findest Du eine Auflistung von weiteren Modulen, welche hinzugefügt werden können.

Im Moment geht es mir vor allem darum, ob ich die Software nach meinen Ansprüchen konfigurieren kann und verwende noch das Original 7″ Raspberry Pi Display. Später werde ich auf ein grösseres Display umsteigen, welches ist noch offen.

Die Installation ist unter diesem Link gut beschrieben. Zum Verwalten des Dienstes (Start, Stop, Automatischer Start nach Reboot) verwende ich PM2. Zur Installation von zusätzlichen Modulen verwende ich MMPM. Ein cooler Nebeneffekt von diesem ist, dass man damit MagicMirror und alle Module aktuell halten kann.

Folgende Punkte bereiteten mir Probleme während der Installation:

Als ich den Raspberry zum ersten mal mit dem aktuellen Raspberry Pi OS (Raspian 11.2) gestartet habe, blieb der Bildschirm weiss, nachdem X gestartet wurde. Das Hinzufügen von dtparam=i2c_vc_baudrate=50000 zu /boot/config.txt löste das Problem.

Die nächste Schwierigkeit war, dass das Display nach 10 Minuten schwarz wird. In der Raspberry Pi Doku wird beschrieben, dass man den Xscreensaver installieren und anschliessend über die Einstellungen deaktivieren soll. Das funktioniert, aber nur bis zum nächsten Reboot. Um den Screensaver dauerhaft zu deaktivieren, habe ich folgende Linie zu ~/.config/lxsession/LXDE-pi/autostart hingefügt: @xscreensaver -no-splash hinzugefügt.

Soweit funktioniert alles einwandfrei. Mein nächster Schritt wird sein, ein passendes Display und Spiegel zu besorgen. Und zu guter Letzt muss ich noch einen Rahmen für das Ganze bauen. Je nach Verlauf des Projekts werde ich natürlich darüber berichten.

Docker Experimente

Docker (PRNewsfoto/Docker)

Vor circa einem Monat stürzte ich mich ins Abenteuer Docker. Ich hatte bereits viel darüber gelesen und gehört und fand den Ansatz genial. Ich nahm einen alten PC, installierte Debian und begann zu experimentieren. Ich wusste schon von Anfang an recht gut, was ich wollte: Nextcloud mit einem vorgelagerten Reverse-Proxy und die Daten sollten auf meinem NAS liegen. Ich startete mit einem Docker-Compose File welches ich im Internet fand. Ich war überrascht, wie schnell ich ich das Ganze zum Laufen brachte. Nachdem ich alles am Laufen hatte, stellte ich die Volumes auf einen NFS-Share um, was ein paar Probleme mit sich brachte. Aber nichts, was ich nicht durch ein wenig googlen lösen konnte.

Ich wusste von Anfang an, dass ich den Server mit der Zeit ersetzten werde, sollte das Ganze zum Laufen kommen. Deshalb packte ich meine Config-Files und den Beschrieb wie ich den Server aufbaute in ein Git-Repository und machte den Server platt. Nachdem ich das OS neu installiert hatte, war ich in kürzester Zeit wieder online. Das hat meiner Zuversicht einen grossen Kick gegeben.

Mittlerweile habe ich meine Daten und die meiner Frau auf der Nextcloud und werde demnächst unseren beiden Söhne migrieren. Ich habe in der Zeit das eine oder andere Nextcloud-Update gemacht (jeweils ohne Probleme, puh 🙂 und fühle mich schon recht sicher mit der Technologie. Ich habe auch noch ein paar andere Anwendungen unter Docker am laufen, möchte aber es bis ich 100% sicher bin, nicht ausarten lassen. Dadurch dass man Anwendungen relativ einfach zum kriegt, läuft man Gefahr auch Sachen zu betreiben die man nicht unbedingt braucht.

So what’s next? Wie gesagt werde ich den Server durch einen anderen alten PC ersetzten (mehr CPU-Power, mehr RAM, kleineres Gehäuse) ersetzten und möchte mir rootless-Docker anschauen (ein weiterer Grund weshalb ich noch nicht zu viele Anwendungen unter Docker laufen lassen möchte).