Fibaro Dimmer 2 > parameter 38 (firmware version 3.5)

Hi all,

Searched the forum and cannot find my question (either the answer).

I have got 20+ Fibaro Dimmer 2 all updated (via Fibaro Home Center Lite) to firmware 3.5 which enables parameter 38. Parameter 38 enables:
Parameter 38 Brightness level correction for flickering loads

Correction reduces spontaneous flickering of some capacitive load (e.g. dimmable LEDs) at certain brightness levels in 2-wire installation.

0 - automatic correction disabled
1-254 - duration of correction in seconds
255 - automatic correction always enabled

This really helpes at my side to avoid the unwanted flickering.

Anybody able to help me how I can set parameter 38 to 255 ?! Does this need an update of the Homey Fibaro APP?

With kind regards,

According the manual the default setting for parameter 38 = 255.
So unless u changed it it should be correct already?
Otherwise u can set them in advanced settings/expert parameters with 38,2,255

1 Like

Thanks! The ‘2’ definiately helped. And to answer to your question is: no, the default (at least in my case: all firmware update) is not 255.

After updating the firmware (with Home Center Lite) it usually was 0. Now I now how to -manually- enter 255, thanks!

1 Like

Hey @Rocodamelshekima whats the 2 for?

Parameters are constructed in 3 parts with the parts being separated by a comma ( , ), also in this specific order:

  1. Parameter, this ranges from 0 to 255
  2. Byte, this specifies the amount of bytes that are being send, either 1, 2 or 4.
  3. Value, this is the value that is send to the device.

When adding multiple parameters , the parameters should be separated by semicolons ( ; ), for example: 20,1,0;80,1,0
© @Caseda

Shouldn’t it be one (1) then?


1 Like

The parameter size (2nd part) is always the manufacturer determined size (either 1, 2 or 4 bytes).

Even if the value is only 1 byte long (range -128 - 127 decimal), if the parameter is determined by the manufacturer as a size 2 bytes parameter, it should be size of 2 in the expert parameters, homey’s core will convert the value to the appropriate hexadecimal value (the same goes for 2 byte size’d parameters).

Warning: below this is pretty technical! only if you want to know more about parameter values

Parameters are (officially) signed hexadecimal, homey uses decimal as that is more normal human friendly and coverts this just before sending it to the device, most of the time.

IE: value of 50 (decimal) with a parameter size 2 it will become 0x0032 (hexadecimal) (and thus not 0x32, the device will simply ignore this, or throw back an error you won’t see) as value that is being send.
Expert parameter (38) value: 38,2,50 OR 38,2,0x0032

Then i’ll see the next question popping up, wait -128 until 127?
Yes by default parameters are so called “signed” values making the range going from negative 128 until positive 127 (decimal) (for 1 byte parameters)
If you would like a value (positive) 128 until 255 and the parameter is only 1 byte long (Fibaro does this a lot) you’ll need to convert this manually to hexadecimal (for expert parameters only) or it will fail.
This is also the reason why you would see a lot of manufacturers use the range 0 - 127 when they have 1 byte parameters.
IE: value of 130 (decimal, parameter size 1 byte) = 0x1E
makes for expert parameter (38): 38,1,0x1E and not 38,1,130

A small exception is made for 255 (decimal) as value 255 is always 0xFF in hexadecimal
This is only from decimal to hexadecimal, the other way around you get -1 (negative 1) as decimal value, so be careful.

/\ This changed in homey v2, 255 now also needs to be converted for 1 byte size (0xFF).

Most manufacturers that usually wants a 0 - 255 range just make the parameter size 2 (this parameter used here is a good example, one of the few Fibaro parameters that do this), but usually then also just make the range go from 0 - 32767, which is the max (positive) number range of size 2.

1 byte:
-128 - 127
0 - 255 => 0x00 - 0xFF

2 bytes:
-32768 - 32767
0 - 65535 => 0x0000 - 0xFFFF

4 bytes:
-2147483648 - 2147483647
0 - 4294967295 => 0x00000000 - 0xFFFFFFFF

Here is a good tool for converting decimal values to hexadecimal values, though the tool uses unsigned (0 - 255 for 1 byte) decimals, unlike parameters, conversion is only needed for the unsigned (0 - 255 for 1 byte) parameters anyway.

1 Like

Thank you all. Clear information and interesting to read!
I will adapt these changes a.s.a.p. (38,2,255)

The strange thing is I have got a three wire installation with the Fibaro Dimmer 2 and all my LED’s are dimmable, one consume roughly 4.5Watt, Still my installation “flickers” lot less with Parameter 38 on 255. I also tried leasing oud the blue wier (creating a two wire installation)… but the best solution is three wires, Parameter 38 on 255 and with some LED’s I then also need the bypass.

With kind regards and thanks again,

The bypass is needed when the Watt of the leds is less then 25.

In my situation that is not always the case! I have got 20+ Fibaro Dimmer 2… Each Dimmer with 1 to 4 LED’s attached (every LED consumes 4.5Watt). All Dimmer’s in a three wire system.

  • 2 Dimmers with 1 LED attached: no by-pass, no flickering (might be caused because these are the toilets > never to long there, maybe I accedently always miss the flickering)
  • Some Dimmers with 2 LED’s attached: no by-pass needed
  • 2 Dimmers with 3 LED’s attached: both by-pass needed to avoid flickering
  • Some with 4 LED’s attached: some of them do need a by-pass, others don’t

So I have to try every Dimmer with parameter 38 on 255 > that basically helps. In some cases this doesn’t help enough > then I use a by-pass.


I think there is more of that situations among us :wink:

Do you have my idea what’s going wrong and/or what I could do to get this working?

Thanks in advance!
Kind regards,

See above messages : for 255 you need a parametersize 2… So 255 is out of bounds for a size 1…

Sorry, I tried both, comperible errors, see new picture.image

seems like all expert parameters are now with the same error index out of range: index out of range, no matter what device or value (unless really out of bounds).
i guess that will be something for athom support channel

Changing the parameters works fine over here. Do you have the latest firmware on the dimmer 2? Parameter 38 has been added in a firmware update, if older firmware is installed you can’t change that variable.
I had quite some flickering issues with the dimmers in the evening, it looked like it was coming back everytime after 30 minutes sharp. I’ve changed parameter 38 and 40, that did the trick for me: 38,2,0;40,1,0

You are indeed correct @Rik_Post if the parameter isn’t supported you get the message of the OP.

@blue-OX This means you’ll have to update your firmware of the dimmer 2 (unfortunatly not possible with any other controller then fibaro (fibaro itself doesn’t let that happen)), or you could ask your shop if they offer an update service, or anyone you know with an fibaro home center (lite).
Or the probably most expensive option, buy a new version of the dimmer 2 with updated firmware.

He guys,

Thanks for pointing that out, but (as mentioned in the title and in my frst post) I have updated all my Dimmers to firmware 3.5 (with a Fibaro Home Center Lite). So this is really strange behaviour. The strange things is, it keeps the setting 38,1,25… (which was my first attempt to save 38,1,255 > it did not save the 255. Now I can not even save 38,2,0. It only wants to save 38,1,25

I will check again this weekend… but the problem exists at multiple Dimmers… and I might have missed one of them, but not so many.

If anybody knows how to help, I would really appreciate. In the mean time I will report back to you in the weekend.

@Rik_Post Could you help me indicating which number of the firmware the Dimmer reports in Homey (it is not equal to Fibaro). With that help I can determine if my updates did go wrong. Mine says; 274 > but I don’t know if it is Zwave firmware or dimmer firmware.


It had been over a year ago that I updated the dimmers. I have 2 updated ones and one that isn’t updated. All of them say 271, and no information at the firmware field.

Hello all,

It is really strange. I excluded one of the Dimmer’s from Homey. Included them at my Fibaro Home Center Lite (HCL) again. It says: Firmware 3.5. So that’s the correct one. In HCL by default it takes for parameter 38 value 255… so that seems to work.

I then excluded it from the HCL, included it again with my Homey… same result again: not possible to enter 38,2,n >> it only allows 38,1,n. And n needs to be 125 or smaller, so 38,1,0 / 38,1,125 are able to be saved, other values are not able to be saved.

Anybody able to help me with this one? How it is possible I am not able to save parameter 38 at the RAW parameters field.

By the way, a second Dimmer gives the same problem… of course I can trust on the default value for 38… nut I prefer to set is explicitly.

Thanks for your help, kind regards,