I have three Aqara Motion Sensors. One of them works perfectly (all triggers work). The other two can't always seem to trigger any motion. 99% of the time the motion stays inactive.
The weird thing is that lastCheckin and illuminance do update on any motion. At first I thought the sensor was broken, but today I got a new sensor with the same issues. It could be that they are both broken.
I'm using /veeceeoh/xiaomi-hubitat/master/devicedrivers/xiaomi-aqara-motion-sensor-hubitat.src/xiaomi-aqara-motion-sensor-hubitat.groovy as the driver.
I also paired the devices after a reset but that doesn't seem to make a difference.
There's a lot of information in that thread about using compatible repeaters with Xiaomi. Aqara versions in particular do have issues staying connected verus the Mijia versions. As mentioned many times in that thread, the Xiaomi Zigbee is non-compliant, so do expect to have issues if you pair them with anything but a Xiaomi Aqara or Mijia gateway, and you should feel very fortunate if you don't have any issues
I have around 12 of these and have a similar problem with just one of them. The rest have been fine for months now. It only triggers irregularly. It's upstairs but directly above the hub so should be fine, but it's probably meshed in via a bulb or suchlike which may be causing my issue or else it's faulty. Didn't get a chance to troubleshoot it properly yet.
I currently changed the cluster ID for motion from 0406 to 0400. It's not how it supposed to work as the ID 0400 is used for illuminance but this way the motion does get registered. The only down side is that the illuminance doesn't work anymore. In my case I don't rely on the illuminance function so it's fine.
Thanks j03y. I used your fix as inspiration.
I changed:
else if (cluster == "0400")
// Parse illuminance value report
map = parseIlluminance(valueHex)
To:
else if (cluster == "0400") {
//a "hack" because motion seems not to be triggered every time but illumination does.
sendEvent(parseMotion())
// Parse illuminance value report
map = parseIlluminance(valueHex)
}
For the actual motion event to not arrive you must have some issues on the mesh. It could also be a processing issue, which is why I suggest you try my driver. If the issue persists with my driver (after changing to my driver and re-pairing the device without removing it from HE) there might be a reason to add an option to use Illuminance as an optional motion event trigger.
My thread has been ranked low in many searches, I did make some changes today based on how the "search engine" of this forum software work. It should improve results.
In general a 1 or 2 word search gives better and more accurate hits when looking for drivers in this forum. "Xiaomi driver" or "Aqara Driver" would work for example.
Force Recovery Mode is not mandatory, that is a command. No need to send it. It is for if you know your device has disconnected but not yet been detected as not present.