[RELEASE] Tuya Zigbee Multi-Sensor 4 In 1 (PIR motion sensors and mmWave presence radars) w/ healthStatus

This is exactly what I was going to propose to you as 'plan B' ..

However, I also noticed a possible change in the latest HE platform versions, the newly paired Zigbee devices do not have the inClusters list filled in the device Data section anymore. Honestly, I don't remember if this is a platform change or I have always tried the inbuilt 'device' driver in the past, which fills in the supported/declared clusters list.
And because this driver aim is to support many different motion sensors, part of the code logic relies on whether the device supports the Zigbee standard IAS cluster (0x0500) or not. And your device is IAS reporting device, but on your screenshot the inClusters are missing. The driver should still work correctly because of the device model TS0202 being identified , but I should review the current logic and do not rely on the inClusters data.

Here I disagree, from the big variety of cheap Tuya motion sensors, _TZ3000_msl6wxk9 is probably the best one. It is one of the few models that support changing the sensitivity and the 'keep time', usually these settings are available for the more expensive models.

Beware of the battery that comes with these sensors, often the original battery is not in a good condition! The battery reporting level for many devices (not just Tuya) is not always very reliable..

I had also cases when one battery was almost depleted, and another cheap sensor had bad contact with the cell battery, You may need to examine the metal contacts and bend them a little to ensure good contact with the battery cell.

1 Like

I agree. " " It is one of the few models that support changing the sensitivity and the 'keep time', usually these settings are available for the more expensive models."
In fact, another developer put a sensitivity control function in the SmartThings Hub, and I tried it.
From the developer's point of view, these sensors will be good.

Battery problems often affect sensors a lot.
As you advised, I will check the battery right away if there is a problem.

I have five of these sensors. I will use it well as you advise.

Dear kkossev
I put the sensor horizontally and conducted the test by distance. Given that the recognition varies over time depending on the distance, the distance detection ability is somewhat accurate.
I will put the video related to this in the link you know
In this way, it is possible to overcome and use an environment in which sensors are difficult to use due to the high noise.

If you place the sensor horizontally, can you recognize that it is coming from far away and that it is going from near and that it is used as a trigger?

In practice, 'aqara-fp1' uses this method.

  • There is a man. There are no people.
    • enter, enter left/right, leave leave left/right, approhing, absenting, unknown8, unknown9
  • Temperature (Step 3)
  • Signal Strength (Stage 6)

I suggest this because I think it will be a beneficial challenge for you.

I bought the same sensor in 3 places, and all the manufacturers were the same regardless of the brand (my favorite sensor)
The only thing that's wrong is whether you give the price and the power supply.
If you have a purchase plan, please refer to it

1 Like

Does anyone have this sensor?

Mine arrived today but I can't get it to pair at all (or do anything). When I plug it in, there are no flashing light, beep or other sign of life.

I've tried pluging it in and pressing the button (once, three times, five times)
I've tried holding the button ( 3 seconds, 5 seconds, even 30 seconds)

Still no flashing light or any signs of like. :hushed:

1 Like

I have this sensor.

It is important for the presence detection sensor to change the setting value that solves the noise, which does not have such a function. Moreover, the sensor is not "mmWave".
So I dealt with this dispute,
To pair, you have to press with a pin.

If you press the pin to make a sound (It is important to make a sound.)and wait a little, the light flashes.


![photo_2022-07-21_14-01-58|666x500]

(upload://r8RnSZW74SSnTUdkBNOsjOxL5qD.jpeg)
Pairing works in Hubitat. But the sensor doesn't seem to work.

1 Like

What is the Manufacturer from the device Data section when paired to Hubitat?

Looking at the picture, I see two mmWave antennas on the PCB… but with these manufacturers you never know if it is really functional or just a place holder.


There seems to be no information from the manufacturer, and it is paired with Xiaomi products.
It doesn't actually work.

dev:47692022-07-21 03:09:29.003 pm infoReset button pressed/message requested by hourly checkin - description:read attr - raw: 37EF0100001605004206545330363031, dni: 37EF, endpoint: 01, cluster: 0000, size: 16, attrId: 0005, encoding: 42, command: 01, value: 06545330363031 | parseMap:[raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5] 1

dev:47692022-07-21 03:09:29.001 pm infomsgMap: [raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5]

dev:47692022-07-21 03:09:26.996 pm infomsgMap: [raw:catchall: 0000 8021 00 00 0040 00 37EF 00 00 0000 00 00 7F82, profileId:0000, clusterId:8021, clusterInt:32801, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:37EF, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[7F, 82]]

dev:47692022-07-21 03:09:26.030 pm infomsgMap: [raw:catchall: 0000 8021 00 00 0040 00 37EF 00 00 0000 00 00 7D00, profileId:0000, clusterId:8021, clusterInt:32801, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:37EF, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[7D, 00]]

dev:47692022-07-21 03:09:26.014 pm infoReset button pressed/message requested by hourly checkin - description:read attr - raw: 37EF0100001605004206545330363031, dni: 37EF, endpoint: 01, cluster: 0000, size: 16, attrId: 0005, encoding: 42, command: 01, value: 06545330363031 | parseMap:[raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5] 1

dev:47692022-07-21 03:09:26.012 pm infomsgMap: [raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5]

dev:47692022-07-21 03:09:25.940 pm infoReset button pressed/message requested by hourly checkin - description:read attr - raw: 37EF0100001605004206545330363031, dni: 37EF, endpoint: 01, cluster: 0000, size: 16, attrId: 0005, encoding: 42, command: 01, value: 06545330363031 | parseMap:[raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5] 1

dev:47692022-07-21 03:09:25.938 pm infomsgMap: [raw:37EF0100001605004206545330363031, dni:37EF, endpoint:01, cluster:0000, size:16, attrId:0005, encoding:42, command:01, value:TS0601, clusterInt:0, attrInt:5]

dev:47692022-07-21 03:09:24.114 pm infomsgMap: [raw:catchall: 0000 8021 00 00 0040 00 37EF 00 00 0000 00 00 7F82, profileId:0000, clusterId:8021, clusterInt:32801, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:37EF, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[7F, 82]]

dev:47692022-07-21 03:09:23.923 pm infoNo VALID lastCheckin event available! This should be resolved by itself within 1 or 2 hours and is perfectly NORMAL as long as the same device don't get this multiple times per day...

dev:47692022-07-21 03:09:23.914 pm infomsgMap: [raw:catchall: 0000 8021 00 00 0040 00 37EF 00 00 0000 00 00 7D00, profileId:0000, clusterId:8021, clusterInt:32801, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:37EF, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[7D, 00]]

dev:47692022-07-21 03:09:23.899 pm infoNo VALID lastCheckin event available! This should be resolved by itself within 1 or 2 hours and is perfectly NORMAL as long as the same device don't get this multiple times per day...

dev:47692022-07-21 03:09:23.856 pm infoRecovery feature ENABLED

dev:47692022-07-21 03:09:23.758 pm infogetDriverVersion() = v1.0.1.1123

dev:47692022-07-21 03:09:23.745 pm infoinstalled()

I don't know if the log file will help.

I don't understand, but the content seems to have changed.

I changed it to the driver you made, and I saw the log again.
It is recognized as a Presence sensor, not a motion sensor.
22072103

search

dev:47692022-07-21 03:21:15.572 pm errororg.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'null' with class 'null' to class 'int'. Try 'java.lang.Integer' instead on line 948 (method updated)

dev:47692022-07-21 03:21:15.560 pm debugλ„ν”ŒλŸ¬ λ ˆμ΄λ” Config parameters changed! old=bd24320921d37f1d8121bd new=bd24320921d37f1d8121bd

dev:47692022-07-21 03:21:15.554 pm infoλ„ν”ŒλŸ¬ λ ˆμ΄λ” Debug logging is will be turned off after 24 hours

dev:47692022-07-21 03:21:15.521 pm infoλ„ν”ŒλŸ¬ λ ˆμ΄λ” Debug logging is true; Description text logging is true

dev:47692022-07-21 03:21:15.519 pm infoλ„ν”ŒλŸ¬ λ ˆμ΄λ” Updating λ„ν”ŒλŸ¬ λ ˆμ΄λ” (Zigbee - Xiaomi/Aqara Motion Sensor) model TS0601 manufacturer null

dev:47692022-07-21 03:21:15.518 pm debugλ„ν”ŒλŸ¬ λ ˆμ΄λ” state.hashStringPars = bd24320921d37f1d8121bd

dev:47692022-07-21 03:21:15.506 pm infoλ„ν”ŒλŸ¬ λ ˆμ΄λ” InitializeVars( fullInit = false )...

dev:47692022-07-21 03:21:15.504 pm debugλ„ν”ŒλŸ¬ λ ˆμ΄λ” updating the settings from the current driver version null to the new version 1.0.7 2022/07/17 9:02 PM

dev:47692022-07-21 03:21:01.048 pm errororg.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'null' with class 'null' to class 'int'. Try 'java.lang.Integer' instead on line 948 (method updated)

Summary

This text will be hidden

1 Like

Please do the following:

  1. Delete Device from the web page
  2. Pair it again to HE
  3. When discovered as a new device, there will be a link β€˜more info’ . Click on it
  4. Copy and paste here all the info that will be shown on the β€˜more info’ window
  5. Only after you copy the device info, you can enter the device name and continue.

Is this the information you want?

Manufacturer: _TZE200_9qayzqa8
Endpoint 01 application: 46
Endpoint 01 endpointId: 01
Endpoint 01 idAsInt: 1
Endpoint 01 inClusters: 0004,0005,EF00,0000
Endpoint 01 initialized: true
Endpoint 01 manufacturer: _TZE200_9qayzqa8
Endpoint 01 model: TS0601
Endpoint 01 outClusters: 0019,000A
Endpoint 01 profileId: 0104
Endpoint 01 stage: 4
Endpoint F2 endpointId: F2
Endpoint F2 idAsInt: 242
Endpoint F2 initialized: true
Endpoint F2 outClusters: 0021
Endpoint F2 profileId: A1E0
Endpoint F2 stage: 4
1 Like

Yes!
Thank you

You're welcome. I'm glad it helped

I have updated the development branch version (1.0.8) to _TZE200_9qayzqa8 'data points' decoding.

However, we still need HE to identify and fill in the 'Manufacturer' value correctly,
@jw970065 can you try the following: from the device web page, manually change the driver to the built-in that is called simply 'device'. It is similar to the 'thing' default driver in SmartThings, but also provides some very useful functions for unknown Zigbee devices.
image

Click on 'Get Info' button and observe the logs page, do you see a fingerprint printed like this?

infofingerprint profileId:"0104", endpointId:"01", inClusters:"0000,0004,0005,EF00", outClusters:"0019,000A", model:"TS0601", manufacturer:"_TZE200_auin8mzr"

Then go back to the device web page and refresh it (F5). Do you see the inClusters and outClusters and the Manufacturer in the Data section now?

If the Manufacturer data is there, you can switch back to the ''4 in 1' driver and check whether the motion active/inactive works.

Bryan, I would check the power supply first. This device requires an external 5V USB power supply ( you will not see it in the advertisements, however!). Try with another power supply unit, often the USB Micro A type connectors do not make reliable contact.

1 Like

Thank you, will not work this way... Seems like HE is confused by the 'Green Power' cluster.. :frowning:
OK, I have some ideas on how to overcome this, but will take some more time. Don't return this black sensor yet!

1 Like

Okay.
I bought this product for $35.7 and received a refund of $35 through Dispute.
And I don't need to return this sensor. I bought this product for 0.5 dollars. :grinning:

1 Like

You disputed that this device is not a mmWave sensor ? And the seller agreed?

The dealer disagreed.
I made a video of the whole process and submitted it to Ali. They saw it not working, and the arbitration changed dramatically to a zero-dollar refund -> a 37-dollar refund. In addition, the sensor does not need to be returned.
It was a very difficult fight.
The dealer claimed it was a program problem and that it would be updated soon, but Ali did not accept it.
I didn't claim it wasn't mmWave. However, while breathing, the sensor failed to detect. So I'm convinced it's not mmWave.

The dealer that I ordered the sensor this time is the dealer.
He gave me false information and arbitrarily deleted it.

1 Like

Probably a device like this :

may help to determine for sure whether there is a 5.8GHz emission or not.

However, I think that the cheap wide-band receivers can not distinguish between the 2.4GHz signals (the ZIgbee communication) and the 5.8GHz signals(mmWave radar). There must be RF filters for the different radio bands inside the scanner, and I doubt these cheap devices have it.

BTW, a simple but effective test could be to simply place a piece of glass in front of the sensor in question. PIR sensors should stop detecting motion, while mmWave sensors should continue to work.

EDIT: Infrared tracking systems do actually exist!
But see what these are used for... Infrared search and track - Wikipedia
Definitely, not a $50 toy! :slight_smile:

1 Like

I am glad to know that there is such a way. I'll experiment with it later.

The simplest way for me to judge mmWave is,
After fixing the sensor to the settings recommended by the manufacturer,
Sitting in a chair in front of it or underneath it, really just breathing for a minute.
The mmWave sensor detects a person, and other sensors do not.

It is the same with the aqara high sensitivity sensor. I don't detect people who only breathe.

The mmWave sensor is also unable to detect if the human heart is not the target, and only the legs are the target.
This is the result of my many tests.

"Infrared tracking systems do actually exist!"
I agree with this.

However, it may not be effective if it is limited to the cheap sensors we use, or if it is viewed as a very small fine part.
Some of the actual Ali sellers have a 95% probability of detection.

The problem with the mmWave sensor is noise. This causes many malfunctions.
As you know and feel important, the technology to control this is very important.

1 Like

@jw970065 can we try a quick workaround for the black sensor F2 custer problem?

Please update to the latest development version branch version ("2022/07/21 8:53 PM"), then in the driver editor go to line #59 and uncomment the test command, by deleting the two backslash characters. Should look like this:
command "force_TZE200_9qayzqa8"
Press Save, and then refresh the device web page (F5). You should see the command 'force_TZE200_9qayzqa8' now, press the button and you can test whether the occupancy detection works with the default settings. Changing the configuration parameters from the driver is not implemented yet, but the decoding of the parameters should work.

BTW, when posting long debug logs in the forum it is better to use the 'Hide Details' - select the long log lines first, then click on the cog wheel on the forum editor and then click on 'Hide Details'

Summary

1 Like