Fibaro 2 Dimmer (212 not 211)

Hi John,

Looking at the vesternet diagrams it seems S2 is not available for use as a smart switch if using a 3-position momentary switch with a Dimmer 2. Do you agree?
If so it’s an inducement to buy the more simple (bell push type) momentary switches.

Also to wire your second momentary switch to S2 I presume you need a permanent live feed to the switch and then a connection to S2.


thank you for the response, but That’s not quite what i’m looking for because there is too long of a lag (about 4 seconds).

the scenario i have is a fibaro dimmer (i’ll call it the accessory dimmer) at the entrance to a room that has no wired connection to the recessed lights i recently added in the ceiling in that room. the lights ARE hardwired to another fibaro dimmer (the target dimmer) in that same room. i need a virtual 3-way set-up between the two dimmers so that when the accessory dimmer is turned on/off or dimmed then the target dimmer also turns on/off or dims. using a smart app (such as “dim or dimmer” or “dim with me” or “smart lighting”), or setting up Rules or IFTTT introduces too much lag. others have solved this problem using direct association between their dimmers/switches, and I’ve read direct association (when one z-wave switch talks directly to another without going thru the hub) is almost instantaneous. unfortunately for me the dimmers/switches they used were not fibaro dimmers, so i can’t find definitive instructions on how to do this in a ST environment. and switching dimmers is not an option… wife doesn’t like the way they look. the Fibaro dimmer gives me the option to use a switch that matches the rest of the house. It looks like Direct Associations are a piece of cake with the Fibaro Home Center hub, but i’m not ready to go buy a different hub, yet.

Thanks, love the diagrams, wouldn’t even try to draw on my phone.
Will try installing in the back box with the 3 position momentary switches (haven’t bought yet) . Fingers crossed. Will report back.

Yes, I’ve successfully used Association Groups with both the Fibaro RGBW and the Fibaro Dimmer 2. My device handler for the Fibaro RGBW has full functionality for setting associations via the GUI, however I haven’t yet ported the same functionality back to my older Fibaro Dimmer 2 device handler (i just wrote some static code where I needed it). All my SmartThings code is here:

I don’t have much time for SmartThings-related stuff at the moment, but you are welcome to look at the code for both device handlers and copy the relevant bits back to the Fibaro Dimmer 2 device handler, then you can set association groups from the GUI till your heart’s content.

Yes, that’s a big reason not to use 3 position momentary switches (although you could use up and down as single switches if you wanted to).

Dimming is still pretty intuitive, it’s push and hold to dim then release, push and hold to brighten.

You can just take the permanent live from S1 for the live feed.

Not sure if youre saying that they simply cannot perform as intended with Dimmer2. (up = dim up, down = dim down)
Or that they can work that way but only when installed in backbox.
If its the former, then that’s slightly disappointing.
If its the latter, I’ll get my chisel out.

There is this encouraging info on the Vesternet site:

No, not at all. Fibaros work well with 3 position momentary switches with up/down to dim/brighten.

However this means that S2 is used, and then can’t be used for a second ‘smart’ switch.

An example I often cite is my lounge, where I have a double momentary (2 position) switch with one switch connected to S1, and one to S2.

S1 is connected to the main light and has all of the normal functionality.

S2 is not connected to anything, but has a live feed and sends frames which are picked up by ST. These turn the lamp in the corner on/off. So, it looks as if it’s wired into the lamp to a layman. The lamp just has a smart bulb in it.

This is all catered for in the custom device handler.


I just installed a Fibaro Dimmer 2 (212) in a three wire set-up on a momentary switch. I have also read through this entire thread without finding a solution to my problem.

After installing it i worked directly of the box with the “Fibaro Dimmer”-device handler that was preselected. On/Off -works flawllessly both on the button and the app. 'but not dimming.

Easy! Just install some of the great custom code and it will solve my problem was my first thought but i cant get it to work. I have made these steps:

  1. Copied code from Hajar, Ravji or Codesaur
  2. Pasted it in under “from code” in devicehandler from “create new device handler” --> Create -> Save and publish (for me)
  3. Under the device i selected one of the new handlers.
  4. Try to turn on the lights using the app but nothing happens, Parameter-settings dosent work either.

Im on a IOS-device so i dont think it is the parameters-setting being blank that is the issue? If i switch back to the defalut “Fibaro Dimmer” it works again.

Have i missed any important step? Any suggestion would be appriciated. :slight_smile:

Regardless of which device handler you use, they won’t usually work until you have successfully updated the and saved settings on the appropriate instance of the device. Null or empty values for required settings will usually cause the code to crash, hence you get no response.

Once you’ve set a device instance to use a new handler, you need to go to the device on your smartphone and hit the gear icon in the top right. Update the settings and save.

If you still have problems, I recommend using the Log tab in the IDE, which will usually give you some helpful messages.

Thanks John,

With a push-type if you push and hold to dim what do you do if you want to dim a little more. Do you have to go through a cycle of push and hold to brighten before you can push and hold to dim again.

Also wondering can you place a number of dimmer 2 relays in close proximity. I’m building a shed and am thinking of 4 x Dimmer 2 to control two inside and two outside light circuits. Thinking of either an 8-gang mini grid or two 4-gang mini grid switches located just inside the door. If I had 4 relays in a timber stud cavity behind the switches would there be any interference between units do you think?

Thanks for the reply David!

I have now played around with the settings and i had no null or empty values, I went to the Log tab (great stuff, thanks!)
And got therse logs.

Stock Fibaro Dimmer that manages to turn on and off lights:

Custom code that i dont get to work (Hajar)

Any pointers? I have tried to force a recalibration of the the device without any luck. Its like the dimmer is not reciving any of the commands.

Yes, it can be a little fiddly if you don’t get the dim right first time as you say. Things get better as you get used to them though. If the light is off, click and hold to dim up from the lowest dim setting, or double click gives maximum brightness (this feature can be disabled).

I have two together in a 2 gang with no interference. You should keep them in metal backboxes for the sake of regulation I understand.

Thank you David. i’ll definitely give this a shot. I’m ready to get this working as I have several more rooms of lights to install, and need this type of functionality. i’ll let you know how it goes.

Hello all,

Ive installed the Fibaro dimmer 2 and codersaur’s fibaro dimmer device handler and it works very well. The only problem I’m having is with the night mode, I can toggle the night mode with the tile but I am unable to get the dimmer to operate in auto mode when the on/off times are set. Has anybody els had success in getting this to work?

Also when looking throug the logs I get this:

warn Fibaro Dimmer 2: No handler for command: Crc16Encap(checksum: 136, command: 5, commandClass: 49, data: [4, 34, 0, 48, 79])

Any ideas what this means?

Can anyone paste some logs when turining on and off a lamp when using some custom code so i know how it should look.

Hi all,
About the dimming issue, i’m using halogen light bulbs and dimming was not working, so i switched parameter 32 value in the code from 1 to 2 and now it works. Hope it helps you.

I just realised I fixed this a while ago, but never published it. I’ve uploaded a new version (v1.03) on github now with additional event handlers.

I really should re-write this device handler from scratch as there’s still a lot wrong with it… including fixing the association group functionality and adding a few more event handlers.

does this have the fix in i posted for android @zcapr17?

because its such a nightmare to get it working on android without it

He Steve, the fix for the default values issue needs to come from SmartThings themselves. I have an iPhone and the default values work great and save me lots of time, so I’m not going to remove them from my device handlers, sorry. You are more than welcome to maintain and publish your own copies without the default values.

For the time being, Android users should re-type all setting values from the phone GUI whenever they install a new device (even if it looks like there is already a value there). This applies to all device handlers (not just mine). Additionally, complain like hell to SmartThings, as it’s a stupid and time-consuming bug that should be relatively easy to fix. As you have already discovered, it’s not a good idea to edit settings from the IDE as some values (like times) cannot be input properly.

i complained to smartthings and got an email back saying it wasnt their problem but the developers problem.

It also does say in the smart things documentation not to use the default values, as the android way is actually the way its supposed to work.

However, I found that even re typing the values in doesnt work, but then the IDE has a load of values in it that dont get removed even if you change the device type. you have to delete them manually, this is extremely complicated for most people

here is a link to the Device handler documentation: which says:

“Setting a default value (defaultValue: “foobar”) for an input may render that selection in the mobile app, but the user still needs to enter data in that field. It’s recommended to not use defaultValue to avoid confusion.”

Here is my Reply from smartthings support when i complained, obviously they didnt read my actual complaint but the Docs to agree that its an option that shouldn’t be used for compatibility.

Jim (SmartThings)
Jan 18, 11:32 AM MST

Hey Steven,

Thanks for reaching out!

I’m sorry to say that we can’t offer support for SmartApps and Device Integrations found on the Community. Please understand that these integrations have not been reviewed or vetted by our engineers at SmartThings to ensure that they meet our standards for quality and security. Please don’t let this turn you off of exploring our community integrations, though! Our Community has proven to be a rich resource for innovation and unique integrations, and we do have a formal process for developers to submit their custom integrations to us for publication within the SmartThings Mobile App. That being said, we simply don’t have the resources to manage these integrations outside of the formal publication process.

In this situation, it would be your best bet to reach out to the developer who created this integration for troubleshooting. It would be up to them to provide a separate integration for Android.

Sorry for the inconvenience. Please let us know if there’s anything else that we can help you with!



Steven Bratt
Jan 18, 10:32 AM MST

When using custom device handlers on the Smartthings IDE, the Default values option set by the developer doesn’t work. This means that using some device handlers on android phones is difficult if not impossible. This is for all users of android see this thread for many examples Fibaro 2 Dimmer (212 not 211)

This bug needs to be fixed as its not a propblem and works fine on the iPhone