Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren

13. April 2017
14019 Views
72 Comments

Nachdem Amazon Alexa nun auch auf Deutsch verfügbar ist, können wir es endlich in vollem Umfang auf dem Raspberry Pi nutzen. Im Vergleich zu den Amazon Echo bzw. Amazon Echo Dot Geräten bietet die Installation auf einem Raspberry Pi nicht nur preislich große Vorteile, sondern kann auch noch weiter angepasst und individualisiert werden. Außerdem gestattet Amazon es eigene Programme / Apps für die Platform zu schreiben, womit man eigene Projekte, die eine Sprachsteuerung bekommen sollen, voranbringen kann.

In diesem Tutorial gibt es eine vollständige Anleitung zur Installation und Einrichtung von Amazons Sprachassistentin „Alexa“. Da die Einrichtung etwas umfangreicher ist, gehen wir detailiert durch alle Schritte.

Wer bereits einen Vorgeschmack auf den Alexa Voice Service haben möchte, kann sich bereits dieses Demovideo einer Präsentation ansehen.

 

Amazon Alexa Zubehör für den Raspberry Pi

Die vollvertige Amazon Echo Variante ist zwar um einiges schicker als ein einfacher Raspberry Pi, aber kostet eben auch dementsprechend. Selbst das kleinere Echo Dot kostet fast so viel wie zwei Raspberry Pi’s. Und ehrlich gesagt macht es doch auch mehr Spaß selber etwas zu schaffen, als nur zu konsumieren 🙂 Und selbst wenn man die Kosten des Zubehörs und sogar eines Raspberry Pi’s zusammenrechnet ist man in der selben Preisregion – nur eben, dass der Pi noch viel mehr kann.

Eine zwingende Vorraussetzung ist eine bestehende Internetverbindung. Außerdem muss mindestens ein Raspberry Pi 2 Model B verwendet werden. Der Vorteil eines Raspberry Pi 3 ist, dass bereits ein Wlan und Bluetooth Adapter eingebaut ist, wodurch man keinen externen kaufen muss.

Das folgende Zubehör wird jedoch in jedem Fall dem dem Raspberry Pi benötigt:

Optimal sind dazu außerdem:

Bis auf die Micro SD Karte kann bereits alles angeschlossen werden. Warte jedoch noch, bis du den Strom verbindest, denn vorher müssen wir das Betriebssystem aufspielen.

Zusätzlich gibt es schon einige mit Alexa kompatible Smart Home Geräte, welche sich steuern lassen. Diese reichen von Funksteckdosen über Philips Hue Light bis hin zu Thermostaten. In Zukunft werden sich hier sicherlich noch viele weitere Geräte mit einreihen.

 

Vorbereitung – Raspbian übertragen

Bevor wir mit dem eigentlichen Download von Amazon Alexa starten können, müssen wir unsere SD Karte mit einem entsprechenden Betriebssystem ausstatten. Hierzu bietet es sich an, die neuste Version des Raspbian OS (Jessie) zu laden. Diese bekommst du hier. Die enthaltene Datei ist im „.img“ Format und muss mit einem Programm wie WinRar, 7Zip o.ä. entpackt werden. Anschließend können wir das Abbild auf die MicroSD Karte übertragen. Ein Tutorial, wie dies am einfachsten über Windows geht, findest du hier:

Raspberry Pi Raspbian OS auf eine SD-Karte übertragen (Windows)

Bevor du die SD Karte in den Raspberry Pi steckst, empfehle ich noch SSH zu aktivieren, da dies inzwischen standardmäßig deaktiviert ist. Dazu erstellst du im Hauptverzeichnis der SD Karte (nachdem das Betriebssystem installiert wurde) eine Datei mit dem Namen ssh bzw. ssh.txt, wodurch du direkt per SSH auf den Pi zugreifen kannst, sofern er mit dem Netzwerk verbunden ist.

Im weiteren Verlauf wird es nötig, auf den Raspberry Pi Desktop zuzugreifen. Du kannst dies entweder, indem du Bildschirm, Tastatur und Maus direkt anschließt (in diesem Fall brauchst du SSH nicht zu aktivieren) oder aber z.B. per Remotedesktop arbeiten. Dies hat den Vorteil, dass du auf die graphische Oberfläche des Pi’s von deinem eigentlichen PC zugreifen kannst. Eine einfache Anleitung dazu findest du hier:

Raspberry Pi Remotedesktop Verbindung einrichten

In der Regel schließe ich zunächst ein LAN Kabel an und richte dann das Wlan entweder per Konsole oder per Desktopoberfläche ein.

 

Vorbereitung – Entwickleraccount

Legen wir nun den benötigten Amazon Developer Account an. Dazu rufen wir developer.amazon.com auf und erstellen einen neuen Account, sofern nicht bereits ein bestehender Account auf amazon.com besteht. Die AGBs müssen aktiviert werden.

Um gleich alles auf dem Raspberry Pi einrichten zu können, müssen wir ein sog. Security Profile erstellen. Dazu klicken wir nach dem Login in der oberen Menüleiste auf „Alexa“ und anschließend auf Alexa Voice Service auf „Get Started“.

Raspberry Pi Amazon Alexa Einrichtung

Anschließend drücken wir auf den Button „Register a Product Type“ und darunter „Device„.

Nun werden einige Fragen zum Typ des Geräts (Device Type Info) gemacht. Ich habe hierbei folgendes gewählt:

  • Device Type ID: RaspberryPiAlexa
  • Display Name: Raspberry Pi Alexa

Hinweis: Einige Nutzer berichteten von Problemen, bei Namen mit Groß- & Kleinschreibung. Auch wenn es bei mir ohne Probleme funktioniert hat, würde ich empfehlen nur die Kleinschreibung bei Device Type ID und Display Name zu verwenden.

Solltest du auf mehreren Raspberry Pi’s Amazon Alexa installieren, so müssen die ID’s natürlich unterschiedlich sein.

Weiter geht es mit dem nächsten Menüpunkt auf der linken Seite (Security Profile). Auf der Seite wählst du unter „Security Profile“ -> „Create a new Profile“ und füllst die folgenden beiden Eingabefelder darunter z.B. folgend aus:

  • Security Profile Name: Alexa Voice Service Sample App Security Profile
  • Security Profile Description: Alexa Voice Service Sample App Security Profile Description

Drücke folgend auf Next.

 

Anschließend werden dir Client ID und Client Secret angezeigt. Notiere diese, da wir sie gleich brauchen werden.

Klicke nun oben auf Edit und anschließend auf Web Settings. Durch das Klicken von Add Another erscheinen Textfelder, in welche zusätzliche Daten kommen:

  • Allowed Origin: https://localhost:3000
  • Allowed Return URLs: https://localhost:3000/authresponse

Drücke anschließend wieder auf Next, womit die Daten gespeichert werden.

Nun werden einige Details zur Nutzung gefragt. Diese habe ich folgend ausgefüllt:

  1. Image: leer (optional kannst du hier ein Icon der Größe 142×130 px hochladen. Muss aber nicht.)
  2. Category: other
  3. Description: Mein Raspberry Pi Alexa
  4. Do you have plans to make your product available to the general public? No
  5. Is your device a children’s product or is it otherwise directed to children under the age of 13? No

Anschließend auf Next.

Nun wirst du noch gefragt, ob du Amazon Music aktivieren willst. Falls du ein Abonnement hast kannst du Yes wählen und die weiteren Angaben eintragen. Allerdings ist es nicht zwingend erforderlich und kann daher auch mit No übersprungen werden.

Als letztes drückst du nun Submit und die Einrichtung ist vollendet. Du wirst zur ursprünglichen Übersichtsseite zurückgeleitet, wo das angelegte Gerät nun aufgelistet ist.

 

Installation der Beispiel Amazon Alexa App

Zunächst laden wir das Projekt von Github in unser Homeverzeichnis. Dazu starten wir den Pi, öffnen ein Terminal-Fenster und geben folgendes ein:

git clone https://github.com/alexa/alexa-avs-sample-app.git

Anschließend müssen wir die vorher aufgeschrieben Daten (Product ID, Client ID und Client Secret) im automated_install.sh Skript innerhalb des Verzeichnisses angeben. Die Bearbeitung kann entweder über einen Editor mit GUI oder dem Editor auf der Kommandozeile stattfinden. Wir wechseln also in den Ordner und bearbeiten die Datei:

cd ~/alexa-avs-sample-app
sudo nano automated_install.sh

Hierin befinden sich 3 Zeilen, in welche wir die notierten Werte ersetzen. Achte darauf, dass nach dem Gleichheitszeichen sowie am Ende der Zeile sich kein Leerzeichen eingeschlichen hat.

 

Drücke STRG+O, um die Datei zu speichern und anschließend STRG+X um den Terminal-Editor zu beenden.

 

Nun können wir das Skript starten. Sofern du noch in dem Ordner bist, kannst du es direkt ausführen, ansonsten wechseln wir vorher wieder in diesen Ordner:

cd ~/alexa-avs-sample-app
. automated_install.sh

Es werden nun einige Fragen gestellt. Überprüfe die Antworten und bestätige entsprechend mit y.

  • Als viertes wird nach der Spracheinstellung gefragt. Wähle (3) de-DE, um Alexa auf Deutsch nutzen zu können!
  • Wähle 3.5mm Audio Jack als Audioausgabe
  • Wähle, ob das „Wake Word“ aktiviert werden soll (ich kann verstehen, wenn man nicht möchte, dass dauerhaft zugehört wird, allerdings habe ich es testweise aktiviert)

Danach läuft die Installation durch und dauert ca. eine halbe Stunde. Zwischendrin kommt eine Infomeldung, welche man lesen muss und mit q bestätigen (Achte also hin und wieder darauf).

 

Starten von Amazon Alexa auf dem Raspberry Pi

Um die Beispielanwendung zu starten, werden mehrere Terminal Fenster benötigt:

  1. Zum Starten des Authentifikation Webservices.
  2. Zur Kommunikation der Anwendung mit AVS.
  3. Damit das Wort „Alexa“ automatisch erkannt wird und die Spracheingabe beginnt.

Starten wir also mit Terminal 1. Öffne eine neue Instanz und gib folgende Kommandos ein:

cd ~/alexa-avs-sample-app/samples/companionService && npm start

 

Wir öffnen nun eine weitere Instanz und führen folgendes in Terminal 2 aus:

cd ~/alexa-avs-sample-app/samples/javaclient && mvn exec:exec

Folgende Fenster erscheinen:

Drücke im unteren Popup Yes und warte einen Augenblick. Der Browser sollte sich öffnen (falls nach 30 Sekunden sich nichts geöffnet hat, starte einen Browser manuell und kopiere die bei dir angezeigte URL). Der Browser wird eine Warnung anzeigen („Your connection is not private“).

Drücke unten auf Advanced und anschließend auf Proceed to localhost (unsafe). Du wirst nun zur amazon.com Seite weitergeleitet, unter der du dich mit deinen Amazon.com Developer Account Daten anmeldest. Es folgt eine Abfrage, ob du dieser App auch wirklich Zugriff gewähren willst. Drücke Okay.Du wirst anschließend zurückgeleitet und die Nachricht „device tokens ready“ wird angezeigt. Minimiere den Browser und kehre zurück in das Popup, welches sich vorhin geöffnet hat. Drücke OK, wodurch der Authentifizierungtoken kopiert wird. Ist im anderen Fenster nun der „Bearer Token“ vorhanden, kannst du den Browser wieder schließen.

Soweit so gut: Im Grunde genommen können wir Alexa nun bereits testen, indem wir den Listen Button drücken und nach dem Gong etwas sagen, wie z.B.

  • „Wie wird das Wetter morgen in Berlin?“
  • „Wie viel ist eine Meile in Kilometern?“
  • „Was ist die Wurzel aus 16?“
  • „Wie weit ist es von Hamburg nach Frankfurt?“
  • usw.

Dabei kann die Aufnahme durch erneutes Drücken des Buttons gestoppt werden bzw. nach kurzer Zeit ohne Stimmenklang wird automatisch gestoppt und eine Antwort gesucht. Übrigens: Die Play/Pause und Vor/Zurück Buttons sind für Musik (falls welche abgespielt wird), damit man die Wiedergabe auch manuell verändern kann.

 

Der letzte Schritt ist nur für jene, die eine automatische Befehlserkennung möchten, indem man „Alexa“, gefolgt von der Frage/Befehl, aufsagt. Möchtest du dies nicht, kannst du es überspringen.

Wir öffnen also ein weiteres Terminal 3 Fenster. Für die Erkennung gibt es zwei Möglichkeiten: Zum einen Sensory sowie KITT.AI. Beides sind Sprachengines und können sog. Wake Words erkennen. Führe dazu folgenden Befehl aus (für Sensory ersetze -e kitt_ai mit -e sensory):

cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e kitt_ai

Nun wird die Spracheingabe automatisch nach dem Wort „Alexa“ aktiviert (nach dem Beep sprechen).

 

Man muss allerdings erwähnen, dass (noch) nicht alle Aktionen, die auf dem normalen Amazon Echo (Dot) verfügbar sind, auch auf der Raspberry Pi Variante aufrufbar sind. Um künftige News nicht zu verpassen, lohnt ein Blick in den Developer Blog von Amazon. Wer außerdem darüber nachdenkt eigene Anwendungen zu schreiben, sollte einen Blick in die API Dokumentation werfen. Für weitere Fragen (zu Features und/oder dem Projekt) ist das Support-Forum der Anwendung der richtige Ort zum nachsehen.

72 Kommentare

  1. Servus,

    Was mich interessieren würde. Beim Original Echo hört das Teil ja nur im 3 Sekunden Rhythmus zu ob das Signal Wort kommt. Erst beim Signal Wort wird ins Internet übertragen.

    Wie ist das mit der Software? Überträgt die ständig?

    Grüße

    Antworten
    • Der Teil, bei dem auf das Wake Word gehört wird, ist ja optimal: Du kannst also auch darauf verzichten.
      Meines Wissens wird bei aktiviertem WakeWord erst nachdem du „Alexa“ gesagt hast, übertragen (müsste man allerdings mal mit Wireshark o.ä. überprüfen).

      Antworten
  2. Zusammen mit der Einrichtung des RPi als Internetradio mit Webinterface wäre Alexa die coole Variante für die Steuerung vor Ort…also quasi Fernsteuerung via Webinterface und vor Ort mit Alexa…die Frage, die sich mir stellt: Ist der RPi3 von der Performance in der Lage diese Menge an Prozessen zu verarbeiten..

    Vielen Dank für die Hilfe!!

    Antworten
  3. Hey,

    ich bekomme jedesmal bei der Ausführung des installationskripts einige Fehlermeldungen. Zudem muss ich nie, wie von dir beschrieben mit q eine info bestätigen. Fehlermeldungen sind unten angefügt. Weisst du vielleicht weiter?
    http://pastebin.com/ZMrPr7xF

    Antworten
  4. Hallo,

    Danke für das Tutorial. Mit einem Zweiten Account beim großen Fluss (bgF), der leidlichen Schreibfehlerbeseitigung und üblichen fummelei, funktioniert das alles recht lustig. Da ich laut Alexa in den USA wohne (wird wohl mit der Anmelderei bei bgF zu tun haben) und so das wecken mit einigen Umrechnungen zu bewerkstelligen ist, frage ich mal in die Runde ob man das irgendwie berichtigen könnte oder ob das bgF erledigen muss, soll, darf… Hat sich schon jemand an die Einstellungen für Amazon Musik gewagt? Toll wär noch gewesen mein Music Man per BT zu verwenden. Prinzipiell funktioniert es aber bei den Einstellungen wird ja auch nur Klinke oder HDMI angezeigt. Man darf weiter gespannt sein…

    Meine HW:
    renkforce UM-80
    Bluetooth® Lautsprecher Technaxx MusicMan Nano BT-X7 (aber mit Klinke)
    Raspi 3
    16 GB Sandisk

    Antworten
    • Hey wenn du nicht rasbian sondern das neue Pixel basiert ja auf rasbian benutzt kannst du den ton auch über bt wiedergeben lassen

      LG
      Marc

      Antworten
  5. Tolle Anleitung, nach kleineren Fehlern habe ich auch alles zum Laufen gebracht.

    Ich frage mich nur gerade, wie ich die Einheiten auf Celsius und Meter umstellen kann?

    Antworten
    • So wie ich das verstanden habe, funktioniert dies nicht mit dem selbstgebauten Echo.
      Dies wäre das erste Mal das ich diese Information bekomme das es doch geht.
      Ganz sicher?

      Antworten
      • Ich habe es nicht selbst getestet, aber es steht u.a. im Changelog, daher bin ich davon ausgegangen: „The sample app is now officially certified for media and music services.“

  6. Danke für die Super-Anleitung.
    Alles hat auf Anhieb funktioniert.
    Hat schon jemand die 3 Terminals in ein Script zusammengefasst
    und mit einem Aufruf in Crontab gestartet ?

    Übrigens
    „./wakeWordAgent -e kitt_ai“ hängt sich bei mit auf
    „./wakeWordAgent -e sensory“ funktioniert einwandfrei.

    Nochmal danke für die Anleitung

    Antworten
  7. Hallo die Runde,

    habe das ganze gerade Installiert ,die Anleitung ist super ,habe einen Raspberry 3 mit raspian
    drauf ,die amazon Alexa wartet schon drauf. Die Installation sieht auf jedenfall gut
    Bin mal gespannt wie das ganze funzt.

    Udo

    Antworten
  8. Hallo und ebenfalls vielen Dank für die Anleitung!

    Bei mir hat es erst im zweiten Versuch (einigermaßen) funktioniert.

    Ich habe dennoch eine Frage zu folgendem Schritt:
    »Starten von Amazon Alexa auf dem Raspberry Pi»

    Eingabe in Terminal 1 funktioniert
    »cd ~/alexa-avs-sample-app/samples/companionService && npm start»

    Eingabe in Terminal 2 funktioniert ebenfalls noch
    »cd ~/alexa-avs-sample-app/samples/javaclient && mvn exec:exec»

    Es öffnet sich daraufhin dieses kleine Fenster mit „Login to register / authenticate your device“.
    Mit Klick auf „yes“ öffnet sich auch der Browser (Chromium – Adresse https://localhost:3000/provision/xyz), allerdings mit der Fehlermeldung:

    »Diese Website ist nicht erreichbar

    localhost hat die Verbindung abgelehnt.
    Versuchen Sie Folgendes:
    Verbindung prüfen
    Proxy und Firewall prüfen
    ERR_CONNECTION_REFUSED»

    Es erscheint also nicht der Hinweis auf eine unsichere Seite, die man dann aber trotzdem öffnen kann… der löst die URL gar nicht erst auf.

    Hat jemand von euch eine Ahnung, an was es liegen kann?

    Eine kurze Anmerkung noch:
    In meinem ersten Versuch habe ich die Einstellung bei Amazon exakt so vorgenommen wie du, Felix. Mit dem Ergebnis, dass sich ein Browser-Fenster mit einer Amazon-Fehlermeldung geöffnet hat. Es stand dort geschrieben, dass der Service von Amazon gerade nicht verfügbar wäre… Aber immerhin hat der Browser die Seite korrekt aufgelöst.

    Ich danke für die Hilfe.

    Antworten
    • Soo, ich habe noch mal alles neu aufgesetzt und nun funktioniert es reibungslos!
      Danke noch mal für diese Anleitung… falls es erlaubt ist, möchte ich auf ein weiteres Tutorial verweisen, welches mir ergänzend sehr geholfen hat: youtu.be/JNTuoOsXS1k (falls die Verlinkung nicht gewünscht ist, bitte entfernen).

      Zudem hat bei mir ebenfalls nur cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e sensory reibungslos funktioniert.

      Schöne Grüße.

      Antworten
    • Hi, mach grad mit meinem Sohn das hier für die Schule. Hab das gleiche Problem mit Localhost. Wie hast du das gelöst bzw. hast beim 2ten mal was anders gemacht? Muss ich da was an Chromium Browser oder am Router machen?

      Antworten
    • Ich hatte die gleiche Fehlermeldung. Ich habe daraufhin den Ordner alexa-avs-sample-app gelöscht und alle Schritte der Anleitung noch einmal wiederholt (Kleinschreibung beachten) und dann hat es bei mir funktioniert!

      Antworten
  9. Hey gutes tutorial!
    Mich würde es interessieren, ob es möglich ist offizielle Alexa Skills oder auch eigene auf dem Raspberry Pi zu installieren. Ich habe leider dazu nichts im Internet gefunden. Wisst ihr vielleicht mehr?
    Danke schonmal im Voraus!

    Mit freundlichen Grüßen
    Patrick Hemmer

    Antworten
  10. Hallo!
    Hab alles nach der Anleitung gemacht und funktioniert super!
    Das einzige Problem das ich habe ist das Wakeword! Egal ob ich den Befehl mit Kitt_ai oder sensory eingebe, es kommt immer die Fehlermeldung:
    bash: ./wakeWordAgent/: No such file or directory
    Kann mir da vielleicht wer helfen?
    Und noch ne Frage: Wenn der Strom ausfällt muss ich die 3 Skripte wieder starten inklusive der Anmeldung bei Amazon oder? Will den Pi fix in einen selbstgebaute Dockingstation einbauen und komm dann nicht mehr ran!
    MFG Max

    Antworten
  11. Der Slash am Ende ist die Ausgabe der Fehlermeldung, das hab ich hier beim abtippseln unabsichtlich hinzugefügt! Hab den Befehl von oben eingegeben:
    cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e kitt_ai

    Nach was für Dateien soll ich suchen?

    Antworten
  12. Hallo!
    Habs nun hinbekommen!
    Musste wiringPi nach folgender Anleitung installieren:
    http://wiringpi.com/download-and-install/

    Dann im Ordner
    ~/alexa-avs-sample-app/samples/wakeWordAgent/src cmake . und anschließend make

    Nun wieder nach der Anleitung:
    d ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e kitt_ai

    Nun funktionierts!

    Hat noch wer Infos zu meiner anderen Frage:
    Wenn der Strom ausfällt muss ich die 3 Skripte wieder starten inklusive der Anmeldung bei Amazon oder? Will den Pi fix in einen selbstgebaute Dockingstation einbauen und komm dann nicht mehr ran!

    MFG Max

    Antworten
    • Ja, esseitdenn du erstellst ein Skript, welches es automatisch ausführt. Eventuell hat inzwischen jemand ein solches erstellt, am besten du schaust mal im Entwicklerforum.

      Antworten
    • Hey!
      Wo kommt da ein Skript vor?
      vielleicht sehe ich ja den Wald vor lauter Bäumen nicht 😀
      Würde mich sehr freuen, wenn mir jemand sagen könnte, wo genau ich das Script finde.
      Das ganze macht ja unglaublich wenig Sinn, wenn man jedes mal wieder manuell über die drei Terminals starten muss..

      Beste Grüße, Moritz

      Antworten
  13. Bei mir kommt folgender fehler, wenn ich das yweiter Terminal starte

    Tut uns leid!
    Beim Bearbeiten Ihres Auftrags ist ein Fehler aufgetreten. Wir arbeiten bereits daran und haben das Problem in Kürze gelöst.

    Hatte dies jemand schon, wenn ja, auch eine Loesung fuer mich?

    Antworten
  14. Hallo bekomme Fehlermeldungen.

    Schritt eins mit dem Listen Port funktioniert.

    Schritt zwei folgende Meldung
    [INFO] ————————————————————————
    [INFO] BUILD FAILURE
    [INFO] ————————————————————————
    [INFO] Total time: 5.834s
    [INFO] Finished at: Fri Mar 10 15:11:15 UTC 2017
    [INFO] Final Memory: 8M/19M
    [INFO] ————————————————————————
    [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:exec (default-cli) on project sample-java-client: Command execution failed. Process exited with an error: 1 (Exit value: 1) -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

    Was mache ich denn da verkehrt?

    Antworten
  15. Folgenden Fehler bekomme ich.
    Habe das aktuelle Jessy isntalliert.

    pi@raspberrypi:~/alexa-avs-sample-app/samples/companionService $ cd ~/alexa-avs- sample-app/samples/javaclient && mvn exec:exec
    [INFO] Scanning for projects…
    [INFO]
    [INFO] ————————————————————————
    [INFO] Building Alexa Voice Service Sample Java Client 20160207.2
    [INFO] ————————————————————————
    [INFO]
    [INFO] — exec-maven-plugin:1.2.1:exec (default-cli) @ sample-java-client —
    Exception in thread „main“ java.awt.HeadlessException:
    No X11 DISPLAY variable was set, but this program performed an operation which r equires it.
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:2 04)
    at java.awt.Window.(Window.java:536)
    at java.awt.Frame.(Frame.java:420)
    at java.awt.Frame.(Frame.java:385)
    at javax.swing.JFrame.(JFrame.java:189)
    at com.amazon.alexa.avs.AVSApp.(AVSApp.java:108)
    at com.amazon.alexa.avs.AVSApp.(AVSApp.java:101)
    at com.amazon.alexa.avs.AVSApp.main(AVSApp.java:96)
    [INFO] ————————————————————————
    [INFO] BUILD FAILURE
    [INFO] ————————————————————————
    [INFO] Total time: 6.562s
    [INFO] Finished at: Fri Mar 10 16:06:14 UTC 2017
    [INFO] Final Memory: 8M/19M
    [INFO] ————————————————————————
    [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:exec (d efault-cli) on project sample-java-client: Command execution failed. Process exi ted with an error: 1 (Exit value: 1) -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit ch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, please rea d the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionE xception

    Weiss leider nicht mehr weiter

    Antworten
  16. Ist es möglich zwei USB-Mics an den Pi anzuschließen und diese dann im Raum zu verteilen damit man einen größeren Bereich abdeckt?

    Antworten
  17. So nun hat alles ohne Fehler geklappt.

    Auf einem Raspberry PI 3
    Allerdings passiert nichts wenn ich auf Listen gehe oder ALEXA ins Mikrofon sage.
    Als Soundkarte habe ich die genommen
    https://www.amazon.de/gp/product/B00C7LXUDY/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1
    Alternativ einen Kopfhörer am Raspberry angeschlossen. Aber kein Gong zu hören.

    Als Mikrofon habe ich das hier genommen.
    https://www.amazon.de/gp/product/B00XA01IQC/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1

    Kann mir da bitte jemand weiterhelfen ?

    Antworten
  18. Hallo,
    habe alles installiert bekommen.
    Aber an dem Punkt, wo ich mich bei Amazon anmelden soll, kommt die Meldung von Amazon: „Tut uns leid! Beim Bearbeiten Ihres Auftrags ist ein Fehler aufgetreten ….“

    Liegt das nun an Amazon oder muss ich irgendwo noch an Knöpfe drehen! 😉

    Gurß

    Antworten
    • Kommt der Fehler auf der Login Seite von Amazon? Wenn ja, ist es höchstwahrscheinlich ein Fehler bei denen. Andere hatten ja vereinzelt ähnliche Probleme. Ich würde erst einmal ein wenig warten und es dnan nochmals versuchen.

      Antworten
    • Ich habe den selben Fehler seit über 10 Tagen, beheben konnte ich ihn nicht. Es kann evtl an einem Tippfehler bei den ID’s liegen, damit haben anderen den Fehler beseitigt.
      Ich werde es bei mir wohl mit einer erneuten frisch Installation von Raspian probieren.
      Falls du den Fehler behoben bekommst, wäre es super wenn du dich noch Mal melden würdest.

      Viel Erfolg

      Antworten
      • Scheint doch tatsächlich an der Groß/Kleinschreibung bei der Benennung zu sein!
        Wenn ich alles in Kleinbuchstaben einrichte läuft es!

  19. Hallo!
    Ich bekomme beim Starten von Alexa bei Schritt 1 eine Fehlermeldung.
    Nach der Eingabe von „cd ~/alexa-avs-sample-app/samples/companionService && npm start“ erscheint:
    „[…]
    npm ERR! alexa-voice.service-sample-companion.service@1.0.0 start: ’node ./bin/www‘
    npm ERR! Exit status 8
    npm ERR!
    npm ERR! Failed at the alexa-voice-service-sample-companion-service@1.0.0 start script.
    npm ERR! This is most likely a problem with the alexa-voice-service-sample-companion-service package,
    npm ERR! not with npm itself.
    npm ERR! Tell the author that this fails on your system:
    npm ERR! node ./bin/www
    npm ERR! You can get their info via:
    npm ERR! npm owner ls alexa-voice-service-sample-companion-service
    npm ERR! There is likely additional logging output above.
    npm ERR! System Linux 4.4.50-v7+
    npm ERR! command „/usr/bin/nodejs“ „/usr/bin/npm“ „start“
    npm ERR! cwd /home/pi/alexa-avs-sample-app/samples/companionService
    npm ERR! node -v v0.10.29
    npm ERR! npm -v 1.4.21
    npm ERR! code ELIFECYCLE
    npm WARN This failure might be due to the use of legacy binary „node“
    npm WARN For further explanations, please read
    /usr/share/doc/nodejs/README.Debian

    npm ERR!
    npm ERR! Additional logging details can be found in:
    npm ERR! /home/pi/alexa-avs-sample-app/samples/companionService/npm-debug.log
    npm ERR! not ok code 0

    Was kann ich dagegen machen?

    Antworten
  20. Hallo,
    eine sehr interessante Sache. Ich habe mal eine prinzipielle Frage dazu. Muß die Alexa auf einen eigenen RPi installiert werden? Ich habe auf einen RPi 3 mit 16GB SD Karte einen Logitech Media Server welcher mit der Max2Play Software installiert wurde. Da läuft nur der LMS und bedient meine Musikanlage und die Wlan-Lautsprecher mit Musik vom USB Stick oder Internetradio. Der läuft 24/7. Also Platz ist da sicher noch genug drauf und ich finde es spannend, da ja über den LMS auch die FHEM Software für die SmartHomesteuerung nutzen kann, wenn man die Beiden (Alexa und LMS) gleich miteinander verbinden könnte…
    Danke für die Hilfe.

    Antworten
  21. Guten morgen,
    ich bekomme einen Error 400, wenn die Amazon-Seite sich öffnen soll und mich mit Namen, also meinen Account-Daten, begrüßen soll. Kann mir jemand hier helfen?

    Peter

    Antworten
  22. Vielen Dank für Anleitung. Es schein tatsächlich so zu sein, dass bei der Einrichtung der Amazon Device Type ID später Product ID bei Groß-undKleinschreibung ein Problem besteht. Nachdem ich die DeviceID mit neuem Namen (nur Kleinbuchstaben) neu eingerichtet habe, funktionierte alle. Vorher bekam ich die Fehlermeldung „Tut uns leid! Beim Bearbeiten Ihres Auftrags ist ein Fehler aufgetreten. Wir arbeiten bereits daran und haben das Problem in Kürze gelöst.“ wie oben schon beschrieben.

    Antworten
  23. Super Anleitung! Vielen Dank. Ich kann meinem Vorredner nur zustimmen, bei der Einrichtung der Amazon Device Type ID und Product ID gibt es ein Problem bei der Groß-und Kleinschreibung . Ich habe alles klein geschrieben und dann hat es im zweiten Anlauf funktioniert!
    Noch eine Anmerkung: Der Service sich mit Amazon Music zu verbinden wird nicht mehr angeboten. Der Schritt entfällt.
    Vielleicht kannst du die Anleitung überarbeiten; das erspart eine zweite Installation (wegen der Groß-und Kleinschreibung).

    Antworten
  24. Ich habe noch ein paar grundsätzliche Fragen zu Alexa, die nicht unbedingt was mit dem Raspberry zu tun haben, aber vielleicht werden sie ja doch beantwortet:
    Kann man den Amazon Developer Account mit dem privaten Kundenaccount verbinden?
    Wie kann man die Ländereinstellung ändern? Bei mir ist der Service in den USA beheimatet und gibt z. B. Fahrenheit als Temperatureinheit an.
    Besteht die Möglichkeit die Amazon Alexa App mit dem Pi zu verbinden, damit man auch Skills nutzen kann?
    Was findet ihr sind die besten Funktionen, die Alexa auf dem Pi drauf hat (neben den Chuck Norris Witzen)?
    Viele Grüße
    Alexander

    Antworten
  25. Die Umstellung der Temperatur und Entfernung von Fahrenheit auf Grad Celcius und von Meilen auf Kilometer würde mich auch interessieren!

    vielen Dank
    theghostofelvis

    Antworten
  26. Danke für den Tipp!

    Funktionert jetzt alles , geht aber viel einfacher als in dem Artikel.

    einfach auf alexa.amazon.com bei den Einstellungen den Gerätestandort eingeben und die korrekte Zeitzone . Dann kann zusätzlich noch unter Maßeinheiten nochmal eingrestellt werden falls es noch immer nicht passt!

    theghostofelvis

    Antworten
    • Hallo,

      ich bekomme partout keine Verbindung mit alexa.amazon.com. Weder am PC, per App noch über den Raspi-Browser. Ich hab am Raspi SSH, WLAN & BT an. Nach der Anmeldung kann ich eins der 3 Geräte auswählen. Ich habe alle 3 durch, da tut sich nichts. Vielleicht habe ich ja auch nur ein Brett vor dem Kopf aber so kann ich die Einstellungen nicht ändern was ein bisschen ärgerlich ist. Hat jemand einen Tipp für mich? Ich bin gerade dabei ein Startscript zu erstellen, sobald es klappt, ist es hier.
      Danke Flügel

      Antworten
  27. Danke für das Tutorial! Alexa ist ne tolle Sache.
    Kann man der auch was beibringen; Also das dann Python ausgeführt wird? 😉
    Das wäre natürlich klasse.
    Viele Grüße
    Christian

    Antworten
  28. Hallo!

    Ein Problem habe ich noch gefunden, und zwar das ich nicht auf die Skills zugreifen kann 🙁
    Pi Alexa ist auf Deutsch gestellt und der Developer Account ist auf amazon.com, wie kann ich da auf die deutschen Skills zugreifen ?

    Auf alexa.amazon.com (alexa.amazon.de wird nach der Anmeldung auf com weitergeleitet) kommt folgende Meldung bei den Skills :

    Die ausgewählte Spracheinstellung stimmt nicht mit den Einstellungen Ihres Amazon-Kontos überein.

    Daher werden Sie nicht auf Skills zugreifen können.

    Um auf Skills zuzugreifen und die optimale Spracherfahrung zu nutzen, gehen Sie bitte in den Einstellungen zur Sprachoption, und wählen Sie Englisch (USA) aus.

    theghostofelvis

    Antworten
  29. Geht auch schon.. Das kindle Konto von amazon.com muss auf amazon.de übertragen werden ….

    theghostofelvis

    Antworten
  30. Ist es machbar, eine kleine Anlage (z.B. IcyBox oder Bose) nicht nur als Soundausgabe sondern auch als Eingabe zu benutzen ?

    Antworten
      • Ich verwende ein Usb Mikrofon. Hab es heut schon einmal probiert da hat alles funktioniert. Aber jetzt geht es plötzlich nicht mehr und es kommt kein Ton an wenn ich etwas sage, der Gong ist trotzdem zu hören, woran kann das liegen?

  31. Hallo
    Ich habe es tatsächlich nach dieser richtig perfekten Anleitung als absoluter RPI Neuling, Alexa auf meine PI3 zu packen; allerdings der letzte Schritt zum WakeWordAgent haut nicht hin. Habe mich kurz für „Sensory“ entschieden. Bekomme folge Meldung:
    bash: ./wakeWordAgent: no such file or directory
    Wo hab ich den Fehler gemacht?

    Antworten

Hinterlasse einen Kommentar

Deine Email Adresse wird nicht veröffentlicht.

Blog abonnieren

Abonniere Tutorials-RaspberryPi, um kein Tutorial mehr zu verpassen!