Lampen Sprachsteuerung via Google Now - [RPI; 433 Mhz Funksteckdose; Tasker; AutoVoice]
Vorwort:
Heute erkläre ich euch, wie ihr eure 433 Mhz Funckstekdosen mit Hilfe von Google Now (Ok Google) steuern Könnt. Das Ganze natürlich mit einem Raspberry Pi. Das ganze ist in zwei Abschnitte unterteilt. Im ersten Abschnitt geht es darum, wie die Funksteckdosen vom Pi aus gesteuert werden können. Im zweitem Abschnitt zeige ich, welche Apps auf euerm Android Gerät benötig werden und wie diese konfiguriert werden müssen. Dafür braucht ihr KEINE Rootrechte. Wenn ihr eure Funksteckdosen bereits mit dem Pi steuert, dann könnt ihr direkt zum zweiten Abschnitt gehen.
Für die Faulen unter euch habe ich auch Zwei entsprechende Videos erstellt.
Teil 1:
Teil 2:
(Es empfiehlt sich den Zweiten Teil anzugucken, da es recht schwierig ist die einzelnen App Einstellungen in Schrift zu fassen)
Teil 1 - Funksteckdosen vom Pi Steuern:
Materialien:
Raspberri Pi (mit Netzstecker; SD Karte) hat hier sicherlich jeder. (Ich nutze raspbian als OS)
433 Mhz Sender: http://amzn.to/2kAgZeP
Jumperwire: http://amzn.to/2l9qNZx
Funksteckdosen: http://ebay.eu/2kkeN6K
433 Mhz Sender an den Pi anschließen:
Der Sender wird mit den Jumperwires wie folgt an den Pi angeschlossen.
Schwarz: Masse (0V)
Grün: Daten Pin (GPIO 17)
Rot: +5V
Lila: Antenne (ca. 17 cm)
Funksteckdosen Code:
Die Funksteckdosen haben einen Homecode (System-Code) und einen Steckdosenode (Unit-Code).
Diese lassen sich mit den kleinen Schaltern unter der Klappe auf der Ruckseite einstellen.
Homecode: (Schalter 1-5) ist frei wählbar
Steckdosencode: (Schalter A bis E) E muss immer auf 0 stehen. Von A bis D darf nur einer auf 1 stehen. Wenn A=1 dann ist es Steckdose 1.
Wenn B=1 ist es Steckdose 2. Und so weiter.
Hier ein Beispiel:
WiringPi und raspberry-remote installieren:
Die nachfolgenden Befehle können einfach nacheinander eingegeben werden.
Die Ortner Namen und Strukturen Können ggf. angepasst werden.
sudo apt-get install git-core
mkdir steckdosen
cd steckdosen
git clone git://http://git.drogon.net/wiringPi
cd wiringPi
./build
cd ../
git clone git://http://github.com/xkonni/raspberry-remote.git
cd raspberry-remote
make send
Steckdosen ansprechen:
Nun kann mit dem Send Befehl die Steckdose angesprochen werden. Der Befehl liegt in diesem Fall im Verzeichnis: steckdosen/raspberry-remote
Der Befehl ist wie folgt aufgebaut:
./send Homecode Steckdosencode x (x=1 einschalten; x=0 ausschalten)
Mit dem Beispiel von weiter Oben wären die Befehle:
sudo ./send 10010 3 1 (zum einschalten)
sudo ./send 10010 3 0 (zum ausschalten)
Soweit ist die Steuerung fertig.
Bash Datei erstellen:
Damit nicht immer der ganze Befehl eingegeben werden muss können noch Bash Datei erstellt werden.
Wichtig ist die Ortner Struktur zu beachten, so das die Datei aus dem Homeverzeichnis ausgeführt werden können.
Im Verzeichnis steckdosen geht es wie folgt weiter:
mkdir schalter
cd schalter
nano 3an
sudo steckdosen/raspberry-remote/send 10010 3 1 (einfügen in die Datei)
chmod +x 3an
Mit der Datei 3an kann die 3. Funksteckdose aus dem Homeverzeichnis eingeschaltet werden.
Um die Datei aufzurufen: sudo steckdosen/schalter/3an
Teil 2 - Google now (ok Google) einbinden
Benötigte Apps:
Tasker: http://bit.ly/2dUugYM
AutoVoice (free): http://bit.ly/2l5MmNX
AutoVoice (paid): http://bit.ly/2kUosCW
SSH Plugin (free): http://bit.ly/2kxl2F9
SSH Plugin (paid): http://bit.ly/2kEIsuM
(mit den Kostenlosen Apps sind die Einbindung nur bedingt möglich)
Wie funktionier die einbindung?:
Mit Tasker lassen sich Wenn-Dann-Funktionen (if-Funktionen) erstellen. Mit AutoVoice wird die "Wenn"-Bedingung erstellt. Es lässt sich ein Filter einstellen, auf den AutoVoice bei den Spracheingaben achtet. Sobald die entsprechende Bedingung erfüllt ist wird mittels SSH eine Kommandozeile an den Pi übermittelt.
Hier eine kleine Übersicht zum besseren Verständnis:
1. Ok Google Aktivieren:
-Einstellungen
-Google
-Suche (Suchen und Now)
-Sprache
-"Ok Google"-Erkennung
-"Über die Google App" +
"Auf jedem Bildschirm"
Einschalten
2. Autovice Aktivieren:
-AutoVoice
-Google Now/Assistant
Integration
-NOT ENABLED
-AutoVoice Google Now
Integartion
-"Einschalten" und mit
"Ok" bestätigen
3. Tasker konfigurieren ("Wenn"-Bedingung):
-Tasker
-Profile
-großen "+"
-Ereignis
-Plugin
-AutoVoice
-Recognized
-"Stift"
-Command Filter
-ggf. weitere Einst.
-mit "✓" speichern
3.1 Tasker konfigurieren ("Dann"-Aufgabe):
-Neuer Task
-großes "+"
-Plugin
-SSH Plugin Paid
-"Stift"
-usernmae@host:port
-Password
-Remote Command (sudo steckdosen/schalter/3an)
-"Speichern"
Dann kann man einfach "Ok Google" sagen und dann seinen Befehl.
Viel Spaß beim ausprobieren
DerBärtigeBube