Try sending configure
or refresh
commands first. Is there anything in the log ouptut?
I guess you mean line 90 as of August 2020 version.
Using Pedro Garcia’s driver I am able to control the IKEA Tradfri “RGB” bulbs.
Through “Device” I am able to dim and change colors (within its capabilities) as well as though Dashboards. Dashboards only allow to close the color window with the bulb “off”, but otherwise is fully functional.
Through Apps (I.e. Rule Machine) I can toggle them as a switch, but not as a bulb. Neither can I adjust the sim level, or the color.
Is there a way in Rule Machine to send a ColorName command to the bulb, as I can through “Device”?
YESSSS! That works!
Thanks a lot!
All the drivers I tested, the pedro garcia's driver is actualy working, including colors. But only if you use the attribute "set color by name": red, orange, yellow, green, cyan, indigo, blue, fuchsia, bright pink, white. It still does give some errors when using the other preset color commands (like set blue). So basically if you use the by name colors in your RM your are fine.
Hi All,
I wasn't super satisfied with any of the drivers that I could find for the Tradfri RGBW bulbs so i did a bit of modding on pedro garcia's ST driver.
hopefully you might find it helps a bit, you can find the code here: GitHub - eliotstocker/hubitat-ikea-rgbw: A fully functional Hubitat RGBW driver for Ikea Bulbs
you can also get it on Hubitat Package Manager
To be completely clear almost all of the credit should go to the original Author: GitHub - puzzle-star/SmartThings-IKEA-Tradfri-RGB: SmartThings Device Handler for IKEA Tradfri RGB Bulbs
Having some of these bulbs, I am wondering if you have a comparison of what this driver does that the others you were unsatisfied with did not.
The idea was to just make it work as closely to the stock Zigbee RGBW driver as possible, this means that the Ikea and Hue bulbs i have connected directly work more or less the same.
Changes from Puzzle Star Version:
- Add capabilities: ColorMode and Color Temperature
- Add Color Temperature methods (emulated by setting various shades of orange, should more or less match Ikea white spectrum bulbs)
- fix getting values back from bulbs (so that state in hubitat is set directly from bulb)
- different color name matching
Thanks, yours was the only one that worked for me.
I built a bit further on @eliotstocker version of the bulb because I saw some issues with scenes. E.g. the bulb did not turn on when setting a scene, and in CT mode the dimmer level was missed due to the way scenes operate the bulb in CT mode.
Fixes from @eliotstocker version:
- Use asynchronous zigbee messaging so that dimmer level is not missed when operating in CT mode in a scene setting
- Added the possibility to turn on and off debug and trace info
- Also added support for the rate field in setLevel, i.e. it can be controlled how fast the bulb dim to the new setting.
Raw link: https://raw.githubusercontent.com/ivarho/hubitat-ikea-rgbw/main/ikea-tradfri-rgbw-device.groovy
Nice one @holand.ivar
these sound like great tweaks!
entirely up to you if you'd like to or not, but if you stick in a PR to my repo ill merge these changes in so they end up in HPM
Cheers
Eliot
seeing this error
java.lang.NullPointerException: Cannot execute null+[he cmd 0x70B3 0x01 0x0008 0x04 {D1 FFFF}, delay 2000, he cmd 0x70B3 0x01 0x0300 0x07 {EE5092930a00}, delay 2000] on line 319 (setColor)
That was strange, have you done any modifications to the code? Line 319 is an append to a list and no execution of any commands:
319: state.cmds += cmds
Can you post exactly the code you are using? Or the code you see on line 319?
Yep 319
state.cmds += cmds
Not changed anything mabey the state is missing?
Edit, just skimmed the code, should state.cmds =[] be added to initialize.
When I get back ill try hitting refresh to create the state
Yes, that could be the issue. Thanks for pointing that out. Before doing that try hitting refresh()
as it defines the state.cmds = , let me know if that fixes this issue, if it does I will update the driver
def refresh() {
state.colorChanged = false
state.colorXReported = false
state.colorYReported = false
state.cmds = []
zigbee.onOffRefresh() + zigbee.levelRefresh() + colorControlRefresh() + zigbee.onOffConfig(0, 300) + zigbee.levelConfig() + colorControlConfig(0, 300, 1)
}
I did some testing and found that @mark.cockcroft suggestion works. Implemented in the latest version on github. Thanks mark for discovering this.
Thanks @eliotstocker @holand.ivar, what a perfect timing. The thread is alive for 2 years, but you came out with the ported drivers just few days after I got the Tradfri bulbs.
Can you make the new versions available through the hubitat package manager as @eliotstocker recommended?
Absolutely, I haven't done that before, but I will investigate what's needed. If not @eliotstocker do it before I have time to educate myself.