Wie und war­um ich unse­re Vail­lant Gas­ther­me mit Home Assistant auto­ma­ti­siert habe, statt auf vor­han­de­ne Lösun­gen zurückzugreifen.

Warum keine existierende Lösung?

Eine smar­te Hei­zung soll nicht nur Kom­fort brin­gen, son­dern auch noch Kos­ten ein­spa­ren. Bei unse­rer Gas­ther­me sind jedoch selbst mit den gestie­ge­nen Gas­prei­sen kei­ne hohen Erspar­nis­se zu erwar­ten, denn eine Zeit­steue­rung ist schon vor­han­den. Im Wohn­zim­mer hängt ein Ther­mo­stat an der Wand, wel­ches die Gas­ther­me und nicht den Heiz­kör­per steu­ert. Der Heiz­kör­per ist dazu immer auf­ge­dreht. Dies hat den Vor­teil, dass die Gas­ther­me nur dann Gas ver­braucht, wenn sie tat­säch­lich benö­tigt wird. Es hat aber den Nach­teil, dass es nicht mög­lich ist, ande­re Räu­me zu hei­zen, wenn es im Wohn­zim­mer bereits warm genug ist. Smar­te Lösun­gen, die damit funk­tio­nie­ren, habe ich nur weni­ge gefun­den und die­se kos­ten meist über 100€ – nur für das Wand­ther­mo­stat. Das ließ sich lei­der für etwas Spie­le­rei und Kom­fort nicht rechtfertigen.

Das bisherige Thermostat

Damit habe ich mich nicht zufrie­den gege­ben, also erst­mal schau­en, wie das vor­han­de­ne Ther­mo­stat funk­tio­niert: Es hängt an einem drei­ad­ri­gen Strom­ka­bel. Die Bedie­nungs­an­lei­tung und das Inter­net ver­ra­ten, dass es an Klem­me 7, 8 und 9 der Gas­ther­me hängt und ein Poten­zio­me­ter imi­tiert, um die Vor­lauf­tem­pe­ra­tur zu regeln. Zudem kann ein Ther­mo­stat am Heiz­kes­sel noch an eine pro­prie­tä­re eBus Schnitt­stel­le oder die Klem­men 3 und 4 ange­schlos­sen wer­den. Letz­te­re schal­ten bei Über­brü­ckung den Heiz­be­trieb und damit den Bren­ner ein. Im Modus mit dem ver­bau­ten Ther­mo­stat sind die­se Anschlüs­se ein­fach über­brückt, damit die Steue­rung an Klem­men 7–9 über­neh­men können.

Die Idee

Eine wei­te­re Recher­che ergab, dass Home Assistant aus einem Ther­mo­me­ter und einem Schal­ter ein Kli­ma­ge­rät bzw. eine Hei­zung imi­tie­ren kann. Liegt die gemes­se­ne Tem­pe­ra­tur unter dem Soll­wert, wird der Schal­ter ein­ge­schal­tet, sonst aus. Ein Zig­Bee Schal­ter, der nor­ma­le Licht­schal­ter smart machen soll, erschien mir also als per­fek­te Lösung für mei­nen Fall. Dazu ein Zig­Bee Ther­mo­me­ter sowie ein Fens­ter­sen­sor und schon kann ich für knapp unter 50€ mei­ne Hei­zung ins Smart Home ein­bin­den. Spä­ter kann ich zudem auf güns­ti­ge Heiz­kör­per­ther­mo­sta­te zurück­grei­fen, um das Sys­tem auf wei­te­re Räu­me zu erweitern.

Umsetzung

Die Ein­rich­tung des Sys­tems ist rela­tiv ein­fach. Nach­dem die Siche­rung aus­ge­schal­tet und die Ther­me geöff­net ist, kann man Klem­me 7–9 sowie die Brü­cke zwi­schen 3 und 4 ein­fach abklem­men und anschlie­ßend den Zig­Bee Switch anschlie­ßen. 3 auf L in, 4 auf L out und 5 auf N in. Alles wie­der ver­schlie­ßen und die Siche­rung wie­der anschal­ten. Nun alle Gerä­te mit Home Assistant verbinden.

Der Schal­ter wird zuerst als Licht ange­zeigt, was sich so lei­der nicht als Ther­mo­stat nut­zen lässt. Doch in der configuration.yaml kann man eine kur­ze Zei­le ein­tra­gen, die die­ses Licht in einen Schal­ter ver­wan­delt. Hier geht es zur Home Assistant Doku­men­ta­ti­on dazu.

zha:
  device_config:
    84:71:27:ff:fe:93:17:24-1:    # format: {ieee}-{endpoint_id}
      type: "switch"              # corrected device type

Nun lässt sich die­se Enti­tät gleich in die Kon­fi­gu­ra­ti­on des Ther­mo­sta­tes ein­tra­gen. Wich­tig ist hier neben der Anga­be des Schal­ters der Ther­me und des Ther­mo­me­ters auch eine uni­que-ID zu ver­ge­ben, damit das Ther­mo­stat im Front­end sicht­bar wird. Zudem lässt sich eine Stan­dard­tem­pe­ra­tur fest­le­gen und wie weit die Ist-Tem­pe­ra­tur von der Soll­tem­pe­ra­tur ent­fernt sein darf, bevor der Bren­ner ein oder wie­der aus­schal­tet. Hier geht es zur Doku­men­ta­ti­on des gene­ri­schen Thermostats.

climate:
  - platform: generic_thermostat
    name: Heizung
    unique_id: climate.heizung
    heater: switch.heizbrenner_switch
    target_sensor: sensor.temperatur_wohnzimmer_temperature
    ac_mode: false
    target_temp: 17
    cold_tolerance: 0.5
    hot_tolerance: 0.3
    min_cycle_duration:
      minutes: 1
    initial_hvac_mode: "off"
    precision: 0.5

Nun Home Assistant Neu­star­ten und schon funk­tio­niert alles. Sobald die Tem­pe­ra­tur unter den Soll­wert fällt, springt der Bren­ner an und heizt damit das Wohn­zim­mer. Über die Auto­ma­tio­nen kann ich für ver­schie­de­ne Tages­zei­ten oder Abwe­sen­heit ande­re Tem­pe­ra­tu­ren einstellen.

Fazit

Bis­her funk­tio­niert mei­ne Lösung pro­blem­los und ich bin sehr zufrie­den mit der Steue­rung. Als nächs­ten Schritt möch­te ich in allen Räu­men Zig­Bee Heiz­kör­per­ther­mo­sta­te instal­lie­ren, um auch die ande­ren Räu­me smart steu­ern zu kön­nen und vor allem Räu­me wie das Bad auch dann hei­zen zu kön­nen, wenn es im Wohn­zim­mer bereits warm genug ist. Hier­zu wer­de ich, wenn die Ther­mo­sta­te wie­der auf Lager sind, in eini­gen Wochen etwas zu mei­ner Lösung schrei­ben. Wenn Du eine Anmer­kung hast oder das so selbst umset­zen möch­test, schrei­be mir doch ger­ne über Twit­ter oder per Mail.