openHabian 2, Raspberry Pi
I’m using PHP Curl to turn a TADO radiator controller on or off.
HeatingPower : 0.00 = off, 100 = on
I can PHP CURL to the API to request HEATINGPOWER is 100 and it turns on.
openhabian:8080/rest/items/Radiator_HeatingPower
with value of “0.00”
But If I try to turn it off via HEATINGPOWER 0.00 it performs the action in the log, and then a couple of seconds later it turns itself back to 100 again.
openhabian:8080/rest/items/Radiator_HeatingPower
with value of “100” gives the log…
2021-11-21 17:25:09.317 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item ‘Radiator_HeatingPower’ changed from 100.00 to 0.00
2021-11-21 17:25:13.090 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item ‘Radiator_HeatingPower’ changed from 0.00 to 100.00
…I suspected it is something to do with another value, TargetTemperature, which sets to 25 when power is turned on via the API. So I set this also to 0,
openhabian:8080/rest/items/Radiator_TargetTemperature
value = “0”
and I get the following error:
2021-11-21 17:23:38.257 [WARN ] [ado.internal.handler.TadoZoneHandler] - Could not apply HVAC change on home 85431 and zone 4: Operation updateZoneOverlay failed with error 422
org.openhab.binding.tado.internal.api.ApiException: Operation updateZoneOverlay failed with error 422
at org.openhab.binding.tado.internal.api.client.HomeApi.updateZoneOverlay(HomeApi.java:625) ~[?:?]
at org.openhab.binding.tado.internal.handler.TadoZoneHandler.setOverlay(TadoZoneHandler.java:110) ~[?:?]
at org.openhab.binding.tado.internal.TadoHvacChange.apply(TadoHvacChange.java:123) ~[?:?]
at org.openhab.binding.tado.internal.handler.TadoZoneHandler.lambda$0(TadoZoneHandler.java:303) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
…interestingly when I set the targettemperature to min 5 up to max 25, the value changes successfully.
http://openhabian:8080/rest/items/Radiator_TargetTemperature
value = “5”
this takes the dial down to 5
Anything over or under that and I get the error.
But regardless, the heatingpower puts itself back to 100.
So I am stuck with the ability to turn the radiator on, and choose a temperature between 5 and 25, but no way to turn it off.