Schneider - Drayton Wiser Radiator Thermostat communicatione error

Dear Community,

I have got some problems with my new smart radiator thermostats. I think pairing is OK, but communication, I mean setting the occupied heating level is not.

When I set an accupied temperature, it publishes to the proper topic (message 132 below), but after some seconds I get a timeout (message 137). What can be the problem?

Any help is appreciated!

Here are the logs:

Message 138 received on zigbee2mqtt/Nappali radiator at 8:00 AM:
“ADC”: “1377,1380,1,225,-32768,2000,0,0,100,225,224,225”,
“ALG”: “d,1,200,225,-25,0,0,0,0,0,100”,
“MOT”: “Stall”,
“battery”: 100,
“boost”: “Down”,
“keypad_lockout”: false,
“linkquality”: 93,
“local_temperature”: 22.5,
“occupied_heating_setpoint”: 20,
“pi_heating_demand”: 0,
“voltage”: 3.1
QoS: 0 - Retain: false

Message 137 received on zigbee2mqtt/bridge/log at 7:59 AM:
“message”: “Publish ‘set’ ‘occupied_heating_setpoint’ to ‘Nappali radiator’ failed: ‘Error: Write 0x14b457fffe76894f/1 hvacThermostat({“occupiedHeatingSetpoint”:3000}, {“timeout”:10000,“disableResponse”:false,“disableDefaultResponse”:true,“direction”:0,“srcEndpoint”:null,“reservedBits”:0,“manufacturerCode”:null,“transactionSequenceNumber”:null}) failed (Timeout - 46711 - 1 - 180 - 513 - 4 after 10000ms)’”,
“meta”: {
“friendly_name”: “Nappali radiator”
“type”: “zigbee_publish_error”
QoS: 0 - Retain: false

Message 132 received on zigbee2mqtt/Nappali radiator/set/occupied_heating_setpoint at 7:59 AM:
QoS: 0 - Retain: false

Message 124 received on homeassistant/climate/0x14b457fffe76894f/climate/config at 7:58 AM:
“action_template”: “{% set values = {‘idle’:‘off’,‘heat’:‘heating’,‘cool’:‘cooling’,‘fan only’:‘fan’} %}{{ values[value_json.running_state] }}”,
“action_topic”: “zigbee2mqtt/Nappali radiator”,
“availability_topic”: “zigbee2mqtt/bridge/state”,
“current_temperature_template”: “{{ value_json.local_temperature }}”,
“current_temperature_topic”: “zigbee2mqtt/Nappali radiator”,
“device”: {
“identifiers”: [
“manufacturer”: “Schneider Electric”,
“model”: “Wiser radiator thermostat (WV704R0A0902)”,
“name”: “Nappali radiator”,
“sw_version”: “Zigbee2MQTT 1.14.4”
“json_attributes_topic”: “zigbee2mqtt/Nappali radiator”,
“max_temp”: “30”,
“min_temp”: “7”,
“mode_command_topic”: “zigbee2mqtt/Nappali radiator/set/system_mode”,
“mode_state_template”: “{{ value_json.system_mode }}”,
“mode_state_topic”: “zigbee2mqtt/Nappali radiator”,
“modes”: [
“name”: “Nappali radiator climate”,
“temp_step”: 1,
“temperature_command_topic”: “zigbee2mqtt/Nappali radiator/set/occupied_heating_setpoint”,
“temperature_state_template”: “{{ value_json.occupied_heating_setpoint }}”,
“temperature_state_topic”: “zigbee2mqtt/Nappali radiator”,
“temperature_unit”: “C”,
“unique_id”: “0x14b457fffe76894f_climate_zigbee2mqtt”
QoS: 0 - Retain: true

yeah these valves are like that
I have the same problem here, from time to time I get timeout error so I just resend the command as per docs guidance

1 Like

Thanks, since than I did the same solution, there is an automation for it, if the desired temperature (which is stored in a local variable) not equal with the actual temperature set on valve, it waits 15 seconds and resends it.
One other issue which is persist, that the valves goes to default 7 degrees about every 2 hours.

I have about the same approach only from home assistant
and yes after an hour or something it resets back to 20 degrees (in my case) so I put yet another automation for that too
beside the fact that it timeouts from time to time and it resets back to a default value works fine :))

Yes, true, it resets to 20 degrees, not 7 degrees, sorry. 7 degrees is the minimum value which can be set. How is your automation look like for this problem? :slight_smile:

something like this
but you can add more conditions for occupancy or if heating is activated

- alias: office_trv_workaround
  id: office_trv_workaround
  initial_state: true
    - platform: event
      event_type: state_changed
       entity_id: climate.office_trv_climate
    - condition: template
      value_template: >
        {{ states.climate.office_trv_climate.attributes.temperature|float == 20 }}
     - service: script.office_heat
    - repeat:
          - service: climate.set_temperature
              entity_id: climate.office_trv_climate
              temperature: 27
          # Give it time to complete. if you set the delay to seconds your zigbee2mqtt might crash
          - delay: "00:02:00"
          # Did it work?
          - condition: template
            value_template : "{{ states.climate.office_trv_climate.attributes.temperature|float == 27 }}"
    - delay: "00:00:15"