Bereits ein dreiviertel Jahr ist es seit meinem letzten Beitrag der Magic Mirror-Serie vergangen, indem ich einen Kurswechsel weg von einer Eigenentwicklung auf Universal Windows Platform und Windows 10 IoT Core zu einer webbasierten Anwendung angekündigt habe. Heute ist es soweit, denn ich habe mich entschieden, das Projekt MagicMirror² zu verwenden – ein Projekt, hinter dem eine große Community steht. Dieser Artikel beschreibt die Vorgehensweise und Installation.
Vorwort
Meine Entscheidung ist also gefallen und für meinen Magic Mirror werde ich die auf Node.js basierende Community-Lösung MagicMirror² verwenden. Wer das Projekt noch nicht kennt, dem lege ich folgendes Promotion-Video sehr ans Herz, welches das grundlegende Design und die Funktionsweise kurz und knapp, aber anschaulich und präzise erklärt. Das Projekt stammt von dem Niederländer Michael Teeuw.
Die folgende Anleitung basiert größtenteils auf einer Anleitung aus der Community, die ich euch an dieser Stelle nicht vorenthalten möchte:
Sollten eventuelle Fehler auftreten, ist dies also eine gute erste Anlaufstelle.
Befolgt die Anleitung bitte chronologisch, um alle notwendigen Schritte auszuführen.
Diese Anleitung basiert auf einigen Annahmen:
- Ihr verbindet euch (zunächst) nicht per Funktechnologie, sondern kabelgebunden (per Maus und Tastatur direkt an den Raspberry Pi angeschlossen) mit diesem.
- Ihr verwendet Microsoft Windows 10 als Betriebssystem auf eurem Computer.
Vorbereitungen
Herunterladen von Raspbian
Das Projekt basiert auf Raspbian – dem wohl verbreitetsten Betriebssystem für den Raspberry Pi. Hier müsst ihr zunächst das Image herunterladen.
Verwendet hierzu den Download der ZIP-Datei, die ihr nachher komfortabel entpacken könnt.
Je nach eurer Internetgeschwindigkeit kann der Download ein wenig dauern. Ist er abgeschlossen, könnt ihr mit einem Rechtsklick auf Alle extrahieren klicken, um das ZIP-Archiv zu entpacken.
Formatieren der MicroSD-Karte
Führt nun eure MicroSD-Karte in euer Kartenlesegerät an eurem Windows-PC ein, um diese für die Installation vorzubereiten. Dies funktioniert am besten mit dem SD Card Formatter, den ihr kostenlos herunterladen könnt:
Startet den SD Card Formatter nun und wählt die eingeführte MicroSD-Karte aus. Aber Achtung:
- Stelle sicher, dass du die korrekte MicroSD-Karte ausgewählt hast!
- Alle Daten, die sich zu diesem Zeitpunkt auf der MicroSD-Karte befinden, werden nach den Vorbereitungen (Formatierung) endgültig gelöscht. Erstelle im Zweifelsfall eine Sicherheitskopie der Daten!
Mit dem Start des SD Card Formatters wählt ihr folgende Einstellungen aus, wobei G:\ in meinem Fall von eurem Laufwerksbuchstaben eurer MicroSD-Karte abweichen kann!
Nach einem Klick auf Format erhaltet ihr eine Warnmeldung, die euch darauf hinweist, dass alle Daten auf der MicroSD-Karte gelöscht werden. Diese könnt und müsst ihr mit Ja bestätigen.
Je nach der Speicherkapazität und Geschwindigkeit der MicroSD-Karte kann der Prozess einige Minuten in Anspruch nehmen.
Installation
Installation von Raspbian
Nachdem ihr die MicroSD-Karte vollständig formatiert habt, können wir nun mit der Installation von Raspbian beginnen. Hierzu benötigt ihr den Win32 Disk Manager, den ihr hier kostenfrei herunterladen könnt:
Nach der Installation des Win32 Disk Managers startet diese bitte mit Administratorenrechten (als Administrator ausführen). Dies könnt ihr durch einen Rechtsklick auf das Programm tun.
Nun geht ihr wie folgt vor:
- Wählt nun zunächst die Image-Datei von Raspbian aus – also das Extrahierte aus dem ZIP-Archiv, das wir anfangs heruntergeladen haben.
- Wählt nun denselben Datenträger aus, den ihr bereits im SD Card Formatter zur Formatierung der MicroSD-Karte ausgewählt habt. Auch hier gilt, dass der Laufwerksbuchstabe [G:\] bei euch sicherlich auch anders lauten kann.
- Mit einem Klick auf Schreiben wird Raspbian auf der MicroSD-Karte installiert.
Auch an dieser Stelle erhalten wir eine Warnmeldung mit dem Hinweis, dass Daten überschrieben werden können (zurzeit befinden sich jedoch tatsächlich gar keine Daten auf der MicroSD-Karte, weil wir sie zuvor formatiert haben). Diese bestätigen wir ebenfalls mit Ja, um mit dem Vorgang fortzufahren.
Sicheres Entfernen der MicroSD-Karte
Zu guter Letzt solltet ihr die MicroSD-Karte sicher entfernen – eine Windows-Funktionalität, um Datenverlust vorzubeugen. Alternativ könnt ihr euren Computer vollständig herunterfahren und die MicroSD-Karte dann aus dem Kartenleser entfernen.
Startvorgang und Konfiguration von Raspbian
Nun ist der Zeitpunkt gekommen, an dem ihr eure MicroSD-Karte in euren Raspberry Pi einführen könnt. Stellt zu diesem Zeitpunkt zudem sicher, dass folgende Hardwarekomponenten an den Raspberry Pi angeschlossen sind:
- W-LAN-Adapter (sofern notwendig)
- Maus
- Tastatur
- Monitor
- Netzteil
Startet dann den Raspberry Pi.
Links oben erscheint nach dem erfolgreichen Start das Terminal-Fenster (Konsole), mithilfe derer ihr die grafische Konfiguration aufrufen könnt:
sudo raspi-config
Drückt nach der Eingabe des Befehls Enter. Die Navigation in dem sich geöffneten Fenster funktioniert mit den Pfeiltasten und der Tab-Taste.
Nun gilt es einige Einstellungen vorzunehmen:
- Die erstellte Partition (Abschnitt der MicroSD-Karte, der nutzbar ist) entspricht zurzeit noch nicht der vollständigen Speicherkapazität der MicroSD-Karte. Dies wollen wir ändern, damit wir MagicMirror² installieren und konfigurieren und den gesamten Speicherplatz der MicroSD-Karte nutzen können. Je nach Raspbian-Version befindet sich in der ersten Ebene oder unter dem Menüpunkt Advanced Options die Möglichkeit Expand Filesystem. Wählt dieses aus und folgt den Anweisungen. Ein direkter Neustart ist empfehlenswert, jedoch zu diesem Zeitpunkt noch nicht notwendig.
- Der Menüpunkt Internationalisation Options ermöglicht die korrekte Einstellung von Zeit und Sprache:
- Im Untermenü Change Locale habt ihr die Möglichkeit, die Anzeigesprache zu ändern. Wenn ihr euch hierzu entscheidet, empfiehlt sich ein Sprachdatensatz im UTF-8-Format, damit alle notwendigen Zeichen unterstützt werden. Ich empfehle normalerweise die englische Sprache beizubehalten.
- Das Untermenü Change Timezone solltet ihr hingegen auf jeden Fall beachten und gegebenenfalls anpassen, um die korrekte Zeitzone und somit auch Uhrzeit zu erhalten.
- Damit ihr auch ohne Probleme die Tasten einer deutschen Tastatur inklusive Umlauten nutzen könnt, lohnt sich ein Blick in das Untermenü Change Keybord Layout. Wählt hier das richtige Layout für euer Land aus.
- Der unterste Menüpunkt Change Wi-fi Country ermöglicht euch die korrekte Wahl der W-LAN-Frequenzen. Stellt auch hier das Land ein, indem ihr euch befindet.
Nun sind wir soweit und können mit der Auswahl von Finish den Raspberry Pi neustarten.
Nun gilt es, die Verbindung mit der Außenwelt herzustellen: Sich mit einem W-LAN-Netzwerk zu verbinden, ist unter Raspbian kein Hexenwerk: Rechts oben in der Menüleiste befindet sich ein W-LAN-Icon, das die W-LAN-Netzwerke in eurer Umgebung anzeigen sollte. Wie von anderen Betriebssystemen bekannt, könnt ihr hierüber euer W-LAN-Netzwerk auswählen und euch verbinden.
Für eventuelle Probleme verweise ich gerne noch einmal auf diesen externen Artikel.
Aufräumarbeiten und Raspbian-Updates
Deinstallation nicht benötigter Programme
Zusammen mit Raspbian kommen ein paar Standardprogramme, die nicht benötigt werden. Eine ausführliche Anleitung, um diese zu entfernen, findet sich hier an. Dieser Schritt ist jedoch nicht notwendig und sollte – insbesondere von weniger erfahrenen Bastlern – erst einmal übersprungen werden.
Aktualisieren der Softwarepakete
Nun gilt es, die installierten Softwarepakete von Raspbian zu aktualisieren. Für den Abgleich der Versionen zwischen eurer Installation und der aktuellen Version (online) wird folgender Befehl benutzt:
sudo apt-get update
Durch den folgenden Befehl könnt ihr die Softwarepakete aktualisieren, bei denen eine Abweichung der Versionsnummer gefunden wird:
sudo apt-get upgrade
Die folgende Meldung (Warnhinweis) ist mit einem Y zu bestätigen.
Der Vorgang kann – je nach Leistungsfähigkeit eures Raspberri Pi und eurer MicroSD-Karte als auch eurer Internetleitung – einige Minuten in Anspruch nehmen.
Aktualisieren der Firmware des Raspberry Pi
Als letztes Element können wir nun noch die Firmware des Raspberry Pi aktualisieren. Dies funktioniert mit folgendem Befehl:
sudo rpi-update
Neustarten des Raspberry Pi
Ein Neustarten des Raspberry Pi ist spätestens jetzt notwendig geworden. Dies könnt ihr wahlweise über die Menüleiste tun oder ihr benutzt folgenden Befehl für das Terminal-Fenster:
sudo reboot
Installation von MagicMirror²
Das Projekt MagicMirror² ist ein inzwischen sehr ausgereiftes, großes Community-Projekt mit vielen Modulen und Einstellungsmöglichkeiten. Seit einiger Zeit existiert auch ein zusammengefasstes Skript, das zur kompletten Installation verwendet werden kann. Hierzu müsst ihr zunächst das Terminal-Fenster starten und dann folgenden Befehl eingeben:
bash -c "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
Der Installationsprozess startet dann und sieht wie folgt aus:
Konfiguration von und für MagicMirror²
Ändern der Bildschirmausrichtung
Die meisten von euch möchten den Magic Mirror vermutlich vertikal und nicht horizontal verwenden. Eine global für Raspbian gültige Einstellung ermöglicht die Rotation des Displays. Dazu gebt ihr in das Terminal-Fenster folgenden Befehl ein:
sudo nano /boot/config.txt
In der sich damit öffnenden Datei könnt ihr den Parameter display_rotate nun auf 1 stellen, um die Rotation anzustoßen:
Durch Strg + X und der anschließenden Eingabe von Y speichert ihr die Einstellung.
Deaktivieren des Bildschirmschoners
Wir möchten unseren Magic Mirror zunächst dauerhaft laufen lassen – und dazu gehört auch, dass der Bildschirmschoner nicht eingeschaltet wird. Hierzu sind Konfigurationen an zwei Stellen notwendig.
Der erste Konfigurationsschritt wird hier vorgenommen:
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
Fügt nun an das Ende der Datei folgende drei Zeilen hinzu:
@xset s noblank
@xset s off
@xset -dpms
Speichert auch diese Einstellungen durch die oben genannte Tastenkombination von Strg + X und folgend Y.
Der zweite Konfigurationsschritt kann hier vorgenommen werden:
sudo nano /etc/lightdm/lightdm.conf
In dem Abschnitt [SetDefaults] gibt es die Zeile xserver-command. Diese müsst ihr wie folgt modifizieren:
xserver-command=X -s 0 -dpm
Entfernt wird also das # am Anfang und der Rest hinzugefügt – genau, wie es auf folgendem Screenshot zu sehen ist:
Stabilität durch aktive Hardware
Raspbian schaltet aus Energiespargründen automatisch Hardware aus, die nicht regelmäßig genutzt wird. Hierzu zählt auch der WiFi-Treiber. Dies führt dazu, dass regelmäßige Updates – beispielsweise vom Wetter – nicht mehr zuverlässig durchgeführt werden können. Auch dieser Umstand ist mit einer einfachen Konfiguration auszuschalten, der mit einem Befehl im Terminal-Fenster beginnt:
sudo nano /etc/network/interfaces
In dem erscheinenden Fenster müsst ihr zunächst die Sektion mit wlan0 finden. Anschließend fügt ihr hier folgende Zeile an Code am Ende der Sektion hinzu:
wireless-power off
Das ganze sieht dann beispielsweise wie folgt aus:
Anschließend ist ein Neustart möglich – wahlweise über das Menü oder über folgenden Befehl:
sudo reboot
Entfernen des Mauszeigers
Ein kleines, weiteres Softwarepaket hilft dabei, den Mauszeiger nach wenigen Sekunden Inaktivität zu entfernen. Dazu starten wir erneut das Terminal-Fenster:
sudo apt-get install unclutter
Feintuning von Raspbian
Es gibt zwei Kleinigkeiten, die wir noch tun können, um das Starten vom Magic Mirror zu optimieren:
- Durch ein Rechtsklick auf den Desktop von Raspbian können wir über Desktop Preferences in die Einstellungen zu allgemeinen Darstellung kommen. In dem Reiter Desktop können wir nun das Hintergrundbild entfernen und eine schwarze Farbe einstellen. Hierzu ändern wir die Einstellung von Layout in No image und stellen sicher, dass Colour auf eine schwarze Farbe eingestellt ist. Zusätzlich kann hier der Wastebasket versteckt werden, der ansonsten permanent auf dem Desktop verbleibt.
- Ein Rechtsklick auf die Menüleiste bringt uns zu den Panel Settings. Unter dem Reiter Appearance können wir den Background nun auf Solid colour (with opacity) einstellen, sodass die Menüleiste transparent und somit den Farbton der Hintergrundfarbe einnimmt.
Gegebenenfalls ist nach diesen Einstellungen ein Neustart nötig, damit diese vollständig wirksam werden!
Erstellen einer Konfigurationsdatei
Als letzten und finalen Schritt möchten wir noch eine valide Konfigurationsdatei erstellen. Diese wird benötigt, um Module zu konfigurieren. Auf diese werde ich im nächsten Teil der Magic Mirror-Serie genauer eingehen.
Zur Erstellung navigieren wir zunächst mithilfe des Terminal-Fensters:
cd MagicMirror/config
cp config.js.sample config.js
Durch die Dateisuche – ähnlich, wie der Windows Explorer – können kann die Config-Datei in Zukunft auch komfortabel aufgerufen werden. Die Dateisuche startet ihr durch einen Klick auf das Ordner-Symbol in der Menüleiste von Raspbian.
Nun ist die Zeit gekommen, MagicMirror² zu starten! Dazu startet ihr ein neues Terminal-Fenster und gebt dort folgende Befehle ein:
cd MagicMirror
npm start
Nun sollte der Magic Mirror starten! Viel Spaß damit!
Fragen & Antworten
Es gibt Fehler bei der Installation von MagicMirror². Wie fahre ich fort?
Es ist normal, dass bestimmte Softwarekomponenten miteinander manchmal nicht kompatibel sind. Es gibt drei mögliche Lösungswege (von schnell nach aufwändig):
- Installation von Updates aller Module (wie beschrieben)
- Neuinstallation von Raspbian ohne die Installation von jeglichen Updates
- Neuinstallation einer älteren Raspbian-Version mit/ohne der Installation jeglicher Updates
Es gibt Fehler beim Update/Upgrade von Softwarepaketen. Wie fahre ich fort?
Es ist normal, dass bestimmte Softwarekomponenten miteinander manchmal nicht kompatibel sind. Es gibt drei mögliche Lösungswege (von schnell nach aufwändig):
- Installation von Updates aller Module (wie beschrieben)
- Neuinstallation von Raspbian ohne die Installation von jeglichen Updates
- Neuinstallation einer älteren Raspbian-Version mit/ohne der Installation jeglicher Updates
Ich komme nicht weiter. Wer kann mir helfen?
Kommentare unter meinen Artikeln sind immer willkommen. Zusätzlich hilft die große MagicMirror²-Community gerne weiter!
Schreibe einen Kommentar