Hue Ambience Bulbs / Rules / Groups

Hi All,

Having a real doozy of a fight with a new rule, and I’m hoping someone can point out where it’s going wrong as I’m sure its something simple…

The premise: I have 4 hue Ambience Spot Lights in the living room that I want to set up so that they are part of a group that turn off / on together.

Items:

For each spot I have, the only difference is the number, ie HueLight2, 3, 4 and the appropriate channel

Dimmer      GF_LR_HueLight1_Brightness          "GF LR Hue Light 1 Brightness"          (gLivingRoomLights) {channel="hue:blahblah:brightness"}
Dimmer      GF_LR_HueLight1_ColorTemp           "GF LR Hue Light 1 Colour"                                  {channel="hue:blahblah:color_temperature"}

So far so good, I can’t see a switch option so I’m guessing it’s just setting the brightness to 100 or 0 is the equivalent on / off function.

I also have a group called gLivingRoomLights in the same items file.

My rule:

rule "Living Room Lights ON/OFF - Alexa"

when

    Item aLivingRoomLights changed

then

    if(aLivingRoomLights.state == ON)

        {

        logInfo(logName, "Living Room Lights - Alexa - ON")

        //GF_LR_HueLight1_Brightness.sendCommand("100")

        //GF_LR_HueLight2_Brightness.sendCommand("100")

        //GF_LR_HueLight3_Brightness.sendCommand("100")

        //GF_LR_HueLight4_Brightness.sendCommand("100")

        gLivingRoomLights.members.forEach[ i | i.SendCommand("100") ]

        }

    else

        {

        logInfo(logName, "Living Room Lights - Alexa - OFF")

        //GF_LR_HueLight1_Brightness.sendCommand("1")

        //GF_LR_HueLight2_Brightness.sendCommand("1")

        //GF_LR_HueLight3_Brightness.sendCommand("1")

        //GF_LR_HueLight4_Brightness.sendCommand("1")

        gLivingRoomLights.members.forEach[ i | i.SendCommand("1") ]

        }

end

In this case, I have an alexa dummy item aLivingRoomLights that sends an ON / OFF command, this then runs the rule to turn the lights on or off.

Now it works if you comment out the group part and uncomment the basic Brightness.sendCommand to each light, so I know the basic functionality is there, but I want to have it as a group should I want to add more lights / do different scenes.

The logs show the logfile entry but no errors…

So, where have I gone wrong with the group members.forEach line and is there not a on / off switch for these bulbs, do they really operate 0 to 100? I couldn’t really see much info in the Hue binding docs…

The first thing I notice is that for your group items you have “SendCommand” with a capital S.

I’m not sure why you’re going through each item and commanding them separately; that’s no different then just running your commented lines. I’m a little out of my depth, but if your group item is Group:Number, can’t you just send a single command to the group?

gLivingRoomLights.sendCommand("100")

That’s what I do with my groups, but I’ve only done it with ON/OFF switches. I’m not sure if it works with dimmers.

Thanks, I’ll take a look at the capital S, it may be something that simple.

I’ve only got each spot running through separately to test they were working, that’s why they are commented out at the moment.

I might not have been clear, as I wasn’t talking about the commented lines. Where you’ve got:

gLivingRoomLights.members.forEach[ i | i.SendCommand("100") ]

I think you only need:

gLivingRoomLights.sendCommand("100")

As I understand it, sending commands to groups distributes those commands to all group members, so there’s no need to call the individual members from 1 to i.

1 Like

Hi,

Thanks, I did misunderstand your message, but no joy I’m afraid. I wanted to get to know the group and the .members.xxxxx options in rules and the best way for me is to try and work them into a new one so it seemed as good a time as any…

Neither command works I’m afraid, (with or without the capital S),

gLivingRoomLights.members.forEach[ i | i.sendCommand("100") ]

gLivingRoomLights.sendCommand("100")

I can send the command directly to the individual item from within the rule:

GF_LR_HueLight1_Brightness.sendCommand("100")

But not via a group…I’m guessing it is because the item is a dimmer rather than a number but I can’t believe the hue bulbs behave this way…there must be something I’m missing…wonder if there is a channel or item I need to create to get an ON/OFF functionality in this case…or if there is a group numbers function that I can convert something into / out of…

So, rechecking the Hue Docs…and please anyone step in if they think I’m wrong:

I believe my new Hue Ambience White bulb is a 0220, ie it has on/off, brightness and color temperature channels.

Looking this up in the channel table my 0220 bulb has:

brightness / dimmer (adjust brightness value)
color temperature / dimmer (adjust color temp cold - warm)
alert / string (flashes the bulb)
effect / switch (color looping)

So no on/off, which I guess means the brightness channel takes 0 / 100 as the equivalent…

Scrolling down to the demo.items file I can see the one that best fits my bulb:

Switch  Light2_Toggle       { channel="hue:0220:1:bulb2:brightness" }
Dimmer  Light2_Dimmer       { channel="hue:0220:1:bulb2:brightness" }
Dimmer  Light2_ColorTemp    { channel="hue:0220:1:bulb2:color_temperature" }

I read this that you can add in a toggle item, which I assume is the on/off switch.

So, taking that to my system:

I have created 3 items:

Switch      GF_LR_HueLight2_Toggle              "GF LR Hue Light 2 Toggle"              (gLivingRoomLights)             {channel="hue:blah:brightness"}
Dimmer      GF_LR_HueLight2_Brightness          "GF LR Hue Light 2 Brightness"                                          {channel="hue:blah:brightness"}
Dimmer      GF_LR_HueLight2_ColorTemp           "GF LR Hue Light 2 Colour"                                              {channel="hue:blah:color_temperature"}

I have also one group:

Group   gLivingRoomLights          "Living Room Lights"    <light>

and then a rule that runs as per above post…I can sendCommand(ON) to the group and I get the log but no lights ON, I can change the group to the brightness item and sendCommand(“100”) and no light, the only way to get the lights to come on is if I call them by item individually…

While this works, it’s not what I’d expect to happen and not ideal as I’d rather use groups…

What am I still missing?

EDIT - I’ve added the 3 items to a sitemap to check things manually, and I can use toggle to turn the lights on and off individually…so I’m thinking there is something wrong with the groups somehow???

It’s quite helpful to share the logs that you discuss.

Be careful with commands and types, sendCommand(ON) (an OnOffType) is not the same as sendCommand("ON") (a string)
We’d expect a Dimmer type Item for example to respond to ON but not to “ON” or “rhubarb”.

Be wary with in-flight edits to Groups and Items, sometimes changes may not take effect until something gets re-initialized.

I’m a bit lost if we are working on rules or Group commands now :smiley:

Yes, I’m probably flitting a bit too much which isn’t helping…this ‘should’ be easy :slight_smile: which is frustrating me even more!

Ok I’ll try and summarise;

  1. If I run a simple rule where I call the brightness / dimmer item directly
GF_LR_HueLight1_Brightness.sendCommand("100")

it works fine, and the light turns on. It also tells me my items are linked ok.

  1. If I run a simple rule where I call the toggle / switch item directly
GF_LR_HueLight1_Toggle.sendCommand(ON)

The light doesn’t turn on and I get no error in the log.
I can however add this item to a sitemap and turn the light on and off from the switch on there.

  1. If I then try to add in a group rather than call each spotlight individually in the rule
Group   gLivingRoomLights          "Living Room Lights"    <light>

and then call it in rule


gLivingRoomLights.sendCommand("100")

I get the following in the log

2020-04-25 12:38:20.644 [ome.event.ItemCommandEvent] - Item 'aLivingRoomLights' received command ON
2020-04-25 12:38:20.655 [vent.ItemStateChangedEvent] - aLivingRoomLights changed from OFF to ON
2020-04-25 12:38:20.685 [ome.event.ItemCommandEvent] - Item 'gLivingRoomLights' received command 100

but the lights don’t come on

I have tried part 3 with the toggle item and sendCommand(ON) but only get one log line

2020-04-25 12:42:13.783 [ome.event.ItemCommandEvent] - Item 'aLivingRoomLights' received command ON

Nothing more…so I’ve guessed that the toggle is a bit of a red herring and its the brightness 0 / 100 that the hue bulb needs but it’s just not doing it…

Should I just write this off as a bad day, delete / unlink all the items and start again as it doesn’t make sense to me!

Alright, basic background info.

A Switch type Item accepts commands ON/OFF, and can take states ON/OFF.

A Dimmer type Item accepts commands ON/OFF/numeric/INCREASE/DECREASE, and take states numeric (there is no ON/OFF state)

It’s the binding’s job to match up the behaviour of these idealized models with real devices that might behave differently e.g. some real dimmer might well report “I’m on” as well as “brightness 50%”, but there might be no means to command “increase” at all.
The binding author decides how the channels work, and what type of Items they can be linked to.

For the specific Hue binding, the examples (but not the text) suggest that a ‘brightness’ type channel can linked be to Switch type Item and/or Dimmer type Item.

Unrelated to any of that, Groups. If you send a command to a Group type Item, it gets propagated to all individual member Items. I don’t think the Group type matters, nor does it care what the command is. Member Items might care though; a command “rhubarb” would be sensible for a String member but not a Switch member.

So to specifics …

Excellent.
Did you try

GF_LR_HueLight1_Brightness.sendCommand(ON)

?
You are allowed to send ON to a Dimmer Item.
Next -

I do wonder if this idea of linking a Switch Type Item to a Hue brightness channel actually works. I’m having doubts, and it is any case a bit pointless since you can command ON/OFF to a Dimmer Item anyway…

Next -

We really need to see your events.log to compare the cases of issuing command ON from rule and from UI to the same Item. A command is a command, source should not matter, apart from any pitfalls sending “ON” instead of ON.

Okay, from earlier, gLivingRoomLights has only one member, a Switch type Item.
It is not sensible to send command “100” to a Switch type Item, so I would not expect much to happen.

Your log features something called aLivingRoomLights, it’s not clear how that relates to anything.

Thanks, and that’s exactly why I can’t work out why things aren’t working.

I wasn’t sure about the on/off extra dummy switch and that you can send on/off to a dimmer item but the rest is why I don’t get it, it should be working.

Reading the whole post back I wonder if I got a bit ahead of myself and somewhere along the line have mixed up a channel / item / group and it’s now any tinkering I do is just making it worse.

As it’s a pretty quick fix I think I’m going to delete all items / rules etc and start again but take it slower one step at a time and try it all again.

:+1:

I can’t count the number of times in life I’ve bashed at something fruitlessly, put it aside, and then succeeded after seeing it with fresh eyes.

That’s what I’m hoping. I was trying to do some learning with groups and I think I jumped in too quickly so missed something simple along the way.

I’ll try again in the morning and see what happens. If it still doesn’t work then you’ll all probably hear the scream from wherever in the world you are…

Ok, deleted all items, groups, rules etc associated with this thread, restarted, (just for fun), and started again…

ITEMS
2 dimmer items and a dummy item to use as a switch to test:

Dimmer      GF_LR_HueLight1_Brightness          "GF LR Spotlight 1 Dimmer"  <light>     {channel="hue:blah:brightness"}
Dimmer      GF_LR_HueLight1_ColorTemp           "GF LR Spotlight 1 Color"   <light>     {channel="hue:blah:color_temperature"}

Switch      vLivingRoomSpots                    "LR Spot Test"

BASIC RULE TO TEST
Step 1 - Start with ON/OFF to a dimmer item

rule "Living Room Spotlights"
    when
        Item vLivingRoomSpots received command
    then
        if(vLivingRoomSpots.state == ON) 
        {
            logInfo(logName,"Living Room Spots Test ON")
            GF_LR_HueLight1_Brightness.sendCommand(ON)
        }
        else
        {
            logInfo(logName,"Living Room Spots Test OFF")
            GF_LR_HueLight1_Brightness.sendCommand(OFF)
        }
end

LOG

Turning vLivingRoomSpots ON via sitemap switch

2020-04-26 11:06:56.582 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 11:06:56.597 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 11:06:56.617 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command ON
2020-04-26 11:06:56.649 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become ON
2020-04-26 11:06:56.676 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 0 to 100

Turning vLivingRoomSpots OFF via sitemap switch

2020-04-26 11:07:06.303 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 11:07:06.317 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 11:07:06.331 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command OFF
2020-04-26 11:07:06.356 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become OFF
2020-04-26 11:07:06.374 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 100 to 0

So, all looks good there…however…the physical light turned ON fine, (hooray), however it is still on, regardless of the clear OFF command in the logs.

So, thinking about the rule I realised that using the received command trigger, the Rule will trigger before the Item’s state is updated so it wouldn’t turn off anyway…(correct???)

I changed the rule to ‘received update’ and ‘changed’ just to see what would happen and the light didn’t turn on or off, the logs were also a bit jumbled eg

LOG

2020-04-26 11:14:13.084 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 11:14:13.112 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 11:14:15.684 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command ON
2020-04-26 11:14:15.701 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 0

So in this case, it ran through the rule, turned the spot ON, but brightness was 0? ie it’s OFF…not what I want either…

Next Step -

I modified the rule so that if vLivingRoomSpots received command as before but it now checks to see if receivedCommand ==ON to correct the received command when:

rule "Living Room Spotlights"
    when
        Item vLivingRoomSpots received command
    then
        if(receivedCommand == ON) 
        {
            logInfo(logName,"Living Room Spots Test ON")
            GF_LR_HueLight1_Brightness.sendCommand(ON)
        }
        else
        {
            logInfo(logName,"Living Room Spots Test OFF")
            GF_LR_HueLight1_Brightness.sendCommand(OFF)
        }
end

But this got even more confusing, the physical light neither came on or off and the logs showed this:

2020-04-26 11:27:27.535 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 11:27:27.554 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 11:27:27.559 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command ON
2020-04-26 11:27:27.580 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 0
2020-04-26 11:27:29.908 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 0 to 100
2020-04-26 11:27:30.466 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 11:27:30.538 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command OFF
2020-04-26 11:27:30.564 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 100
2020-04-26 11:27:30.566 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 11:27:39.936 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 100 to 0

All sorts of fun going on there! ON predicting to become 0, (ie off), and the OFF predicted to become 100, (ie ON)…

So, any ideas what is going on here? I’m goiong to go away and change the commands to sending 0 / 100 rather than on / off and see if that makes a difference…next post shortly…

So, next part of the saga

Changed the rule to:

rule "Living Room Spotlights"
    when
        Item vLivingRoomSpots changed
    then
        if(vLivingRoomSpots.state == ON) 
        {
            logInfo(logName,"Living Room Spots Test ON")
            GF_LR_HueLight1_Brightness.sendCommand("100")
        }
        else
        {
            logInfo(logName,"Living Room Spots Test OFF")
            GF_LR_HueLight1_Brightness.sendCommand("0")
        }
end

Gives the logs

SWITCH ON

2020-04-26 11:36:28.083 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 11:36:28.100 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 11:36:28.117 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command 100
2020-04-26 11:36:28.143 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 100
2020-04-26 11:36:28.154 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 0 to 100

SWITCH OFF

2020-04-26 11:36:29.739 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 11:36:29.750 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 11:36:29.763 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command 0
2020-04-26 11:36:29.786 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 0
2020-04-26 11:36:29.805 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 100 to 0

Also, the light turned on and off properly…

The only thing of note here is that the first ON/OFF command I gave it from the sitemap switch didn’t work:

2020-04-26 11:36:13.581 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 11:36:13.593 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 11:36:15.089 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 11:36:15.098 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 11:36:16.112 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command 0
2020-04-26 11:36:16.133 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_Brightness' received command 0
2020-04-26 11:36:16.160 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 0
2020-04-26 11:36:16.174 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_Brightness predicted to become 0

So you can see it got a little jumbled, and the light didn’t turn on or off, it did work on the second on / off. I’m guessing I therefore need to capture the current state before I do anything to make sure it works???

Also, I’m guessing that the hue ambience bulb doesn’t accept ON/OFF commands just 0/100 brightness commands???

Any comments / thoughts before I plough on with these thoughts and start to add more bulbs and begin my groups journey? I’d rather start off knowing exactly how the bulb works so I can code accordingly…

Yes, for the trigger. Whether the state has been updated before you examine it within the rule is indeterminate - it’s a “race condition”, because we are in a multithreading system.

Don’t know, you’ve only shown us the prediction not any actual state change. Remember predictions can be overridden by bindings,
Is this Item GF_LR_HueLight1_Brightness linked to some real hue channel? Or is the hue binding saying, nope that’s a nonsense channel, it’s broken, commands won’t have effect. It’s not clear if there is a real lamp involved here, because you show us a fake channel.

Entirely possible. The hue binding docs are not clear, and it may in any case vary by device model.
The openHAB idealized Dimmer type Item accepts ON/OFF commands, which get passed via channel to binding. What happens about them then is up to the binding - ignore, pass to device, translate to something else.

I’d sort this out before you involve Groups.

Great, thanks for the clarification…glad some of the learning is staying in my head :slight_smile:

That is all the logs showed, nothing more, it only predicted to change, it didn’t actually change…

GF_LR_HueLight1_Brightness is a real item, it is linked to a real hue channel, Paper UI image:

The item works when I send it

GF_LR_HueLight1_Brightness.sendCommand("100")

Which says to me it is a working / linked item?

I agree, I think from my testings the hue bulb doesn’t like ON/OFF but 0 / 100 seems fine…as long as this is correct I now know what ball park I’m playing on so can continue testing from there.

I do wonder if the hue app is also trying to connect / modify the blub which might be interfering, but having said that my old hue bulb works fine…

Thanks all for the help to date.

Remember we cannot see you what you see, and that kind of phrase is open to interpretation. In openHAB, an Item is a conceptual object with no reality. Somewhere you’ve got a physical light bulb associated with that.
You know what you mean, but we cannot tell if “item works” means the physical light bulb comes on.

There is some stuff about hue and ON/OFF here

Someone there seems to have hue type 220 responding to ON/OFF not on the brightness but the colortemperature channel.

Yes, it’s hard to describe virtual and physical items, especially when I’m not sure what is and isn’t working!

Never thought of using the color temp channel, I’ll give that a go. It says it is a dimmer on Paper UI so seems to be the same in principle as the brightness channel but I’ll give anything a go right now to see if it works!!!

HI,

In the interest of keeping this thread going in case someone else has the same issue…

I have now tried the rule using the colortemp channel.

rule "Living Room Spotlights"
    when
        Item vLivingRoomSpots changed
    then
        if(vLivingRoomSpots.state == ON) 
        {
            logInfo(logName,"Living Room Spots Test ON")
            GF_LR_HueLight1_ColorTemp.sendCommand(ON)
        }
        else
        {
            logInfo(logName,"Living Room Spots Test OFF")
            GF_LR_HueLight1_ColorTemp.sendCommand(OFF)
        }
end

So, this turns the physical light on and off when I switch vLivingRoomSpots on / off so that’s a good start…however it was a very dull light…

Looking at the logs:

ON:

2020-04-26 20:04:43.702 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 20:04:43.709 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 20:04:43.720 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_ColorTemp' received command ON
2020-04-26 20:04:43.736 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_ColorTemp predicted to become ON
2020-04-26 20:04:43.750 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 0 to 100
2020-04-26 20:04:44.011 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 100 to 23
2020-04-26 20:04:44.013 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 0 to 1

OFF:

2020-04-26 20:04:45.356 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 20:04:45.383 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 20:04:45.388 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_ColorTemp' received command OFF
2020-04-26 20:04:45.421 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_ColorTemp predicted to become OFF
2020-04-26 20:04:45.435 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 23 to 0

So, it seems that this channel can receive ON/OFF commands but that it is independent of the brightness channel, (as you’d expect I suppose).

ColorTemp = 23 is what it was set to the last time the physical light was on so it has reverted to the ‘last known setting’. Interestingly, it seems to have set it to 100 and then back down to 23 so I wonder if there is some hue app trickery taking over / getting involved here or if the bulb does actually remember it’s ‘last on state’ somehow.

I went into the hue app and changed the color temp to 80, (random number, ie not 23), and brightness to 52, then turned vLivingRoomLights ON and OFF again…

Log

ON

2020-04-26 20:16:31.826 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command ON
2020-04-26 20:16:31.837 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from OFF to ON
2020-04-26 20:16:31.862 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_ColorTemp' received command ON
2020-04-26 20:16:31.887 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_ColorTemp predicted to become ON
2020-04-26 20:16:31.906 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 0 to 80

OFF

2020-04-26 20:16:34.652 [ome.event.ItemCommandEvent] - Item 'vLivingRoomSpots' received command OFF
2020-04-26 20:16:34.665 [vent.ItemStateChangedEvent] - vLivingRoomSpots changed from ON to OFF
2020-04-26 20:16:34.686 [ome.event.ItemCommandEvent] - Item 'GF_LR_HueLight1_ColorTemp' received command OFF
2020-04-26 20:16:34.711 [nt.ItemStatePredictedEvent] - GF_LR_HueLight1_ColorTemp predicted to become OFF
2020-04-26 20:16:34.728 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 100 to 0
2020-04-26 20:16:35.384 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_ColorTemp changed from 0 to 80
2020-04-26 20:16:35.386 [vent.ItemStateChangedEvent] - GF_LR_HueLight1_Brightness changed from 52 to 0

So,yes…it would seem that it remembers the last ON setting…or the hue app is taking over…

Either way, I think I now know / understand why the ON/OFF command is temperamental…the bulb requires 0 / 100 in both brightness and color temp, (either together or individually), to set the temp you want it to be as ON/OFF will simply take you to the ‘last known setting’ of the bulb.

Does that seem a sensible suggestion?

NOTE - I have noticed there can be a few second delay between sending the command on OH and the physical bulb turning on. Sometimes its instant, other times it could be up to 3 seconds delay…might be useful to note when running rules…

Remember the “it” here is the Item model dimmer internal to openHAB.
When you see the Item state change to 100, in events.log, it does not mean the device had anything to do with it.

autoupdate is at work when you send commands (unless you disable autoupdate) - this is the source of the “prediction” … and the update to 100 within a few milliseconds. It’s a guessed, predictive, pre-emptive update, and does not reflect any real world value.

Later on, after the command has chuntered around the huw network, the bulb has done its thing, the response chuntered back … the “real” status is applied to the Item, a quarter-second later.

EDIT, meant to say also

it’s a recognized effect when running a rule for the very first time after loading
(editing) due to compilation. It’ll be noticeable on a busy Pi.