Suggestion to multi endpoint DTHs (Solution to only child switches being offline)

This device won’t work with “zigbee multi switch” device handler, because it is not a standard multi endpoint switch.

As you can see in the raw description, there is EF00 zigbee cluster, which is tuya manufacturer specific zigbee cluster.

It will be communicating using tuya cluster, not the standard onoff cluster, so you will need tuya cluster specific DTH for this switch.

1 Like

Thank you for the detailed answer.

As I can understand, I need to add to “Zigbee Multi switch” that was suggested here with updated child device stay online ,another line containing my FingerPrint:

fingerprint profileId: “0104”, inClusters: “0000, 000A, 0004, 0005, EF00, 0019”, manufacturer: " _TZE200_5apf3k9b", model: “TS0601”, deviceJoinName: “My Module Switch 1” //My Module 2 Gang Switch 1

And at the end . something like :

} else if (device.getDataValue(“model”) == “TS0601”) {
return 2

Is that correct ? I’m not a programmer but can understand really quick how things are working

What to do with EF00 , can I ignore that ?

Any help is appreciate :pray:

@dotan_shai
If it were a standard multi endpoint zigbee multi switch, then that sort of sourcecode modifiction will work.

But there are a lot of tuya zigbee switches out there, which uses their own protocol (using EF00 cluster) instead of standard mult endpoint of onoff cluster.

In that case, that kind of sourcecode modification won’t work at all, and you need to rewrite DTH using tuya protocol.

1 Like

The link below is zigbee2mqtt’s implementation of another tuya TS0601 switch.

You can find out from the sourcecode of zigbee2mqtt that, the implementation does not use standard onoff cluster, but tuya’s own EF00 cluster.

1 Like

This is wonderful information and progress.
Still , as I mentioned, I’m not a programmer and this looks like chinese for me…
Can you write some guidelines how to use this in order to merge that into zigbee multi switch existing handler ? Or how to create a device handler from that information. Any help is highly appreciated…

If you understand source code of DTHs, then you can take a look at DTHs that I have written for tuya curtains and tuya thermostat devices, and merge them into the format of DTH with child switches, like zigbee-multi-swtich.


But I cannot write you a DTH without physical device, because it is very hard to debug.

1 Like

Hi @iquix
I was reading your post and i though to ask one question
I have a zigbee module that can easily connected to smartthing and identify as “Thing”
But after using Zigbee Multi switch DTH, the switch goes off by it is own after 2 mins

It is 2 gangs switch that works in Tuya zigbee hub. These are the parameters i’m getting in IDE :

Data :

  • application: 41
  • endpointId: 01
  • manufacturer: _TZ3000_fvh3pjaz
  • model: TS0012
  • onOff: catchall
  • zigbeeNodeType: SLEEPY_END_DEVICE

Raw Description :
01 0104 0100 01 04 0000 0004 0005 0006 02 0019 000A

Is this using the standard onoff cluster, or tuya’s own cluster?

Thanks for your time!

I’m not sure, but regarding source code of zigbee2mqtt, it seems that it uses standard multi endpoint switch.

Zigbee Multi switch DTH works as 2 gang switch by default, so I’m not sure why it’s not working properly and turning off by itself.

Thanks for your reply
I can see you have added my device name in above TS0012, how i can test?
Can you please have a look to my live debug logs maybe you can catch something wrong?

The source code above is not a Smartthings source code.
It is a part of zigbee2mqtt, which is a open source zigbee platform.

Anyway, you could give it a try with this DTH

Hello, would this DH work with Tuya wifi thermostats?

Such as this one for example: MOES BAC-002-ALW

Thanks!

Thanks @iquix
I have tried it but unfortunately the switch turns OFF by itself after 2 mins

This DTH is for the zigbee version.
There’s zigbee version of this Moes Thermostat.

However, there’s some problem with this product.
The device sends so many zigbee packets, so that it sometimes gets throttled by Smartthings server’s rate limit, especially you repeatidly changes target temperture by repeatedly clicking the down button.

After 2 minutes, does it physically turns off? or only shows as turned off in Smartthings app?

physically turn OFF and shows as turned off in ST app too

By your IDE log, it seems that you were not using zigbee multi switch, but you were already using Woobooung’s dth.

woobooung’s dth has feature of turning on&off all switches at once, and it seems that you enabled that feature, and that seems the problem.

Your ide log says that checkAllSwitchValue : off
it means that the virtual switch that controlls ALL switches at once is set to turn off all physical switches.

If you don’t want that feature, then open the parent device in IDE and check every child switch that belongs, and delete the child switch which has DNI(device network id) that ends with “ALL”.

Also, go to the device setting in the ST app, and select false to “Create All switch” option.

1 Like

Thanks @iquix

I will test and check

hi iquix
can you help me to make a switch handler i have found a working version to hubitat
here is the link

i will donate about your help and i hope someone else donate too

I’m sorry that I couldn’t help you with this. It seems that (from the source code of hubitat DTH), the Moes wall switch uses non-standard manufacturer specific custom zigbee culster, which requires sort of reverse engineering and testing with the real product to make the DTH, but I don’t have enough extra time nor the product to work with this right now.

1 Like

Is not easy to convert hubitat to smartthings handler? and if not working because maybe need will just tell us witch number of events must add and where?

But I understand about your 5ime thanks anyway!!