QR-Codes für die smarte Steuerung
Ich habe mich mal wieder inspirieren lassen. Herausgekommen ist dabei die Idee für QR-Codes für die smarte Steuerung zu Hause. Grund für meine Inspiration ist ein Tweet und Beitrag auf Digitalzimmer. Passend dazu erschien auch ein Instagram-Post, der ziemlich schön die Grundidee meines Vorhabens darstellt.
Externe Links NFC-Tag Post auf Instagram Link zu Digitalzimmer |
Kurz und knapp erklärt, können die NFC-Tags gewisse Aktionen auslösen und dir deinen Alltag erleichtern. Hierzu wird ein Befehl hinterlegt, welcher entsprechend durch dein Smartphone ausgelesen und durchgeführt werden kann. Im Grunde kannst du so Musik starten und ähnliches.
Mein Gedanke dazu ist nun, dass man auf eine ähnliche Weise das Gleiche auch mit OpenHAB machen kann. Komplexe Regeln oder auch einzelne Items können angesteuert werden. Besucher deines Smart Homes erhalten so die Möglichkeit ein paar Funktionen zu nutzen, ohne deren technische Umsetzung oder die korrekten Sprachbefehle zu kennen.
Außerdem lassen sich so Geräte auch unabhängig von Sprachassistenten steuern. Und selbst in Kombination mit einem Sprachassistenten kannst du so ohne bestehende Internetverbindung weiterhin smart bleiben.
Ausführliche Erläuterung der QR-Codes
Hinter jedem QR-Code stecken Daten. Diese Daten können beispielsweise der Link zu einer Website oder auch ein Text sein. In meinem Fall verwende ich einen Link zu einer Adresse, welche ausschließlich innerhalb meines Smart Homes nutzbar ist. Wenn ich nun meine Kamera des Smartphones auf diesen QR-Code halte, kann ich diesen Link direkt aufrufen. Zu jedem Link gibt es Parameter (vereinfacht: Daten), welche automatisch übergeben werden. Je nachdem, welche Parameter angegeben sind, wird eine andere Aktion ausgelöst.
Ein kleines Beispiel:
http://10.10.10.101:5008/item?name=Arbeitszimmerlicht&state=ON
Du siehst, dass der Name des Items übergeben wird, um das es sich handelt. Ebenso wird der entsprechende Wert übergeben, der erreicht werden soll. Nun können diese Daten interpretiert und zur Ausführung gebracht werden. Dadurch, dass es sich nur um eine interne IP-Adresse handelt, kann man diese Codes nicht aus einem Gastnetzwerk oder dem Internet verwenden. Der Aufruf würde ins Leere laufen.
Erstelle ich nun einen zweiten QR-Code, kann ich den Status auf OFF setzen und die Lampe würde wieder ausgeschaltet werden.
Technische Hürden
Um die Schwierigkeiten bei der Technik verstehen zu können, muss ich dir ein paar Grundlagen über das Internet erklären. Aber keine Sorge, das ist nicht weiter schwierig.
Jeder Webbrowser ruft Internetseiten per GET-Request von einem Server ab. Beispielsweise kannst du diesen Beitrag nur lesen, da der Server auf den GET-Request deines Browsers antwortet und anhand der Adresse weiß, welcher Inhalt ausgeliefert werden muss.
Möchte ich nun allerdings Daten an den Server senden, erfolgt das per POST-Request. Mit GET werden demnach Daten abgerufen, mit POST versendet.
Mein Smart Home – in diesem Fall OpenHAB – erwartet nun allerdings einen POST-Request, um den Zustand eines Items zu verändern. Dein Smartphone ist allerdings ohne Hilfsmittel nur in der Lage, GET-Requests zu versenden. Die beiden Systeme sind somit nicht ohne weiteres Zutun kompatibel und der Einsatz von QR-Codes nicht möglich.
Ich habe nun ein kleines Skript geschrieben, das jeden Aufruf an OpenHAB in einen POST-Request umwandelt. Dadurch kann ich nun jedes Item ansteuern, ohne dass ich hierfür ein spezielles Gerät oder eine spezielle Software brauche.
Download des Skripts auf GitHub (kostenlos) Du darfst dieses Skript nach deinen Wünschen anpassen und verändern Notwendige Erweiterungen: Python, Flask, request, requests, Api |
Wie das Skript arbeitet
Rufst du nun mit deinem Smartphone eine bestimmte Adresse auf, erkennt das Skript automatisch, um welches Item es sich handelt und welcher Zielzustand definiert ist.
Es ruft nun die REST-Schnittstelle von OpenHAB auf und sendet an das passende Item deinen gewünschten Wert. Eine Rückmeldung erhältst du zum jetzigen Zeitpunkt nicht. Da QR-Codes allerdings sowieso nur dann genutzt werden können, wenn du innerhalb deines Netzwerks bist und ihn vor der Kamera hast, kannst du den Erfolg direkt überprüfen.
OpenHAB muss für dieses Vorhaben über die REST-Schnittstelle verfügen, die du allerdings bequem über die Paper UI installieren kannst. Einstellungen musst du nicht vornehmen.
Hast du nun einen der QR-Codes erstellt, kannst du ihn ausdrucken und an eine beliebige Stelle positionieren. Beim iPhone genügt es nun, wenn du die Kamera startest und sie vor den QR-Code hältst. Du wirst aufgefordert eine Seite zu öffnen, was du bestätigst. In diesem Moment werden die notwendigen Daten übertragen und die Steuerung ausgeführt. In den QR-Codes sind alle notwendigen Daten enthalten, so dass du keinerlei Eingaben tätigen musst.
Wie kannst du QR-Codes erstellen?
Deine Codes kannst du auf verschiedene Arten erstellen. Beispielsweise kannst du dir ein Skript schreiben, einen Dienst im Internet nutzen oder meine Vorlage verwenden.
Der große Vorteil meiner Vorlage liegt darin, dass du auf deinem Computer QR-Codes erzeugen und direkt ausdrucken kannst. Deine Daten gelangen nicht in die Hände eines Webdiensts. Höchstens Microsoft kann diese durch Word abfangen … doch das ist ein anderes Thema.
Außerdem bietet dir meine Vorlage den Vorteil, dass du zusätzlich einen Text definieren kannst, welcher unterhalb des Codes angezeigt wird. Das ist auch absolut ratsam, denn wenn du mehrere QR-Codes nutzt, kannst du diese ohne Hilfsmittel nicht mehr voneinander unterscheiden. Durch eine kurze Kennzeichnung weißt du allerdings direkt, was dieser Code tut und kannst ihn entsprechend ausführen lassen.
Ich habe dir meine Word-Vorlage im docx-Format am Ende des Beitrags angefügt.
Ersetze darin die Links entsprechend dem obigen Muster. Gib die Adresse deines Servers ein, welcher das Skript bereitstellt, ersetze Arbeitszimmerlicht durch den Namen deines Items und ON durch den gewünschten Zustand. Philips Hue lassen sich übrigens ansteuern, indem du einen Farbwert als State setzt. Ein Beispiel hierfür ist: 80,100,100.
Was lässt sich alles steuern?
Im Grunde sind deiner Fantasie keine Grenzen gesetzt. Du kannst beispielsweise Regeln schreiben, die über ein Item ausgeführt werden können. Ein ON-OFF-Switch kann so beispielsweise deine Beleuchtung im Garten ein- oder ausschalten. Nun erstellst du dir einen QR-Code für dieses Item und übergibst den gewünschten Wert.
Es lassen sich auch einzelne Lampen ansteuern oder beispielsweise vordefinierte Szenen in der Hue auslösen. Ja, du hast richtig gelesen. Du kannst deine Philips Hue leuchten so über QR-Codes steuern oder auch steuern lassen.
Jedes Item in OpenHAB ist über die REST-Schnittstelle erreichbar und kann so verändert werden. Deiner Fantasie sind demnach wirklich keine Grenzen gesetzt. Du willst deinen Ventilator über einen QR-Code steuern? Auch das ist kein Problem.
Welchen Vorteil bieten die QR-Codes?
Einfach gesagt machen es dir die QR-Codes möglich, komplexe Regeln durch ein einziges Scannen auszulösen oder zu beenden. Gerade jene Personen, die keinen Sprachassistenten nutzen wollen (was im Übrigen völlig in Ordnung ist), können so zumindest auf einfache Weise einen gewissen Komfort nutzen.
Auch wenn du einen Sprachassistenten nutzt, können diese Codes von Vorteil sein. Denn wenn einmal die Internetverbindung ausfällt, kann der QR-Code dennoch eine Aktion auslösen, da dies nur in deinem Netzwerk geschieht.
Solltest du Übernachtungsbesuch haben, kann dein Besuch z. B. über ein älteres Smartphone (welches du vorher entsprechend eingerichtet hast) das Licht steuern oder auch weitere Funktionen in deinem Zuhause ausprobieren. Du musst keine Zeit dafür investieren und die Sprachbefehle erläutern. Genauso hilfreich ist das übrigens, wenn während deiner Abwesenheit jemand nach deinem Zuhause schaut. Der/die-jenige kann ohne großen Aufwand dein Zuhause bedienen.
Aber sei vorsichtig! Wenn dein Besuch sich in die Funktionen deines Smart Homes verliebt, wirst du ihn vielleicht nicht mehr los. 😉
Und die Nachteile?
Streng genommen hast du nur geringe Nachteile. Du kannst nicht ohne Weiteres sicherstellen, dass die QR-Codes nur von einer begrenzten Auswahl an Personen genutzt werden. Jeder, der in deinem Netzwerk ist und QR-Codes auslesen kann, ist in der Lage dein Zuhause zu bedienen.
Außerdem musst du einen Code neu erstellen, sobald sich der Name deines Items verändert. Gerade zu Anfangszeiten sollte man daher vorsichtig sein, da man sonst Ressourcen wie Druckerpatronen und Papier in Unmengen benötigt. Ist dein Smart Home allerdings eingerichtet und auf einem stabilen Stand, steht der Erstellung nichts mehr im Wege.
Ist das nicht eine Spielerei?
Absolut!
Solche Codes für dein Smart Home sind eher ein nettes Gimmick und vielleicht für einen Abend mit Freunden ganz lustig. Im Alltag sind sie allerdings oft etwas unkomfortabel und man ist doch schneller, wenn man einen Sprachassistenten nutzt.
Dennoch resultieren aus Spielereien manchmal gute Ideen. Außerdem dienen solche Features dazu, die Grenzen der Technik auszuloten und herauszufinden, was denn alles möglich ist. Ich persönlich denke, dass dieses Szenario zeigt, es gibt flexible Smart Home Systeme für jedes Zuhause. Mit der richtigen Ausstattung und ein wenig Motivation lassen sich wahnsinnig viele Dinge umsetzen, an die zuvor kein Hersteller gedacht hat. Die Schwäche der Hersteller ist ja bekanntlich oft, dass Funktionen massentauglich sein müssen. Ein individuelles Smart Home hingegen bietet viel Potenzial und kann perfekt auf dich und deine Bedürfnisse abgestimmt werden.
Und wer Lust auf Basteln hat, kann damit seiner Kreativität freien Lauf lassen.
Download Meine Word-Vorlage für QR-Codes (kostenlos) |
Was meinst du zu den QR-Codes? Inspirieren sie dich zu etwas oder hältst du sie eher für völlig nutzlos? Schreib es gerne in die Kommentare und lass uns darüber sprechen.
0 Kommentare