[OBSOLETE] leakSMART Water Sensor

Folks, what did yall do to get these updated to the latest firmware… I’ve got 4 that have been sitting in a box for years that I’d love to use. If yall could post what you did to get them updated, note I’ve tried hooking them up to a wink hub with no dice - maybe the firmware is way to old?
Thanks

Mine were updated by LeakSMART by mailing them in. They graciously updated the firmware and supplied a set of fresh batteries along with a re-designed battery cover for each and shipped them back, free of charge. Don’t recall exactly but I think I had them back within 1-2 weeks or so. As I recall from the forum Wink was able to do OTA updates to a newer, but not most recent, firmware.

The new firmware has much better battery life; they will probably go a year or more between battery replacements vs. the 3 months I was getting before. Mine were mailed in last October for the version 34 update; don’t know if there have been any changes since. Might be worthwhile emailing them to make sure they still do this; I sent an email to: customerservice@waxmancpg.com

does the newer firmware also fix the reporting wet when battery is low issue?

No, but there are a few things you can do to prevent this from happening.

I have a webCoRE piston that checks the battery level of all my devices. It will notify me daily of devices under 45%. For leakSmart sensors I change them when they drop below 28%.

Option #2: All of my automatons happen in webCoRE. I’ve considered doing the following…

2 Likes

So during the last couple of weeks, 3 of my 4 LeakSmart sensors have reported 0% battery (most recent report was 55%) at least once during their daily refresh. For each of them when I got the notification, refreshed them manually and the next read went back to 55%. They haven’t repeated the 0% reading. Is this typical behavior? I haven’t needed a battery change since last October.

So it went to 0% as part of a scheduled refresh in a webCoRE piston or something. Then you manually refreshed it went back to 55%, right?

Yes. I just manually initiated a refresh on another sensor and got 0% the first time and 55% the second. Is this typical for an almost dead battery, or new cloud behavior?

Any chance you can try to capture IDE logs when you do this?

Sure, here it is. BTW, my battery settings are 4.5V max, 2.7V min if that is relevant. Here’s a sensor alternating between 0 and 55 (with a couple of consecutive 55’s) via manual refreshes:

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 75.848F.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 0%.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 55%.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 75.848F.

5:02:48 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:41 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:41 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Refreshing…

5:02:32 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:32 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 55%.

5:02:30 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 75.848F.

5:02:30 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:29 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:02:29 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Refreshing…

5:00:29 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:00:29 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 55%.

5:00:27 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 76.01F.

5:00:27 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:00:27 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:00:27 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 55%.

5:00:26 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 76.01F.

5:00:26 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:00:22 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

5:00:22 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Refreshing…

4:59:55 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

4:59:55 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Battery Value Reported: 0%.

4:59:54 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Temperature Reported: 76.01F.

4:59:54 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

4:59:52 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Current state version is 4 and new state version is 4.

4:59:52 PM: info leakSmart – leakSmart Sensor 3 (Laundry) – Refreshing…

What is your min and max voltage set to? It is in the settings of the device.

Also, can you set the device to debug in the settings?

I have it set to min 2.7 max 4.5 (got that from finding out where my sensors still worked with the prev. f/w and added a few tenths). I also just functionally tested one of my sensors alternating between 0 and 55 and it did indeed sound an audio and radio alert.

5:54:21 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:battery, value:0, translatable:true, descriptionText:leakSmart Sensor 4 (Bathroom) battery was 0%.].
5:54:21 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:21 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Battery Value Reported: 0%.
5:54:21 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Battery rawValue = 37.
5:54:21 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = null
5:54:21 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Desc Map: [raw:987D0100010A2000002025, dni:987D, endpoint:01, cluster:0001, size:0A, attrId:0020, result:success, encoding:20, value:25].
5:54:21 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(read attr - raw: 987D0100010A2000002025, dni: 987D, endpoint: 01, cluster: 0001, size: 0A, attrId: 0020, result: success, encoding: 20, value: 25.
5:54:20 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:battery, value:55, translatable:true, descriptionText:leakSmart Sensor 4 (Bathroom) battery was 55%.].
5:54:20 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:20 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Battery Value Reported: 55%.
5:54:20 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Battery rawValue = 37.
5:54:20 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = null
5:54:20 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Desc Map: [raw:987D0100010A2000002025, dni:987D, endpoint:01, cluster:0001, size:0A, attrId:0020, result:success, encoding:20, value:25].
5:54:20 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(read attr - raw: 987D0100010A2000002025, dni: 987D, endpoint: 01, cluster: 0001, size: 0A, attrId: 0020, result: success, encoding: 20, value: 25.
5:54:19 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:77, descriptionText:leakSmart Sensor 4 (Bathroom) was 77°F, translatable:true].
5:54:19 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(77).
5:54:19 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 77.936F.
5:54:19 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:19 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 248, 9].
5:54:19 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029F809.
5:54:18 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:18 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Refreshing…
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:battery, value:0, translatable:true, descriptionText:leakSmart Sensor 4 (Bathroom) battery was 0%.].
5:54:17 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:17 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Battery Value Reported: 0%.
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Battery rawValue = 37.
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = null
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Desc Map: [raw:987D0100010A2000002025, dni:987D, endpoint:01, cluster:0001, size:0A, attrId:0020, result:success, encoding:20, value:25].
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(read attr - raw: 987D0100010A2000002025, dni: 987D, endpoint: 01, cluster: 0001, size: 0A, attrId: 0020, result: success, encoding: 20, value: 25.
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:77, descriptionText:leakSmart Sensor 4 (Bathroom) was 77°F, translatable:true].
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(77).
5:54:17 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 77.936F.
5:54:17 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 4 and new state version is 4.
5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 248, 9].
fa54d4e7-1903-497d-bba0-02f91c6e1b15 5:54:17 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029F809.

Do you now how to manually update your code to a different branch? If so, update to this branch. Do the refresh again and capture the logs. This won’t fix your issue but it will give me a better idea of what is going on. Actually this might fix it.

https://raw.githubusercontent.com/ericvitale/ST-leakSmart-Sensor/low-battery-level-fix/devicetypes/ericvitale/leaksmart-sensor.src/leaksmart-sensor.groovy

Looks promising! I beat on it a few times and it now shows 56% every time. Thanks for your work on this.

8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – result.value = 55.
8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – pct = 0.5555555556.
8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – maxVolts = 4.5.
8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – minVolts = 2.7.
8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Battery rawValue = 37.
8:02:35 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = null
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:78, descriptionText:leakSmart Sensor 4 (Bathroom) was 78°F, translatable:true].
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(78).
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 78.008F.
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 252, 9].
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029FC09.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:battery, value:56, translatable:true, descriptionText:leakSmart Sensor 4 (Bathroom) battery was 56%.].
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Battery Value Reported: 56%.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – XX = 56.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – pct = 0.5555555556.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Battery rawValue = 37.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:78, descriptionText:leakSmart Sensor 4 (Bathroom) was 78°F, translatable:true].
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(78).
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 78.008F.
8:02:34 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 252, 9].
8:02:34 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029FC09.
8:02:27 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:02:27 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Refreshing…
8:01:57 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – result.value = 55.
8:01:57 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – result.value = 0.
8:01:57 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – minVolts = 2.7.
8:01:57 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Desc Map: [raw:987D0100010A2000002025, dni:987D, endpoint:01, cluster:0001, size:0A, attrId:0020, result:success, encoding:20, value:25].
8:01:57 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(read attr - raw: 987D0100010A2000002025, dni: 987D, endpoint: 01, cluster: 0001, size: 0A, attrId: 0020, result: success, encoding: 20, value: 25.
8:01:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:78, descriptionText:leakSmart Sensor 4 (Bathroom) was 78°F, translatable:true].
8:01:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(78).
8:01:55 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 78.008F.
8:01:55 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:01:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 252, 9].
8:01:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029FC09.
8:01:54 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:01:54 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Refreshing…
8:00:55 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Battery Value Reported: 56%.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – pct = 0.5555555556.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:78, descriptionText:leakSmart Sensor 4 (Bathroom) was 78°F, translatable:true].
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(78).
8:00:55 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 78.008F.
8:00:55 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 252, 9].
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029FC09.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:battery, value:56, translatable:true, descriptionText:leakSmart Sensor 4 (Bathroom) battery was 56%.].
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – XX = 56.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – pct = 0.5555555556.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – maxVolts = 4.5.
8:00:55 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – minVolts = 2.7.
8:00:54 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – map = [name:temperature, value:78, descriptionText:leakSmart Sensor 4 (Bathroom) was 78°F, translatable:true].
8:00:54 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – Begin getTemperatureResult(78).
8:00:54 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Temperature Reported: 78.008F.
8:00:54 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:00:54 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – 402 Cluster Data: [0, 0, 0, 41, 252, 9].
8:00:54 PM: debug leakSmart – leakSmart Sensor 4 (Bathroom) – parse(catchall: 0104 0402 01 01 0140 00 987D 00 00 0000 01 01 00000029FC09.
8:00:49 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Current state version is 7 and new state version is 7.
8:00:49 PM: info leakSmart – leakSmart Sensor 4 (Bathroom) – Refreshing…

Cool, weird issue. I’ll remove the extra logging and merge this into the master branch.

1 Like

Sounds great. Thanks again! By the way, what min V do you use? With the old firmware I got tired of the frequent replacement when it seemed there was enough juice left to operate the sensor so I lowered the value. Not sure how far out on a limb I am with this but I hate wasting money.

Updates merged to master. I’ve made a few other improvements. You can update from github the normal way and it will pull the latest code.

Version 1.2.4 - Various improvements, details below. (08/13/2018)
 *   Fixed battery percentage rounding error that caused the battery to read 0% on occasion.
 *   Updated logging prefixes.
 *   Made the "wet" state blue.
1 Like

HI
I’m new here, I have a leaksmart valve, I’ve had it for few years now actually. I’m using “Smart Home Monitor” , configured “leaks” to close the valve when moisture sensor detects moisture.
this works fine.

what i wanted to do though is buy another leaksmart valve, have primary(existing valve) close when water is detected, but also have secondary (new valve) open so it can “drain” water from the house - i can route it to the sewer so when a leak is detected all the water from the pipes drains to minimize the damage. it seems that i can’t set up that action in “smart home monitor”, because the only option i have is to close the valve.

how can i accomplish this ?

thanks

Set up an automation. If valve A closes, then valve B opens.

I realized i was still using smarthings classic app, although i had both. i see that option in the new app. so easy :slight_smile: thanks !

Looking for help with Leaksmart Snap Valve and adding it to Aeotec Hub to monitor / control my Leaksmart system with sensors. Have the Leaksmart app on my phone for monitoring my Leaksmart Snap Valve and sensors, but Leaksmart is out of business, and the app is no longer available. If something happens to my phone, and I am unable to reinstall the app, I want to have a backup for my Leaksmart system. I am under the impression that my Leaksmart system can be installed under SmartThings using an Aeotec hub. I have the Aeotec hub, and have installed it in my ST app. I am now looking for someone that has installed their Leaksmart system into ST app using the Aeotec hub. I specifically have the white Snap Valve, not the brown valve with integrated ball. If anyone can send me to the right place so that I can get my Leaksmart system set up in ST using Aeotec, I would appreciate your assist. Thank you.

1 Like