Warum nicht ein Adapter?

Nachdem ich immer wieder Probleme mit den mit HeatingControl Adapter hatte
und auch die Menge an zu pflegenden Datenpunkten mir etwas zu viel waren, habe ich meine Heizungssteuerung mit einen JS-Script innerhalb von ioBroker umgesetzt.

Was kann das JS-Script?

  • Global:
    • die Heizperiode zum an oder abschalten
    • die Austemperatur
    • Anwesenheit die beschrieben werden kann durch z.B. Traccar
  • Pro Raum:
    • eine Heiz Temperatur
    • eine Nachtabsenkung Temperatur
    • Verzögerung für Heizunterbrecher
    • pro Wochentag eine von bis Heiz Zeit (z.B. 06:00-22:00)
  • Es kann die Anwesenheit von Personen berücksichtigen
  • Fenster und Tür Kontakte können auch berücksichtig werden

Was für Voraussetzungen brauche ich?

  • Soll ein Heizkörperthermostat von den JS-Script gesteuert werden
    • muss dieser einen Raum zugeordnet werden
    • muss die Funktion Heizung (ID: heating) zugeordnet sein
      • diese erstellt man unter Aufzählung (enums)
  • Wenn das Heizen von einen Fenster/Tür Kontakt unterbrochen werden soll
    • muss dieser einen Raum zugeordnet werden
    • muss die Funktion HeatingBreaker (ID: heating_breaker) zugeordnet sein
      • diese erstellt man unter Aufzählung (enums)

Wie geht der JS-Script vor?

Das JS-Script sucht beim Start nach allen Räumen die ein Heizkörperthermostat haben die mit Funktion Heating belegt ist.

Danach sucht das JS-Script im jedem Raum im dem es passendes Heizkörperventil gefunden hat nach einen oder mehreren HeatingBreaker wie in meinen Fall Fenster und Tür Kontakte.

Wenn ein HeatingBreaker aktiviert wird (z.B. Fenster geöffnet) schaltet er in den Raum die Heizung ab.
Auch wenn der Datenpunkt für die Abwesenheit gesetzt wird die Temperatur auf die Nachtabsenkung Temperatur gesenkt.

Script:

Das JS-Script finden ihr hier im verlinkten Repo.

Meine Hardware:

Ich setzt fast ausschließlich Zigbee Komponenten, daher hier meine Zigbee lastige Hardware :o)

Mit * markierte Links sind Amazon ParnerNet Affiliate Links