I don’t think its every Tuya Zigbee device. E.g. below are my Tuya-based Zigbee devices. Some are branded Marmitek and are connected via their brand-specific app (though also supported by the Tuya Zigbee app). Others are branded Moes and are connected via the Tuya Zigbee app. Both apps are Johan’s, by the way. These are all battery powered scene switches/remotes. At least that class of devices does not show the excessive communication as you are experiencing. Maybe the issue is limited to certain groups of mains powered/router devices, like smart plugs.
I don’t have any issues with my Tuya Zigbee devices. I use a Homey Pro 2019 so I can’t view the TX/RX values, but the devices work as expected
The main difference here is that yours are all enddevice and mine are all router
Hi @Johann_Bendz
I’ve just submitted a device request on GitHub for a new SmarterCurry (JoyousMall) Solar Lux Sensor.
It’s currently recognized as a generic Zigbee device. I’ve already performed the interview and included all the technical data in the GitHub issue.
Manufacturer ID: _TZE284_aaeasoll
Product ID: TS0601
Thanks a lot for all the great Support!
Hi,
I have 3 MOES curtain switches. But when i Have added them all then only the last one wil be able to control with a flow. the other 2 will only be controlled with the app.
greetzzz Mark
Welcome back into the fray, @johan_bendz. We’ve missed you!
Looking forward to seeing what you can do with these devices and any upcoming news.
Device Request: Vibration Sensor Hi! Could you please add support for this vibration sensor? It currently adds as an Unknown/Generic Zigbee device with non-functioning generic and tamper alarms.
Manufacturer ID: _TZ32101000000_jrqzgeuh Product ID: TS0210
Thank you for your great work!
Due to the fact that my zigbee2mqtt installation broke down, i am trying to add those zigbee devices directly to Homey. That is working for most of the stuff, except for this one: Moes ZS-SR-EUD-2 control via MQTT | Zigbee2MQTT
Even if i try to add it as an generic zigbee device it says ‘couldn’t connect, try again later’. Are there other options to get the specifications so i can add a request to add this device?
EDIT: after restarting my homey, the device is added but as an air quality sensor.
Hi @Johann_Bendz, could you please add support for this 4-gang switch? It is currently recognized as an Unknown Zigbee Device.
Manufacturer ID: _TZE204_ex3rcdha Product ID: TS0601
Thank you!
Please read the first post in this topic for instruction how to request device support.
In the first post of this topic/ app is explained how to interview a device to get the data to add it to the app. Just mentioning the name of the device isn’t enough.
And after a restart of Homey i was able to add it, but then it was recognized as a different type of device. After that, i had a nice evening with claude which resulted in a dedicated app for the switch including the flows needed. I might add a request to github as instructed, but for now it is working this way.
Sorry, didn’t read properly, your device couldn’t connect at all. Glad it worked out.
So, you build an app specially for your switch. How exactly did you do that? I built an app before using ChatGPT and Claude, but in both cases installing was hell. They continiously made errors they couldn’t solve. Can you tell more how you did build your app? Or did you use another Tuya Zigbee as your base?
Most likely it is similar to how I did it: you take a copy of the Tuya Zigbee App, alter the configuration files and add the device you need and install that version on your Homey Pro. Be sure to disable automatic updates though ![]()
I started from scratch, but found some definition files of that switch in the github repository of the Tuya Zigbee app in a request of a 3 button version. Took some iterations to develop it, but it sure did help that i had more than just the name of the device.
So you used the code of the existing app and added the definition of your device, or altered those of an existing device?
Or did you wrote a complete app, including f.e. the sending and receiving of Zigbee signals.
Ik did the first option. Download the app, add some IDs and installed it.
I also created a manual of it for myself. In Dutch…looking at your name that should not be a problem! Happy to share
Very kind of you to share the manual. And you’re right, Dutch will be no problem to read
.
hoi johan
kun je deze bodemsensor toevoegen
“ids”: {
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_myd45weu”
},
“endpoints”: {
“ieeeAddress”: “a4:c1:38:c9:a1:3f:38:97”,
“networkAddress”: 36789,
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_myd45weu”,
“endpointDescriptors”: [
{
“status”: “SUCCESS”,
“nwkAddrOfInterest”: 36789,
“_reserved”: 22,
“endpointId”: 1,
“applicationProfileId”: 260,
“applicationDeviceId”: 81,
“applicationDeviceVersion”: 0,
“_reserved1”: 1,
“inputClusters”: [
4,
5,
61184,
0,
60672
],
“outputClusters”: [
25,
10
]
}
],
“deviceType”: “enddevice”,
“receiveWhenIdle”: false,
“capabilities”: {
“alternatePANCoordinator”: false,
“deviceType”: false,
“powerSourceMains”: false,
“receiveWhenIdle”: false,
“security”: false,
“allocateAddress”: true
},
“extendedEndpointDescriptors”: {
“1”: {
“clusters”: {
“groups”: {
“attributes”: [
{
“acl”: [
“readable”,
“reportable”
],
“id”: 0,
“dataTypeId”: 24,
“name”: “nameSupport”,
“value”: {
“type”: “Buffer”,
“data”: [
0
]
},
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65533,
“dataTypeId”: 33,
“name”: “clusterRevision”,
“value”: 2,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
}
]
},
“scenes”: {
“attributes”: [
{
“acl”: [
“readable”,
“reportable”
],
“id”: 0,
“dataTypeId”: 32,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 1,
“dataTypeId”: 32,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 2,
“dataTypeId”: 33,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 3,
“dataTypeId”: 16,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 4,
“dataTypeId”: 24,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65533,
“dataTypeId”: 33,
“name”: “clusterRevision”,
“value”: 2,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
}
]
},
“basic”: {
“attributes”: [
{
“acl”: [
“readable”,
“reportable”
],
“id”: 0,
“dataTypeId”: 32,
“name”: “zclVersion”,
“value”: 3
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 1,
“dataTypeId”: 32,
“name”: “appVersion”,
“value”: 80
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 2,
“dataTypeId”: 32,
“name”: “stackVersion”,
“value”: 0
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 3,
“dataTypeId”: 32,
“name”: “hwVersion”,
“value”: 1
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 4,
“dataTypeId”: 66,
“name”: “manufacturerName”,
“value”: “_TZE284_myd45weu”
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 5,
“dataTypeId”: 66,
“name”: “modelId”,
“value”: “TS0601”
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 6,
“dataTypeId”: 66,
“name”: “dateCode”,
“value”: “”
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 7,
“dataTypeId”: 48,
“name”: “powerSource”,
“value”: “battery”
},
{
“acl”: [
“readable”,
“writable”,
“reportable”
],
“id”: 65502,
“dataTypeId”: 32
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65533,
“dataTypeId”: 33,
“name”: “clusterRevision”,
“value”: 2
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65534,
“dataTypeId”: 48,
“name”: “attributeReportingStatus”,
“value”: “PENDING”
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65506,
“dataTypeId”: 32
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65507,
“dataTypeId”: 72
},
{
“acl”: [
“readable”,
“writable”,
“reportable”
],
“id”: 65487,
“dataTypeId”: 33
}
]
}
},
“bindings”: {
“ota”: {},
“time”: {
“attributes”: [
{
“acl”: [
“readable”
],
“id”: 65533,
“dataTypeId”: 33,
“name”: “clusterRevision”,
“value”: 1
}
]
}
}
}
}
}


