Automationen & Szenen
Von der einfachen Zeitsteuerung bis zur komplexen Multi-Trigger-Automation mit Beispielen.
Was ist eine Automation?
Eine Automation ist eine Regel nach dem Prinzip: Wenn X passiert (Trigger) ** und Y zutrifft** (Condition) , dann tue Z (Action). Das ist das Herzstück jedes Smart Homes — Automationen machen dein Zuhause wirklich „smart".
| Teil | Frage | Beispiel |
|---|---|---|
| Trigger | Wann soll es passieren? | Bewegung erkannt, Uhrzeit erreicht, Tür geöffnet |
| Condition | Nur wenn... (optional) | Es ist dunkel, niemand ist zuhause, Werktag |
| Action | Was soll passieren? | Licht einschalten, Nachricht senden, Szene aktivieren |
💡 Merkhilfe: Denk an „Wenn–Nur wenn–Dann": Wenn die Sonne untergeht, nur wenn jemand zuhause ist, dann schalte das Licht ein.
Alle Trigger-Typen erklärt
Trigger bestimmen, wann eine Automation startet. Hier sind die wichtigsten:
| Trigger | Beschreibung | Praxis-Beispiel |
|---|---|---|
| State | Entity ändert ihren Zustand | Bewegungsmelder: off → on |
| Numeric State | Zahlenwert über-/unterschreitet Schwelle | Temperatur steigt über 25°C |
| Time | Bestimmte Uhrzeit | Jeden Tag um 22:00 Uhr |
| Time Pattern | Periodisches Intervall | Alle 5 Minuten |
| Sun | Sonnenauf-/-untergang | 30 Minuten vor Sonnenuntergang |
| Zone | Person betritt/verlässt Zone | Max verlässt die „Arbeit"-Zone |
| Device | Gerät löst Event aus | Zigbee-Button wurde gedrückt |
| Webhook | HTTP-Aufruf von extern | IFTTT oder Tasker sendet Webhook |
| Tag | NFC-Tag gescannt | Handy scannt Tag an der Haustür |
| Template | Jinja2-Template wird wahr | Mehr als 3 Fenster offen |
| MQTT | MQTT-Nachricht empfangen | Tasmota-Gerät sendet Statusupdate |
| Calendar | Kalenderevent beginnt | Google Kalender: „Meeting" startet |
Alle Condition-Typen erklärt
Conditions sind optional — sie prüfen, ob die Automation wirklich laufen soll:
| Condition | Beschreibung | Praxis-Beispiel |
|---|---|---|
| State | Entity hat bestimmten Zustand | Licht ist aus |
| Numeric State | Zahlenwert in einem Bereich | Temperatur zwischen 18 und 25°C |
| Sun | Vor/nach Sonnenauf-/-untergang | Es ist dunkel (nach Sonnenuntergang) |
| Time | Innerhalb eines Zeitfensters | Zwischen 08:00 und 22:00 |
| Zone | Person in einer Zone | Jemand ist zuhause |
| Template | Jinja2-Ausdruck ist wahr | Wochentag und niemand schläft |
| And / Or / Not | Logische Verknüpfungen | (Es ist dunkel UND Werktag) ODER Gast-Modus an |
Automation per UI erstellen
- Gehe zu Einstellungen → Automationen & Szenen
- Klicke auf „+ Automation erstellen" → „Neue leere Automation"
- Gib einen Namen ein (z.B. „Flur-Licht bei Bewegung")
- Füge einen Trigger hinzu → Wähle „Zustand" → Wähle deinen Bewegungsmelder → Zustand: „on"
- Optional: Füge eine Condition hinzu → „Sonne" → „unter dem Horizont"
- Füge eine Action hinzu → „Service aufrufen" → „light.turn_on" → Wähle dein Licht
- Klicke auf „Speichern"
💡 Tipp: Die UI zeigt dir immer eine Live-Vorschau der Automation. Du kannst sie jederzeit mit dem „Ausführen"-Button testen, ohne auf den Trigger zu warten.
Automation per YAML
Das gleiche Beispiel als YAML — jede Zeile erklärt:
1# Automation: Licht bei Bewegung
2automation:
3 - alias: "Flur-Licht bei Bewegung" # Name der Automation
4description: "Schaltet Flur-Licht ein bei Bewegung, wenn es dunkel ist"
5
6trigger: # WANN soll es passieren?
7 - platform: state # Trigger-Typ: Zustandsänderung
8 entity_id: binary_sensor.flur_motion # Der Bewegungsmelder
9 to: "on" # Wenn Bewegung erkannt wird
10
11condition: # NUR WENN...
12 - condition: sun # Sonnenbedingung
13 after: sunset # Nach Sonnenuntergang
14
15action: # WAS soll passieren?
16 - service: light.turn_on # Licht einschalten
17 target:
18 entity_id: light.flur # Welches Licht
19 data:
20 brightness_pct: 80 # Helligkeit: 80%
21 transition: 2 # Sanfter Übergang: 2 SekundenModus: Was passiert bei mehreren Auslösungen?
Was wenn eine Automation ausgelöst wird, während sie noch läuft? Das bestimmt der mode:
| Modus | Verhalten | Am besten für |
|---|---|---|
| single (Standard) | Neue Auslösung wird ignoriert | Die meisten Automationen |
| restart | Laufende Instanz wird abgebrochen, neue startet | Timer-basierte (z.B. Bewegungslicht) |
| queued | Neue Auslösung wartet, bis die laufende fertig ist | Sequenzielle Abläufe |
| parallel | Alle Instanzen laufen gleichzeitig | Unabhängige Aktionen |
1# Bewegungslicht mit Restart-Modus
2automation:
3 - alias: "Bewegungslicht Flur (Restart)"
4mode: restart # ← Timer wird bei neuer Bewegung zurückgesetzt!
5trigger:
6 - platform: state
7 entity_id: binary_sensor.flur_motion
8 to: "on"
9action:
10 - service: light.turn_on
11 target:
12 entity_id: light.flur
13 - delay: "00:03:00" # 3 Minuten warten
14 - service: light.turn_off
15 target:
16 entity_id: light.flur💡 Praxis-Tipp: Für Bewegungslichter ist
mode: restartideal! Jede neue Bewegung setzt den Timer zurück, statt eine zweite Instanz zu starten.
Fortgeschritten: Choose (Verzweigung)
Mit choose kannst du Wenn-Dann-Sonst-Logik direkt in der Automation umsetzen:
1# Begrüßungslicht je nach Tageszeit
2automation:
3 - alias: "Begrüßungslicht"
4trigger:
5 - platform: state
6 entity_id: binary_sensor.haustuer
7 to: "on"
8action:
9 - choose:
10 # Morgens: helles, kühles Licht
11 - conditions:
12 - condition: time
13 after: "06:00:00"
14 before: "12:00:00"
15 sequence:
16 - service: light.turn_on
17 target:
18 entity_id: light.flur
19 data:
20 brightness_pct: 100
21 color_temp_kelvin: 5000 # Tageslicht
22
23 # Abends: gedimmtes, warmes Licht
24 - conditions:
25 - condition: time
26 after: "18:00:00"
27 before: "23:00:00"
28 sequence:
29 - service: light.turn_on
30 target:
31 entity_id: light.flur
32 data:
33 brightness_pct: 40
34 color_temp_kelvin: 2700 # Warmweiß
35
36 # Fallback: mittlere Helligkeit
37 default:
38 - service: light.turn_on
39 target:
40 entity_id: light.flur
41 data:
42 brightness_pct: 60Fortgeschritten: Variablen & Templates in Automationen
Du kannst Variablen definieren und Jinja2-Templates in Actions nutzen:
1# Dynamische Nachricht mit Template
2automation:
3 - alias: "Temperatur-Warnung"
4trigger:
5 - platform: numeric_state
6 entity_id: sensor.wohnzimmer_temperatur
7 above: 28
8variables:
9 temp: "{{ states('sensor.wohnzimmer_temperatur') }}"
10 raum: "Wohnzimmer"
11action:
12 - service: notify.mobile_app_mein_handy
13 data:
14 title: "🌡️ Hitzewarnung"
15 message: >
16 {{ raum }}: {{ temp }}°C!
17 Fenster öffnen empfohlen.Was sind Blueprints?
Blueprints sind vorgefertigte Automations-Vorlagen. Du importierst sie und musst nur noch deine eigenen Geräte auswählen — die gesamte Logik ist bereits fertig.
- Gehe zu Einstellungen → Automationen → Blueprints
- Klicke auf „Blueprint importieren"
- Füge die URL eines Blueprints ein (z.B. aus dem Blueprint Exchange)
- Konfiguriere die Felder (welcher Sensor, welches Licht etc.)
Beliebte Blueprints
| Blueprint | Funktion | Komplexität |
|---|---|---|
| Motion-activated Light | Licht bei Bewegung mit Timer | ⭐ |
| Zigbee Button Actions | Aktionen für Zigbee-Taster | ⭐⭐ |
| Low Battery Notifications | Warnung bei niedrigem Akkustand | ⭐ |
| Adaptive Lighting | Lichtfarbe nach Tageszeit | ⭐⭐⭐ |
| Presence Simulation | Licht zufällig an/aus bei Abwesenheit | ⭐⭐⭐ |
Was sind Szenen?
Eine Szene speichert einen bestimmten Zustand mehrerer Geräte. Anders als Automationen reagieren Szenen nicht automatisch — du aktivierst sie manuell oder aus einer Automation heraus.
| Merkmal | Automation | Szene | Script |
|---|---|---|---|
| Automatisch? | ✅ Ja (reagiert auf Trigger) | ❌ Nein | ❌ Nein |
| Logik? | ✅ Trigger → Condition → Action | ❌ Nur Zustände | ✅ Abfolge von Aktionen |
| Parameter? | ❌ Nein | ❌ Nein | ✅ Ja (Felder) |
| Verwendung | Regeln und Abläufe | Stimmungen/Presets | Wiederverwendbare Abläufe |
Szene per YAML erstellen
1# Szene: Filmabend
2scene:
3 - name: "Filmabend"
4icon: mdi:movie-open
5entities:
6 light.wohnzimmer:
7 state: "on"
8 brightness: 50
9 color_temp_kelvin: 2700 # Warmweiß
10 light.stehlampe:
11 state: "off"
12 media_player.tv:
13 state: "on"
14 cover.wohnzimmer_rollladen:
15 state: "closed"Scripts: Wiederverwendbare Aktionsfolgen
Scripts sind Automationen ohne Trigger — wiederverwendbare Aktionsfolgen, die du aus Automationen, Dashboards oder per Sprachbefehl aufrufen kannst.
1# Script: Morgenroutine
2script:
3 morgenroutine:
4alias: "Morgenroutine"
5icon: mdi:weather-sunset-up
6mode: single
7sequence:
8 - service: light.turn_on
9 target:
10 area_id: bad
11 data:
12 brightness_pct: 100
13 color_temp_kelvin: 5000
14 - delay: "00:00:02"
15 - service: media_player.play_media
16 target:
17 entity_id: media_player.kueche
18 data:
19 media_content_id: "https://radio.example.com/stream"
20 media_content_type: music
21 - service: climate.set_temperature
22 target:
23 entity_id: climate.wohnzimmer
24 data:
25 temperature: 2110 praktische Automations-Beispiele
1. Bewegungslicht mit Auto-Off
1# Bewegungslicht (beste Variante)
2automation:
3 - alias: "Bewegungslicht Flur"
4mode: restart # Timer reset bei neuer Bewegung
5trigger:
6 - platform: state
7 entity_id: binary_sensor.flur_motion
8 to: "on"
9condition:
10 - condition: numeric_state
11 entity_id: sensor.flur_helligkeit
12 below: 50 # Nur wenn dunkel (< 50 Lux)
13action:
14 - service: light.turn_on
15 target:
16 entity_id: light.flur
17 data:
18 brightness_pct: 100
19 - delay: "00:03:00" # 3 Minuten warten
20 - service: light.turn_off
21 target:
22 entity_id: light.flur
23 data:
24 transition: 5 # Sanftes Ausblenden2. Heizung nach Zeitplan
1# Heizungs-Zeitplan
2automation:
3 - alias: "Heizung morgens an"
4trigger:
5 - platform: time
6 at: "06:30:00"
7condition:
8 - condition: time
9 weekday: [mon, tue, wed, thu, fri]
10action:
11 - service: climate.set_temperature
12 target:
13 entity_id: climate.wohnzimmer
14 data:
15 temperature: 21
16 hvac_mode: heat
17
18 - alias: "Heizung beim Verlassen aus"
19trigger:
20 - platform: state
21 entity_id: group.family
22 to: "not_home"
23 for: "00:10:00" # 10 Min. niemand zuhause
24action:
25 - service: climate.set_temperature
26 target:
27 entity_id: climate.wohnzimmer
28 data:
29 temperature: 16 # Absenktemperatur3. Tür offen > 5 Minuten → Warnung
1# Tür-Warnung
2automation:
3 - alias: "Warnung: Haustür offen"
4trigger:
5 - platform: state
6 entity_id: binary_sensor.haustuer
7 to: "on"
8 for: "00:05:00"
9action:
10 - service: notify.mobile_app_mein_handy
11 data:
12 title: "⚠️ Haustür offen!"
13 message: "Die Haustür ist seit 5 Minuten offen."
14 data:
15 push:
16 sound: default4. Rollläden bei Sonnenuntergang
1# Rollläden automatisch
2automation:
3 - alias: "Rollläden bei Sonnenuntergang"
4trigger:
5 - platform: sun
6 event: sunset
7 offset: "+00:15:00"
8condition:
9 - condition: state
10 entity_id: group.family
11 state: "home" # Nur wenn jemand zuhause ist
12action:
13 - service: cover.close_cover
14 target:
15 area_id: wohnzimmer # Alle Rollläden im Wohnzimmer5. Willkommen-Szene bei Ankunft
1# Willkommen zuhause
2automation:
3 - alias: "Willkommen zuhause"
4trigger:
5 - platform: zone
6 entity_id: person.max
7 zone: zone.home
8 event: enter
9condition:
10 - condition: sun
11 after: sunset
12action:
13 - service: scene.turn_on
14 target:
15 entity_id: scene.willkommen
16 - service: notify.mobile_app_mein_handy
17 data:
18 message: "Willkommen zuhause! 🏠"6. Waschmaschine fertig
1# Waschmaschine Benachrichtigung
2automation:
3 - alias: "Waschmaschine fertig"
4trigger:
5 - platform: numeric_state
6 entity_id: sensor.waschmaschine_power
7 below: 5 # Leistung unter 5W = fertig
8 for: "00:02:00" # Seit 2 Minuten
9condition:
10 - condition: state
11 entity_id: sensor.waschmaschine_power
12 state: "on" # War vorher an
13action:
14 - service: notify.mobile_app_mein_handy
15 data:
16 title: "👕 Waschmaschine fertig!"
17 message: "Die Wäsche kann aufgehängt werden."
18 - service: tts.speak
19 target:
20 entity_id: tts.piper
21 data:
22 media_player_entity_id: media_player.kueche
23 message: "Die Waschmaschine ist fertig!"7. Feuchtigkeitswarnung im Bad
1# Lüftungserinnerung Bad
2automation:
3 - alias: "Bad Lüftungserinnerung"
4trigger:
5 - platform: numeric_state
6 entity_id: sensor.bad_feuchtigkeit
7 above: 70
8 for: "00:05:00"
9action:
10 - service: notify.mobile_app_mein_handy
11 data:
12 title: "💧 Hohe Luftfeuchtigkeit"
13 message: >
14 Bad: {{ states('sensor.bad_feuchtigkeit') }}%
15 Bitte Fenster öffnen oder Lüfter einschalten.8. Guten-Morgen-Routine per Button
1# Button-Routine
2automation:
3 - alias: "Guten Morgen per Button"
4trigger:
5 - platform: device
6 device_id: abc123 # Zigbee-Button
7 type: remote_button_short_press
8 subtype: button_1
9action:
10 - service: script.morgenroutine # Ruft Script auf
11 - service: notify.mobile_app_mein_handy
12 data:
13 message: "☀️ Guten Morgen! Routine gestartet."9. Abwesenheits-Simulation
1# Anwesenheitssimulation im Urlaub
2automation:
3 - alias: "Anwesenheitssimulation"
4trigger:
5 - platform: time_pattern
6 minutes: "/30" # Alle 30 Minuten
7condition:
8 - condition: state
9 entity_id: input_boolean.urlaubsmodus
10 state: "on"
11 - condition: sun
12 after: sunset
13 before: sunrise
14action:
15 - service: light.toggle
16 target:
17 entity_id: >
18 {{ ['light.wohnzimmer', 'light.schlafzimmer',
19 'light.kueche'] | random }}10. NFC-Tag an der Haustür
1# NFC-Tag Automation
2automation:
3 - alias: "Haustür NFC"
4trigger:
5 - platform: tag
6 tag_id: "mein-nfc-tag-id"
7action:
8 - choose:
9 # Wenn Licht an → alles ausschalten (Gehen)
10 - conditions:
11 - condition: state
12 entity_id: light.wohnzimmer
13 state: "on"
14 sequence:
15 - service: homeassistant.turn_off
16 target:
17 area_id: [wohnzimmer, kueche, bad, flur]
18 - service: lock.lock
19 target:
20 entity_id: lock.haustuer
21 # Wenn Licht aus → Willkommen (Kommen)
22 default:
23 - service: scene.turn_on
24 target:
25 entity_id: scene.willkommenDebugging von Automationen
Wenn eine Automation nicht wie erwartet funktioniert:
- Trace ansehen: Unter Einstellungen → Automationen → Automation wählen → „Trace". Dort siehst du jeden Schritt der letzten Ausführung.
- Manuell auslösen: Klicke auf „Ausführen" um die Automation ohne Trigger zu testen.
- Logs prüfen: Unter Einstellungen → System → Protokolle. Filter nach dem Automationsnamen.
- Entwicklerwerkzeuge nutzen: Unter „Template" kannst du Jinja2-Ausdrücke live testen.
💡 Profi-Tipp: Aktiviere den Entwicklermodus (Profil → Erweitert) um in der Automation-UI den vollständigen YAML-Code anzuzeigen. So lernst du YAML nebenbei!
Passende Videos
Garagentor-Warnung mit Home Assistant und Telegram
Garagentor offen gelassen? Ich zeige dir, wie du mit Home Assistant und Telegram eine automatische Warnung mit Schließ-Button einrichtest.
Home Assistant Automation: Grundlagen und Praxis
Erfahren Sie, wie Automatisierungen in Home Assistant funktionieren und welche Vorteile sie bieten. Von der Einrichtung bis zur Praxis, verständlich für Einsteiger und Fortgeschrittene.
Home Assistant Automationen im Alltag: Erfahrungen & Tipps
Erfahre, wie Home Assistant Automationen im Alltag funktionieren, wo typische Probleme liegen und wie du sie effizient einsetzt. Praxisnahe Tipps für Einsteiger und Fortgeschrittene.
