Devolo Thermostat does not send/update target temperature

I have set up Deveolo Z-Wave Thermostats (see LC-13) and the reporting of the room temperature works out of the box. I can change the target temperature on the device and it is updated in the HA UI accordingly.

But when I try to set a new target via the Home Assistant UI the value always jumps back to the value set at the device before.

Is there a configuration that needs to be done for OZW?

My config is here: https://gist.github.com/leoc/0aa3a96507c92f451ec5f6aa4a92c1bc

Cheerio!

Not quite sure why you’d want to.
My heating checks if the house is occupied
(if not sets temp to 12°)
checks if it’s night
(if between 22:30 and 07:00 sets temp to 16°)
Checks if it’s day
(if between 07:00 and 18:00 sets temp to 17°)
checks if it’s evening
(if between 18:00 and 22:30 sets temp to 18°)
there is also a boost button to set temp to 18° for 1hour regardless of anything else (unless another change occurs)
These are all written to an input number and when that input number changes it updates to my climate.house_heat control which uses simple the temp sensor on the thermostat as the sensor
This way ALL the control is within HA

Hi @Mutt, that is exactly the scenario I want to configure.

But setting the target temperature anywhere in Home Assistant (script or GUI) does not work, as the value is always reset/overwritten to the value it was before.

Okay, maybe some questions first.
What controls your boiler ?
Is it linked to the thermostat (ie does it have ‘group’ communications to the thermostat node or visa versa) ?
Have you configured a generic_thermostat in HA ? (mine shown below

climate:
  ## Heating
  - platform: generic_thermostat
    name: House Heat
    heater: switch.boiler_switch
    target_sensor: sensor.thermostat_heat_temperature
    min_temp: 6
    max_temp: 24
    ac_mode: false
    # target_temp: 19
    cold_tolerance: 0.2
    hot_tolerance: 0.2
    min_cycle_duration:
      seconds: 20
    initial_hvac_mode: "heat"
    precision: 0.1

This appears in my system as climate.house_heat
(I have another one for climate.house_cool)
All the various values I listed above are stored (and adjustable from) various input_numbers but they ALL get swapped into input_number.in_heat_temp_control_val when the conditions dictate.
I then have an automation that looks for changes in this entities state and copies it to the thermostat (house_heat not the actual one in the field)

# name: Heat Temperature Set
  - alias: au_heat_temperature_set
    trigger:
      - platform: state
        entity_id: input_number.in_heat_temp_control_val
    action:
      - service: climate.set_temperature
        data_template:
          entity_id: climate.house_heat
          temperature: "{{ states('input_number.in_heat_temp_control_val') | float }}"

I dont do anything with the field thermostat (a Danfoss unit in my case) apart from set up the entities from it and feed the sensor.thermostat_heat_temperature into the HA generic thermostat and connect it’s output to my boiler switch.
This, just runs and bobs on and off whenever it gets 0.3 below or 0.3 above whatever target it’s running at, at the current time. Thermal inertia takes the temperature about 0.9° past the 0.3 switch off (so 1.2° above) but you can reduce your tolerances if that is an issue for you.

@Mutt Thanks for the examples.

Currently I want to control the heat manually. But that does not work. I use the control in the Home Assistant UI. I want to solve that first and then start creating my automation.

Your configuration seems to have two devices. One getting the temperature and one controlling the heater…

Right now I have no further configuration in home assistant. My radiator controller and the temperature sensor are one and the same device. I assumed I could just set the target temperature via home assistant (like I do on the device with the buttons) but home assistant doesn’t seem to be able to control the target temperature on the device.

I added a screenshot:

When I klick the arrow buttons up and down. The temperature changes for a second or two and then jumps back to 23°C

Arthur,
Yes I have two devices (well three actually, The thermostat - which I just use as a room temperature sensor, The boiler switch - which switches the boiler off and on AND the generic_thermostat in HA which reads the sensor and instructs the switch.
From what you have described (I can’t be 100% sure as YMMV given differing equipment and implementations) It seems like you are experiencing the classic, “Okay I TRIED to set the temperature value to 20° but it wouldn’t change from 21° so I’ve set my value back to 21°”
If you wait, Im sure someone will come along and help you given an experience set from working with such a device.
Good luck.

1 Like

Alright, thanks a lot for trying to help me! Have a wonderful day.

I just wonder why the Zwave device won’t take any updates from HA. I hope someone has had better experiences with this device? :slight_smile:

Yes, me.
I can set the temperature like this:

  action:
    - service: climate.set_temperature
      data_template:
        entity_id: climate.devolo_thermostat
        temperature: 22

Hey leoc,

just stepped by for my experience:

I also use the develo thermostat without any further entries in “configuration.yaml”, only using the “climate card”. I experienced the same behavior: I select the target temperature in the card, and it remains there like I set. But when I then click into the details of the card, in the edit field I see still the “old” value. Also if I change this “old” value in the edit field, that’s possible, but the value gets reset after 2sec or so back to the “old” value. So I also thought it’s not working correctly.

BUT: It turned out, it is indeed working, it just has quite a delay! When I set the target temperature in the card, and wait quite a while (~2-4 min), it gets indeed updated! In the “details” edit field, the new value will show up, and also the thermostats are set to the new value. So everything seems fine to me, I just was too impatient.

Maybe for you it is the same? :slight_smile:

Devolo/Danfoss thermostats are set to wake up every 5 minutes to preserve battery life. So, that’s why it takes 1-5 minutes to update temperature. You can change wake up interval in Z-Wave configuration page:

1 Like