Dears,
I am using the thermostat ZWAVE HRT4-ZW Battery Powered Wall Thermostat.
I configured the WakeUp time to 300 seconds. OK!
The “Setpoint” is “zwave:device:ccdcc7d8:node3:thermostat_setpoint_heating”,
so binded :
Number chThermo_Temp_SetPoint "chThermo_SetPoint [%.1f °C]" {channel="zwave:device:ccdcc7d8:node3:thermostat_setpoint_heating"}
I can do
chThermo_Temp_SetPoint.sendCommand(Indoor_Temp_Nuit.state as Number)
-- or --
chThermo_Temp_SetPoint.postUpdate(Indoor_Temp_Nuit.state)
Both are OK!
However, this setpoint is a “bidirectional” value i.e : the setpoint can also be adjusted on the device, by a wheel.
I then can do
rule "Thermo Indoor Update" when Item chThermo_SetPoint changed then ...... end
-- or --
when ... received update ...
--or--
when ... received command ...
In all cases, OK, I receive an event when changing by the device.
PROBLEM
As soon the setpoint is modified by/on the device, the setpoints I send / post by my application behaves erratically.
It seems they are “queued” somewhere, but never transmitted to the device.
However, when I switch ON/OFF, on the device, the switch allowing configuration, (that probably forces a wakeup), I receive on the device my “queued” values, one after another, each time I switch ON/OFF this device’s switch.
QUESTION
- How can I clearly bind one variable for “TX” value, and another one variable for “RX” value ?
- Or, how can I deal safely with only one variable, the postUpdate / sendCommand and the trigger change / on update / on command ?
I all tried, without success.
Subsidiary Question
How can I access all the command classes supported by a zwave device ?
by example :
COMMAND_CLASS_THERMOSTAT_SETPOINT.THERMOSTAT_SETPOINT_GET
COMMAND_CLASS_THERMOSTAT_SETPOINT.THERMOSTAT_SETPOINT_REPORT
Thanks in advance for your answers.
Charly.