Hive motion sensors - can we get custom driver sorted?

I see a post from a couple of years ago about about Hive motion sensors and how there is no reliable driver. I am new to Hubitat (and Groovy) and trying to learn the code for custom drivers (and the Zigbee standards) and hope to get a driver working for this device.

Cobbling together a debug driver from various sources, I can see that my sensor (MOT003) is able to report temperature and illuminance and possibly battery status along with an announcement each time motion is triggered. I believe the device has an occupancy status but so far I have been unable to find this data.

People have reported that generic drivers do not work as this device does not trigger an 'inactive' event when no motion is detected for a period - hence previous posts about using delays and timers in code to emulate this.

Can anyone shed any light on the behaviour I am seeing where the device sends data every 10 seconds or so, which appear to contain a counter in the data?

descMap:[raw:catchall: 0000 0006 00 00 0040 00 314A 00 00 0000 00 00 00FDFF040100012000, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:314A, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[00, FD, FF, 04, 01, 00, 01, 20, 00]]

The first 00 in the data field increments on each message and loops at FF back to 00

I do not understand what type of message is being sent - has anyone seen this before on other devices?

The device in question is

  • endpointId: 06
  • application: 01
  • calcBattery: false
  • endpointId: 06
  • firmwareMT: 1039-2630-01102603
  • inClusters: 0000,0001,0003,0020,0400,0402,0500
  • manufacturer:
  • model: MOT003
  • outClusters: 0019
  • profileId: 0104
  • softwareBuild: 01102603

Many thanks.

1 Like

Hi @user3502 ,

The ZDO message cluster 6 is most probably related to OTA firmware update process :

Is your HE hub running the latest platform version (it is at the moment) ?

Based on the inClusters list, this sensor should be able to report illuminance, temperature and motion, You can try the [RELEASE] Tuya Zigbee Multi-Sensor 4 In 1 (PIR motion sensors and mmWave presence radars) driver. As the occupancy/motion uses the IAS cluster (0500), you may need to pair the device again to the hub, with the Tuya driver manually assigned first.

Thank you kkossev for the information - this has given me more to think about and to try. Yes the HE hub is running that latest platform version.

I have a 2nd MOT003 sensor which behaves very differently - and appears to have a different firmware version:

  • endpointId: 06
  • application: 05
  • calcBattery: false
  • firmwareMT: 1039-0021-05042603
  • inClusters: 0000,0001,0003,0020,0402,0406,0500
  • manufacturer:
  • model: MOT003
  • outClusters: 0019
  • softwareBuild: 05042603

I has 'Application' 05 rather than 01, and is missing inCluster 0400 (illuminance measurement) but now has inCluster 0406 (occupancy sensing). Clearly Hive has upgraded the firmware and the way these devices operate. I would love to get all the details so that we can have a driver designed to allow people in the UK to easily switch their Hive kit to Hubitat.

This 'newer' firmware does seem to send occupancy state changes (well to occupied anyway - messages about inactive / unoccupied do not seem to be sent) and is not currently sending data unless there is a temperature, battery or occupancy changes.

I worry that the first sensor sending so much traffic (the above mentioned 'counter') every 10 seconds will kill the battery and flood the network. Of course I can look into using the Hive hub to update the firmware but it would be great to figure out if there is a command that Hubitat can sent to shut it up (rather than just ignore it)

If anyone has any suggestions or can decode the catchall: 0000 0006 00 00 0040 00 314A 00 00 0000 00 00 00FDFF040100012000 I would be most grateful.

Thank you.

dev:32652022-12-31 08:18:53.336info Received match descriptor request, data=[00, FD, FF, 04, 01, 00, 01, 20, 00] (Sequence Number:00, NWK:FFFD, Profile:0104, Input cluster count:00 Input cluster: 0x2001)

Is there anything logged as a response to the Match Descriptor Request?

Download the Hubitat app