Spring water sensor

Hi everyone, I’ve been doing a lot of research and I’m stumped on how to do this.

We get our tap water from a spring, which goes into a tank in our yard. When the tank is full there is an overflow pipe (about 1 or 1.5 inch) that has water coming out. With how little water we get from the spring, we need to constantly check on the water coming out of the pipe before we do anything with the water. I’m wanting to start my smart home and this is one of the big problems I have.

My question is, do any of you know any water flow sensors that output an on or off state? I don’t think I could use a simple water sensor due to the area being shaded and it would stay wet for a while.

How would I get that signal back to the house to a Home Assistant Yellow? (The pipe is in Wi-Fi range) I read on the HAY croud fund page that the GPIO pins shouldn’t be used for anything with HA. I have been looking at ESPHome but I have no clue how that works or what hardware I need to get that started.

Any suggestions? Thanks!

1 Like

So you want to switch off the pump when water is coming out of the pipe?

You could make a fairly simple diy sensor with a paddle wheel, a magnet and a hall sensor.
Glue the magnet to the paddle wheel and sense rotation with the hall sensor when the magnet moves

This is easily done in ESP-Home.
There are probably off the shelf version similar to this also.

The simplest method would be have a water contact sensor that would indicate it is overflowing therefore full (think flood sensor). Other options are level sensors.

What is the material your tank is made of?
If it is plastic and not metal a non-contact water sensor on the outside of the tank at various levels to give different tank level inputs.
You could have a ultra sonic sensor on the top feeding back level or a pressure sensor at the bottom of the tank.

You have several options.

Out of curiosity are you using a ram pump or gravity to fill the tank?

How big is your tank?

What about a float switch in the tank?
They are generally placed in line with the pump and means you don’t need to do much automation and don’t have to worry about wifi and all that.

1 Like

The pump is controlled automatically. In its most basic form, I would ask Alexa “is the water running” and she would reply with a yes or no. Having access to the on or off state of the sensor would allow other things to be done with it, but this is mainly what I’m trying to accomplish.

I was thinking of something like this flow sensor at the end of the pipe. I would get the right size for the pipe though.

The tank is in the ground so I wouldn’t be able to put sensors on the side. It is plastic though. Will flood sensors keep showing that it is detecting water even after the water stops flowing on it? I’m thinking that enough water may stick to it to keep it detecting. I have never used a flood sensor though so idk! lol.

I could always try a flood sensor and if that doesn’t work, put it somewhere in the house. I’m weary about it working though, so if I had to go with a wired sensor, how could I get that signal back inside to Home Assistant?

It’s fed by gravity and we have a 250gal (i think) tank.

We rent the house, so I’d rather not get the landlord involved to insert something into the tank.

How do you check the level currently?

Currently, we just check if water is coming out of the pipe. We know that if the water is running that we can do anything we need to. Just knowing if it’s running or not is good enough for us. It would be nice to know if the water is getting to a very low level, especially when there is a drought, as the overflow can stop flowing for a day or two. Our spring is normally like a tap open at 15% or so, but it can become a small trickle when we go without rain for a while. It’s only happened a couple of times and we just didn’t do laundry. I may explore that in the future, but that’s out of the scope right now.

is there room under the overflow pipe to put a bucket of some type?

if so you could use a float sensor in that bucket to say if the bucket is full.

then put a VERY small hole in the bucket such that it drains slower than the normal flow from the pipe.

so then if the water stops coming out of the pipe or it slows way down then the float sensor will tell you the bucket is not full.

I think @finity probably has the easiest option for your circumstances.

Along those lines but maybe a little more complicated you could ‘measure’ the flow from the overflow. Either with a tipping gauge or a little flow turbine. When I say ‘measure’ more of a last time it overflowed. You could make or obtain a tipping gauge cheaply and attach a magnet to one of the side of the tipping bucket and a reed switch that will register the magnet anywhere in the path. You could have this reed switch be a binary input to HA and a timer since last state change. Then along with what others have mentioned you can use an estimate of your water usage (flow rate) to determine remaining volume in the tank.

Edit There are off the shelf sensor like a door or window sensor that have contacts you can connect to in order to feed to HA

there was this thread that used the same concept:

1 Like

This is a water sensor that has an on/off state

yf-5201

However it seems to have 3 wires and requires 5v so I’m not sure if you could hook it up to for example an Aqara door sensor.

But an ESP32 with ESPHome would work perfectly

I love an interesting problem. And this one has lots of different ways to approach it.

First, I want to point out that you most certainly can use GPIO pins in HA. I monitor my heating system with them. But of course that would require that the sensor be reasonably close to the device running HA.

Moving on to other options, how about some sort of arm which is deflected by the flow of water? Think a see-saw or one of those “walk the plank” mouse traps. It’s balanced so when there’s no water flowing, the arm (plank) is horizontal. Water falling on it tips it down, tipping the other end up. Put a WiFi garage door sensor on the other end.

Or just have contacts on the other end of the arm. Then take a magnetic door switch and replace the reed switch with two wires going to the contacts.

1 Like

Could use something like this on the upper level of your tank (just at a level that it is always active when it’s overflowing):

https://www.aliexpress.com/item/4000825716575.html

https://www.aliexpress.com/item/4000248703867.html

The sensors linked can be combined with virtually every esp out there and you are good to go. :rocket:

Also at a later state (if you want to know more) you can easily add more sensors like a ToF or ultrasonic sensor to not only get the “full” state but actually the real height :pinching_hand:

You have multiple was of detecting the water, if you go for a water level sensor.
You can use a microwave sensor (radar), light (lidar), ultrasonic, magnetic (hall effect), capacitive sensors and resistive sensors.

Resistive sensors should be avoided for drinking water, because the electronic is in direct with the liquid and the electrical current go through the water and it will cause erosion on the sensors spots in contact with the liquid.

Capacitive and magnetic sensors also have parts with direct contact with the water, but they have often no electrical contact with the water, so they costing or case just need to be suited for drinking water.

Microwave, light and ultrasonic needs no contact with the water, but usually require a mounting in the top and the sensor pointing downwards, so your tank needs to support this.
Microwave can be pretty expensive, but light and ultrasonic might not be.

You will be able to find all these types of sensors for Arduino and ESP devices. Especially ESP devices is well supported by HA since ESPhome is now under the same organisation.

This might be a good start to get introduced to that community and you will get lots of help and every possible type of sensor and control will suddenly be open to you.