mjwwit / node-red-contrib-ikea-tradfri

Node-RED nodes to get updates from and control devices connected to an IKEA TRADFRI gateway
3 stars 3 forks source link

Color changes light control stays white #6

Closed Turtle-Toast closed 3 years ago

Turtle-Toast commented 3 years ago

I am trying to control the lights so the color changes to red. Yet everything time I try changing the color, it becomes white (or stays white).

I tried using an inject node:

Topic (Number): Bulb ID
Payload (JSON): {"color": "#ff0000", "brightness": 75}

The brightness or setting it on/off works fine, only the color does not change or it changes to white when I was a different color.

Using the light control node itself did not worked as well. The brightness or setting the bulb on/off worked fine, setting the color did not worked. The bulb is correctly defined as an RGB bulb.

Any ideas what I could try?

mjwwit commented 3 years ago

Thanks for reporting this! Sadly I don't have an RGB bulb at this moment to test with... Nevertheless I'll double check everything related to bulb color to see if I can spot potential issues. I'll let you know if I release a version you can test.

Turtle-Toast commented 3 years ago

Thanks for reporting this! Sadly I don't have an RGB bulb at this moment to test with... Nevertheless I'll double check everything related to bulb color to see if I can spot potential issues. I'll let you know if I release a version you can test.

Thank you. I hope there is a simpel solution to this. I use Node Red within Home Assistant. I used the palette to add this. I don't know if there is a problem due that the Node Red site says it is at version 0.4.1 and this is 0.4.3. (Node Red Site)

nowi967 commented 3 years ago

Hi, I have the same issue. I have NodeRed running under ioBroker. My lights can be dimmed and switched on and off. But the tuneble white "colorTemperature": does not work.

mjwwit commented 3 years ago

But the tuneble white "colorTemperature": does not work.

That's odd, it works fine for me. What does the message you send to the tradfri-light-control node look like? Mine looks like this:

{
  "topic": [1234, 4321],
  "payload": {
    "onOff": true,
    "transitionTime": 0.5,
    "colorTemperature": 50
  }
}
nowi967 commented 3 years ago
Bildschirmfoto 2021-05-04 um 16 54 17

I set the settings directly in the node. Like in the screenshot.

sttts commented 3 years ago

Same here. Color changes from nodered to tradfri are broken.

mjwwit commented 3 years ago
Bildschirmfoto 2021-05-04 um 16 54 17

I set the settings directly in the node. Like in the screenshot.

Can you try it without setting brightness? I think I remember there being some settings that don't play nice together.

Turtle-Toast commented 3 years ago

When I use an Inject Node to send only {"color":"#ff0000"} (and a topic), the light simply turns off, when turned on, the color is white again (Changed from a warmer 'summer white' to cold 'hospital white' color). That it changes to white also happens when I use the Light Control Node itself and only set the color/bulb. I tried setting the bulb off (manually) and change color and setting the bulb on (manually) and change color.

mjwwit commented 3 years ago

I've just released a new version (0.4.4) that may fix your issues with setting color or colorTemperature on lights. It may take a while for your Node-RED palette to notice the update, but you can probably already manually install it using npm. I've tested the fix on my color temperature bulbs, and changing brightness or colorTemperature (or a combination of the two) works perfectly now. Can someone test this for rgb bulbs?

sttts commented 3 years ago

~I don't see a difference.~ The actual fix for "setting colorTemperature or color of lights turns off lights" seems to work. But it is still not functional:

mjwwit commented 3 years ago
  • setting the dimmer switches off the light.

I missed this one while testing, it appears to suffer from the same issue as color and colorTemperature. I will release a fix for this asap.

  • color changes from Homee have no effect.

Homee?

  • switching on/off sets the color back to some white tone.

The color temperature bulbs I use do not seem to have this issue. I can turn them off and back on and they'll remember the previously set temperature. I can even cut the power to the bulbs and it will still remember its settings. Sadly I do not own any RGB color bulbs, so I cannot test any changes I make. If anyone's willing to put in some elbow grease I'd really love a PR for this.

sttts commented 3 years ago

color changes from Homee have no effect. Homee?

I use Homee to get the input for node-red-contrib-ikea-tradfri, i.e. I send the color-only message to Tradfri when changing it in the web app of Homee. The color message has no effect.

sttts commented 3 years ago

Sadly I do not own any RGB color bulbs

How can we make you own one? :-)

mjwwit commented 3 years ago

I'll buy one next time I'm at IKEA. That might take a while though, due to the pandemic.

Just to be sure, you are sending these color messages to individual lights right? Tradfri apparently doesn't allow you to control the color or colorTemperature of a group. The author of the library I use is attempting a workaround for this by creating a temporary scene, applying that scene to the group, and then removing it.

sttts commented 3 years ago

Yes, sending to a light, not group.

msg.payload = { 
            color: "#123456",
};
mjwwit commented 3 years ago

Can you try using the hue and saturation properties?

sttts commented 3 years ago

Doesn't seem to help. I see not color change at all. I think it is worth to check the underlying node library. I read something in their issue list about mis-recognized devices. Maybe this is such a case.

tjibbechris commented 3 years ago

I found out that supplying msg.payload.colorTemperature to the tradfri-light-control does change the temperature. Looks like the node sets temperature in stead of colorTemperature.

afbeelding vs afbeelding

mjwwit commented 3 years ago

I found out that supplying msg.payload.colorTemperature to the tradfri-light-control does change the temperature. Looks like the node sets temperature in stead of colorTemperature.

Good find! It seems I indeed made an error here. I'm not sure if this fixes any of the original problems, but I've fixed this and released version 0.4.6.

mjwwit commented 3 years ago

I was finally able to go to IKEA and buy an RGB bulb last weekend. After some careful debugging and testing I've found and fixed the underlying problem leading to white RGB bulbs and bulbs not remembering their color when turned on. I've already released version 0.4.8 which includes this fix.