Google Home steuert 433 MHz-Funksteckdosen

Google Home ist da. Damit ist das nächste Sprachutensil zum Beantworten von Fragen, aber auch zur Steuerung des Zuhauses. Nartürlich hat Google Home genau so wie der Echo keine eigene Schnittstelle, um die guten, alten 433MHz-Steckdosen zu steuern. Deswegen empfehle ich in diesem Fall wieder wie bei Amazons Echo einen Raspberry-Pi zur Steuerung.

Da die Stelle der Steuerung der Box der Steuerung über Alexa gleicht, verweise ich für diesen zweiten Teil jetzt schon mal auf den Abschnitt im Artikel über Alexa. Es geht los bei „Der Raspberry muss die Botschaft empfangen“. Der vorgelagerte Teil, wie die Steuerinformationen zum Raspberry kommen, läuft über ifttt.com.

Steuerbefehle über ifttt.com schicken

ifttt.com bietet die Möglichkeit verschiedene Schnittstellen miteinander zu verbinden. Auch der Google Assistant steht dort inzwischen zur Verfügung. Hier kann man Sprachbefehle hinterlegen und sie hinterher mit anderen Schnittstellen kombinieren. Für die Steuerung der Steckdosen habe ich folgendes Beispiel angelegt:

Wie man schon in der Konfiguration sehen kann, ist die Einstellung sehr leicht: man gibt an, auf welchen Satz hin Google Home reagieren soll. Das schöne ist: im Gegensatz zu Amazon Echo muss man keinen Skillnamen vorher sagen. Eigene Sätze werden einfach in das System integriert, als ob sie von Google selbst kommen. Entsprechend habe ich hinterlegt „Wohnzimmerlicht an“. ifttt.com legt diese Aussage im Google Assistant an. Das ist dann auch schon der erste Teil der Schnittstellenbrücke. Die zweite ist nun die Brücke zur Webschnittstelle aus dem obigen Artikel. Diese realisiert man als „Webhook“. Eine Webhook ist nichts anderes, als ein URL-Aufruf. Ich übergebe also an meinen Webserver per URL-Aufruf den Status, welche Steckdosennummer geschaltet werden soll und ob diese ein- oder ausgeschaltet werden soll. Also zum Beispiel so:

http://www.meinserver.de/input.php?steckdose=1&zustand=1

Die wird dann mit dem PHP-Skript in einer Datenbank gespeichert. Damit, wenn mehrere Befehle kommen, diese nicht verloren gehen und der Reihe nach abgearbeitet werden können. Die Tabelle sieht entsprechend einfach aus:

CREATE TABLE IF NOT EXISTS `befehle` ( `id` int(11) NOT NULL AUTO_INCREMENT, `datum` datetime NOT NULL, `schalter` varchar(5) NOT NULL, `zustand` int(1) NOT NULL, PRIMARY KEY (`id`) )

In diese Tabelle werden dann die Einträge mit folgendem Eintrag eingefügt:

// Über $db die DB-Verbindung herstellen if(is_numeric($_POST[schalter]) && is_numeric($_POST[zustand]) { $db->query("INSERT INTO befehle SET datum=NOW(), schalter='$_POST[schalter]', zustand='$_POST[zustand]'"); }

Damit hat dann Google Home die Information abgelegt, die dann der Raspberry mit dem Funkmodul ausliefert.

Eine Alternative dazu sind Google-Actions. Diese sind aktuell aber nur in Englisch verfügbar. Eine deutsche Implementation ist zwar für 2017 vorgesehen, wann das aber letztlich sein wird, steht wohl noch ein wenig in den Sternen. Aber über ifttt.com ist es ohnehin schneller und leichter realisiert.

Die weiteren Schritte sind, wie oben beschrieben, auch im Artikel über die Steuerung wie bei Alexa zu entnehmen, denn ab dieser Stelle arbeitet der Raspberry und dem ist es letztlich egal, wer die Information liefert.

Ist das steuern von so dummen Steckdosen überhaupt interessant? Oder sind die smarten Steckdosen über WLAN interessanter und lohnenswerter? Schreibt mir gerne Eure Meinung in die Kommentare.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.