How do I control FGRGBW-442 RGBW Controller 2

I was thinking of using the enum that is already defined in the binding. This means that everything is consistent - ie the XML will also say the same thing, and any database additions that might one day be required would also use the same enum. If we use different names in different places, there’s the potential for confusion, and if ZWave add more colours, we could end up with conflicts.

Fine - no problem with that :slight_smile:

I would suggest level, since that is what is being set - it’s the “multilevel - level” that we are setting. Maybe in your device Fibaro have called this “master” but that may not mean a lot for other devices.

Cool - thanks. Hopefully we’re nearly there :slight_smile:

I’ll take a look at this in a day or two - it’s not too much work to add.

Hmm, I’d really like some kind of short notation.
How about positional support?

e.g.
10,,50,100,150,,, would be the same as
warm_white:10,red:50,green:100,blue:150

No hurry - I have a workaround in place so everything is working well on my side.

How do you envisage using this? Will it be a rule and if so, does it matter if the notation is a little long? You’re not expecting a user to type this in manually I assume are you, and IMHO using red=1,green=2,purple=4 is a lot easier to understand what you’re doing than 1,,2,,,3,,. We don’t need to go back to the days where variables in programming languages were single letters :wink:

Again, this relies on “secret knowledge” - people need to get the right number of commas in the right place. I would prefer something more foolproof.

The other option we’ve used a lot in the ZWave binding is json, so we could instead use that rather than the colon delimited notation.

Yes - it will be from a rule. You’re propably right - i was just thinking about readability in the logs.

hm, json would be like this:
{"warm_white":50,"red":100,"green":150,"blue":200}
vs
warm_white:50,red:100,green:150,blue:200

I like the latter batter because it’s more readable.

Hi there,
I have purchased two FGRGBW-442 RGBW Controller 2 devices, too. I’m experiencing the exact same behavior as @KlausStoertebeker described in his topic start: Both devices turn on the red color on the RGBW led strip, but it seems that I cannot change the color when using the Color_color1 channel from the openhab Control panel in paperUI. I did not notice a difference in behavior when switching parameter 150 from 0 to 1 (RGB/HSB mode): red remains red.

I started reading all posts from the beginning and it is a fascinating read. I definitely learned a thing or two about the interaction of a device and a binding. However I’m not convinced that the problem @chris, @Spaceman_Spiff and @stefan.oh are resolving is actually going to solve the problem as described in the start of the topic.

If someone could summarize how the reported problem was traced back to a root cause with an apparent solution (that is not yet available) then that would be great, for my understanding. At the moment I’m somewhat lost and to me it seems that the topic has a little bit been hijacked. However this could also relate fully to the lack of knowledge I’m suffering from.

It is not - I kind of hijacked the thread - sorry.

Because this parameter is only relevant if you connect a physical input switch to the device.

These are the item definitions.

Dimmer  RGBW2_All   {channel = "zwave:device:controller:node44:switch_dimmer",   autoupdate="False"}
Color   RGBW2_RGB   {channel = "zwave:device:controller:node44:color_color1",    autoupdate="False"}
Dimmer  RGBW2_W     {channel = "zwave:device:controller:node44:switch_dimmer5",  autoupdate="False"}

First send command 100 to RGBW2_All, then you can send HSB Commands to RGBW2_RGB.
Just make sure to never send ON or OFF until Chris provides a fix.
Then the device should work as expected.

If it doesn’t then there might be another issue we need to look at.

I created the items and they appear fine in the paperUI control panel. when I set the
RGBW_All item to 99 (yes I know, clicking on a slider is not my thing) I see that also in the eventlog. It seems that it triggers a chain of events:

2020-10-20 22:45:21.001 [ome.event.ItemCommandEvent] - Item 'Erker_RGBW_All' received command 99
2020-10-20 22:45:22.632 [vent.ItemStateChangedEvent] - Erker_RGBW_All changed from 0 to 45
2020-10-20 22:45:22.704 [vent.ItemStateChangedEvent] - Erker_RGBW_Consumption changed from 0 to 0.4
2020-10-20 22:45:22.780 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 0,0,0 to 0,0,49
2020-10-20 22:45:23.068 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 0,0,49 to 276,45,60

so then I changed the color item to blue-ish, and again a chain of events is logged:

2020-10-20 23:08:42.966 [ome.event.ItemCommandEvent] - Item 'Erker_RGBW_RGB' received command 187,45,60
2020-10-20 23:08:43.500 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 276,45,60 to 273,44,60
2020-10-20 23:08:44.806 [vent.ItemStateChangedEvent] - Erker_RGBW_All changed from 45 to 100
2020-10-20 23:08:44.959 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 273,44,60 to 273,44,100
2020-10-20 23:08:45.240 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 273,44,100 to 224,34,60

… and my LED strip end up being red again. I’m lost as the input never seems to be forwarded to the device and I doubt 224, 34, 60 is the color code for red

Imho you are doing everything correctly.
Maybe create the items for the channels R, G, B (see on very top) and try controlling each channel with a dimmer to ensure, the LED strip is properly connected.

Also can you look inside the openhab/userdata/zwave/device.xml of the z-wave node for the COMMAND__CLASS__SWITCH__COLOR and post it?

<entry>
  <commandClass>COMMAND_CLASS_SWITCH_COLOR</commandClass>
  <COMMAND__CLASS__SWITCH__COLOR>
    <endpoint reference="../../../.."/>
    <version>3</version>
    <instances>1</instances>
    <control>false</control>
    <versionSupported>3</versionSupported>
    <supportedColors>
      <colorType>GREEN</colorType>
      <colorType>RED</colorType>
      <colorType>WARM_WHITE</colorType>
      <colorType>BLUE</colorType>
    </supportedColors>
    <refreshList/>
    <colorMap>
      <entry>
        <colorType>GREEN</colorType>
        <int>0</int>
      </entry>
      <entry>
        <colorType>RED</colorType>
        <int>0</int>
      </entry>
      <entry>
        <colorType>WARM_WHITE</colorType>
        <int>0</int>
      </entry>
      <entry>
        <colorType>BLUE</colorType>
        <int>0</int>
      </entry>
    </colorMap>
    <isGetSupported>true</isGetSupported>
  </COMMAND__CLASS__SWITCH__COLOR>
</entry>
                <commandClass>COMMAND_CLASS_SWITCH_COLOR</commandClass>
                <COMMAND__CLASS__SWITCH__COLOR>
                  <version>3</version>
                  <instances>1</instances>
                  <control>false</control>
                  <versionSupported>3</versionSupported>
                  <supportedColors>
                    <colorType>GREEN</colorType>
                    <colorType>BLUE</colorType>
                    <colorType>WARM_WHITE</colorType>
                    <colorType>RED</colorType>
                  </supportedColors>
                  <refreshList/>
                  <colorMap>
                    <entry>
                      <colorType>GREEN</colorType>
                      <int>245</int>
                    </entry>
                    <entry>
                      <colorType>BLUE</colorType>
                      <int>0</int>
                    </entry>
                    <entry>
                      <colorType>WARM_WHITE</colorType>
                      <int>0</int>
                    </entry>
                    <entry>
                      <colorType>RED</colorType>
                      <int>0</int>
                    </entry>
                  </colorMap>
                  <isGetSupported>true</isGetSupported>
                </COMMAND__CLASS__SWITCH__COLOR>

obviously the integer for colortype GREEN is not 0 … and the attribute
<endpoint reference="../../../.."/>
is missing on my end

I used paperUI to create items for the individual dimmers the other day. I was able control the dimmer of the RED channel. all other channels are not responding. I have the same result on both devices.
I did not try to create items using files. I could try but I don’t expect any difference

Please try and post the item configuration of all your used items.
Also make sure that all inputs of the device are not connected.

first of all I just noticed that COMMAND_CLASS_SWITCH_COLOR appears twice in my xml file for the device. This second entry looks like this:

<commandClass>COMMAND_CLASS_SWITCH_COLOR</commandClass>
            <COMMAND__CLASS__SWITCH__COLOR>
              <endpoint reference="../../../.."/>
              <version>3</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>3</versionSupported>
              <supportedColors>
                <colorType>GREEN</colorType>
                <colorType>BLUE</colorType>
                <colorType>WARM_WHITE</colorType>
                <colorType>RED</colorType>
              </supportedColors>
              <refreshList/>
              <colorMap>
                <entry>
                  <colorType>GREEN</colorType>
                  <int>144</int>
                </entry>
                <entry>
                  <colorType>BLUE</colorType>
                  <int>153</int>
                </entry>
                <entry>
                  <colorType>WARM_WHITE</colorType>
                  <int>0</int>
                </entry>
                <entry>
                  <colorType>RED</colorType>
                  <int>84</int>
                </entry>
              </colorMap>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__SWITCH__COLOR>

I will create items for the individual colors later today using files. I assume you mean with “all of your used items” just all the items that relate to this thing…

I just setup the items in my file:

//FGRGBW-442 (Erker)
Dimmer  Erker_RGBW_All          "ErkerLed Dimmer All"   {channel="zwave:device:6d657feb:node10:switch_dimmer",    autoupdate="False"}
Color   Erker_RGBW_RGB          "ErkerLed RGB Kleur"    {channel="zwave:device:6d657feb:node10:color_color1",     autoupdate="False"}
Dimmer  Erker_RGBW_Red          "ErkerLed Dimmer Rood"  {channel="zwave:device:6d657feb:node10:switch_dimmer2",   autoupdate="False"}
Dimmer  Erker_RGBW_Green        "ErkerLed Dimmer Green" {channel="zwave:device:6d657feb:node10:switch_dimmer3",   autoupdate="False"}
Dimmer  Erker_RGBW_Blue         "ErkerLed Dimmer Blue"  {channel="zwave:device:6d657feb:node10:switch_dimmer4",   autoupdate="False"}
Dimmer  Erker_RGBW_W            "ErkerLed Dimmer Wit"   {channel="zwave:device:6d657feb:node10:switch_dimmer5",   autoupdate="False"}
Number  Erker_RGBW_Consumption  "ErkerLed Verbruik"     {channel="zwave:device:6d657feb:node10:meter_watts",      autoupdate="True"}

I updated Dimmer Erker_RGBW_All to value 99 (again :face_with_raised_eyebrow:). see log.

2020-10-22 17:12:57.753 [ome.event.ItemCommandEvent] - Item 'Erker_RGBW_All' received command 99
2020-10-22 17:12:59.365 [vent.ItemStateChangedEvent] - Erker_RGBW_All changed from NULL to 45
2020-10-22 17:12:59.442 [vent.ItemStateChangedEvent] - Erker_RGBW_Consumption changed from NULL to 0.5
2020-10-22 17:12:59.513 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from NULL to 0,0,49
2020-10-22 17:12:59.776 [vent.ItemStateChangedEvent] - Erker_RGBW_RGB changed from 0,0,49 to 187,45,60
2020-10-22 17:12:59.837 [vent.ItemStateChangedEvent] - Erker_RGBW_Red changed from NULL to 32
2020-10-22 17:12:59.905 [vent.ItemStateChangedEvent] - Erker_RGBW_Green changed from NULL to 56
2020-10-22 17:12:59.965 [vent.ItemStateChangedEvent] - Erker_RGBW_Blue changed from NULL to 59
2020-10-22 17:13:00.026 [vent.ItemStateChangedEvent] - Erker_RGBW_W changed from NULL to 0

LEDstrips turned red again. What is with the xml color values not being 0? should I make changes to the xml file?

You can ignore the values in the XML - they are not important at all.

Are you sure your led strip is properly connected? The device seems to turn the channels on.

Ok, this post is to prevent others to go through the same embaressment as I just did. After extensive testing of all the individual ports of the fibaro controller I suddenly realized that my 12v adapter was in no way prepared to deal with my 24v ledstrip.

Thanks for helping out nevertheless

1 Like

@chris
I just want to keep track of things:
Will this be included in the next release?

I had some problems merging the last changes, but they are now merged. This changes to use the brightness control in the RGB command, but hasn’t yet added the RGBW, indexed mode I suggested. This is quite simple, and mostly coded, so I’ll try and finish that soon.

I’m not sure when the next release is though (or if there is one and you just need to use SNAPSHOTs).

1 Like

Openhab 2.5.11 just got released, but in the change log it doesn’t say anything about z-wave.
Have the changes been included?

@chris
Openhab 2.5.11 just got released, but in the change log it doesn’t say anything about z-wave.
Have the changes been included?

The changes I merged to change the level control (as we discussed previously) are in there - I haven’t done the new channel yet (sorry - I got caught with other things at the moment). I will try and do that over the next few days - if I forget, please feel free to remind me again. It’s 99% done, but I’m running around the house a bit at the moment as we’re trying to sell the house and I have way to much junk that I need to get rid of :slight_smile: