Core: No color temp support with Tradfri RGB via ZHA

Created on 23 Aug 2018  路  19Comments  路  Source: home-assistant/core

Home Assistant release with the issue:

0.76.2

Last working Home Assistant release (if known):
N/A

Operating environment (Hass.io/Docker/Windows/etc.):

Hass.io

Component/platform:

https://www.home-assistant.io/components/zha

Description of problem:
The IKEA Tradfri RGB bulbs don't seem to support to set their color temperature. I can only provide color using the color wheel.

  1. Link a IKEA Tradfri RGB bulb to your Home Assistant using ZHA component
  2. Click on the bulb in the Home Assistant UI
  3. Notice only the color wheel is available, no temperature bar is visible

image

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):


Traceback (if applicable):


Additional information:
I've seen in multiple YouTube videos that the original Tradfri app from Ikea can set a color temperature to this type of bulbs (IKEA of Sweden TRADFRI bulb E27 CWS opal 600lm), and I've also seen people having the color temperature slider in their Home Assistant instance. I've also tried to bypass the default "supported_features" taht is set to 49, and to set it to 51 (adding color teperature functionality), the slider appears, but nothing is happening to the bulb when I move it.
Maybe something is needed to convert the color temp to an RGB value, I don't really know ...

zha problem in dependency stale waiting-for-reply

Most helpful comment

Please kill this bot

All 19 comments

RGB and RGBW are 2 different types of lights. Only RGBW lights can use color temperature, if your light only supports RGB then it cannot adjust the white spectrum.

I'm pretty sure those lights are RGBW, because I know you can control the white light tremperature through Ikea official application. I'va already seen plenty YouTube videos with people getting the temperature slider in their HA web interface.
Maybe they used a script to convert the temperature value to and RGB one, and then send an RGB command to the bulb ...

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:

Bumping: This worked previously, and works if you manually set the temperature in mired of a Tradfri RGBW light

The support is there: https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/light/tradfri.py#L309

It looks like only the tradfri.py component supports the conversion from CT to color to properly set the color temp on the RGBW IKEA bulbs.

Hue, DeConz and so on lack this feature.

Could it be added?

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:

Still an issue

I guess those IKEA lights cannot properbly change color temperature. I assume the Tr氓dfri app only sets different color. None the less, I did a hack above (I doubt it'l get merged tho). The colors get way red etc.

This is because of a problem in Zigpy. Device profiles are a mess. It also affects Sengled tunable bulbs. We are discussing a solution. stay tuned

@dmulcahey hopefully you're right. It's strange that tradfri has a workaround that sets the temperature using hue/saturation though.

Can someone get me the SimpleDescriptor for one of these bulbs?

@dmulcahey how?

@dmulcahey Here goes...

```
bash-4.4# bellows -v DEBUG -d /dev/ttyUSB-zha zdo d0:cf:5e:ff:fe:29:62:e3 get-endpoint 1
debug: Using selector: EpollSelector
debug: Loading application state from /root/.config/bellows/app.db
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 3 value: 30138
debug: Attribute id: 4 value: 26909
debug: Attribute id: 7 value: 454
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E14 WS opal 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 0 value: 254
debug: Attribute id: 0 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 CWS opal 600lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 8
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 4 value: 26909
debug: Attribute id: 3 value: 30138
debug: Attribute id: 7 value: 370
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 1
debug: Attribute id: 0 value: 75
debug: Attribute id: 0 value: 75
debug: Attribute id: 0 value: 114
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 2
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 1
debug: Attribute id: 7 value: 370
debug: Attribute id: 0 value: 1
debug: Attribute id: 4 value: 26909
debug: Attribute id: 3 value: 30138
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 1
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 3]) {1}
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because profile_id mismatch on at least one endpoint
debug: Considering
debug: Fail because endpoint list mismatch: dict_keys([1, 2, 242]) {1}
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 3 value: 30138
debug: Attribute id: 4 value: 26909
debug: Attribute id: 7 value: 454
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E14 WS opal 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 0 value: 254
debug: Attribute id: 0 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 CWS opal 600lm'
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb E27 WS opal 980lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 16
debug: Attribute id: 16394 value: 8
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 4 value: b'IKEA of Sweden'
debug: Attribute id: 5 value: b'TRADFRI bulb GU10 WS 400lm'
debug: Attribute id: 16394 value: 16
debug: Attribute id: 4 value: 26909
debug: Attribute id: 3 value: 30138
debug: Attribute id: 7 value: 370
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 7 value: 1
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 1
debug: Attribute id: 0 value: 75
debug: Attribute id: 0 value: 75
debug: Attribute id: 0 value: 114
debug: Attribute id: 0 value: 0
debug: Attribute id: 0 value: 2
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 1
debug: Attribute id: 7 value: 370
debug: Attribute id: 0 value: 1
debug: Attribute id: 4 value: 26909
debug: Attribute id: 3 value: 30138
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 203
debug: Attribute id: 0 value: 1
debug: Resetting EZSP
debug: Resetting ASH
debug: Sending: b'1ac038bc7e'
debug: RSTACK Version: 2 Reason: RESET_SOFTWARE frame: b'c1020b0a527e'
debug: Send command version
debug: Sending: b'004221a850ed2c7e'
debug: Data frame: b'0142a1a8502815e23c957e'
debug: Sending: b'8160597e'
debug: Application frame 0 (version) received
debug: Send command setConfigurationValue
debug: Sending: b'7d314321fb582815c3277e'
debug: Data frame: b'1243a1fb54fb737e'
debug: Sending: b'82503a7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'224021fb592f15226f7e'
debug: Data frame: b'2340a1fb54c6107e'
debug: Sending: b'83401b7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'334121fb792b15a2d77e'
debug: Data frame: b'3441a1fb54d32a7e'
debug: Sending: b'8430fc7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'444621fb7d5e291514417e'
debug: Data frame: b'4546a1fb5435d07e'
debug: Sending: b'8520dd7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'554721fb4d2815713f7e'
debug: Data frame: b'5647a1fb54a9ec7e'
debug: Sending: b'8610be7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'664421fb513a156dc37e'
debug: Data frame: b'6744a1fb54948f7e'
debug: Sending: b'87009f7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'774521fb4e221542f17e'
debug: Data frame: b'7045a1fb5481b57e'
debug: Sending: b'8070787e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'004a21fb450a1565697e'
debug: Data frame: b'014aa1fb54e28c7e'
debug: Sending: b'8160597e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'7d314b21fb462a0b039a7e'
debug: Data frame: b'124ba1fb547eb07e'
debug: Sending: b'82503a7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'224821fb4a2b15f9da7e'
debug: Data frame: b'2348a1fb5443d37e'
debug: Sending: b'83401b7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'334921fb629e15fdff7e'
debug: Data frame: b'3449a1fb63105d7e'
debug: Sending: b'8430fc7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'444e21fb471615579c7e'
debug: Data frame: b'454ea1fb54b0137e'
debug: Sending: b'8520dd7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'554f21fb4f2215fdd67e'
debug: Data frame: b'564fa1fb542c2f7e'
debug: Sending: b'8610be7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command setConfigurationValue
debug: Sending: b'664c21fb55d515bccd7e'
debug: Data frame: b'674ca1fb54114c7e'
debug: Sending: b'87009f7e'
debug: Application frame 83 (setConfigurationValue) received
debug: Send command getConfigurationValue
debug: Sending: b'774d21fa575baa7e'
debug: Data frame: b'704da1fa542015e0537e'
debug: Sending: b'8070787e'
debug: Application frame 82 (getConfigurationValue) received
debug: APS_UNICAST_MESSAGE_COUNT is set to 10
debug: Send command addEndpoint
debug: Sending: b'005221aa552e145de7944a24aa50f9477e'
debug: Data frame: b'0152a1aa5441667e'
debug: Sending: b'8160597e'
debug: Application frame 2 (addEndpoint) received
debug: Ezsp adding endpoint: []
debug: Send command networkInit
debug: Sending: b'7d315321bf8dae7e'
debug: Data frame: b'1253a5bf54fd1c7e'
debug: Sending: b'82503a7e'
debug: Application frame 23 (networkInit) received
debug: Data frame: b'2253b1b1c4cee77e'
debug: Sending: b'83401b7e'
debug: Application frame 25 (stackStatusHandler) received
debug: Send command getNetworkParameters
debug: Sending: b'23502180d2c37e'
debug: Data frame: b'3350a180542b112e4f0ba69f1a28bb89944127abedce677302c106c97e'
debug: Sending: b'8430fc7e'
debug: Application frame 40 (getNetworkParameters) received
debug: Send command setPolicy
debug: Sending: b'345121fd517a9af47e'
debug: Data frame: b'4451a1fd547fad7e'
debug: Sending: b'8520dd7e'
debug: Application frame 85 (setPolicy) received
debug: Send command setPolicy
debug: Sending: b'455621fd524b8e3d7e'
debug: Data frame: b'5556a1fd54808b7e'
debug: Sending: b'8610be7e'
debug: Application frame 85 (setPolicy) received
debug: Send command setPolicy
debug: Sending: b'565721fd542b36087e'
debug: Data frame: b'6657a1fd5414037e'
debug: Sending: b'87009f7e'
debug: Application frame 85 (setPolicy) received
debug: Send command getNodeId
debug: Sending: b'6754218f5b817e'
debug: Data frame: b'7754a18f542ad3037e'
debug: Sending: b'8070787e'
debug: Application frame 39 (getNodeId) received
debug: Send command getEui64
debug: Sending: b'7055218e367d3a7e'
debug: Data frame: b'0055a18e3d1310bf59fb4725b9d77e'
debug: Sending: b'8160597e'
debug: Application frame 38 (getEui64) received
debug: Send command sendUnicast
debug: Starting EZSP watchdog
debug: Sending: b'015a219c541fbfb259904a25aa1593499c4f26afecfbcd8a93a67e'
debug: Data frame: b'115aa19c54720f9c7e'
debug: Sending: b'82503a7e'
debug: Application frame 52 (sendUnicast) received
debug: Data frame: b'215ab1ed542a15b6d9944a65aa559261638012011231408afdf3c9abfd20ffa7e9cfd76f8ffcc7dfd5d7698a462ba9ec753eaeea65864498552633b1e06000c27e'
debug: Sending: b'83401b7e'
debug: Application frame 69 (incomingMessageHandler) received
debug: Data frame: b'315ab197541fbfb259904a25aa1592499c1626abedf3737e'
debug: Sending: b'8430fc7e'
debug: Application frame 63 (messageSentHandler) received

Had a chance to look at this more... The profiles were not the issue with these bulbs. Seems like this isn't actually supported? If that's the case we probably won't be copying the hack from the Tradfri component.

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 馃憤
This issue now has been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

Please kill this bot

Recently migrated to zha. Both on the IKEA Gateway and Deconz it was possible to set the color temperature. Granted it might be a hack in both deconz and the tr氓dfri component but proven that it is possible to emulate support and that it exists in at least two other components, it makes it harder to promote why zha is a "better" setup.

It would be great if it could be made clear if a solution will be implemented or not to allow people to either hold off on migrating to zha or live with the lack in features (even though this is not the fault of hass but rather IKEA).

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 馃憤
This issue now has been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

And it finally happened

Was this page helpful?
0 / 5 - 0 ratings