Espresso Automation in Home Assistant

Posted on Sa 27 Februar 2021 in Computer & Electronics

Vor einer Weile hatte ich zwei Posts über Homeassistant geschrieben und mir in dem System ein paar ganz simple Schalter installiert, über die ich z.B. meine Espressomaschine mit einer Sonoff S20 WiFi-Steckdose fernschalten konnte. Das klappt super, ist aber natürlich nur die halbe Miete, denn meine Espressomaschine ist eine italienische Siebträger-Diva, die schonmal so 15-20min Aufheizzeit braucht, bis sie in der richtigen Stimmung ist, guten Espresso zu machen. D.h. sie sollte unter Woche automatisch aufheizen, während wir unter der Dusche sind.

Nun war der Leidensdruck nicht groß, denn diese Automatisierung hatte ich bereits mit der TASMOTA Firmware auf der Sonoff-Dose realisiert. Aber das ist natürlich nicht der Sinn der Sache und so habe ich heute beschlossen, den Timer in TASMOTA zu deaktivieren und das Ganze über Homeassistant zu regeln.

Und weil das echt simpel ist, wird das hier ein sehr kurzer Post.

Automation

Das Zauberwort heißt "Automation" – das ist der Mechanismus über den man in Homeassistant Sachen automatisiert. Um eine neue Automation einzurichten, oder die bestehenden zu verwalten, müsst Ihr im Homeassistant Web-Interface nach Configuration > Automations gehen und dann unten Add automation anklicken und im dann folgenden Dialog "Start with an empty automation" wählen:

Eine Automation besteht im Wesentlichen aus drei Komponenten:

  1. Trigger – also Events die die Ausführung der Automation auslösen
  2. Conditions – also Bedingungen die erfüllt sein müssen, damit die Automation abläuft
  3. Actions – das was passieren soll, wenn Trigger und Condition erfüllt sind

Was ich haben will ist, dass die Espressomaschine an allen Werktagen um 6:30 eingeschaltet wird und dann bis 7:10 läuft.

Das kann man sich recht leicht in der GUI zusammenklicken:

  • Trigger: Time – 6:35
  • Condition: Time – Wochentage Mo–Fr aktivieren, Sa, So nicht
  • Actions:
    • Device – Espresso – Turn on Espresso
    • Delay – 00:35:00
    • Device – Espresso – Turn off Espresso

Wohlgemerkt – dazu muss zuvor schon das zu automatisierende Device angelegt sein. In meinem Fall war das der WiFi-Schalter über die Tasmota Integration unter dem Namen Espresso.

Wenn man oben rechts im Eck auf das –Symbol geht und dort Edit as YAML auswählt kann man das Ganze schön kompakt vor sich sehen bzw. leicht editieren:

alias: Espresso (Workday)
description: '6:35 – 7:10'
trigger:
  - platform: time
    at: '6:35'
condition:
  - condition: time
    weekday:
      - mon
      - tue
      - wed
      - thu
      - fri
action:
  - type: turn_on
    device_id: 63b5c0fa32aef9f9ac8be5edeabb10df
    entity_id: switch.tasmota_4be621d5927_1switch_relay_0
    domain: switch
  - delay: '00:35:00'
  - type: turn_off
    device_id: 63b5c0fa32aef9f9ac8be5edeabb10df
    entity_id: switch.tasmota_4be621d5927_1switch_relay_0
    domain: switch
mode: single

Aber was, wenn ich mal Urlaub habe, oder ein Feiertag ist? Da will ich nicht, dass die Maschine so früh angeht, weil ich mich dann nämlich noch in der zweiten Tiefschlaf-Phase befinde! Kein Problem: Unter Config > Automations kann man die Automation ein- oder ausschalten. Noch bequemer wäre es aber, diese Möglichkeit auch direkt auf dem Dashboard zu haben.

Also rein in's Dashboard, anklicken und Edit Dashboard. Nun auf Add Card > By entity und schon kann ich mir die Elemente aussuchen, die in die neue Karte rein sollen. Und schon kann ich das ganz bequem (de)aktivieren.

Ich hab dann gleich nochmal eine zweite Variante der gleichen Automation angelegt – mit etwas veränderten Zeiten, denn wenn meine Frau frei hat, dann können wir länger schlafen – jedenfalls, wenn wir daran gedacht haben, den Katzen genug Schlafmittel zu verabreichen...

Und schon kann ich ganz bequem zwischen normalem Werktag, "Frau hat frei" und Feiertag wechseln. Schön!

Das war's schon. :-)