Using ZHA to replicate sending messages available via Zigbee2MQTT to control Linkind 21001 Water Sensor

I have a 4-pack of Linkind LS21001 water sensors - I’ve integrated them (and other devices) into HomeAssistant via ZHA. I’d like to configure some of them to alert to HomeAssistant without an audible siren1. This link suggests that the configuration can be set via Zigbee2MQTT, but my Zigbee coordinator (a Nortek Zigbee & Z-Wave USB Dongle) does not appear to be compatible with Zigbee2MQTT - it’s not listed in the supported devices page, and attempts to install and start the Add-On fail to find a compatible device at the path of the USB device.

I was hopeful that I could reverse-engineer the correct signal to send (via ZHA) - I assumed that Zigbee2MQTT and ZHA must be using the same underlying protocol, and that Zigbee2MQTT just exposes a broader set of user-facing options.

  • This snippet appears to describe the translation between Zigbee2MQTT user-facing options, and Zigbee protocol messages
  • This snippet suggests that the correct values to send would be value:1 and manufacturerCode: 4456 (0x1168 in decimal) to the attribute with id 0x400a
  • ZHA does show an attribute named linkind with that id - I thought the name was promising, since “siren behaviour” is less likely to be part of the Zigbee spec than more generic properties (which were represented with their own attributes) like device_enabled, serial_number, or battery_size.

However, I was unsuccessful - after sending this payload (and getting a green tick response), the device still sounds a siren when activated.

Has anyone successfully configured the siren behaviour of one of these devices via ZHA? Or used ZHA to replicate functionality available via Zigbee2MQTT?

1: if you’re wondering why - there’s a pit in my unfinished basement containing a sump pump. Water regularly drains into it but the sump pump only activates when the water is over a certain depth. Having had an extremely costly sump pump failure recently, I’m trying to rig up a crude depth-sensor, by attaching pairs of wires of varying lengths to the contacts of the water sensors, and dangling them in the pit. I’ll want sensors just below and just above the “trigger height” of the sump pump (plus probably one more at a lower water level, which will be “always on”, to confirm connectivity), but I don’t want regular sirens from the sensors that are expected to be wet.