From what I can tell from the logs Vera sent a command of class 0x43[sup]2[/sup] with the new setpoint of 26(0x1a)[sup]3[/sup] to node 4[sup]1[/sup]. It sent the message once (311), then retried twice (at 492 and 709) and eventually it concluded that the new setpoint wasn’t set (971). I don’t know why this happened (maybe it didn’t receive what it expected from the thermostat?), but it seems that this is the reason why Vera is not updating the setpoint variable. I will try to find more about this.
I think that’s the sequence for when the t-stat is still sleeping. A little later (14:04:16.837) the command does seem to go through when the t-stat is awake and the comm failure is cleared, and I believe the OP was seeing ‘transmit ok’ and a changed setpoint on the t-stat itself.
Vera tells the thermostat to change its setpoint, and doesn’t update its internal setpoint variable until it gets confirmation from the thermostat that the setpoint successfully changed. Maybe the thermostat isn’t replying back its status?
We’re seeing the success ACK come back I think, and Vera is updating its status to “Successful” so shouldn’t it also be updating its internal setpoint at this time?
For now, I’m using a crappy workaround to get the GUI to update correctly. It requires LUA code but I am using that anyway. I have a virtual thermostat that holds the default day temperature; so that I can easily change the default temperature by changing the virtual device rather than going through scenes to change hardcoded values. When I return home or in the morning when the timer fires, this scene copies the temperature set in the virtual thermostat to the actual device. There are two commands, one to send the new temp setpoint to the thermostat, and the other to set the local setpoint (which is what Vera displays).
local DEVICE_HUISKAMER = 91
local DEFAULT_HUISKAMER = 95
local t_huis = luup.variable_get("urn:upnp-org:serviceId:TemperatureSetpoint1_Heat", "CurrentSetpoint", DEFAULT_HUISKAMER)
luup.variable_set("urn:upnp-org:serviceId:TemperatureSetpoint1_Heat", "CurrentSetpoint", t_huis, DEVICE_HUISKAMER)
luup.call_action ("urn:upnp-org:serviceId:TemperatureSetpoint1_Heat", "SetCurrentSetpoint", {NewCurrentSetpoint = t_huis}, DEVICE_HUISKAMER)
Can you be a bit more precise? I am not familiar with the internal structure of vera. I know about files you need for a plugin and generally there would be an implementation file I_xxx. I am just not sure where this would be for the Thermostat device. Any pointer where to start looking (directory, filename, …)
@utz The issue with much of this appears to be that it’s handled in the closed source portion of Vera (LuaUPnP is closed I believe), for example Z-Wave Rx packet handling and I presume ACKs