Picture of Build a simple water level control

About 20 years ago, a friend of mine came to me saying that he had to repair a customer’s  water level control made out of electromechanical relays which was falling apart.  He understood that the original control relied on conductivity of water. The customer didn’t want any type of float switch so he had to stick to the way it was meant to work.

He could start the pump whenever water fell below the “low” level electrode and pump would stop once it reached the “high” level electrode but, as water was consumed and its level barely dropped just below “high”, his circuit would re-start the pump just to stop it as soon as “high” electrode was touched by water again. This process kept going on and on until he switched power off. His circuit was oscillating which was not good for a 5 HP water pump or any pump at all.

He needed help. At this point I asked him that instead of working with relays, wouldn’t it be nice if the control were electronic which would probably be less expensive, more reliable and have a longer life?

 I intended to build a kit for Club Jameco out of how I remembered this control worked and this is what this instructable is all about. 

*** Disclaimer: This kit is meant to operate with equipment such as line operated water pumps or motor starter relays and/or contactors at lower control voltages. Line voltage is dangerous and if mishandled can cause injury or death. If you are not familiar or have not worked with line operated equipment, have a licensed electrician do the power wiring for you. This kit is meant to be educational in nature and can be used with line operated equipment if National Electric Code guidelines are followed. ***

1-40 of 129Next »
zohaib_977 months ago

Hi ! I am new to the world of electronics and wish to make a similar circuit with some more requirements. Could u please help in suggesting a simple, cheapest, durable and an automated solution (with maximum safety) for prototyping the circuit below? Thank You !

I have two AC motors, one for storing water in underground tank and the other for filling up overhead tank.

I start storing water in the underground tank once it comes during designated timings on alternate days only and it takes 8-10 hrs for tank to fill completely.

Sometimes it even happens that pump for underground tank is left running (not knowingly) and the water supply from utility during the designated timings is over while filling up the tank. In this scenario, the motor uselessly runs, until someone physically see the the flow of water and then switches it off.

After I see that there is substantial amount of water present in the sump, then only i switch on the other motor to fill up overhead tank or it would burn down the motor. The tank fills up in 90mins, if it's completely empty. In this scenario too, one has to be there in time to switch off the motor once it has filled up completely to prevent overflow.

For this circuit, I would like to know the level of water using 5 LED indicators (EMPTY, 1/4, 1/2, 3/4, FULL) for both of my tanks.

More importantly, a manual switch in the circuit would be its plus point. So that if the circuit is malfunctioning, I would be able to connect the motors directly to mains.

Both are 2 HP motors and operate in 220V AC

rlarios (author)  zohaib_977 months ago
Hi there zohaib_97,

Unless I missed something, the only pump you need automated is the underground pump. This means that the overhead tank can be controlled with the circuit shown here in this instructable.

The underground pump can be controlled by a circuit similar to the "pump protect" portion. As this pump needs to come on only when water is available from the utility every other day at designated times, whenever water is unavailable, this pump won't come on.

You can always place a switch in parallel with relay contacts to turn pumps on and off in case of control circuit malfunction.

For water level monitoring you can place electrodes at your required levels and each electrode will be the input to a CMOS gate of some sort (like the ones in the CD4001 IC) which in turn could drive a transistor to turn on an LED.

Let me know if you are in agreement with this unless corrections are needed so either I help you designing it or you do it yourself.


zohaib_97 rlarios7 months ago

Hi rlarios

Thank you so much for showing support, really appreciate your efforts.

I agree with you, whatever u said above. Although, this instructable covers the requirement of automating overhead pump, but for the underground pump, can you please help me in designing the the circuit?

rlarios (author)  zohaib_977 months ago
Sure, I have one question, though. Where does underground pump get water from? A pipe, another reservoir?

I'm thinking that the underground pump can be controlled the same way the overhead pump would. After all, you would like underground pump to run until underground tank is full or until utility water runs out, wouldn't you? Being this the case, your only problem would be where to place sensors.

zohaib_97 rlarios7 months ago

Hi rlarios, thank you for your support.

The pump for storing the water underground (in our reservoir/sump) gets water from utility company though their underground running main pipe.

I would like to implement both of the conditions for underground pump. This is because, may be underground tank gets full first but utility water is still coming in its timings. Or it may also be possible that utility water runs out first but the tank is still not filled up completely.

rlarios (author)  zohaib_977 months ago
Do you have access to place a sensor on your underground pump's succion port? That would be necessary in order for the control to turn off this pump when you run out of utility water
zohaib_97 rlarios7 months ago

Hi rlarios,

Yes, i do have access there. The images are attached below.



Hi rlarios,

Good day to you !

I was just thinking that the circuit is uselessly becoming complex by adding time delay circuit, and other conditions that I wished to implement. So to make it an easy one, I will physically switch on the underground pump in alternate days.

Adding the electrode on the suction port will help the system to switch off the pump once the water coming from the utility ends. Secondly when water in the underground tank reaches higher level, the motor would also end to run.

Could you please help me design the circuit so that I incorporate it?

Thanks alot

rlarios (author)  zohaib_976 months ago

This is a block diagram of how these two controls could work.

This way, underground pump would come on only when Utility supply water is available AND underground tank level is below LOW level electrode.

Overhead tank water control would work as usual.

Let me know whether this would work for you and also the reason underground pump is necessary.

Good night.


zohaib_97 rlarios6 months ago

Thank you so much for your support, the way of your explanation in block diagram, the way you asked your friend as if it’s your own work, I don't have words to thank you, & it means alot to me.

The main reason of adding a suction pump is due to the poor distribution & pressure of main utility supply, therefore an added pump helps to fill up the reservoir quickly.

In my scenario, since I don’t have direct access to main utility pipe, the sensor placed on the suction port can only sense the availability of water, after the suction pump is switched on physically in its timings. If I would have direct access to main utility pipe, then adding a sensor there would have solved my issue without physically switching it on. Is it possible that we can add an IC/program to open the pump in between timings programmed? This would make the circuit switch on in the designated timings and placing a sensor on the suction port will help to switch it off, once the water is unavailable.

In the underground tank, a mechanical float valve like in the toilet is already there to stop the flow of water from utility once the tank is almost full. But in order to automatically stop the motor to run, I will have to place HIGH 2 near float valve.

Like in the Overhead Tank Control, I don't want LOW 2 to work similarly for Underground Tank Control, i.e to start the underground pump, once it reaches below LOW 2 level, however I only want it to be used for indication purpose.

Can you please tell what u mean in overhead tank control by "Depending on which gate is faster on S-R Latch circuit, the pump may or may not start when water level is between HIGH and LOW level electrode"?

It may happen that the overhead pump has just started to work after the water level reached to LOW electrode. The pump was only able to run & fill only half level of the tank and there comes power load shedding. In this scenario, if the water level hasn't changed (i.e half level) and the power resumes back, then would the system resume or it will wait till the water level reaches again to LOW electrode?

rlarios (author)  zohaib_976 months ago

Hi there Zohaib_97,

Sorry for not coming back to you sooner. I have been busy working in the field lately.

Well, your message looks rather long, I guess your only concern would be the operation of the S-R latch circuit, right?

If you observe the slide show when both scenarios are explained, it happens that both situations are valid when both inputs are zero. However, I did some testing after I posted the slide show some time ago and noticed that pump practically always starts when water level is between High and Low level electrodes.

I believe this is because the extra gate used to invert High level input delays the operation of the upper gate of the S-R latch. Nevertheless, don't take my word for it. I would suggest that you do your own testing to make sure that the pump will always start when such condition exists. You can build your circuit in a proto board and simulate the conditions with a shallow container with water.

Regarding the "timing" that you believe you require, you can always use a programmable controller such as Arduino Uno if you want. Unfortunately, I do not have all the details (other that your own description) unless you could provide a schematic diagram showing how it is that you are not connected directly to the utility pipe and yet your pump depends on it.

Good luck


zohaib_97 rlarios6 months ago

Hi rlarios,

Hope you are doing well in your field... & no sorry, infact thankyou so much for your reply.

I have attached a hand drawing describing the distribution of water to our home through main utility pipe. Hope it covers what I wanted to describe.

rlarios (author)  zohaib_975 months ago

I just got an email today March 31st from instructables saying that you had posted this message. Do you still need help on this?

zohaib_97 rlarios4 months ago

Hi rlarios,

How are you and how's your field work going?

Many many thanks for your excellent instructable. I wasn't expecting to practically implement this circuit, its assembly & working without your invaluable support from start to end.

God bless you...

rlarios (author)  zohaib_974 months ago

You are welcome Zohaib_97,

You got there a good looking circuit. Congrats !


zohaib_97 rlarios4 months ago

Thank you so much rlarios.

Could you please help me in designing the circuit for suction pump too?

The question arises whether I have access to suction port, yes I have, but it can only be used to stop the pump by placing the sensors on a PVC pipe or by using pressure switch. But for starting the pump automatically, this idea wont work. This is because of poor pressure distribution from utility company. That is, until and unless I don't switch on the pump manually & wait for 15 sec, the suction port cant sense whether water is coming from utility or not.

The attached file is a rough block diagram of main utility line to our home.


If we add this time relay can it work to start the pump?


Please share your suggestions.


rlarios (author)  zohaib_974 months ago


You can use that relay if you want. However, what's wrong with the picture attached to this message?

Have you already built your overhead tank's level indicators?


zohaib_97 rlarios4 months ago

Hi rlarios,

In the attached pic, like overhead tank level indicator, you have placed the same in underground also. Can you please tell the purpose of adding a LOW electrode in the sump pump as it will only be switched on using timing relay or some different logic and off through pump protect or reaching HIGH (whichever condition applies first).

rlarios (author)  zohaib_974 months ago


Well, I wish I knew the logic behind your requirements. Let me tell you why I did what I did:

1. You can always determine the height of Low level electrode by either lifting it or lowering it as long as it is below the High level electrode.

2. This way, when water drops below low level AND there is water at suction port of pump, this pump will always start, regardless of time of the day.

3. If there is water available at suction port AND sump is relatively full, pump wouldn't start. Remember, you determine where Low level electrode would be.

4. This way the circuit would depend on water availability at suction port of pump AND sump level requirements.

Now, if you don't want a low level electrode, you can then say: "I want underground pump to start whenever water is available AND water level is below High level electrode". Can you "see" what I am saying? That's an AND logic function, you can then decide when the pump starts as long as both conditions are met and you don't need an S-R latch.

When water is not touching High level electrode, you'll have a "High" state at that input, when water is present at suction port of pump you'll have a "Low" state at that input. See drawing for more details.

Regarding the timer, what if time is up and there's still no water available?

Tell me whether I am still missing something.


zohaib_97 rlarios4 months ago

Thank you so much rlarios for a very clear explanation of the logic.

The issue is that, due to poor water pressure from utlilty board, the suction port is unable to detect itself the flow of water unless and until the pump is turned on first. After few seconds of turning it on, the suction pump can then only recognize through suction port whether water is available from utility to draw or not.

I was not able to convey my requirements clearly that's why confusing you too by asking the same question again and again.

rlarios (author)  zohaib_974 months ago


You can still use an AND logic function so when both conditions, your timer-time-is-up AND water-level-is-low are met, then pump would start. When water level is high, the AND condition would no longer be valid and pump would stop.

Sorry for not being able to understand at first.

Good luck Zohaib_97, let me know how it works.

Hi rlarios,

Eventually ended up with no solution for sump pump automation :/ Though you helped me quiet alot with all possible efforts but may be my requirements are not clear enough to understand.

Thank you so much once again big bro :)

rlarios (author)  zohaib_971 month ago
Zohaib_97, things rarely work on the first try especially when you're starting to figure out the specs of your project. It's up to you if you want to stop now.

I'll be here in case you still want to pursue this.


Hi rlarios,

Thank you so much, your motivation helped me to find alternates.

I contacted one of my neighbour who is also getting the utility water from the same mains pipe and fortunately he has DIRECT access to that pipe, which wasn't in my case, that's why I was previously going on the option of timer circuit.

For pump protect mode, approx 40 Meters of wire is required from the controller circuit to main utility line. I hope this length wont affect the circuit functionality.

I used DC 12V 2.5 A adapter for powering the overhead controller circuit. I would be sharing the same adapter for powering underground controller circuit too, hope it would have no issues.

Can you please help regarding the amendments in schematics for underground pump controller:

1. As discussed earlier, I want underground pump to start whenever water is available AND water level is anywhere below High level electrode (with no LOW electrode controlling option) and pump to stop whenever water is not available or it touches HIGH.

2. Secondly I wish if a power LED indicator as well as LOW level LED indicator also added in underground pump controller circuit for indication purposes only.

I am so excited to implement this project. Thanks alot bro...

rlarios (author)  zohaib_971 month ago


Good to hear your project is still alive and kicking. Everything you said can be done.

Let me review this tomorrow morning to come back to you with a final solution.


Hi rlarios, I am waiting...

rlarios (author)  zohaib_977 months ago


I'm at lunch now, however, I couldn't help it but to think about your water system. I asked a friend of mine, -a very experienced mechanical engineer- what would be the use of a pump like the one in your underground tank. He said a pump like that would not be needed as there is no way this pump can draw more water than what the utility can supply.

The pressure from the supply should be enough to fill up your underground tank and the way to stop the flow would be to use a float valve similar to the one in a toilet tank.

I said to my friend there must be a reason you have a pump like that, but as he was in a hurry, he did not elaborate on that. The question is: Why do you use a pump (that costs money to run) and not a float valve?


P.S. I will finish the drawing anyway.

rlarios (author)  zohaib_977 months ago


There is no need of any time delay circuit to the control you want to implement. You practically solved it the way you described it.

Just use one water level control as shown in the instructable to fill up the overhead tank, and another water level control to fill up the underground tank. Each pump protection circuit should take care of its own pump.

The only problem I see is how to "sense" water in the underground tank pump suction port. It may be a PVC pipe insert with two electrodes (one ground, one safe level electrode) or maybe a pressure switch that would close when there is water pressure from the utility.

Unless I am mistaken, I don't think you need any special design other than what is already shown in this instructable.

I will post tonight a drawing showing what I mean.


hasanmahmud2 months ago
Clear photo of printed board
rlarios (author)  hasanmahmud2 months ago
Hi hasanmahmud,

You can download the Eagle files from the instructable to watch the details. If you can't, let me know so I send you -later today -a pdf file showing the artwork.


hasanmahmud2 months ago
Clear photo of printed board
hasanmahmud2 months ago
Hi.I am a beginner.so I need clear photo with indicate of elements.please help
aslamxtreme2 months ago

Hi ! Great work, A few Months back I made a similar controller using Picaxe 08M2 micro controller. and 2 ADC pins for sensing level.. it worked well for 2 months and then it started doing weird things, and i found tat the copper wires that i used for electrodes got oxidised and there was no continuity anymore.. i tried with aluminium wires for electrodes.. and it failed in a month too... i was wondering how it went with ur project.. and woulf love to get some suggestions from you regarding electrodes

rlarios (author)  aslamxtreme2 months ago

Use stainless steel electrodes.

honey1813 months ago
Really neat work.!
rlarios (author)  honey1813 months ago
Thank you, sir!
Arcticathlon3 months ago


I have created a Step by Step scenario of what would happen. Hopefully this will explain everything. I am answering your questions below.

Answer 1: I am planning on installing the float switches through the wall of the top and bottom tanks. they will be installed horizontally and then sealed, so the cables will run along the outside of the tank.

Answer 2: We will only open the Solenoid valve that fills the top tank. I then must wait for the water to filter from top to bottom before i can refill top.

Answer 3: Bottom and top water capacity is 3 gallons (~11 Liters) and it is drinking water. On a normal day, my family uses .5 liters per hour. So it will be empty every day, and need to be refilled.

Answer 4: If top tank is full, it will take about 1 hour for all water to filter down to lower tank.

Answer 5: I am not understanding the question, but i think my attached picture should explain all of the logic.



Automatic fill v4.png
rlarios (author)  Arcticathlon3 months ago


Don't worry about my last question. After all, nobody knows your process better than you do.

Logic understood. Question: Aren't Mid_2 and Low_2 supposed to be both 0 instead of 1 in drawing on step 5?

I already have an idea about what to do. However, I'll be out most of the day tomorrow. I will come back to you with something this weekend.

Have a good night.



Good catch. you are correct, Step5 is wrong. Mid_2 and Low_2 are both supposed to be zero. That was a copy paste error. I will fix that.

What are your thoughts on all DC Power. It should be simpler with the switches and solenoid being all DC. Will that work with your design ideas.


Arcticathlon3 months ago

Well, i might have just found my answer. After some more google time, It looks like a 7404 NOT Gate or Inverter should work. If i would take the OVERFILL PROTECT signal and run it through the 7404 (Pin 1) and the output (Pin 2) would then go to the input for stock Pump Protect. I would have to power the 7404 with 5Vdc and use the same ground. To power the 7404, i would need to add a 7805T to the circuit. Do you see this as a good solution?

7404 NOT Gate.png
1-40 of 129Next »