Tado Auto-Assist selber bauen mit Home Assistant – Teil 1

tado-ha-pic

Was ist Auto-Assist überhaupt?

Tado bietet für seine Geräte einen kostenpflichtigen Abo-Service namens Auto-Assist an. Dieser Service soll die Heizungsteuerung vollständig automatisieren, sodass keine Anwenderinteraktionen mehr nötig sind. Im Detail handelt es sich dabei um zwei zusätzliche bzw. komfortablere Funktionen. Zum einen regelt Tado automatisch die Heizung herunter, sobald ein offenes Fenster erkannt wird. Zum anderen passt Tado die Heizung automatisch an, wenn die letzte Person das Haus oder die Wohnung verlässt bzw. die erste Person nach Hause kommt.

Auch wenn diese Funktionen vermutlich für viele Nutzer von Tado gute Addons sind, für die sie mehr oder weniger gern bezahlen, gibt es für technisch Versierte kostenlose Alternativen, beispielweise bei Nutzung von Home Assistant. In dieser Beitragsreihe zeige ich euch, wie ihr kostenlos die Funktionen des Tado Auto-Assist mit Home Assistant selber bauen könnt.

Tado Auto-Assist bietet noch mehr Services, die aber für die täglichen Funktionen erstmal keine weitere Rolle spielen. Genau nachlesen könnt ihr das auf der entsprechenden Support-Seite von Tado.

Tado Auto-Assist selber bauen – Fenster-Offen-Erkennung

In der kostenlosen Version von Tado gibt es die Fenster-Offen-Erkennung zwar auch, allerdings bekommt man nur eine Push-Benachrichtigung auf das Smartphone. Herunter regeln muss man die Heizung dann selbst per Knopfdruck. Aber genau diesen Umstand machen wir uns an dieser Stelle zu nutze. Wenn ihr schon erfolgreich Tado in Home Assistant integriert habt, bekommt diesen Zustand natürlich auch Home Assistant mit. Wir nutzen also die Änderung des „Fenster-Offen“-Sensor als Trigger für eine Automatisierungsregel.

Falls ihr mehr über die Integration von Tado in Home Assistant wissen möchtet oder euch dieser Schritt noch fehlt, schaut doch mal in folgenden Beitrag:

Tado in Home Assistant integrieren

Prinzipiell besteht eine Automatisierungsregel in Home Assistant aus vier Teilen. Wir werden nachfolgend jeden Einzelnen davon anhand unseres Fenster-Offen-Szenarios betrachten.

Grundkonfiguration

Tado Auto-Assist selber bauen
Home Assistant Automatisierungsregel – Grundkonfiguration

Im ersten Teil vergibt man der Regel einen sprechenden Namen. Optional könnt ihr noch eine Beschreibung hinzufügen. Der Modus gibt an, was passieren soll, wenn diese Regel gerade noch ausgeführt, aber nochmals getriggert wird. In unserem Fall reicht der Standardmodus „Einzeln“. Dieser startet keinen neuen Durchlauf und wirft ggf. eine Warnung aus.

Auslöser

Tado Auto-Assist selber bauen
Home Assistant Automatisierungsregel – Auslöser

Als Nächstes konfigurieren wir den Auslöser. Dieser besagt, was passieren muss, damit diese Automatisierungsregel ausgelöst wird. Bei der Fenster-Offen-Erkennung handelt es sich im eine Zustandsänderung, dementsprechend wählen wir als Auslösertyp „Zustand“ aus.

Hierzu gehört natürlich auch, wessen Zustand sich ändert. Das geben wir mit der Entität an. Hier wählen wir den Sensor, der für die Fenster-Offen-Erkennung gedacht ist. Diese Entität wird bei der Integration von Tado in Home Assistant automatisch angelegt.

Last but not least benötigt der Auslöser noch eine Info, wie genau sich der Status ändern muss. In unserem Beispiel muss sich die Fenster-Offen-Erkennung von „off“ zu „on“ ändern. „Off“ beutet an dieser Stelle Fenster geschlossen, „on“ bedeutet Fenster geöffnet.

Bedingungen

Tado Auto-Assist selber bauen
Home Assistant Automatisierungsregel – Bedingungen

Wie der Name schon sagt geben die Bedingungen an, unter welchen Umständen die Regel überhaupt ausgeführt werden soll. In unserem Fall ist dieser Punkt eher optional und dient nur als doppelte Absicherung. Wir haben zwar schon beim Auslöser definiert, dass sich der Zustand von „off“ nach „on“ ändern muss, aber ich gebe hier nochmal zusätzlich an, dass der initiale Status „off“ sein muss.

Genau, wie beim Auslöser setzen wir den Bedingungstyp wieder auf Zustand. Als Entität wählen wir unseren entsprechenden Sensor aus und den Zustand definieren wir als „off“.

Aktionen

Tado Auto-Assist selber bauen
Home Assistant Automatisierungsregel – Aktionen Teil 1
Home Assistant Automatisiserungsregel - Aktionen Teil 2
Home Assistant Automatisiserungsregel – Aktionen Teil 2

Schlussendlich kommen wir zum wichtigsten Teil, dem wirklichen Doing der Regel. Hier wird genau definiert, was passieren soll, wenn die Regel in Kraft tritt und alle Bedingungen erfüllt wurden. An dieser Stelle sind der Phantasie an sich keinerlei Grenzen gesetzt. In meinem Beispiel setze ich den HVAC-Mode des Gerätes „Bad“ auf off, sprich die Heizung wird ausgeschaltet.

Die nächste Aktion „Warten auf den Ablauf“ ist nichts anderes, als ein Timer, der herunterläuft. In meinem Fall 15 Minuten.

Nach Ablauf desselbigen wird der HVAC-Mode von „Bad“ wieder auf Auto gesetzt, also die Heizung wieder eingeschaltet. Hier hängt es von den jeweiligen Gegebenheiten bzw. Vorlieben ab, wie man diese Aktionen gestaltet. Natürlich sollte man in meinem Beispiel nach den 15 Minuten auch wieder das Fenster schließen, aber auch hier gibt es Mittel und Wege. Bei mir wird durch eine weitere Regel ein Amazon Echo Dot getriggert mir mitzuteilen, dass die Fenster wieder geschlossen werden können.

Mit einem Klick auf „Speichern“ unten rechts sind wir auch schon am Ende der Erstellung dieser Automatisierungsregel angekommen. Ab jetzt wird Home Assistant immer euren Heizkörper in dem entsprechenden Raum herunterregeln, sobald ein offenes Fenster erkannt wird.

Natürlich könnt ihr diese Regel auch auf alle anderen Räume eures Zuhauses adaptieren. Im einfachsten Fall nehmt ihr die YAML-Konfiguration dieser Regel, kopiert diese und ändert die entsprechenden Entitäten:

alias: Fenster offen Bad - Zeitplan an
description: ''
trigger:
  - platform: state
    entity_id: binary_sensor.bad_open_window
    from: 'off'
    to: 'on'
condition:
  - condition: state
    entity_id: binary_sensor.bad_open_window
    state: 'off'
action:
  - device_id: 60ec825d879df9578d515d045b843cda
    domain: climate
    entity_id: climate.bad
    type: set_hvac_mode
    hvac_mode: 'off'
  - delay:
      hours: 0
      minutes: 15
      seconds: 0
      milliseconds: 0
  - device_id: 60ec825d879df9578d515d045b843cda
    domain: climate
    entity_id: climate.bad
    type: set_hvac_mode
    hvac_mode: auto
mode: single

Damit sind wir am Ende des ersten Teils in der Reihe „Tado Auto-Assist selber bauen“ angekommen. Im nächsten Teil geht es um die automatisierte Steuerung eurer Heizung via Geolokalisierung.

Tipps & Tricks

Ihr möchtet mehr zum Thema Tado und Home Assistant erfahren? Dann klickt euch doch mal durch meine entsprechenden Kategorien:

Tado

Home Assistant


Hat dir dieser Beitrag gefallen?


11 Gedanken zu „Tado Auto-Assist selber bauen mit Home Assistant – Teil 1

  1. Bernd Antworten

    Vielen Dank für den Tipp!
    Eine Frage, bzw. Beobachtung: bei mir hat die Automatisierung nicht funktioniert weil die Condition

    condition:
    – condition: state
    entity_id: binary_sensor.bad_open_window
    state: ‚off‘

    zu dem Zeitpunkt schon nicht mehr erfüllt war, weil der state ja schon auf ‚on‘ ist.

    Habe ich da was falsch gemacht, oder wie ist Deine Erfahrung? (Ich würde die Condition erstmal weglassen, sie ist ja ohnehin nur eine Absicherung)

    Viele Grüße,
    Bernd

    • Tobias Gräber Autor des BeitragsAntworten

      Hallo Bernd,

      die Condition betrachtet den Zustand VOR dem triggern des Auslösers. Ja, in dem Fall ist es nur eine Absicherung, aber im Normalfall sollte der State vor dem Auslösen „off“ lauten. Wenn er „on“ lauten würde, ist das Fenster offen und der Auslöser würde in der Kombi von „off“ zu „on“ gar nicht triggern.

      Viele Grüße,
      Tobias

      • Bernd Antworten

        Sorry, ich hab es eben nochmal getestet, und bei mir (HA 2022.9.4) verhält es sich anders:
        Hier wird die Condition NACH dem Trigger ausgewertet, das sehe ich auch in der „Traces“-Ansicht der Automation, da steht bei den Step Details

        Executed: 19 September 2022 at 17:49:36
        Result:
        result: false
        entity_id/0
        Executed: 19 September 2022 at 17:49:36
        Result:
        result: false
        state: ‚on‘
        wanted_state: ‚off‘

        Und auch die Dokumentation unter https://www.home-assistant.io/docs/automation/condition/ verstehe ich so, dass die Condition eine Automation abbrechen kann, aber dafür muss sie ja erstmal getriggert worden sein.

        Aber wie gesagt: danke für die Anleitung. Der Trigger funktioniert bei mir wie erwartet, der state change is von ‚off‘ zu ‚on‘, und ich denke ich lasse die Condition weg.

  2. Ralph Antworten

    Hallo , ich würde in Abwesenheit gerne die Temperatur des Tado vopn Auto auf , z.B. 18 Grad stellen.
    Wie kann ich das im HA konfigurieren.
    Zur Auswahl habe ich nach Deinem Beispsiel ja nur: Off, Auto und heating. Bei heating kann ich aber leider keine bestimmte Temperatur angeben.

    • Tobias Gräber Autor des BeitragsAntworten

      Hallo Ralph,

      leider bezieht sich deine Frage auf den falschen Beitrag. Du redest von der Geolokalisierung, referenzierst aber die Fenster-Offen-Erkennung. Bei der Geolokalisierung hast du als Aktion die Auswahl den „preset mode“ für ein (oder mehrere) Thermostat(e) zu setzen. Hier wählst du für dein Beispiel „away“ aus. Wenn du nun in der Tado-App oder Web-GUI einmalig definiert hast, wie hoch bzw. niedrig die Absenktemperatur sein soll (in deinem Fall 18°C), wird wenn Tado registriert, dass dein Zuhause in den „AWAY“ Mode versetzt wurde, die Temperatur auch entsprechend abgesenkt.

      Lies hierzu doch nochmal in dem richtigen Artikel nach:

      https://tgraeber.de/tado-auto-assist-selber-bauen-home-assistant-geolokalisierung/

      Bei Fragen melde dich doch einfach nochmal.

  3. Christian Antworten

    Hallo Tobias,

    Ich bin zufällig hierauf gestoßen als ich dabei war mein neues Aqara Thermostat E1 zu installieren und per Automatisierung anzusteuern.
    Ich bekomme es zwar hin, das das Thermostat im gewollten Augenblich angeht, doch ich bekomme es dann nicht einfach wieder aus, ohne die Temperatur zu ändern.
    Vielleicht hat wer von euch hier eine Lösung.
    Hier mein Code:
    alias: Problemfall
    description: „“
    trigger:
    – platform: state
    entity_id:
    – binary_sensor.kueche_fenster
    – binary_sensor.wohnzimmer_fenster
    from: „off“
    to: „on“
    – platform: state
    entity_id:
    – binary_sensor.kueche_fenster
    – binary_sensor.wohnzimmer_fenster
    from: „on“
    to: „off“
    – platform: time
    at: „06:00:00“
    – platform: time
    at: „00:00:00“
    condition: []
    action:
    – if:
    – condition: and
    conditions:
    – type: is_not_open
    condition: device
    device_id: 969c34ef96a9695fec6f699afa856e9e
    entity_id: binary_sensor.kueche_fenster
    domain: binary_sensor
    for:
    hours: 0
    minutes: 0
    seconds: 0
    – type: is_not_open
    condition: device
    device_id: 87ce05aac5002956e4991bc86857ccfb
    entity_id: binary_sensor.wohnzimmer_fenster
    domain: binary_sensor
    for:
    hours: 0
    minutes: 0
    seconds: 0
    – type: is_temperature
    condition: device
    device_id: eb84d6e45a770b0adb5188177900c967
    entity_id: sensor.balkon_thermometer_temperatur
    domain: sensor
    below: 100
    – condition: time
    after: „06:00:00“
    before: „00:00:00“
    weekday:
    – mon
    – tue
    – wed
    – thu
    – fri
    – sat
    – sun
    then:
    – service: climate.set_temperature
    data:
    hvac_mode: heat
    temperature: 25
    target:
    entity_id: climate.wohnstube_heizung
    else:
    – service: climate.turn_off
    data: {}
    target:
    entity_id: climate.wohnstube_heizung
    mode: restart

    PS: die Temperatur vom Balkon-Thermometer spielt beim Test keine Rolle und wird später meinen Wünschen angepasst.

    • Tobias Gräber Autor des BeitragsAntworten

      Hallo Christian,

      mal abgesehen davon, dass es als Außenstehender schwer nachzuvollziehen ist, würde ich dir raten das Ganze mal in kleine Teile aufzuteilen, sprich einzelne Automatisierungen. Als Beispiel: Küchenfenster wird geöffnet, zu der und der Zeit an den und den Tagen, dann mach das Thermostat zu. Nächstes Beispiel: Küchenfenster wird wieder geschlossen, zu der und der Zeit an den und den Tagen, dann setze Thermostat auf X Grad. So würde ich mich jetzt kleinteilig durchhangeln und schauen, ob alles funktioniert, wie gewünscht. Wenn du soweit alles am Rennen hast, kannst du ja dann anfangen, wenn es unbedingt alles in einer Automatisierungsregel sein soll, alles nach und nach wieder zusammenzusetzen. (nicht vergessen die Teilautomatisierungen vorher wieder zu deaktivieren)

      Ich hoffe ich konnte dir damit erstmal einen Denkanstoß geben. Wenn du weiter Hilfe benötigst, melde dich einfach.

  4. Suthu Antworten

    Hallo Tobias,

    ich habe HA erstmalig eingerichtet und wollte genau das von dir beschriebene Szenario ausführen. Bei mir wird aber lediglich off oder heat als mögliche hvac_mode Attribute ausgegeben und nicht auto. Hab ich was übersehen oder muss bzw. kann das direkt in der YAML Datei angepasst werden?

    • Tobias Gräber Autor des BeitragsAntworten

      Hallo Suthu,

      hast du evtl. das falsche Gerät ausgewählt? Ich wähle unter den Bedingungen „Gerät“ aus, bspw. in meinem Fall „Büro“. Anschießend wähle ich in dem Dropdown Menü „Büro ist auf einen bestimmten HLK-Modus festgelegt“ (mittlerweile hat sich die Bezeichnung dieser Bedingung in den neueren Versionen geändert) aus. Darunter erscheinen 3 Radio Button mit „off“, „auto“ und „heat“. Bitte überprüfe nochmal, ob du tatsächlich das richtige Gerät ausgewählt hast.

  5. Heiko Antworten

    Ich habe es in iobroker bereits erfolgreich umgesetzt. Nach dem Umstieg auf HA, vermisse ich den Wert „letzter Zustand“. Wenn das Fenster geschlossen wird, soll der zuletzt eingestellte Zustand wieder hergestellt werden. Gibt es dafür eine Lösung?

    • Tobias Gräber Autor des BeitragsAntworten

      Hallo Heiko,

      Du kannst vor dem Ausführen von Aktionen eine Szene von dem jeweiligen Thermostat erstellen und später dann wieder aufrufen. Die Szene setzt dann den „letzten Zustand“ wieder.

Schreibe einen Kommentar

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