Devolo Thermostat mit HomeAssistant steuern

ich weiß ich bin ein bisschen „Late to the Party“ – aber egal.

Wer unter Ubuntu ZWave-Geräte via HomeAssistant steuern möchte, muss erst mal selber hand anlegen.

Folgende pakete müssen via apt-get nachinstalliert werden:

  • libudev-dev
  • libopenzwave1.5

Anschließend muss man noch via pip das Paket python-openzwave installieren. Den Rest sollte HomeAssistant selber nachinstallieren, sobald man zwave in der Config aktiviert hat.

zwave:
  usb_path: /dev/ttyACM0
  network_key: "SecretKey" 

Die Installation der meisten Z Wave sticks läuft problemlos. Anstecken und ein device wird angelegt, meist irgendwas mit ttyACM. Gegenbefalls muss man noch an den Berechtigungen schrauben aber das ist trivial. Im HomeAssistant COnfigMenu sollte unter ZWave jetzt der Controller gelistet sein.

Zuerst muss man das Thermostat montieren. Danach versetzt man via HomeAssistant den Z Wave Adapter in den Suchmodus. Auf dem Thermostat die mittlere Bedientaste zur Bestätigung drücken (ca 1sek) und nach kurzer Zeit sollte im HomeAssistant eine neue ZWave Node auftauchen.

„Aus Gründen“ wird das Thermostat als Cooling Unit erkannt. Die Temperatur wird zwar korrekt ausgelesen, aber man kann keine Ziel Temperatur setzten. Um das zu beheben muss muss man warten bis die Node im ZWave Dialog als „Complete“ gelistet wird. Anschließend den HomeAssistant geregelt runter fahren, damit die ZWave Config raus geschrieben wird. Nun diese Config bearbeiten und den Eintrag „Heating 1“ hinzufügen.

<CommandClass id="67" name="COMMAND_CLASS_THERMOSTAT_SETPOINT" version="1" request_flags="4" innif="true" base="1" typeInterpretation="B">
  <Instance index="1" />
  <Value type="decimal" genre="user" instance="1" index="1" label="Heating 1" units="C" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="21.00" />
  <Value type="decimal" genre="user" instance="1" index="2" label="Cooling 1" units="C" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.0" />
</CommandClass>

Jetzt noch unter Climate ZWave aktivieren:

climate:
  - platform: zwave

Nach dem start des HomeAssistant sollen 4 neue „devices“ verfügbar sein:

  • climate.danfoss_unknown_type_0005_id_0175_cooling_1… – kann man ignordieren
  • climate.danfoss_unknown_type_0005_id_0175_heating_1… – Steuerung des Thermostat
  • sensor.danfoss_unknown_type_0005_id_0175_temperature… – Das Thermometer des Thermostat
  • zwave.danfoss_unknown_type_0005_id_0175… – Das zwave device selber, braucht man für die Batterieanzeige

Um einen Sensor für die Batterie zu haben muss man folgendes machen:

sensor:
  - platform: template
    sensors:
      zwave_devolo_batt:
        value_template: '{% if states.zwave.danfoss_unknown_type_0005_id_0175 %} {{ states.zwave.danfoss_unknown_type_0005_id_0175.attributes.battery_level }} {% else %} Unknown {% endif %}'
        unit_of_measurement: '%'

Hat man mehrere Thermostate wird allen litereals ein Nummerierung via Unterstrich angehängt. (zwave.danfoss_unknown_type_0005_id_0175_2, climate.danfoss_unknown_type_0005_id_0175_heating_1_2 …)

Jetzt kann man das Thermostat im HomeAssistant nutzen und steuern.

Was funktioniert nicht:
COMMAND_CLASS_CLOCK – Der HomeAssistant scheint die Uhrzeit noch nicht auf das Device zu schreiben. Die wird gebraucht, dass das Thermostat einmal eine „Justierungsmessung“ Des Ventiels macht
COMMAND_CLASS_CLIMATE_CONTROL_SCHEDULE – Laut Beschreibung sollte man dem Thermostat hier eigenen „Schedule“ verpassen können. Das kann man über den HomeAssistant lösen, was heir auch gehen sollte, ist den Temperatursensor mit einem Offset zu versehen.

Kleine Anmerkung für die Leute die die Bedienungsanleitung suchen. Devolo hält es nicht für Notwendig die vollen Funktionen des Thermostates zu beschreiben. Da es sich aber um ein Gebrandetes Danfoss handelt, kann man sich da die nötigen Daten ziehen. Als Spezjalservice, das wichtigste hier:

  • Full Reset: Batterien raus, und beim einlegen die Mittlere Taste gedrückt halten biss Symbole im Display aufleuchten.
  • Wenn man die Mittlere Taste gedrückt hält, erscheint ein „stilisiertes“ M, drückt man nochmal die Taste wird das Ventiel gelöst und man kann das Thermostat demontieren.
  • Wenn man bei dem M mit den Pfeiltasten steuert, kann in weitere Modi wechseln Li und Pb
  • Li = Linktest = Blingt nach der Wahl die Glocke und die Antenne, dann stimmt was mit dem ZWave Link nicht
  • Pb = „Raumdimensionierung“ = P1 Radiator zu gross, P2 Radiator passt, P3 Radiator zu klein