[OH 3.4] HUE absolute temperature

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.

What OH version were you previously running?

Just the version before: 3.3

3.4 included apparently no changes regarding channels for hue things.

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?

In fact, there was this change in core framework about the related system channel:

As you can read in the PR review, it was answered that it is possible to continue using a Number item.

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.

No difference when defining the item as Number:Temperature. I reloaded the things file several times already, also no change!

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.

Do you have the issue only in MainUI or in any UI?

Hi,

log looks like this:

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.

Can you confirn your item is still of type Number?
Is your thing defined in a text config file?

Hi,

it is all test files for things and items. It is still a number, yes!

What can we do?

Best

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.

I also do not understand ;-).
How can we proceed?

Just wait for a patch.
A fix for the hue binding has just been submitted.
Other impacted bindings should also be fixed before the patch is released.

I just found the debug logging you’re seeing that will occur when sending a QuantityType to the color_temperature_abs channel: openhab-addons/HueLightHandler.java at 324483d8e97763ee2a24025a37a7f89e66367b27 · openhab/openhab-addons · GitHub. A bit misleading, but confirms the problem is a QuantityType command getting sent, and then ignored. I think @lolodomo is going to look into fixing that log line too, based on his comment at [hue] Allow handling of QuantityType for color temperature channel by cweitkamp · Pull Request #14024 · openhab/openhab-addons · GitHub.

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.

image

The issue is now fixed for the hue binding.