Fenster öffnet, Heizung stoppt — Ein Blueprint für jedes Zimmer

Wie ich den Heizkörper in Louises Zimmer automatisiert habe — aus wenn das Fenster auf ist, an wenn es geschlossen wird — als wiederverwendbares Blueprint damit das nächste Zimmer 30 Sekunden dauert.

#home-assistant #blueprint #heizung #ikea #mill #automatisierung
17. Mai 2026
Fenster öffnet, Heizung stoppt — Ein Blueprint für jedes Zimmer

Der Heizkörper in Louises Zimmer lief auf Hochtouren — bei offenem Fenster. Sie ist fast zwanzig, und daran zu denken das Fenster zu schließen passiert nicht zuverlässig. Ich bemerkte dass das Fenster eine Stunde offen gestanden hatte, Heizung an, Außentemperatur um die 4°C. Kein Drama, aber eine vorhersehbare Verschwendung die sich wiederholen würde — Geld zum Fenster hinauswerfen, buchstäblich.

Die Lösung war ein Fenstersensor und eine einzige Home Assistant-Automatisierung. Die extra Stunde investierte ich darin sie als Blueprint zu bauen — damit das nächste Zimmer 30 Sekunden braucht, nicht einen weiteren Nachmittag.

Hardware: IKEA Fenstersensor + Mill-Heizkörper

Ein IKEA MYGGBETT Tür-/Fenstersensor an Louises Fenster (binary_sensor.myggbett_door_window_sensor_door). Der Heizkörper ist ein Erstgenerations-Mill-Gerät — climate.louise — das nur zwei Modi unterstützt: heat und off. Das gleiche Erstgenerationsmodell steht auch in meinem Büro.

Das Schlafzimmer und die Küche laufen mit neueren Mill-Heizkörpern mit mehr HVAC-Modi. Das Blueprint behandelt sie alle — es speichert den genauen Zustand vor dem Ausschalten und stellt ihn beim Schließen des Fensters präzise wieder her, unabhängig von Modus oder Temperatur.

Das Wohnzimmer hat eine Daikin-Wärmepumpe die über Tado gesteuert wird — eine andere Integration mit eigenen Modi. Die bekommt ihren eigenen Ansatz.

Mill hat eine eingebaute Offenes-Fenster-Erkennung, die aber über Temperaturabfall funktioniert — langsam und blind für kurze Öffnungen. Der MYGGBETT-Sensor reagiert sofort und präzise.

IKEA MYGGBETT Sensor an Louises Fenster montiert

Das Home Assistant Blueprint aufbauen

Anstatt Louises Entities fest zu kodieren habe ich die Logik als Blueprint unter /config/blueprints/automation/homeassistant/window_heating_control.yaml gebaut. Die Eingabefelder nehmen einen Fenstersensor, eine Climate-Entity und eine konfigurierbare Verzögerung:

blueprint:
  name: "Fenster → Heizung aus"
  domain: automation
  input:
    window_sensor:
      selector:
        entity:
          domain: binary_sensor
          device_class: window
    climate_entity:
      selector:
        entity:
          domain: climate
    delay_minutes:
      default: 1
      selector:
        number:
          min: 0
          max: 10
          unit_of_measurement: min

Die Automatisierungsinstanz für Louises Zimmer sind drei Zeilen:

- alias: "Fenster → Heizung: Louises Zimmer"
  use_blueprint:
    path: homeassistant/window_heating_control.yaml
    input:
      window_sensor: binary_sensor.myggbett_door_window_sensor_door
      climate_entity: climate.louise
      delay_minutes: 1

Zustand speichern und wiederherstellen

Das Blueprint schaltet den Heizkörper nicht einfach aus — es speichert zuerst den genauen Zustand über eine dynamische Szene:

- action: scene.create
  data:
    scene_id: "{{ this.entity_id | replace('automation.', '') }}"
    snapshot_entities:
      - !input climate_entity
- action: climate.set_hvac_mode
  target:
    entity_id: !input climate_entity
  data:
    hvac_mode: "off"

Die Szenen-ID wird aus der eigenen Entity-ID der Automatisierung abgeleitet — eindeutig pro Instanz, keine manuelle Benennung nötig. Wenn das Fenster schließt, stellt das Blueprint genau diese Szene wieder her:

- action: scene.turn_on
  target:
    entity_id: "scene.{{ this.entity_id | replace('automation.', '') }}"
  continue_on_error: true

Das bedeutet es stellt wieder her was der Heizkörper gerade tat — 18°C, 22°C, bereits aus — nicht nur einen fest kodierten heat-Modus. continue_on_error: true behandelt den Fall bei dem das Fenster schließt bevor die Automatisierung jemals ausgelöst wurde (noch kein Snapshot vorhanden).

Die 1-Minuten-Verzögerung

for: minutes: !input delay_minutes am Geöffnet-Trigger macht das praktisch nutzbar. Wenn das Fenster aufgeht startet HA intern einen Countdown. Schließt das Fenster bevor die Minute abgelaufen ist, wird der Trigger abgebrochen — die Automatisierung läuft überhaupt nicht. Ein kurzes Lüften schaltet die Heizung nicht ab.

mode: restart behandelt den Grenzfall in dem ein Schließen-Trigger eintrifft während ein Geöffnet-Trigger noch herunterzählt. Der Schließen-Trigger gewinnt sofort und schaltet die Heizung wieder ein — keine Warteschlange, keine Race Condition.

Benachrichtigungen

Wenn die Heizung abschaltet passieren zwei Dinge: eine Push-Benachrichtigung geht über notify.alle_enheder an alle Geräte, und eine Sprachansage wird auf dem Küchenlautsprecher abgespielt:

- action: notify.alle_enheder
  data:
    title: "Fenster offen 🪟"
    message: "Louises Fenster steht seit 1 Minute offen — Heizung ist aus"
- action: tts.cloud_say
  target:
    entity_id: media_player.hojtaler_kokken
  data:
    message: "Louises Fenster ist offen. Die Heizung ist aus."
    language: da-DK

Die Dashboard-Karte

Die AlertTicker-Karte (custom:alert-ticker-card) erkennt Fenstersensoren automatisch über device_class: window — keine manuelle Entity-Liste, deckt also auch später hinzugefügte Sensoren ab:

type: custom:alert-ticker-card
show_when_clear: true
clear_message: "Alle Fenster geschlossen — Heizung aktiv"
alerts:
  - device_class: window
    state: "on"
    message: "{name} ist offen — Heizung möglicherweise aus"
    theme: window
    priority: 2

Bei geschlossenen Fenstern zeigt die Karte eine grüne “alles in Ordnung” Folie. Bei offenem Fenster wechselt sie zu einer animierten Warnung mit dem Friendly Name des Sensors in der Nachricht.

Das Blueprint in anderen Zimmern wiederverwenden

Einstellungen → Automatisierungen → Erstellen → Aus Blueprint → “Fenster → Heizung aus” auswählen → Sensor und Heizkörper wählen → Speichern. Kein neuer Code. Das ist der ganze Punkt daran es von Anfang an als Blueprint zu bauen statt als fest kodierte Automatisierung.

Das Büro bekommt als nächstes einen Sensor — gleicher Erstgenerations-Mill, gleiches Blueprint, identische Konfiguration. Die Mill-Heizkörper im Schlafzimmer und in der Küche funktionieren ebenfalls sobald sie Fenstersensoren haben. Die Daikin im Wohnzimmer ist eine andere Geschichte: Tado verwaltet die und braucht eine eigene Logik wenn die Zeit kommt.