OK. I see what’s happening. The next release will have this fixed for good, hopefully. I just tested with @cw-kid’s thermostat & the change I made a little bit ago appears to be working well.
Here’s why it’s still happening with the changes I made last week. As I said earlier, The Home Remote isn’t really polling in a traditional sense. It’s monitoring events / changes. Below are all of the thermostat events that happened after I changed the setpoint to 15. Initially, it’ll post a “Pending” state of 2 which is fine. That’s what we expect to see after sending a new setpoint. However, a short time after that we begin seeing a few events with a state of ‘-1’. I was treating ‘-1’ as a completed state which would update the state of the setpoints to match the JSON.
What the next release will do is treat ‘-1’ as another possible “Pending” state. It won’t begin using those values in the JSON until we get either a completed state of ‘4’, an error state of ‘3’, or after 15 minutes. After 15 minutes it’ll just show what’s in JSON, regardless of what the state is.
Changing setpoint to 15 at 11/8/2020 9:42:58 PM
Event at 11/8/2020 9:43:08 PM
{
"altid": "57",
"id": "189",
"subcategory": "2",
"room": "8",
"parent": "1",
"mode": "HeatOn",
"commands": "heater_setpoint",
"configured": "1",
"commFailure": "0",
"batterylevel": "40",
"temperature": "18.10",
"setpoint": "14.00",
"heat": "14.00",
"cool": "14.00",
"state": "2",
"comment": "Thermostat: Waiting for wakeup to send commands"
}
Event at 11/8/2020 9:43:21 PM
{
"altid": "57",
"id": "189",
"subcategory": "2",
"room": "8",
"parent": "1",
"mode": "HeatOn",
"commands": "heater_setpoint",
"configured": "1",
"commFailure": "0",
"batterylevel": "40",
"temperature": "18.10",
"setpoint": "14.00",
"heat": "14.00",
"cool": "14.00",
"state": "2",
"comment": "Thermostat: Waiting for wakeup to send commands"
}
Event at 11/8/2020 9:43:34 PM
{
"altid": "57",
"id": "189",
"subcategory": "2",
"room": "8",
"parent": "1",
"mode": "HeatOn",
"commands": "heater_setpoint",
"configured": "1",
"commFailure": "0",
"batterylevel": "40",
"temperature": "18.10",
"setpoint": "14.00",
"heat": "14.00",
"cool": "14.00",
"state": "-1",
"comment": ""
}
Event at 11/8/2020 9:46:16 PM
{
"altid": "57",
"id": "189",
"subcategory": "2",
"room": "8",
"parent": "1",
"mode": "HeatOn",
"commands": "heater_setpoint",
"configured": "1",
"commFailure": "0",
"batterylevel": "40",
"temperature": "18.10",
"setpoint": "14.00",
"heat": "14.00",
"cool": "14.00",
"state": "-1",
"comment": ""
}
Event at 11/8/2020 9:47:48 PM
{
"altid": "57",
"id": "189",
"subcategory": "2",
"room": "8",
"parent": "1",
"mode": "HeatOn",
"commands": "heater_setpoint",
"configured": "1",
"commFailure": "0",
"batterylevel": "40",
"temperature": "18.10",
"setpoint": "15.00",
"heat": "15.00",
"cool": "15.00",
"state": "4",
"comment": "Thermostat: SUCCESS! Transmit was OK"
}