MagicMirror² – Das nächste große Projekt

magicmirror display Schon vor einigen Wochen (laut meinem Taskwarrior 11 Wochen) bin ich über das Projekt MagicMirror² gestolpert und bin sofort angefixt worden, dass wir das in unserem Haushalt brauchen. Es handelt sich dabei um einen Spionagespiegel, hinter dem ein Display angebracht wird und ihr somit sowohl euer Spiegelbild als auch die Informationen(Uhrzeit, Nachrichten, Komplimente und so weiter) auf dem Display sehen könnt. Nachdem zunächst das Projekt aufgrund anderer Projekte zurückstecken musste, konnte ich mich heute erstmals daran setzen. In der Vorbereitung darauf musste ich zunächst einen passenden Display finden. Ob er letztendlich passt, weiß ich noch nicht 100%, aber letztlich verwende ich einen alten Display aus einem kaputten Laptop. Zufälligerweise gab es für das Display bei ebay einen passenden Controller und für die Stromversorgung habe ich ein passendes Netzteil dafür bestellt. Letztlich kann aber jedes ausgediente Display dienen, das über einen HDMI-Port verfügt, da ihr es dann direkt in den Raspberry Pi stecken könnt. Da aber vor das Display noch der Spionagespiegel muss, dachte ich mir, dass das Laptop-Display aufgrund seines nichtvorhandenen Rahmens ideal sein könnte.

Der Spionagespiegel fehlt aktuell noch aber ich habe mich bereits mit der Installation der Software befasst und würde euch hier gerne eine kurze Anleitung dafür geben. Ich installiere das Ganze auf dem Raspberry Pi 3, allerdings sollte es auch auf dem 2er funktionieren. Als Basis nehme ich immer wieder gerne Raspbian Lite(aktuell mit Debian Jessie), da hier der unnötige Schnickschnack nicht mitgeliefert wird.

Da bei Raspbian Lite kein Desktop installiert ist, beziehungsweise der notwendige X11-Server fehlt, müssen wir zunächst einen Mini-Desktop installieren. Das kann einige Zeit in Anspruch nehmen, da hier ein paar Pakete heruntergeladen werden müssen. Weiterhin installiere ich im folgenden noch die notwendigen Pakete für den MagicMirror².

# update and upgrade
sudo apt update
sudo apt upgrade -y
# install desktop
sudo apt install --no-install-recommends xserver-xorg -y
sudo apt install openbox -y
sudo apt install lightdm -y
# install dependencies
sudo apt install git unclutter x11-xserver-utils xterm libxss1 libnss3 libgconf2-dev -y

magicmirror screenshot

Im Weiteren wollen wir jetzt, dass zum einen der Screensaver deaktiviert wird und dass kein Mauszeiger angezeigt wird und führen dazu folgende Befehle aus.

# turn off mousecursor and screensaver
sudo sed -i 's/# xserver-command = X.*/xserver-command = X -nocursor' /etc/lightdm/lightdm.conf
sudo sed -i 's/BLANK_TIME.*/BLANK_TIME=0/' /etc/kbd/config
sudo sed -i 's/POWERDOWN_TIME.*/POWERDOWN_TIME=0/' /etc/kbd/config
# write to ~/.bashrc
echo 'export DISPLAY=:0' >> ~/.bashrc 
echo 'xset s noblank' >> ~/.bashr
echo 'xset s off' >> ~/.bashrc
echo 'xset -dpms' >> ~/.bashrc

Damit das .bashrc-Skript auch aufgerufen wird, aktivieren wir noch über raspi-config den Autologin des Pi-Nutzers.

sudo raspi-config

Und jetzt unter Boot Options –> Desktop/CLI –> Desktop Autologin aktivieren. Zu guter letzt ein neustart mit sudo reboot, um all Änderungen auch aktiviert zu haben.

Nun verwenden wir das Installation-Skript von MagicMirror² zur Installation unseres Spiegels und starten ihn.

bash -c "$(curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)"
cd ~/MagicMirror
npm install
cp config/config.js.sample config/config.js
npm start

Ihr solltet jetzt bereits auf eurem Display eine schöne Anzeige wie im Bild haben. Damit nach einem Neustart die Software automatisch startet, könnt ihr noch ein Autostart-Skript anlegen und nach einem Neustart sollte MagicMirror² automatisch starten.

mkdir /home/pi/.config/autostart
touch /home/pi/.config/autostart/magicmirror.desktop
echo '[Desktop Entry]' >> /home/pi/.config/autostart/magicmirror.desktop
echo 'Type=Application' >> /home/pi/.config/autostart/magicmirror.desktop
echo 'Exec=/usr/bin/npm start' >> /home/pi/.config/autostart/magicmirror.desktop
echo 'Path=/home/pi/MagicMirror/' >> /home/pi/.config/autostart/magicmirror.desktop
sudo reboot

Soviel mal für den ersten Teil des MagicMirror². Es stehen jetzt noch ein paar Dinge an, die ich versuchen werden hier zu dokumentieren: Konfiguration der Oberfläche, Bau des Rahmen und eventuell noch die Entwicklung eigener Erweiterungen. Solltet ihr Fragen oder Anregungen haben, dann könnt ihr mich wie immer über den Kontakt-Bereich kontaktieren.


Geschrieben von Christian Decker am 05.05.2017