Comprehensive Sump Pump Monitoring

Looking at the snow piling in our yards around here threatening to pass me in height, realizing now is the time to get pump monitoring in order before a repeat of last year’s failure and flooding. Right now, I have an Aeotec water sensor right next to the crock positioned with the floor’s slope toward the overflow drain. Would like that to be the last line of defense though as at the point that triggers, things already have gone quite wrong. Found a couple products I’ll list below that look almost perfect, but I don’t believe I’d have any way to interface into HA. The Flo by Moen offering looks the most promising, but there’s no word on release date just yet. (Also judging by the prices of their other gear, could be a bit painful).

Does anybody know of devices that would allow for recreating most of the functionality promised in those products through HA? I’ve seen people mention a power monitoring smart plug, which I will definitely be utilizing. That should cover keeping track of when the pump runs and for how long.

The part that has been eluding me is how to accurately keep track of the water level in the crock/basin real-time as it changes. I believe that data would be incredibly helpful in identifying patterns that may preclude complete failure. IE. Keeping track of what level starts the pump, how long it usually runs, and what level it gets down to after running would provide a baseline to compare against for scenarios like running too often, not running enough, taking longer than usual to empty, or not emptying as much as it used to. Water detection sensor at the trigger line or just above wouldn’t really cut it.

I have been thinking of combining a ultrasonic sensor (+esp8266 and ESPHome) to measure the depth of my sump pump pit and notify if the level goes above a value that I determine to be ‘normal’

Since I already have a esp8266 there, adding leak detection (Ive had a joint leak in the past) would also be useful.

That looks perfect! Shall grab one and add it to the project backlog. Thanks for sharing.

Hello silvrr
can you share your ultrasonic esphome yaml ?
Thx
Pierre

@tkmitchell - what did you land on in the end? I was interested to understand how you waterproof the esp sensors if you went down that route. Thanks!

I use a bucket/float sensor. Attached to my ELKM1 alarm system but it is a simple closed contact so should work with anything that can report an open/closed circuit.

Unfortunately, this one landed squarely in the “I’ll get to that one day” project graveyard.

For now, I got one of these: https://www.amazon.com/gp/product/B07578W7KY/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
Confirmed it can handle the electrical load my sump pump would draw. Just have a history graph in my UI for now so I can see whenever the usage spikes, indicating it ran. Simple manual system for now that I glance at when things outside get/have been damp. Still looking to pursue something like what other posters have mentioned in this thread in the future though.

@wuench - awesome! thanks for sharing. Is that into a Sonoff or something similar?

@tkmitchell - nice. I found the power source for one of the pumps, which is into a fused wall switch (UK implementation), so i can throw a power sensor on that through a relay… And pray the relay is reliable hah. @wuench’s solution is also great. I’ll check it out.

I am using a submerged level sensor with ESPHome to monitor my sump pump. Since I have a 12V battery backup sump pump, I’m also monitoring that battery’s voltage with the same ESP. In this way, I can set 4 different alerts:

  1. Water level is above where the primary pump should have triggered
  2. Water level is above where the backup pump should have triggered
  3. 12V battery is not charging (voltage is below the 13.0V charging voltage)
  4. 12V battery is at a critically low voltage level (<10V)

I also have statistics to tell me how many pumpouts have occurred and how long between each pumpout. These are all calculated locally by the ESP and then communicated to HA or visible if I view the ESP’s IP address in a web browser.

Level sensor - I have the one with 1m range

Everything is powered off the 12V sump pump battery, and I have it connected to a 12V siren. This way, it still provides the audible alarm functionality even if there is no power or internet.

This took lots of soldering and coding but I finally have a solution that fulfills absolutely everything I had on my wish list.

This sounds like exactly what I need. Would you care to share more details about your project (coding, set up, etc). Nice work btw!

Not sure if you’re asking me or someone else in this thread. But I just posted the detail of mine here:

Thank you so much for providing that level of detail…and yes, was asking you :). Again, awesome job putting all this together!

1 Like

Sorry, one more (perhaps dumb question) but when looking at your schematic, it appears that the 5V that connects to the esp32 goes into both the VOD and the A0 on the ADS1115. As does the Ground which goes to the GND and ADDR. Correct?

Probably better to reply to that other thread if you have specific questions on my setup. But yes:

  • +5V goes to both VDD and A0 (VDD because it needs power to operate, and A0 because I want to measure that voltage and report it as a sensor.
  • GND goes to both GND and ADDR (and A3).

I didn’t state this, but I’ve assumed the DC/DC converters (12V-to-5V, and 12V-to-24V) are non-isolated. If you buy isolated converters (which would be unlikely and more expensive) you’d have to make them non-isolated by connecting the grounds between input and output. On my schematic, any circuit that is the same color (e.g. brown for GND) has every endpoint tied together.

Thanks for the confirmation and as noted, will post any further questions to the other thread. Cheers.

One additional option that I’ve been running this rainy season and has been working quite well is a Shelly Uni connected to this water level sensor. The water sensor can be connected to the Shelly’s ADC voltage channel. Drop the sensor into the sump, fill it up with water, record the ADC reading at various water levels. Define the ADC reading at which your sump pump evacuates the water and set a trigger for any reading above this level. Here is what my sump pump ADC readings from the Shelly Uni look like over the last 10 days (yep, it’s been raining buckets here in the San Francisco Bay Area).