Device Handler for 3 gang zigbee switch?

Hi - I just bought this 3 gang wall switch and paired it with ST. However, I dont think there is any DH that can work on more than 1 button. Any help on how to integrate this?

Next I am planning to get 6 gang switch, hopefully the steps for this can be carried over to that switch as well.


I have these DTHs, but they were designed to work with Zemismart switches.

What DTH you are using currently?

Awesome! your DTH worked! just one small thing, the switch also has a dimmer along with on/off. Of course the dimmers do not work and I don’t need them. Anyways to get rid of the dimmer dial? Also, how to make this DTH work if I get a 6 gang switch?

Just remove/comment the lines of the controlTile “level” on both DTHs.
My personal opinion, I wouldn’t mind it as it only shows in the details.

There is a function called getEndpointCount on the main DTH that returns the number of gangs based on the device model. Just add yours there. You also will need to add new fingerprint.

I have a curtain motor and the DTH have a tile that says % of the battery, but it doesn’t even have a battery.
It was annoying at first because it was new to me and I was always seeing that 0%, but now it just stays there and don’t mind it at all.

Thanks! Basically i have 0 code knowledge but understood your explanation on how to remove the level and it works. But as you said, it dosnt bother me much to work on it.

Did not understand how to add the number of gang switch here or what is this “finger print”
def model = device.getDataValue(“model”)
switch (model) {
case “FNB56-ZSW03LX2.0”:
return 3
case “FNB56-ZSW02LX2.0”:
case “LXN-2S27LX1.0”:
return 2
case “FNB56-ZSW01LX2.0”:
return 1
log.debug "Model not found: " + model + “\nConsider adding new fingerprint for your device.”
return 3

But i will bother you again once I get that 6 gang one. Thanks for all the help!

1 Like

I’ve just finished installing one.

I have done the same as you. The 2 gang worked find (once I changed the switch to a zigbee multi switch) but my 3 gang will only find 2 switches. I have installed both devices handlers from above… what do I do now?

Hi Kev.

Try changing the ID from 02 to 03 and give it some time (like few minutes). Try to turn on/off the hub, maybe add the device once again. In my case it worked. The device with ID **** 03 was still installed, but the app aded another device (again with the ID 02) . And it works. Now i have both (02 and 03).

Hi, I just installed a 2 gang switch (zigbee from zemismart) and did the same. Both switches appear but I can’t control any through the app. The only way I can control one of the is if I switch the main one from “zigbee multi switch” to “zigbee switch”. But I never managed to control both of them. Any idea? Thank you in advance for your help!


I have a zemismart zigbee 2 gang switch. I installed it and it currently shows 2 switches in the smartthings app. My problem is that I can only control one of them and only when I choose “zigbee switch” instead of “zigbee multi switch” as somebody said below here somewhere. I’ve tried to create a device handler and copied the code you mentioned above but I don’t understand which part of the code I should change to include the fingerprint of my device (also not sure what the fingerprint is) . I’m guessing this is why it’s not working… Would you mind helping me with that? It’s my first time installing one of these. Many thanks!

There are some lines in the code that starts with the word “fingerprint”.
Just replicate any of them and modify it with the details that identify your device.
The details may be found in the details page of the device.
Fingerprint is useful in the pairing process.
Once you have the exact model name, follow the pattern and add it to the function getEndpointCount
Also, let us know the default “endpointId”.

Thank you for your help!

I’m sending you the info from my device. What from this is the fingerprint that I should be replicating in the code?

This device is already included in this DTH.
Your device also have a problem with the endpointId = 11.

This DTH should work for you.

If you have github integration enabled, just add this repository:

Owner: w35l3y
Name: zigbee
Branch: master
DTH: zemismart/zemi-zigbee-switch-touch.src/zemi-zigbee-switch-touch.groovy

This is my forked repository based on the official one.
I have already sent Pull Request, but they haven’t accepted yet.

Don’t forget to check “Publish” before adding the DTH.

1 Like

Thank you so much! It worked! Really appreciate it!

1 Like

Hi @w35l3y I’m just adding your code to my hub and I’m able to control with the smartthings app a 3-gang zemismart switch. However, for some reason, when pressing the 3rd gang button physically , the on/off status is not updated in the app. Do you know if there is something I can do to fix this?

We need more details about your device, just like Rita did.

I recommend to read the whole topic.
There are some important informations spread around.

Hi, I am new to smartthings, I have got a 3 gang zigbee light switch recently. By default it is not detected a zigbee switch but when I change the device type to zigbee multi switch it creates a main and only one child switch health as opposed to three child. Could someone please guide and help me, I have attached the device details screenshot below:


Have you tried this device handler: 1
It worked with my 3 gang Zemismart (Tuya) switch.

1 Like

tried 7-8 handlers.
@Paul_Oliver, with your hadler I went closest to working state.
Have Zemismart 3-gang mechanical switch - ZN-LN3E.
On they site they linked to Zemi ZigBee Switch DH.
To shorten story with your handler from previous post for the first time I got 2 child devices. Previously only one. But still, Main and child devices turning on/off all 3 switches.

Do I need to have 2 or 3 child devices for 3-button switch (does main stays as all-switch or main is first button)?
What type should be child - Switch child health or something else?

Could someone modify DH for me?

Thank you,

I believe you are referring to @Mariano_Colmenarejo driver.