Sonoff leak detector driver - SNZB-05P

I purchased a couple Sonoff SNZB-05P Zigbee Water Leak Sensors. As I am trying to get this to work I wound up selecting the built-in Generic Zigbee Moisture Sensor. This does allow a "Water" attribute to show up and it also allows it to work with my existing leak notifier. However, I have noticed that this device now shows up as having two component devices.
image
Does anyone have a suggestion for a better driver?

The built-in Generic Zigbee Moisture sensor driver does not create child devices. Were you previously using a different driver? If so, the easiest way to fix this, assuming you don't have any apps using the device yet (parent or any child), is just to delete the device and re-pair it, then select the correct driver shortly after and run a "Configure" after that. You may need to re-pair it once more (this time without deleting it first) if this device is extra-sleepy and doesn't respond to that, the biggest clue to which would be that it might not report wet/dry events.

1 Like

I went through the deletion, pairing, setting the driver and pressing Configure. I tried both the Generic Zigbee Moisture Sensor and the Generic Zigbee Moisture Sensor (no temp) drivers. Neither driver reported a Wet attribute. I will have to try some more drivers.

Did you also:

2 Likes

you could try Krassimir's driver, it supports about 7 different devices and one of the fingerprints should match

definition (name: "Tuya NEO Coolcam Zigbee Water Leak Sensor", namespace: "kkossev", author: "Krassimir Kossev", importUrl: "https://raw.githubusercontent.com/kkossev/Hubitat/development/Drivers/Tuya%20NEO%20Coolcam%20Zigbee%20Water%20Leak%20Sensor/Tuya%20NEO%20Coolcam%20Zigbee%20Water%20Leak%20Sensor.groovy",

1 Like

Deleted
Paired
Set Device type to Generic Zigbee Moisture Sensor
Clicked Configure
Paired again (without deletion)
Seeing a Battery state
Seeing State Variables: lastBattery and tempOffset

...and now, after checking the logs and going back to ensure debug logging was enabled (followed by saving the preferences on that device) I now see a new State: water.
This state toggles from wet to dry as expected.
I am not sure what in the heck is going on as far as why it didn't initially show the "water" state.
Am I missing some detail in my process? Does it take some time for things to show up?

Normally you can just pair the device, so I wouldn't say you're "missing" anything, just that this device might be a bit weird. :slight_smile: The steps you outlined above (in your most recent post) should be enough for devices that don't listen for messages from the hub and didn't pair with the right driver (by the way, that could be fixed in a future release if you run the "Get Info" command while it's still using the "Device" driver, then provide the "fingerprint" entry it should print to Logs--could save you from having to do this again since it could help,the driver match in the first place).

You normally don't have to wait for states to appear; this driver fetches them on a "Configure," which also runs on pairing. This should have happened on your second pairing if nothing else (possibly not the first since it didn't match the driver, and these devices are likely not listening for commands from the hub at any other time if they're like other Sonoff sensors I've used). If they didn't happen, I don't have a good explanation unless maybe they took a long time to respond, but if things are working now, I wouldn't be concerned.

I see this very early in the logs:

Thanks! This fingerprint should be in the "no temp" driver (assuming that's the right one) in release 2.4.0, so that should at least make this easier for you or anyone who adds this device in the future.

1 Like

Any idea when 2.4.0 will be coming?

No, I would have guessed a month ago. :smiley: I can submit the same for 2.3.9 if there ends up being another hotfix...

1 Like

Today I tried to connect to a second Sonoff SNZB-05P.
I paired it.
I set the device type to Generic Zigbee Moisture Sensor (no temp). (Different from what I had tried before).
I clicked Configure.
I saved the Preferences and Device.
The battery state appeared. However, the value shows it is 200%.
I then paired the device again.
No "water" state yet.
I then put water on the sensor.
The "water" state appeared with the "wet" value.
I dried it off and the state switched to "dry".

I was quite surprised it took actually triggering the device for the state to show up.

Me too, because it looks like it sends a command to fetch this value as part of configure(), which should run automatically on pairing (or re-discovery). It's possible this device is wonky and does not respond to this for some reason (not the first device from this manufacturer I've seen that has some quirks :slight_smile: ).

does the cable itself detect water or just the end? homeseer made an awesome one with a cable that if any of it got wet it popped off.. problem was the cable had a finite life.. so im at the point where replacements are needed and homeseer discontinued it

Anywhere along the length of the cable that gets wet.

1 Like

Just FYI to anyone researching this: I installed a bunch of Sonoff moisture sensors yesterday. They all were auto recognized and installed correctly, showing 100% battery status, and "dry". So, whatever the issues were before, they are all resolved in the latest versions.

1 Like

Having problems with one of the devices. It got into a wet state (legitimately), and is not reverting to "dry" at all. It still seems to be communicating with the hub fine, because the battery checks are coming through periodically. Here are the last few log entries:

dev:5442025-10-13 12:13:17.959 AMinfoMoisture-MBR Right Sink battery is 100%
dev:5442025-10-12 12:08:28.818 PMinfoMoisture-MBR Right Sink battery is 100%
dev:5442025-10-11 06:40:12.386 PMinfoMoisture-MBR Right Sink is wet
dev:5442025-10-11 02:10:36.074 PMinfoMoisture-MBR Right Sink is dry
dev:5442025-10-11 02:09:36.802 PMinfoMoisture-MBR Right Sink is wet
dev:5442025-10-11 02:09:36.680 PMinfoMoisture-MBR Right Sink is dry

Here are the things I have tried:

  1. The unit has the "wick" extension. In order to try to force a "dry" condition, I removed the extension, so that the base unit bare. It is dry as a bone, but yet nothing is reported back.
  2. I brought the puck close to the hub, to see if it was a communication problem. Even sitting next to the hub, nothing is reported.
  3. I removed the back and pressed the button a couple of times. Each time the button is pressed, the LED flashes as if it is sending a message. No message is reported in the logs.

What else can I try, short of deleting and re-adding the sensor?