Intelligenter Spiegel mit Amazon Echo Integration
Ein intelligenter Spiegel, der bereits Kalender, Wettervorhersagen und Nachrichten anzeigt, kann noch viel mehr! Mit der Magic Mirror Software lassen sich Module für zusätzliche Funktionalitäten, wie beispielsweise Alexa für die Sprachsteuerung, integrieren.
Diese Module werden von anderen Entwicklern bereitgestellt. Die Auswahl reicht von praktischen Tools, wie Alexa oder Anwesenheitserkennung (mittels Kamera oder Passiv-Infrarot-Sensor), bis hin zu unterhaltsamen Features wie Schneeflocken-Animationen und Spotify-Wiedergabeinformationen.
Wir empfehlen das Modul mmm-super-alexa, da es von einem aktiven Entwickler gepflegt wird. Es gibt zwar auch andere Alexa-Module für Magic Mirror, dieses scheint jedoch besonders zuverlässig zu sein.
Wer den Google Assistant bevorzugt, findet auf der offiziellen Google-Seite eine umfassende Anleitung für die Installation auf einem Raspberry Pi, inklusive aller notwendigen Schritte, Bilder und Download-Links. Es gibt zwar auch Magic Mirror Module für Google Assistant, unsere Recherchen haben jedoch gezeigt, dass diese Module oft problematisch sind, häufig abstürzen oder die Spiegelinformationen verdecken. Für eine unkomplizierte Einrichtung empfehlen wir das Google AIY-Kit und die dazugehörige Installationsanleitung.
Die Installation der meisten Module folgt einem grundlegenden Schema:
Modulcode von GitHub herunterladen
Modulspezifische Einstellungen konfigurieren
Modul zur Spiegelkonfiguration hinzufügen
Je nach Modul können die Schritte zwei und drei mehr oder weniger aufwändig sein. Die Einrichtung von Alexa ist komplexer als das bloße Hinzufügen von Schneeflocken. Zudem erfordert das Alexa-Modul die Installation einiger zusätzlicher Softwarekomponenten (Abhängigkeiten), bevor der Modulcode heruntergeladen werden kann.
Benötigte Materialien
Diese Anleitung setzt voraus, dass Sie bereits einen Smart Mirror aufgebaut haben. Falls nicht, sollten Sie dort beginnen und bei der Planung der Kosten und des Platzbedarfs die hier genannten zusätzlichen Materialien berücksichtigen.
Vollständig montierter Smart Mirror
Mikrofon
Lautsprecher
Für Mikrofon und Lautsprecher empfehlen wir das originale Google AIY Voice-Kit. Für ca. 16 € finden Sie kaum eine günstigere Kombination aus Mikrofon und Lautsprecher. Sie müssen nicht unbedingt das mitgelieferte Gehäuse verwenden, es kann effektiver sein, die Komponenten zu trennen und Mikrofon und Lautsprecher außerhalb des Spiegels zu platzieren.
Eine neuere Version des Google AIY Voice-Kit ist erhältlich, jedoch teurer und enthält einen Raspberry Pi Zero, der nicht leistungsstark genug ist, um die Magic Mirror-Software oder Wake-Words zu verarbeiten. Daher sollten Sie diese Version meiden.
Sobald Sie Lautsprecher und Mikrofon angeschlossen haben, können Sie mit der Installation des Alexa-Moduls beginnen. Bei Verwendung des Google AIY-Kits befolgen Sie einfach die Montageanleitung zum Anschließen der Komponenten.
Installation der Modulabhängigkeiten
Bevor Sie mmm-awesome-alexa herunterladen und konfigurieren, müssen Sie einige Abhängigkeiten installieren. Es empfiehlt sich, den Raspberry Pi vor der Installation neuer Software zu aktualisieren. Führen Sie dazu folgenden Befehl auf dem Raspberry Pi aus:
sudo apt update && sudo apt upgrade
Sobald der Raspberry Pi auf dem neuesten Stand ist, führen Sie die folgenden Befehle nacheinander aus:
sudo apt-get install sox libsox-fmt-all
sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox
pip install pyaudio
sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools
sudo apt-get install libatlas-base-dev
Jeder Befehl installiert eine einzelne Abhängigkeit. Führen Sie einen Befehl aus, warten Sie, bis Download und Installation abgeschlossen sind und fahren Sie dann mit dem nächsten Befehl fort.
Download des Modulcokes
Der erste Schritt zum Hinzufügen eines Moduls ist der Download des Modulcodes von GitHub. Dazu müssen Sie sich auf dem Raspberry Pi im Terminal anmelden und in das Verzeichnis wechseln, in dem die Module gespeichert werden. Anschließend verwenden Sie einen Download-Befehl, um den Code von GitHub zu beziehen. Sie können dies auch remote tun, sofern Sie Shell-Zugriff haben.
Öffnen Sie das Terminal und geben Sie Folgendes ein:
cd ~/MagicMirror/modules
Dieser Befehl wechselt Sie in das Arbeitsverzeichnis für die Module der Magic Mirror-Software. Hier sollten Sie sich befinden, wenn Sie ein neues Modul herunterladen, um Ordnung zu halten. Der nächste Schritt ist das Herunterladen der Software von GitHub mit diesem Befehl:
git clone https://github.com/dolanmiu/MMM-awesome-alexa.git
Wenn der Download abgeschlossen ist, wechseln Sie mit diesem Befehl in das Modulverzeichnis:
cd MMM-awesome-alexa
Das Alexa-Modul benötigt einige zusätzliche Abhängigkeiten. Installieren Sie diese mit folgendem Befehl:
npm install --only=prod
Wechseln Sie nun in den neu erstellten Ordner node_modules:
cd node_modules
Löschen Sie den Snowboy-Ordner, der durch die vorherigen Befehle hinzugefügt wurde. Wir benötigen eine neuere Version von Snowboy:
rm -rf snowboy
Laden Sie die neueste Version von Snowboy mit folgendem Befehl herunter:
git clone https://github.com/Kitt-AI/snowboy.git
Wechseln Sie nun in den neuen Snowboy-Ordner.
cd snowboy
Jetzt muss der node_modules-Ordner entfernt und einige zusätzliche Abhängigkeiten installiert werden. Es ist wichtig, dass Sie für diese Schritte im Snowboy-Ordner bleiben. Führen Sie die folgenden Befehle nacheinander aus:
rm -rf node_modules
npm install nan --save
npm install [email protected] --save
npm install
npm run prepublish
npm install --save-dev electron-rebuild
npm install nan
./node_modules/.bin/electron-rebuild
Das Modul ist nun vollständig heruntergeladen und installiert.
Konfiguration des Alexa Moduls
Nach der Installation des mmm-awesome-alexa Moduls muss es konfiguriert werden. Wechseln Sie zunächst mit diesem Befehl in das Stammverzeichnis des Moduls:
cd ~/MagicMirror/modules/MMM-awesome-alexa
Dieses Alexa-Modul verfügt über einen Konfigurationshelfer, den wir jetzt ausführen werden. Geben Sie im Terminal Folgendes ein:
npm run config-helper
Sie werden nun nach einer Client-ID gefragt. Da Sie im Wesentlichen ein eigenes Echo einrichten, müssen Sie einen Browser öffnen und zur Alexa-Entwicklerseite navigieren. Melden Sie sich dort mit Ihrem Amazon-Konto an.
Klicken Sie nach der Anmeldung auf die Schaltfläche „Erste Schritte“. Da Sie ein Gerät erstellen, klicken Sie auf „Produkte“ und dann auf „Produkt erstellen“.
Geben Sie auf der folgenden Seite einen Namen und eine Produkt-ID für Ihr Produkt ein. Wir empfehlen „Magic_Mirror_Alexa“ für den Namen und „IhrVorname_MM_Alexa“ für die Produkt-ID. Wählen Sie „Smart Home“ als Kategorie und aktivieren Sie die Optionen für „Freisprechen“ und „Fernfeld“. Sie sehen einige Ja/Nein-Fragen, wählen Sie für alle „Nein“ und klicken Sie dann auf „Weiter“.
Klicken Sie auf der Seite für das Sicherheitsprofil auf „Neues Profil erstellen“. Verwenden Sie den gleichen Namen wie für die Produkt-ID. Geben Sie dann eine beliebige Beschreibung ein und klicken Sie auf „Weiter“.
Überprüfen Sie die Vereinbarung und klicken Sie auf „Fertig stellen“.
Klicken Sie auf Ihr neu erstelltes Produkt und dann auf das Sicherheitsprofil. Hier sollten Sie eine Client-ID und ein Client-Geheimnis sehen.
Geben Sie unter „Erlaubter Rückgabe-URL-Typ“ Folgendes ein:
https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse
Klicken Sie auf die Schaltfläche „Hinzufügen“. Scrollen Sie nach unten und klicken Sie auf das Aktualisierungsfeld, um das Hinzufügen der URL abzuschließen.
Im Terminal sehen Sie eine Aufforderung zur Eingabe der Client-ID. Kopieren Sie diese aus dem Browser, fügen Sie sie ins Terminal ein und drücken Sie die Eingabetaste. Nun werden Sie nach dem Client-Geheimnis gefragt. Wechseln Sie zurück zum Browser, kopieren Sie das Geheimnis, fügen Sie es im Terminal ein und drücken Sie die Eingabetaste.
Wenn Sie nach der Geräte-ID gefragt werden, geben Sie den oben erstellten Namen für die Produkt-ID ein (in unserem Beispiel „Magic_Mirror_Alexa“).
Wenn Sie aufgefordert werden, eine Rückgabe-URL anzugeben, geben Sie Folgendes ein und drücken Sie die Eingabetaste:
https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse
Das Terminal zeigt einen benutzerdefinierten Link. Kopieren Sie diesen und fügen Sie ihn in Ihren Browser ein. Melden Sie sich dort mit Ihrem Amazon-Konto an. Klicken Sie auf der folgenden Seite auf „Zulassen“.
Im Browser wird eine Fehlermeldung angezeigt, das ist normal. Scrollen Sie in der URL der Fehlerseite zum Abschnitt „code=xxxxxx“.
Kopieren Sie die Buchstaben und Zahlen zwischen „code=“ und „&scope“ und fügen Sie sie im Terminal ein. Drücken Sie die Eingabetaste.
Wenn Sie gefragt werden, ob die Magic Mirror-Konfiguration generiert werden soll, geben Sie „Y“ ein und drücken Sie die Eingabetaste.
Sie werden gefragt, welches Weckwort Sie verwenden möchten. „Alexa“ ist die Standardauswahl, drücken Sie also die Eingabetaste.
Antworten Sie mit „Nein“, wenn Sie den Lite-Modus und die Visualisierung verwenden.
Der Konfigurationshelfer generiert Ihre Modulinformationen, die etwa so aussehen:
{
module: "MMM-awesome-alexa",
position: "bottom_bar",
config: {
wakeWord: "Alexa",
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET",
deviceId: "YOUR_DEVICE_ID",
refreshToken: "YOUR_REFRESH_TOKEN",
lite: false,
isSpeechVisualizationEnabled: false
}
}
Kopieren Sie diese Zeilen. Wir müssen sie zur Magic Mirror-Konfiguration hinzufügen.
Hinzufügen des Alexa Moduls zur Magic Mirror-Konfiguration
Wechseln Sie mit folgendem Befehl in den Magic Mirror-Konfigurationsordner:
cd ~/MagicMirror/config
Öffnen Sie die config.js Datei mit dem nano-Befehl:
nano config.js
Drücken Sie direkt nach dem ersten Vorkommen von „}“ die Eingabetaste, um eine Leerzeile vor dem nächsten „{“ Eintrag (dem Beginn eines neuen Moduls) zu erzeugen.
Fügen Sie in die neu erstellte Leerzeile den Modulcode aus den Schritten des Konfigurationshelfers ein. Der automatisch generierte Code hat einen Fehler, Sie müssen auch ein Komma nach der letzten Klammer einfügen, sodass Ihr Modul mit einem „},“ endet.
Schließen Sie die Datei mit Strg+x. Wenn Sie gefragt werden, ob Sie speichern möchten, geben Sie „y“ ein und bestätigen Sie den Dateinamen mit der Eingabetaste.
Das Modul ist nun fertig konfiguriert. Um die Magic Mirror Software mit dem installierten Modul neu zu starten, geben Sie pm2 restart mm
ein. Alexa sollte jetzt auf Ihrem Smart Mirror funktionieren.
Dies ist eines der komplexeren Module, die Sie für den Magic Mirror einrichten können. Bei anderen Modulen sind die grundlegenden Schritte jedoch gleich: Code herunterladen, modulspezifische Optionen konfigurieren und das Modul zur Konfiguration hinzufügen. Sie können beispielsweise Schneeflocken, Bewegungserkennung oder sogar Ihre Google Fotos anzeigen lassen.