Need help with debugging Thermostat set point change for HVAC

I have a z-wave adapter for my HVAC (Systemair VSR500). However, changes to the temperature set point are not successful, meaning that the HVAC itself doesn’t change its temperature setpoint. Can anyone see any errors in this sequence? Value sent is 13, hex 0x0d

2018-03-21 22:47:34.326 Info, Node006, Value::Set - COMMAND_CLASS_THERMOSTAT_SETPOINT - Thermostat - 7 - 1 - 13
2018-03-21 22:47:34.326 Detail, Node006, Queuing (Send) ThermostatSetpointCmd_Set (Node=6): 0x01, 0x0c, 0x00, 0x13, 0x06, 0x05, 0x43, 0x01, 0x07, 0x01, 0x0d, 0x25, 0x21, 0xae
2018-03-21 22:47:34.326 Detail, Node006, Queuing (Send) ThermostatSetpointCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x43, 0x02, 0x07, 0x25, 0x22, 0xa2
2018-03-21 22:47:34.327 Detail, 
2018-03-21 22:47:34.327 Info, Node006, Sending (Send) message (Callback ID=0x21, Expected Reply=0x13) - ThermostatSetpointCmd_Set (Node=6): 0x01, 0x0c, 0x00, 0x13, 0x06, 0x05, 0x43, 0x01, 0x07, 0x01, 0x0d, 0x25, 0x21, 0xae
2018-03-21 22:47:34.336 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-03-21 22:47:34.336 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2018-03-21 22:47:34.352 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x21, 0x00, 0x00, 0x02, 0xc8
2018-03-21 22:47:34.352 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x21 received (expected 0x21)
2018-03-21 22:47:34.353 Info, Node006, Request RTT 25 Average Request RTT 25
2018-03-21 22:47:34.353 Detail,   Expected callbackId was received
2018-03-21 22:47:34.353 Detail,   Expected reply was received
2018-03-21 22:47:34.353 Detail,   Message transaction complete
2018-03-21 22:47:34.353 Detail, 
2018-03-21 22:47:34.353 Detail, Node006, Removing current message
2018-03-21 22:47:34.353 Detail, 
2018-03-21 22:47:34.353 Info, Node006, Sending (Send) message (Callback ID=0x22, Expected Reply=0x04) - ThermostatSetpointCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x43, 0x02, 0x07, 0x25, 0x22, 0xa2
2018-03-21 22:47:34.361 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-03-21 22:47:34.371 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2018-03-21 22:47:34.378 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x22, 0x00, 0x00, 0x02, 0xcb
2018-03-21 22:47:34.378 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x22 received (expected 0x22)
2018-03-21 22:47:34.378 Info, Node006, Request RTT 24 Average Request RTT 24
2018-03-21 22:47:34.378 Detail,   Expected callbackId was received
2018-03-21 22:47:34.389 Detail, Node006,   Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x43, 0x03, 0x00, 0x01, 0x00, 0xb2
2018-03-21 22:47:34.389 Detail, 
2018-03-21 22:47:34.389 Info, Node006, Response RTT 35 Average Response RTT 110
2018-03-21 22:47:34.389 Detail, Node006,   Expected reply and command class was received
2018-03-21 22:47:34.389 Detail, Node006,   Message transaction complete
2018-03-21 22:47:34.389 Detail, 
2018-03-21 22:47:34.390 Detail, Node006, Removing current message

Anyone familiar with the hex-output to tell me if the ThermostatSetpointCmd_Get command returns the correct value? Here is an example of the output in the OZW log for the successful command for changing the fan speed, the value sent is 0x05, which is medium speed, I cannot spot any difference…

2018-03-21 22:38:31.020 Info, Node006, Value::Set - COMMAND_CLASS_THERMOSTAT_FAN_MODE - Fan Mode - 0 - 1 - Unknown 5
2018-03-21 22:38:31.021 Detail, Node006, Queuing (Send) ThermostatFanModeCmd_Set (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x44, 0x01, 0x05, 0x25, 0x1f, 0x99
2018-03-21 22:38:31.021 Detail, Node006, Queuing (Send) ThermostatFanModeCmd_Get (Node=6): 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x44, 0x02, 0x25, 0x20, 0xa2
2018-03-21 22:38:31.021 Detail, 
2018-03-21 22:38:31.021 Info, Node006, Sending (Send) message (Callback ID=0x1f, Expected Reply=0x13) - ThermostatFanModeCmd_Set (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x44, 0x01, 0x05, 0x25, 0x1f, 0x99
2018-03-21 22:38:31.030 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-03-21 22:38:31.030 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2018-03-21 22:38:31.046 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x1f, 0x00, 0x00, 0x02, 0xf6
2018-03-21 22:38:31.051 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x1f received (expected 0x1f)
2018-03-21 22:38:31.051 Info, Node006, Request RTT 29 Average Request RTT 28
2018-03-21 22:38:31.051 Detail,   Expected callbackId was received
2018-03-21 22:38:31.051 Detail,   Expected reply was received
2018-03-21 22:38:31.051 Detail,   Message transaction complete
2018-03-21 22:38:31.051 Detail, 
2018-03-21 22:38:31.051 Detail, Node006, Removing current message
2018-03-21 22:38:31.051 Detail, 
2018-03-21 22:38:31.051 Info, Node006, Sending (Send) message (Callback ID=0x20, Expected Reply=0x04) - ThermostatFanModeCmd_Get (Node=6): 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x44, 0x02, 0x25, 0x20, 0xa2
2018-03-21 22:38:31.060 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-03-21 22:38:31.060 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2018-03-21 22:38:31.075 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x20, 0x00, 0x00, 0x02, 0xc9
2018-03-21 22:38:31.076 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x20 received (expected 0x20)
2018-03-21 22:38:31.076 Info, Node006, Request RTT 24 Average Request RTT 26
2018-03-21 22:38:31.076 Detail,   Expected callbackId was received
2018-03-21 22:38:31.323 Detail, Node006,   Received: 0x01, 0x09, 0x00, 0x04, 0x00, 0x06, 0x03, 0x44, 0x03, 0x05, 0xb5
2018-03-21 22:38:31.324 Detail, 
2018-03-21 22:38:31.324 Info, Node006, Response RTT 271 Average Response RTT 186
2018-03-21 22:38:31.324 Detail, Node006, Refreshed Value: old value=1, new value=2, type=list
2018-03-21 22:38:31.324 Detail, Node006, Changes to this value are not verified
2018-03-21 22:38:31.324 Info, Node006, Received thermostat fan mode: Unknown 5
2018-03-21 22:38:31.324 Detail, Node006,   Expected reply and command class was received
2018-03-21 22:38:31.324 Detail, Node006,   Message transaction complete
2018-03-21 22:38:31.324 Detail, 
2018-03-21 22:38:31.324 Detail, Node006, Removing current message
2018-03-21 22:38:31.324 Detail, Node006, Notification: ValueChanged

Looking more closely at the log, the difference is that when the fan speed changes, the Info log says: “Received thermostat fan mode” with the correct value. The temperature setpoint doesn’t report anything. Also, from the pattern it seems that the value returned from the get commands is in the second last hex value:
Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x43, 0x03, 0x00, 0x01, 0x00, 0xb2
Received: 0x01, 0x09, 0x00, 0x04, 0x00, 0x06, 0x03, 0x44, 0x03, 0x05, 0xb5

Which means it always returns 0, not the expect temperature I asked for. Can anyone confirm?

I have tried openhab, but there I have trouble with both temperature and fan speed control…

It seems now that this forum may not be the right place to ask… This is an OpenZwave problem. On the openzwave github forum I may have found explanation: the z-wave device states that the command class should use “Thermostat Setpoint Capabilities Get V3”. However the OpenZwave library may not be compliant yet. There is a commit to the dev branch on Github from Dec’ 2017:

Add support for ThermostatMode V3

This commit is targeting version 1.6, but hassio is using 1.4.2926

That probably means I need to learn how to build hassio with the development branch of openzwave…

I answer this myself in case anyone searches the forum, I’ve given the solution here:

In this thread, there are instructions on how to run hassbian with the Dev branch of Open-zwave, which currently contains the required implementation.