Ich nutze nun schon seit längerer Zeit ein Tado Heizungsthermostat welches ich bisher mit Hilfe eines IFTTT Webhooks und einer HomeKit Automation beim öffnen eines Fensters ausgeschaltet- und beim schließen wieder in seinen Zeitplan zurückgeschaltet habe. Allerdings hat diese Variante den Nachteil dass IFTTT ja mittlerweile nicht mehr zu 100% kostenfrei ist.
Vor kurzem bin ich über ein Homebridge Plugin gestoßen welches unter anderem eine API Schnittstelle bietet, womit man Tado Thermostate mithilfe von URL Abfragen im JSON Format in den HomeKit Automationen ansteuern kann.
Keine Sorge, das Plugin klont oder verändert deine bereits in HomeKit eingebundenen Thermostate nicht (auf Wunsch kann es das aber).
Dazu benötigst du eine bereits laufende Homebridge (bspw. auf einem Raspberry Pi). Eine ausführliche Anleitung zum aufsetzen einer Homebridge findest du HIER. Außerdem brauchst du Natürlich ein Tado Thermostat, einen HomeKit fähigen Fensterkontakt und eine HomeKit Steuerzentrale.
Also bis auf die Homebridge alles was du eventuell bei der Nutzung von IFTTT bereits benötigt hast.
Nun aber ans Werk!
Zunächst installierst du DIESES Plugin auf deiner Homebridge, ich habe es wie folgt konfiguriert:
{
"username": "E-MAIL MEINES TADO ACCOUNTS",
"password": "PASSWORT MEIENS TADO ACCOUNTS",
"homeName": "NAME MEINES TADO ZUHAUSES",
"areOccupancySensorsEnabled": false,
"isGlobalHomeAwayEnabled": false,
"isAutoAssistEnabled": false,
"switchToAutoInNextTimeBlock": false,
"isAlternativeStateLogicEnabled": false,
"isApiEnabled": true,
"apiPort": 40810,
"apiToken": "BELIEBIGER API Token",
"zones": [
{
"zoneName": "ZONE-NAME"
}
],
"platform": "TadoPlatform"
}
Alles anzeigen
Bei "username" und "password" musst du in den saueren Apfel beißen und deine Tado Zugangsdaten eingeben und bei "homeName" den Namen deines Tado Zuhauses, welchen du in der Start Übersicht in der Tado App findest (er muss genau stimmen).
Bei "isApiEnabled" musst du "true" eintragen, den Port kannst du frei wählen, ich habe hier den Standard Port (40810) verwendet, da dieser von keinem anderen Dienst auf meinem Pi genutzt wird. Den API Token kannst du auch frei wählen. Dieser wird später als Autorisierung genutzt, dass kein anderer die API des Plugins nutzen kann.
Alles andere kannst du für diese Anleitung auf False lassen.
Nun benötigst du nur noch die Zone IDs der jeweiligen Thermostate bzw. der Zonen der Tado App. Diese spuckt dir die Homebridge im Protokoll bei jedem (Re)start aus. Das sieht dann wie folgt aus:
Das sagt uns dass das Thermostat der in der Tado App Schlafzimmer heißt die ID 1 hat. Das merkst du dir, bzw. schreibst es auf wenn du mehrere Thermostate hast oder einfach vergesslich bist.
Nun ab in HomeKit, ich empfehle dir immer die Konfigurationsdatei der Homebridge zur Hand zu haben.
In der HomeKit App Wechselst du in den Reiter "Automationen" und erstellst mit dem Plus oben rechts eine neue Automation.
Nun wählst du die Option "Wenn ein Sensor etwas entdeckt"
Dann wählst du den Fensterkontakt aus über den der Thermostat gesteuert werden soll und Tippst auf weiter.
Dann wählst du aus ob die Automation durch das öffnen oder Schließen des Fensters getriggert werden soll. Ich zeige hier das öffnen und erkläre danach die unterschiede zum schließen, da das weitgehend das selbe ist.
Auf der nächsten Seite scrollst du ganz nach unten und wählst die Option "In Kurzbefehl konvertieren"
Hier Entfernst du den HomeKit Befehl mit dem Kleinen Grauen X und wählst "Aktion hinzufügen". Hier suchst du nun "url" und wählst "Inhalte von URL abrufen"
Nun trägst du bei "url" folgendes ein:
Hier meine URL als Beispiel:
Dann drückst du unten auf "mehr anzeigen" und wählst als "Methode" "POST" aus. Nun klappst du den "Header" auf und wählst neue "Überschrift hinzufügen". Hier gibst du als "Schlüssel" "Authorization" und als "Text" deinen API Token aus der Konfigurationsdatei deiner Homebridge ein.
Bei "Haupttext anfordern" lässt du JSON ausgewählt und tippst auf "neues Feld hinzufügen". Nun möchte HomeKit wissen welche Art wert du hinzufügen möchtest. Hier wählst du "Text" aus und gibst bei "Schlüssel" "target-state" und bei "Text" "off".
Das sollte dann ungefähr so aussehen:
Ist das erledigt tippst du auf weiter. Nun kannst du ja mal probieren ob das ganze nun auch funktioniert indem du auf diese "Diese Automation testen" tippst. (Es kann kurz dauern bis der Heizkörper reagiert).
Hat das Funktioniert kannst du nun auf "Fertig" tippen und das selbe nun nochmal machen. Nur wählst du diesmal als Trigger für die Automation das schließen des Fensters aus und Trägst im letzten Schritt unter "Haupttext anfordern" hinter "target-state" "auto" ein.
Fertig! Nun sollte alles funktionieren. Leider kann ich zu einigen Dingen keine Hilfestellung geben, wie zum Beispiel wie das Ganze mit mehreren Thermostaten/Fensterkontakten funktioniert (da ich aktuell je nur einen habe) aber dazu ist das ja ein Forum in dem sich viele Menschen austauschen können.
Falls du mehr über das Plugin erfahren möchtest kannst du ja die Dokumentation auf der Github Seite des Plugins durchlesen. Diese ist sehr gut und eigentlich steht hier auch nicht mehr wie dort .