openhab / openhab-addons

Add-ons for openHAB
https://www.openhab.org/
Eclipse Public License 2.0
1.9k stars 3.59k forks source link

[siemensrds] Setting target temperature doesn't work anymore #17695

Closed oxigen-dev closed 3 weeks ago

oxigen-dev commented 3 weeks ago

Expected Behavior

Setting target temperature should be possible using the binding.

Current Behavior

Target temperature can't be set. Until the end of last winter this was working well. Now I get this error: 2024-11-03 16:58:28.600 [WARN ] [ng.siemensrds.internal.RdsDataPoints] - runtime exception in setValue(), type=java.io.IOException, message="Bad Request"

If I set the target temperature using the mobile app, the binding can get the new value.

FYI @andrewfg

Your Environment

andrewfg commented 3 weeks ago

@oxigen-dev thanks for reporting this. Could you please turn on log:set TRACE on the binding and post the relevant part of the log?

oxigen-dev commented 3 weeks ago

@oxigen-dev thanks for reporting this. Could you please turn on log:set TRACE on the binding and post the relevant part of the log?

Sure, here is a part of the log. Sorry, but I don't really know whether everything relevant is here or not, and I'm also not sure whether there is some sensitive data in it so I've replaced some parts with "[redacted]" maybe without any reason :)

2024-11-03 18:56:34.241 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - GET for url 568 characters long 2024-11-03 18:56:34.241 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - >> https://api.climatixic.com/DataPoints/Values?filterId=["[redacted]","[redacted]","[redacted];1![redacted]","[redacted];1!01300005A000055","[redacted];1!002000086000055","[redacted];1!013000052000055","[redacted];1!013000051000055","[redacted];1!013000074000055","[redacted];0!Online"] 2024-11-03 18:56:34.490 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - received 1536 characters.. 2024-11-03 18:56:34.490 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - << {"totalCount":9,"values":{"[redacted];0!Online":{"value":1,"valueDate":1730044023736},"[redacted]":{"value":{"value":15.0,"statusFlags":0,"reliability":0,"presentPriority":15,"eventState":0,"minValue":12.0,"maxValue":35.0},"valueDate":1730648457217},"[redacted]":{"value":{"value":54.5926857,"statusFlags":0,"reliability":0,"eventState":0,"minValue":0.0,"maxValue":100.0},"valueDate":1730653969073},"[redacted];1!002000086000055":{"value":{"value":23.89416,"statusFlags":0,"reliability":0,"eventState":0,"minValue":0.0,"maxValue":50.0},"valueDate":1730655854327},"[redacted];1!013000051000055":{"value":{"value":3,"statusFlags":0,"reliability":0,"presentPriority":13,"eventState":0},"valueDate":1730044035362},"[redacted];1!013000052000055":{"value":{"value":2,"statusFlags":0,"reliability":0,"presentPriority":15,"eventState":0},"valueDate":1730648162564},"[redacted];1![redacted]":{"value":{"value":1,"statusFlags":0,"reliability":0,"eventState":0},"valueDate":1730468167287},"[redacted];1!01300005A000055":{"value":{"value":4,"statusFlags":0,"reliability":0,"presentPriority":13,"eventState":0},"valueDate":1730648162110},"[redacted];1!013000074000055":{"value":{"value":4,"statusFlags":0,"reliability":0,"eventState":0},"valueDate":1730637514137}}} 2024-11-03 18:56:34.490 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.#Online: 1.0 << 1.0 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'SpTR: 15 °C << 15 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RHuRel: 54.5926857 % << 54.5926857 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RTemp: 23.89416 °C << 23.89416 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'OccMod: 3 << 3 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'REei: 2 << 2 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'HCSta: 1 << 1 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'PrOpModRsn: 4 << 4 2024-11-03 18:56:34.491 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RAQualInd: 4 << 4 2024-11-03 18:56:34.492 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - PUT for url 93 characters long 2024-11-03 18:56:34.492 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - >> https://api.climatixic.com/DataPoints/[redacted] 2024-11-03 18:56:34.492 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - >> {"value":16 °C} 2024-11-03 18:56:34.539 [WARN ] [ng.siemensrds.internal.RdsDataPoints] - runtime exception in setValue(), type=java.io.IOException, message="Bad Request" 2024-11-03 18:56:35.397 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - GET for url 568 characters long 2024-11-03 18:56:35.397 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - >> https://api.climatixic.com/DataPoints/Values?filterId=["[redacted]","[redacted]","[redacted];1![redacted]","[redacted];1!01300005A000055","[redacted];1!002000086000055","[redacted];1!013000052000055","[redacted];1!013000051000055","[redacted];1!013000074000055","[redacted];0!Online"] 2024-11-03 18:56:35.573 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - received 1536 characters.. 2024-11-03 18:56:35.574 [TRACE] [ng.siemensrds.internal.RdsDataPoints] - << {"totalCount":9,"values":{"[redacted];0!Online":{"value":1,"valueDate":1730044023736},"[redacted]":{"value":{"value":15.0,"statusFlags":0,"reliability":0,"presentPriority":15,"eventState":0,"minValue":12.0,"maxValue":35.0},"valueDate":1730648457217},"[redacted]":{"value":{"value":54.5926857,"statusFlags":0,"reliability":0,"eventState":0,"minValue":0.0,"maxValue":100.0},"valueDate":1730653969073},"[redacted];1!002000086000055":{"value":{"value":23.89416,"statusFlags":0,"reliability":0,"eventState":0,"minValue":0.0,"maxValue":50.0},"valueDate":1730655854327},"[redacted];1!013000051000055":{"value":{"value":3,"statusFlags":0,"reliability":0,"presentPriority":13,"eventState":0},"valueDate":1730044035362},"[redacted];1!013000052000055":{"value":{"value":2,"statusFlags":0,"reliability":0,"presentPriority":15,"eventState":0},"valueDate":1730648162564},"[redacted];1![redacted]":{"value":{"value":1,"statusFlags":0,"reliability":0,"eventState":0},"valueDate":1730468167287},"[redacted];1!01300005A000055":{"value":{"value":4,"statusFlags":0,"reliability":0,"presentPriority":13,"eventState":0},"valueDate":1730648162110},"[redacted];1!013000074000055":{"value":{"value":4,"statusFlags":0,"reliability":0,"eventState":0},"valueDate":1730637514137}}} 2024-11-03 18:56:35.575 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.#Online: 1.0 << 1.0 2024-11-03 18:56:35.576 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'SpTR: 15 °C << 15 2024-11-03 18:56:35.577 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RHuRel: 54.5926857 % << 54.5926857 2024-11-03 18:56:35.577 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RTemp: 23.89416 °C << 23.89416 2024-11-03 18:56:35.578 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'OccMod: 3 << 3 2024-11-03 18:56:35.578 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'REei: 2 << 2 2024-11-03 18:56:35.579 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'HCSta: 1 << 1 2024-11-03 18:56:35.579 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'PrOpModRsn: 4 << 4 2024-11-03 18:56:35.580 [DEBUG] [ng.siemensrds.internal.RdsDataPoints] - refresh Living Room.'RAQualInd: 4 << 4 2024-11-03 18:56:35.582 [DEBUG] [nding.siemensrds.internal.RdsHandler] - outsideTemperature "'TOa" not implemented; set state to UNDEF 2024-11-03 18:56:35.584 [DEBUG] [nding.siemensrds.internal.RdsHandler] - hotWaterOutputState "'DhwMod" not implemented; set state to UNDEF 2024-11-03 18:56:35.585 [DEBUG] [nding.siemensrds.internal.RdsHandler] - hotWaterAutoMode "'DhwMod" not implemented; set state to UNDEF

andrewfg commented 3 weeks ago

Ok. Many thanks. It looks like the command is sending the unit '16 °C' where I guess it should not be. I am not sure when that may have changed.

oxigen-dev commented 3 weeks ago

Ok. Many thanks. It looks like the command is sending the unit '16 °C' where I guess it should not be. I am not sure when that may have changed.

Actual target value is 15 °C, new target value would be 16 °C (I'm using low values if heating is not needed, this is how I turn it off). It is also not working with higher values like 21-22 °C.

So the value in the command is correct!

andrewfg commented 3 weeks ago

the value in the command is correct!

Maybe I was not clear; the problem is probably the presence of the unit and not the size of the number.

oxigen-dev commented 3 weeks ago

the value in the command is correct!

Maybe I was not clear; the problem is probably the presence of the unit and not the size of the number.

Understood. Can I support you somehow fixing this issue?