[RELEASE] Tuya Temperature Humidity Illuminance LCD Display with a Clock (w/ healthStatus)

Understood Thanks.
I tried this driver, after uncommenting the single line that you suggested.
Removed old device and re-paired again. Everything including the LUX value works as expected. Here are the logs:

Summary

dev:2742023-01-19 11:08:29.444 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:08:29.442 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:29.440 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 001B0101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 1B, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:08:24.682 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:08:24.680 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:24.677 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 001A0101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 1A, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:08:24.467 PMinfoGarage Door Sensor illuminance is 66 Lux
dev:2742023-01-19 11:08:24.463 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=66 fncmd_len=4 (index=0)
dev:2742023-01-19 11:08:24.458 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00196502000400000042, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 19, 65, 02, 00, 04, 00, 00, 00, 42]]
dev:2742023-01-19 11:08:20.525 PMinfoGarage Door Sensor Contact is open
dev:2742023-01-19 11:08:20.523 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=1 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:20.520 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00180101000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 18, 01, 01, 00, 01, 01]]
dev:2742023-01-19 11:08:20.311 PMinfoGarage Door Sensor illuminance is 5 Lux
dev:2742023-01-19 11:08:20.309 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=5 fncmd_len=4 (index=0)
dev:2742023-01-19 11:08:20.307 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00176502000400000005, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 17, 65, 02, 00, 04, 00, 00, 00, 05]]
dev:2742023-01-19 11:08:16.809 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:08:16.806 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:16.802 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00160101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 16, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:08:12.037 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:08:12.035 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:12.032 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00150101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 15, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:08:11.820 PMinfoGarage Door Sensor illuminance is 108 Lux
dev:2742023-01-19 11:08:11.818 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=108 fncmd_len=4 (index=0)
dev:2742023-01-19 11:08:11.816 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 0014650200040000006C, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 14, 65, 02, 00, 04, 00, 00, 00, 6C]]
dev:2742023-01-19 11:08:10.246 PMinfoGarage Door Sensor Contact is open
dev:2742023-01-19 11:08:10.244 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=1 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:10.241 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00130101000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 13, 01, 01, 00, 01, 01]]
dev:2742023-01-19 11:08:05.478 PMinfoGarage Door Sensor Contact is open
dev:2742023-01-19 11:08:05.476 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=1 fncmd_len=1 (index=0)
dev:2742023-01-19 11:08:05.474 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00120101000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 12, 01, 01, 00, 01, 01]]
dev:2742023-01-19 11:08:05.281 PMinfoGarage Door Sensor illuminance is 870 Lux
dev:2742023-01-19 11:08:05.278 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=870 fncmd_len=4 (index=0)
dev:2742023-01-19 11:08:05.276 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00116502000400000366, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 11, 65, 02, 00, 04, 00, 00, 03, 66]]
dev:2742023-01-19 11:07:58.671 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:07:58.669 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:07:58.666 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00100101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 10, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:07:53.900 PMinfoGarage Door Sensor Contact is closed
dev:2742023-01-19 11:07:53.898 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=0 fncmd_len=1 (index=0)
dev:2742023-01-19 11:07:53.895 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000F0101000100, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0F, 01, 01, 00, 01, 00]]
dev:2742023-01-19 11:07:53.714 PMinfoGarage Door Sensor illuminance is 0 Lux
dev:2742023-01-19 11:07:53.709 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=0 fncmd_len=4 (index=0)
dev:2742023-01-19 11:07:53.705 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000E6502000400000000, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0E, 65, 02, 00, 04, 00, 00, 00, 00]]
dev:2742023-01-19 11:06:35.968 PMwarnGarage Door Sensor NOT PARSED : [raw:7DB901000030DFFF4214E8BB5C2B12EBF85C2B1261F95C2B192400000012, dni:7DB9, endpoint:01, cluster:0000, size:30, attrId:FFDF, encoding:42, command:0A, value:è»+ëø+aù+$, clusterInt:0, attrInt:65503]
dev:2742023-01-19 11:06:35.965 PMdebugGarage Door Sensor parse() descMap = [raw:7DB901000030DFFF4214E8BB5C2B12EBF85C2B1261F95C2B192400000012, dni:7DB9, endpoint:01, cluster:0000, size:30, attrId:FFDF, encoding:42, command:0A, value:è»+ëø+aù+$, clusterInt:0, attrInt:65503]
dev:2742023-01-19 11:05:52.105 PMdebugGarage Door Sensor Battery Percentage rawValue = 200 -> 100%
dev:2742023-01-19 11:05:52.103 PMtraceGarage Door Sensor dp_id=2 dp=2 fncmd=100 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:52.100 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000D0202000400000064, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0D, 02, 02, 00, 04, 00, 00, 00, 64]]
dev:2742023-01-19 11:05:42.097 PMdebugGarage Door Sensor Battery Percentage rawValue = 200 -> 100%
dev:2742023-01-19 11:05:42.095 PMtraceGarage Door Sensor dp_id=2 dp=2 fncmd=100 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:42.093 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000C0202000400000064, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0C, 02, 02, 00, 04, 00, 00, 00, 64]]
dev:2742023-01-19 11:05:32.101 PMdebugGarage Door Sensor Battery Percentage rawValue = 200 -> 100%
dev:2742023-01-19 11:05:32.097 PMtraceGarage Door Sensor dp_id=2 dp=2 fncmd=100 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:32.093 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000B0202000400000064, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0B, 02, 02, 00, 04, 00, 00, 00, 64]]
dev:2742023-01-19 11:05:22.524 PMdebugGarage Door Sensor Battery Percentage rawValue = 200 -> 100%
dev:2742023-01-19 11:05:22.522 PMtraceGarage Door Sensor dp_id=2 dp=2 fncmd=100 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:22.517 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 000A0202000400000064, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 0A, 02, 02, 00, 04, 00, 00, 00, 64]]
dev:2742023-01-19 11:05:22.308 PMinfoGarage Door Sensor illuminance is 0 Lux
dev:2742023-01-19 11:05:22.301 PMtraceGarage Door Sensor dp_id=2 dp=101 fncmd=0 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:22.298 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00096502000400000000, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 09, 65, 02, 00, 04, 00, 00, 00, 00]]
dev:2742023-01-19 11:05:22.080 PMinfoGarage Door Sensor Contact is open
dev:2742023-01-19 11:05:22.078 PMtraceGarage Door Sensor dp_id=1 dp=1 fncmd=1 fncmd_len=1 (index=0)
dev:2742023-01-19 11:05:22.075 PMdebugGarage Door Sensor parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00080101000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 08, 01, 01, 00, 01, 01]]
dev:2742023-01-19 11:05:12.055 PMdebugTuya Temperature Humidity Illuminance LCD Display with a Clock Battery Percentage rawValue = 200 -> 100%
dev:2742023-01-19 11:05:12.047 PMtraceTuya Temperature Humidity Illuminance LCD Display with a Clock dp_id=2 dp=2 fncmd=100 fncmd_len=4 (index=0)
dev:2742023-01-19 11:05:12.040 PMdebugTuya Temperature Humidity Illuminance LCD Display with a Clock parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 7DB9 01 00 0000 02 01 00070202000400000064, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:7DB9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 07, 02, 02, 00, 04, 00, 00, 00, 64]]
dev:2742023-01-19 11:05:08.391 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock Received endpoint response: cluster: 8005 (endpoint response) endpointCount = 01 endpointList = 01
dev:2742023-01-19 11:05:08.385 PMdebugTuya Temperature Humidity Illuminance LCD Display with a Clock parse() descMap = [raw:catchall: 0000 8005 00 00 0040 00 7DB9 00 00 0000 00 00 8D00B97D0101, profileId:0000, clusterId:8005, clusterInt:32773, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:7DB9, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[8D, 00, B9, 7D, 01, 01]]
dev:2742023-01-19 11:05:07.044 PMwarnTuya Temperature Humidity Illuminance LCD Display with a Clock NOT PARSED : [raw:7DB90100001801002043E2FF2022E4FF2001, dni:7DB9, endpoint:01, cluster:0000, size:18, attrId:0001, encoding:20, command:0A, value:43, clusterInt:0, attrInt:1, additionalAttrs:[[value:22, encoding:20, attrId:FFE2, consumedBytes:4, attrInt:65506], [value:01, encoding:20, attrId:FFE4, consumedBytes:4, attrInt:65508]]]
dev:2742023-01-19 11:05:07.038 PMdebugTuya Temperature Humidity Illuminance LCD Display with a Clock parse() descMap = [raw:7DB90100001801002043E2FF2022E4FF2001, dni:7DB9, endpoint:01, cluster:0000, size:18, attrId:0001, encoding:20, command:0A, value:43, clusterInt:0, attrInt:1, additionalAttrs:[[value:22, encoding:20, attrId:FFE2, consumedBytes:4, attrInt:65506], [value:01, encoding:20, attrId:FFE4, consumedBytes:4, attrInt:65508]]]
dev:2742023-01-19 11:05:04.761 PMwarnTuya Temperature Humidity Illuminance LCD Display with a Clock NOT PARSED : [raw:7DB901000068040042105F545A453230305F70617932627961780000002003010000204305000042065453303630310700003003FEFF003000, dni:7DB9, endpoint:01, cluster:0000, size:68, attrId:0004, encoding:42, command:01, value:_TZE200_pay2byax, clusterInt:0, attrInt:4, additionalAttrs:[[value:03, encoding:20, attrId:0000, consumedBytes:4, attrInt:0], [value:43, encoding:20, attrId:0001, consumedBytes:4, attrInt:1], [value:TS0601, encoding:42, attrId:0005, consumedBytes:9, attrInt:5]]]
dev:2742023-01-19 11:05:04.749 PMdebugTuya Temperature Humidity Illuminance LCD Display with a Clock parse() descMap = [raw:7DB901000068040042105F545A453230305F70617932627961780000002003010000204305000042065453303630310700003003FEFF003000, dni:7DB9, endpoint:01, cluster:0000, size:68, attrId:0004, encoding:42, command:01, value:_TZE200_pay2byax, clusterInt:0, attrInt:4, additionalAttrs:[[value:03, encoding:20, attrId:0000, consumedBytes:4, attrInt:0], [value:43, encoding:20, attrId:0001, consumedBytes:4, attrInt:1], [value:TS0601, encoding:42, attrId:0005, consumedBytes:9, attrInt:5]]]
dev:2742023-01-19 11:05:04.711 PMtraceTuya Temperature Humidity Illuminance LCD Display with a Clock sendZigbeeCommands(cmd=[])
dev:2742023-01-19 11:05:04.708 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock Debug logging is will be turned off after 24 hours
dev:2742023-01-19 11:05:04.662 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock Debug logging is true; Description text logging is true
dev:2742023-01-19 11:05:04.658 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock Updating null (Tuya Temperature Humidity Illuminance LCD Display with a Clock) model TS0601 manufacturer _TZE200_pay2byax modelGroupPreference = Auto detect (TS0601_Contact)
sys:12023-01-19 11:05:04.201 PMinfoZigbee Discovery Stopped
sys:12023-01-19 11:05:03.660 PMinfoCreated Zigbee Device Tuya Temperature Humidity Illuminance LCD Display with a Clock
dev:2742023-01-19 11:05:03.609 PMtraceTuya Temperature Humidity Illuminance LCD Display with a Clock sendZigbeeCommands(cmd=[he raw 0x7DB9 1 0x01 0x0000 {10 00 00 04 00 00 00 01 00 05 00 07 00 FE FF}, delay 200])
dev:2742023-01-19 11:05:03.601 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock configure()..
dev:2742023-01-19 11:05:03.484 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock Statistics were reset. Press F5 to refresh the device page
dev:2742023-01-19 11:05:03.477 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock InitializeVars()... fullInit = true
dev:2742023-01-19 11:05:03.465 PMinfoTuya Temperature Humidity Illuminance LCD Display with a Clock installed()...
sys:12023-01-19 11:04:58.745 PMinfoInitializing Zigbee Device A4C138D671248ED8, 7DB9
sys:12023-01-19 11:04:57.171 PMinfoZigbee Discovery Running
sys:12023-01-19 11:03:59.589 PMinfoZigbee Discovery Stopped
sys:12023-01-19 11:02:59.587 PMinfoZigbee Discovery Running
sys:12023-01-19 11:02:54.196 PMinfoZigbee Discovery Stopped
sys:12023-01-19 11:02:54.193 PMinfoZigbee Discovery Stopped
sys:12023-01-19 11:01:54.199 PMinfoZigbee Discovery Running

State Variables

  • lastTx : {"tempCfg":"-1,-1,-1","humiCfg":"-1,-1,-1","tempCfgOK":false,"humiCfgOK":false,"cfgTimer":0}
  • modelGroup : TS0601_Contact
  • lastRx : {"tempTime":1674198293477,"humiTime":1674198293477,"tempCfg":"-1,-1,-1","humiCfg":"-1,-1,-1"}
  • stats : {"rxCtr":10,"txCtr":2,"rejoins":0}
  • driverVersion : 1.2.0 2023/01/15 12:42 PM
  • configState : 0
1 Like

For "Alexa" to show it as "Contact Sensor, i had to comment out following capabilities.

        capability "Refresh"
        capability "Sensor"
        capability "Battery"
        //capability "TemperatureMeasurement"
        //capability "RelativeHumidityMeasurement"
        capability "IlluminanceMeasurement"
        capability "ContactSensor"   // uncomment for _TZE200_pay2byax contact w/ illuminance sensor
        //capability "MotionSensor"    // uncomment for SiHAS multi sensor

Else Alexa was treating the device as a "temperature Sensor"

I think it might better to have a separate driver for "Contact Sensors" itself. Let me know if i can be of any help.
I will try to create a strip down version as well. Will share my Git repo may be for your review once i have it ready.

2 Likes

That's a great idea!

You can make me a 'collaborator' in your GitHub - abhayms-git/Hubitat: Drivers for Hubitat repository, and I will help you with anything you may need (including adding the driver to HPM later, when ready). You can also make a Project in github and we can continue the discussion and the work there.

I am glad to see more developers joining Hubitat platform! :slight_smile:

3 Likes

@Abhay & @kkossev

Thanks! Its guys like you that make a platform viable. Let me know if / how i would be able to support you (apart from testing, which is more my expertise than coding).

Regards, Henk

1 Like

Hey I like the work you are doing on these Tuya and related products. Im looking to install a CO2 meter such as this one:

https://www.amazon.ca/Baixia-Temperature-Humidity-Detector-Automation/dp/B0BRKGSTW1/ref=sr_1_7?crid=1UGH6K6UQB5FD&keywords=co2+monitor+zigbee&qid=1675448477&sprefix=co2+monitorzigbee%2Caps%2C162&sr=8-7

Any plans to make these work with your driver? There seems to be several different models.
Thanks
Mike

Hi @mike110 ,

This sensor will probably work with this driver :

If you have not spent your money on this device yet, my advice will be to look elsewhere for a CO2 sensor.

These Tuya branded Air Quality devices are an absolute **** ... well, something to avoid.

OK thanks. I have not purchased one yet. I was curious because they are very cheep and there are not too many Zigbee or zwave connected CO2 sensors. Any suggestions for a better quality one?

Still negative celsius temperature bug in tuya temp and humidity sensor. 652 degrees now while it shoud be like -1˚C

@petteri.joutseno I can't find your previous post for your device, which is the model and the manufacturer, please?

Also, some debug logs when the temperature goes below 0 deg. will be helpful.

That is the model. I cant get logs for it now while that hubitat is 100km away

2 Likes

Thanks, I will look at the possible reasons some hours later.

Lastly I was looking ar Heiman CO2 sensor (Zigbee), but I haven't decided yet :

I also have Eurotronic (Z-wave) which reports also VOC, but I had it switched off for quite a long time, due to some z-wave mesh problems that I had with a lot of FLiRS Z-wave devices. I will try to put it back in operation next days.

From the same link you can also check the MCO HOME which seems even better quality, but double in price.

1 Like

For _TZ3000_bguser20 you need this driver version to be a minimum 1.1.1 (15th of Jan 2023) and the sensor to be paired to HE at a close distance to the hub.

Models TS0201 are using the standard ZCL temperature and humidity clusters for sending T/H reports, but with Tuya devices you never know...

Check first If you are using version 1.1.1 or a new one.

1 Like

MCO Home MH9
Well…. I actually own one…. Rather pricy, but is zwave, mains powered and quite accurate;

Available from Amazon in Europe.

1 Like

Thanks for the suggestions. Seems like the selection in Europe is much better for this kind of thing. I can't find any Canadian or USA vendor for any of those sensors. However I note that the Eurotronic will ship worldwide for a reasonable price. Im am also more of a zwave fan than zigbee so that is a bonus. However Hubitat is not listed as a compatible system. You have this working on your hub with what driver?

The driver is available in Hubitat Package Manager, search for "Eurotronic Air Quality Sensor"
Also here : [RELEASE] Eurotronic Air Quality Sensor (Humidity / Dewpoint / CO2 / VOC)

Hello Krassimir, I just paired the soil sensor and seeing this in the logs, not sure if it's relevant. The device does appear to work correctly.

Anything Usefull Here?

dev:20932023-02-07 01:44:38.422 PMinfo__Tuya Soil Temp Humidity battery_state (0x0E) is 1

dev:20932023-02-07 01:44:38.419 PMtrace__Tuya Soil Temp Humidity dp_id=4 dp=14 fncmd=1 fncmd_len=1 (index=0)

dev:20932023-02-07 01:44:38.416 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00180E04000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 18, 0E, 04, 00, 01, 01]]

dev:20932023-02-07 01:44:38.299 PMdebug__Tuya Soil Temp Humidity Battery Percentage rawValue = 60 -> 30%

dev:20932023-02-07 01:44:38.296 PMtrace__Tuya Soil Temp Humidity dp_id=2 dp=15 fncmd=30 fncmd_len=4 (index=0)

dev:20932023-02-07 01:44:38.293 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00170F0200040000001E, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 17, 0F, 02, 00, 04, 00, 00, 00, 1E]]

dev:20932023-02-07 01:43:57.219 PMinfo__Tuya Soil Temp Humidity battery_state (0x0E) is 1

dev:20932023-02-07 01:43:57.216 PMtrace__Tuya Soil Temp Humidity dp_id=4 dp=14 fncmd=1 fncmd_len=1 (index=0)

dev:20932023-02-07 01:43:57.212 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00160E04000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 16, 0E, 04, 00, 01, 01]]

dev:20932023-02-07 01:43:57.097 PMdebug__Tuya Soil Temp Humidity Battery Percentage rawValue = 60 -> 30%

dev:20932023-02-07 01:43:57.094 PMtrace__Tuya Soil Temp Humidity dp_id=2 dp=15 fncmd=30 fncmd_len=4 (index=0)

dev:20932023-02-07 01:43:57.091 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00150F0200040000001E, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 15, 0F, 02, 00, 04, 00, 00, 00, 1E]]

dev:20932023-02-07 01:43:16.017 PMinfo__Tuya Soil Temp Humidity battery_state (0x0E) is 1

dev:20932023-02-07 01:43:16.014 PMtrace__Tuya Soil Temp Humidity dp_id=4 dp=14 fncmd=1 fncmd_len=1 (index=0)

dev:20932023-02-07 01:43:16.011 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00140E04000101, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 14, 0E, 04, 00, 01, 01]]

dev:20932023-02-07 01:43:15.897 PMdebug__Tuya Soil Temp Humidity Battery Percentage rawValue = 60 -> 30%

dev:20932023-02-07 01:43:15.894 PMtrace__Tuya Soil Temp Humidity dp_id=2 dp=15 fncmd=30 fncmd_len=4 (index=0)

dev:20932023-02-07 01:43:15.890 PMdebug__Tuya Soil Temp Humidity parse() descMap = [raw:catchall: 0104 EF00 01 01 0040 00 F3EA 01 00 0000 02 01 00130F0200040000001E, profileId:0104, clusterId:EF00, clusterInt:61184, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:F3EA, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:02, direction:01, data:[00, 13, 0F, 02, 00, 04, 00, 00, 00, 1E]]

State Variables

  • lastTx : {"tempCfg":"-1,-1,-1","humiCfg":"-1,-1,-1","tempCfgOK":false,"humiCfgOK":false,"cfgTimer":0}

  • modelGroup : TS0601_Soil

  • lastRx : {"tempTime":1675795334079,"humiTime":1675795334213,"tempCfg":"-1,-1,-1","humiCfg":"-1,-1,-1"}

  • stats : {"rxCtr":272,"txCtr":4,"rejoins":0}

  • driverVersion : 1.3.0 2023/02/02 10:56 PM

  • notPresentCounter : 0

  • configState : 0

  • endpointId: 01

  • application: 48

  • manufacturer: _TZE200_myd45weu

  • model: TS0601

I get the state variables. The soil sensor I have looks to be a different version than the one in the initial pictures. Below is a link to the version I got from aliexpress.

https://www.aliexpress.us/item/3256804896826039.html?spm=a2g0o.order_list.order_list_main.69.7d6c1802SGDx9c&gatewayAdapt=glo2usa&_randl_shipto=US

1 Like

appears to be the same as mine, this is what it should look like

1 Like

Please post the device Data section from the web page. It may be a different manufacturer.