RGBW bulb in Home Assistant?

Does anyone have the new RGBW bulb working properly in Home Assistant? I’m able to include the bulb, but only have switch & brightness control:

  • light.inovelli_unknown_type_0005_id_0001_level
  • zwave.inovelli_unknown_type_0005_id_0001_2

I’m having a similar problem - I can change the RGB colors but I can’t set a color temperature so it’s always a gross white.

Same issue. This device, and all the new switches/dimmers, is not (yet) in the open-zwave database forked by Home Assistant. Nor is it in the upstream open-zwave or the Inovelli github page. I was able to get my LZW30-SN switches fully working using published ozw configs and adding lines to the manufacturer_specific.xml file. Haven’t gotten around to wiring in the LZW31-SN dimmers.

@EricM_Inovelli can you publish a driver? Ideally in the 1.4 format that Home Assistant uses? I looked at writing a driver but I got quickly overwhelmed when looking at the ST or Hubitat drivers!

I can turn it on/off, change brightness, and change colors but I’m sure we are missing things. Mine also changed all by itself from instant on/off to dimming up/down when toggling the light…odd.

1 Like

Beyond the open-zwave configuration, this post, and the entire thread seems pertinent to being able to adjust the color temperature:

Changing the supported_features property to 177 on the light makes a White value slider appear for the bulb, which doesn’t seem to adjust the white balance, but does act sort of like a dimmer for the bulb to appear warm white, versus the neutral white that the center of the color wheel produces.

Thanks for the pointer, that does help w/ white balance.

But still waiting for full Home Assistant support via a OZW driver/config.

I’ve been testing our bulbs on various platforms and have landed on the Home Assistant integration. It seems like there is some incompatibility with it and many of the z-wave RGBW devices out there (as you guys have experienced).

First off, getting the tunable white slider to show up in the interface is one obstacle. I was able to get it by adding this to my configuration.yaml file:

homeassistant:

  customize:
    # Add an entry for each entity that you want to overwrite.
    light.inovelli_lzw42_rgbw_bulb_level:
      supported_features: 19

I’m not a Home Assistant expert by any means, but I’ll keep digging. If anyone else has any suggestions, I’m open. :wink:

For open-zwave, I’ve put the config files in our github and opened a pull request against their repository. I’m pretty sure the fix to this issue isn’t related to the config files, but rather a change to be made to the core of open-zwave or Home Assistant.

Config files in our repository for manual config:

Pull Request for open-zwave

3 Likes

Thanks for this update @EricM_Inovelli!

Thanks, I was able to add this zwave cfg to my home assistant install and the bulbs are now showing up properly with available parameter options. I’m not really sure what the cool white and warm white setting actually does but it lets me adjust it now.

I also tried to change the supported_features to 19 (and 177) and the white tunable slider does show up as you mentioned but it does not actually change the color. Has anyone been able to get this to work in home assistant?

I am able to adjust the color temperature in Home Assistant. However, I am using zwave2mqtt, so my configuration is likely different from most.

If anyone is using zwave2mqtt, here are my config settings (you would need to update the topic as needed:

  - platform: mqtt
    name: Bedroom Light J
    command_topic: "zwave/Bedroom/16/38/1/0/set"
    brightness_command_topic: "zwave/Bedroom/16/38/1/0/set"
    brightness_value_template: "{{ (value_json.value / 99 * 255) | round(0) }}"
    brightness_state_topic: "zwave/Bedroom/16/38/1/0"
    on_command_type: "brightness"
    payload_on: 99
    payload_off: 0
    state_topic: "zwave/Bedroom/16/38/1/0"
    state_value_template: "{{ 0 if value_json.value == 0 else 99 }}"
    color_temp_command_topic: "zwave/Bedroom/16/51/1/0/set"
    color_temp_command_template: "{{ '#%02x%02x%02x%02x%02x' | format(0, 0, 0, (0.7349 * (value - 153)) | round(0), 255 - (0.7349 * (value - 153)) | round(0))}}"
    color_temp_state_topic: "zwave/Bedroom/16/51/1/0"
    color_temp_value_template: "{{ (((value_json.value[7:9] | int(0, 16)) / 0.7349 ) | round(0)) + 153 }}"
    rgb_command_template: "{{ '#%02x%02x%02x%02x%02x' | format(red, green, blue, 0, 0)}}"
    rgb_command_topic: "zwave/Bedroom/16/51/1/0/set"
    rgb_state_topic: "zwave/Bedroom/16/51/1/0"
    rgb_value_template: "{{ value_json.value[1:3] | int(0, 16) }},{{ value_json.value[3:5] | int(0, 16) }},{{ value_json.value[5:7] | int(0, 16) }}"
    effect_command_topic: "zwave/Bedroom/16/51/1/1/set"
    effect_state_topic: "zwave/Bedroom/16/51/1/1"
    effect_list:
      - "Off"
      - "Cool White"
      - "Warm White"
      - "Red"
      - "Lime"
      - "Blue"
      - "Yellow"
      - "Cyan"
      - "Magenta"
      - "Silver"
      - "Gray"
      - "Maroon"
      - "Olive"
      - "Green"
      - "Purple"
      - "Teal"
      - "Navy"
      - "Custom"
1 Like

Is this the approach that should be used now, or should I still follow the instructions in this post? I’m fairly new to Home Assistant, and following your post, but I’m not sure exactly where to put the config files. I appreciate any help.

Honestly I’m not sure what the best method is yet. I haven’t been able to get cool white or warm white to work. Above is a post on how to get it to work with zwave2mqtt, but I’m not familiar with that.

@venture @EricM_Inovelli

Well guys, I just went through getting everything the way I like it in Home Assistant. This github page has all the details for the bulb. I plan to add more details when I add the switches and dimmers. This should hold everyone over until zwave overhaul happens in the comming months.

2 Likes

Thanks, this is great. I ended up getting the switches to work, and was going to try to pull together all of the information into one post, but this is much better.

I’m not sure why, but changing supported_features: 19 to supported_features: 177 (then excluding/including) fixed an annoying problem where the off ramp rate (?) was so slow, it would toggle the Home Assistant UI switch a couple times before staying off anytime the I turned the bulb off. Works great now, thanks again.

That’s because 19 doesn’t support transition where 177 does. The system is pretty simple, but not easy to understand if you don’t know code. But basically this is a table of supported features:

SUPPORT_BRIGHTNESS = 1
SUPPORT_COLOR_TEMP = 2
SUPPORT_EFFECT = 4
SUPPORT_FLASH = 8
SUPPORT_COLOR = 16
SUPPORT_TRANSITION = 32
SUPPORT_WHITE_VALUE = 128

So if you want features to be supported in home assistant you need to have that value added to your integer.

For your case, 19, that means it had supported brightness, color temp, and color. Which adds up to 19.

transition is 32, and white value is 128. So to get those bars to appear, you need to add those values. To make 179. This just made me realize that we might be missing color_temp.

I don’t know if these bulbs actually support these things, I was making educated guesses on the support level. I was hoping one of the Inovelli team could pipe in. Possibly hear from them on Monday when work starts.

1 Like

So yesterday I noticed my bulb went back to the old behavior of transitioning so slow it would toggle itself in the UI before landing on it’s final state. I ended up changing the supported features to 179, and excluding/including , and it was working properly again. Today it’s back to the laggy behavior. Not sure what the issue could be, or why it would revert back.

how are you changing the supported features? Via the UI or through configuration.yaml?

If you configure via the UI, it will only last for the current session. After restart, it will treat it like a second ‘supported_features’ attribute.

If you configure via configuration.yaml, it will stick forever.

I’m changing it in my customize.yaml via Samba share.

@EricM_Inovelli Thank you for getting this PR together! Any update on the request made by the OZW team to get the PR merged?