[APP][Pro] Universal TUYA Zigbee Device App - test

Thought something like that. That’s the meaning of a PR.

But after installing version 5.11.211, the one dlnraja is pinking to, no homepage appears after going to the settings.

What version is functioning correctly?

Which version of the app do you have installed?

Do you see a page when you go to Settings—the gear icon, and then App Settings?

I’m running version 7.5.8 of the app.

If I click the gear icon and than “app instellingen” the page just keeps loading indefinitely.

I downloaded the code from Github, version 7.5.8 and installed it using CLI. Opposite to previous versions, only a small number of devices is showing a red exclamation mark.

The settings page does show a page to enter logon figures for the iot.tuya.con website, used for Tuya cloud devices. Shouldn’t be necessary, as the Tuya app from Denso V.O.F does handle the cloud devices on a local manner. I will not use the Universal Tuya app for those devices.

I tried to install a new Zigbee device using the Universal Tuya app and whoopwhoop… I succeeded, whereas this did go wrong the previous weeks with this app and with other apps. A presence sensor was always installed as a Universal Zigbee device, but now it is installed as a sensor!

A wallsocket with energy metering, previous installed as a universal Zigbee device, is now recognized by this app!

So @dlnraja , you did some good work the last days!

I’m happy with the way the app is functioning now.

@dlnraja please continue the app. You did a great job adding so many products. This is the only app able to manage so many Tuya zigbee devices. Your stable version is not able to manage as many as the latest ones (before crashes). As example my soil sensors are no more recognized. And amperemetric clamp shows wired data now.

Unfortunately the two way valve is added as an unknown Zigbee device.

“ids”: {
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_fhvpaltk”
},
“endpoints”: {
“ieeeAddress”: “64:02:8f:ff:fe:ac:1b:fb”,
“networkAddress”: 46830,
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_fhvpaltk”,
“endpointDescriptors”: [
{
“status”: “SUCCESS”,
“nwkAddrOfInterest”: 46830,
“_reserved”: 24,
“endpointId”: 1,
“applicationProfileId”: 260,
“applicationDeviceId”: 81,
“applicationDeviceVersion”: 0,
“_reserved1”: 1,
“inputClusters”: [
0,
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”: {
“basic”: {
“attributes”: [
{
“acl”: [
“readable”,
“reportable”
],
“id”: 0,
“dataTypeId”: 32,
“name”: “zclVersion”,
“value”: 3,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 1,
“dataTypeId”: 32,
“name”: “appVersion”,
“value”: 68,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 2,
“dataTypeId”: 32,
“name”: “stackVersion”,
“value”: 0,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 3,
“dataTypeId”: 32,
“name”: “hwVersion”,
“value”: 1,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 4,
“dataTypeId”: 66,
“name”: “manufacturerName”,
“value”: “_TZE284_fhvpaltk”,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 5,
“dataTypeId”: 66,
“name”: “modelId”,
“value”: “TS0601”,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 6,
“dataTypeId”: 66,
“name”: “dateCode”,
“value”: “”,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 7,
“dataTypeId”: 48,
“name”: “powerSource”,
“value”: “battery”,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“writable”,
“reportable”
],
“id”: 65502,
“dataTypeId”: 32,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65533,
“dataTypeId”: 33,
“name”: “clusterRevision”,
“value”: 2,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65534,
“dataTypeId”: 48,
“name”: “attributeReportingStatus”,
“value”: “PENDING”,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65504,
“dataTypeId”: 72,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65505,
“dataTypeId”: 72,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65506,
“dataTypeId”: 32,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
},
{
“acl”: [
“readable”,
“reportable”
],
“id”: 65507,
“dataTypeId”: 72,
“reportingConfiguration”: {
“status”: “NOT_FOUND”,
“direction”: “reported”
}
}
],
“commandsGenerated”: “UNSUP_GENERAL_COMMAND”,
“commandsReceived”: “UNSUP_GENERAL_COMMAND”
},
“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”
}
}
],
“commandsGenerated”: “UNSUP_GENERAL_COMMAND”,
“commandsReceived”: “UNSUP_GENERAL_COMMAND”
},
“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”
}
}
],
“commandsGenerated”: “UNSUP_GENERAL_COMMAND”,
“commandsReceived”: “UNSUP_GENERAL_COMMAND”
}
},
“bindings”: {
“ota”: {},
“time”: {
“attributes”: 
,
“commandsGenerated”: “UNSUP_GENERAL_COMMAND”,
“commandsReceived”: “UNSUP_GENERAL_COMMAND”
}
}
}
}
}

Are you sure about this? In the forums page of the Tuya App they literally say the app doesn’t offer local control…

Why are you not using local control?
We have investigated direct local control and concluded it to be unfeasible due to the sheer amount of Tuya powered devices available on the market, which all use their own API which is not standarised. However, vendors are somewhat forced to map their custom data points to general properties to be able to offer cloud control, which is what we can leverage to create generic drivers with this app.

Unfortunately the soil sensor is added as an unknown Zigbee device. This worked in the version 5 of the app.

image

“ids”: {
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_oitavov2”
},
“endpoints”: {
“ieeeAddress”: “a4:c1:38:84:30:2c:e2:f2”,
“networkAddress”: 637,
“modelId”: “TS0601”,
“manufacturerName”: “_TZE284_oitavov2”,
“endpointDescriptors”:

Can you please fix this. I got 10 of these sensors

My mistake, you’re absolutely correct.

I had in mind that the Tuya app is way much faster with the Tuya wifi devices than the Tuya Cloud app from Jurgen Heine. As the Universal app uses the same login method as the Tuya Cloud app, I thought it would have the same performance as that app.

The Tuya app from Denso uses another method, the same login method as Home Assistant. I can say that that app works faster than the Tuya Cloud app. My point: I’m not planning on using another app for my Tuya wifi devices as the Tuya app from Denso, because of its performance.

Stated the other way around: I will use the Universal Tuya app only for Tuya Zigbee devices.

Yes, the Tuya app from Drenso (and the old one from Athom) is very fast and reliable. It’s one of the most stable apps in my setup.

@dlnraja Hi,

After the latest update i have no data in the smart airbox

image0.png

Could you please advice?

Hi, I try reinstall Universal Tuya and repair Device and effect the same. Who know what is wrong?

In version 7.5.11 my sensors work again, thanks @dlnraja :tada:

Please add this Presence sensor to the app

"ieeeAddress":string"a4:c1:38:d3:de:d0:e6:77",
"networkAddress":int65248,
"modelId":string"CK-BL702-MWS-01(7016)",
"manufacturerName":string"_TZE200_crq3r3la",
"endpointDescriptors":[
0:{
"endpointId":int1,
"applicationProfileId":int260,
"applicationDeviceId":int1026,
"applicationDeviceVersion":int0,
"_reserved1":int1,
"inputClusters":[...],12 items
"outputClusters":[...],1 item
"nwkAddrOfInterest":int65248,
"_reserved":int0,
"status":string"ZSuccess"
}10 items
],1 item
"deviceType":string"router",
"receiveWhenIdle":booltrue,
"capabilities":{
"alternatePANCoordinator":boolfalse,
"deviceType":booltrue,
"powerSourceMains":booltrue,
"receiveWhenIdle":booltrue,
"security":boolfalse,
"allocateAddress":booltrue
},6 items
"parent":int0,
"stats":{
"tx":int9165,
"txSuccess":int9161,
"txError":int4,
"rx":int17539
},4 items
"lastSeen":float1778505052295,
"swBuildId":string"0122052017",
"name":string"Zigbee Device",
"ieeeAddr":string"a4:c1:38:d3:de:d0:e6:77",
"nwkAddr":int65248,
"type":string"router"

Hi Dylan nice to see you are still active and working on this sofisticated app, but on your last published version app crashed.
Diagnostic code: 54888ee1-70ff-4645-965e-0adde3136fde

Best regards and many thanks Peter.

Hi @dlnraja

In v7.5.30 error from last comment is back.
Diagnostic Error: b45e56d7-2942-4320-a2e4-b1e7f382a817

An honest question, no offense intended!

What is the diffrerence between:

1. Universal Tuya Stable
and
2. Tuya Unified

How to decide which one to use?

I’ve asked Athom on Slack why they are allowing this. It’s basically just the same app, pointing to the same Github repository, and publishing two separate apps based on one code base where one is marked “stable” is just silly and confusing. That’s why all apps have separate “test” and “stable” channels.

If these are based on same codebase it’s strange the versioning differs:

Tuya Unified:

image

Universal Tuya Stable:
image

What that means in real life I have no idea…