I was using absolute temperature with hue binding. When updating to OH 3.4 this stopped working.
My items config:
Number HueBadDeckenlichtColorTemperatureAbs "Farbtemperatur" <light> (gBadezimmerDeckenlicht) ["Point","None"] {channel="hue:0220:xxx:bad_deckenlicht:color_temperature_abs", listWidget="oh-slider-item"[min=2200,max=6400,step=100, scale=true,scaleSteps=7, releaseOnly=true,label=true]}
When changing the color temperature in the hue app, the values are changed in the UI as well and I see the new data in the log without error.
When I use the slider to change to color temperature I get the following error:
2022-12-19 17:17:07.023 [WARN ] [hue.internal.handler.HueLightHandler] - Command sent to an unknown channel id: hue:0220:xxx:bad_deckenlicht:color_temperature_abs
It is the same channel as used for the item, so the error message does not make sense for me.
I saw that the temperature unit Kelvin was included and I am just wondering if this has an impact as it is exactly the absolute temperature I have issues with.
Do I need to consider something how to change the value?
I specifically tested linking a Number item to the new system channel, and had no problems. I’d maybe try re-creating your thing? The error indicates your thing does not have the proper channel: Command sent to an unknown channel id: hue:0220:xxx:bad_deckenlicht:color_temperature_abs. Beyond that I’m at a loss. I know the Hue binding is going through a major refactor, but I don’t believe that PR landed in time for 3.4.0.
Looking the binding code, a DecimalType command state is expected.
Can you check in events.log what command is sent by UI? In case the command includes a unit, the binding will not work.
But if your item is of type Number, no unit should be added, I believe.
But I do not exclude a change in core framework or UI that would add a default unit and so broke the binding.
To be confirmed or not by your log entry.
2022-12-20 07:02:39.861 [WARN ] [hue.internal.handler.HueLightHandler] - Command sent to an unknown channel id: hue:0220:xxx:bad_deckenlicht:color_temperature_abs
==> /var/log/openhab/events.log <==
2022-12-20 07:02:39.829 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'HueBadDeckenlichtColorTemperatureAbs' received command 2900
2022-12-20 07:02:39.845 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'HueBadDeckenlichtColorTemperatureAbs' predicted to become 2900
2022-12-20 07:02:39.860 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'HueBadDeckenlichtColorTemperatureAbs' changed from 3921 K to 2900 K
Log via Basic UI
2022-12-20 07:10:42.762 [WARN ] [hue.internal.handler.HueLightHandler] - Command sent to an unknown channel id: hue:0220:xxx:bad_deckenlicht:color_temperature_abs
==> /var/log/openhab/events.log <==
2022-12-20 07:10:42.752 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'HueBadDeckenlichtColorTemperatureAbs' received command 3400 K
2022-12-20 07:10:42.763 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'HueBadDeckenlichtColorTemperatureAbs' predicted to become 3400 K
2022-12-20 07:10:42.774 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'HueBadDeckenlichtColorTemperatureAbs' changed from 2900 K to 3400 K
The error looks the same even though Main UI sends without unit and basic Ui with units.
You have discovered a real bug and the worst is that the hue binding is probably not the only binding with this bug as the root cause are change(s( in the core framework.
Note also that the log entry could be improved as the message is of course inappropriate.
Unfortunately, i see no workaround.
I am still not sure to understand why “K” (Kelvin) unit is added to your command.
Apparently not to the first one but to next ones.
IDK if it’s related, but I had some HSB channels configured in 3.2. They worked as expected; in the Locations page for each channel there was a square with that opened colorpicker and a toggle switch.
Now (in 3.4) for all these items there is only a single control with possible clicking of value between 0…100 which controls only the last channel.
I’ve recreated the channel, the item; no change.
I use MQTT binding, and the channels are created via the simple mqtt:topic.