[SOLVED] Setpoint sending an invalid status value


Just this morning I noticed my OpenHAB Android App Beta (2.5.9-beta-Jan 24, 2019) will no longer properly send a setpoint. (I can no longer control my Thermostat via the app). The BasicUI on a browser works just fine. When I click on the dropdown window, adjust the setpoint via the “roller” and hit “SET” nothing happens. When I look in the log output of karaf I see the warning:

07:15:39.310 [WARN ] [.rest.core.internal.item.ItemResource] - Received HTTP POST request at 'items/ThermostatSetpointHeat' with an invalid status value '68.0° F'.

If I make the same request with BasicUI (the exact same sitemap) I get the expected response:

07:21:07.204 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'ThermostatSetpointHeat' received command 68

Did something change in a recent update? Are there any workarounds to this? I’m not sure the last time I tried to use the app for my temp setting in the house, but it had to be in the last 2 or 3 days. My wife uses it so I would have heard about it!


Can you post the item definition of ThermostatSetpointHeat

Yes, but I think I just fixed it. Here are my item definitions:

Number   ThermostatSetpointHeat "HEAT Set [%.1f °F]" <temperature_hot> (ZWave,Thermostat) {mios="unit:house,device:15/service/TemperatureSetpoint1_Heat/CurrentSetpoint"}
Number   ThermostatSetpointCool "COOL Set [%.1f °F]" <temperature_cold> (ZWave,Thermostat) {mios="unit:house,device:15/service/TemperatureSetpoint1_Cool/CurrentSetpoint"}

Here was my original sitemap (setpoint) definition:

Setpoint item=ThermostatSetpointCool label="COOL Set [%.1f °F]" minValue=65 maxValue=85 step=1.0
Setpoint item=ThermostatSetpointHeat label="HEAT Set [%.1f °F]" minValue=50 maxValue=80 step=1.0

I had an idea that maybe the app stopped handling the setpoint definition correctly, so I changed it to remove the label from the setpoint on the sitemap and it now works:

Setpoint item=ThermostatSetpointCool minValue=65 maxValue=85 step=1.0
Setpoint item=ThermostatSetpointHeat minValue=50 maxValue=80 step=1.0

Not sure why this would have changed… I’ve been using this sitemap like this for over a year, but glad to have it back in operation.

This may still be something that needs to be looked into though. I wouldn’t think the label formatting on the setpoint item would get sent as part of the rest/http request.

Thanks for your help!

The new Units of Measurement feature for Number items (eg. Number:temperature types) now attaches special meaning to formatting like °F

I’m not sure how the UIs sort that out, so I wouldn’t call it bug yet, it may just be a unexpected consequence.

Very interesting, do you know where we can read about changes or updates to each release of OpenHAB2?