Build a simple water level control

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. ***

Remove these adsRemove these ads by Signing Up
gerveruco2 months ago
The project is awesome!!
I am very interested in this project, but the only thing that i miss is the HEX file to load in the PIC. Could you say me what is the PIC that you used?
And how can i get the HEX file?
rlarios (author)  gerveruco3 days ago

I just inserted step 2 where it is shown how to wire a bigger pump (up to 2 HP) with this controller.

I had a little problem with the editor and I could not insert the links to the parts required properly. Please, copy and paste so you can see them.

Hope this helps. I will check the other steps for any possible shifted reference.

I think that was my last doubt, I going to make it on this week and I say you how it works

Thanks again

rlarios (author)  gerveruco2 months ago

Thanks gerveruco,

This project does not rely on any type of micro controller. This project was built around a CMOS CD4001 quad 2 input-NOR gates IC.

When I read the message in my inbox I had thought you referred to my other instructable which was built around an ATMEL ATtiny micro controller whose source code is shown in one of the steps.

If you still have any question, just let me know.

Hey man thanks for the answer. Just one more question, I have a 4 m3 cistern and 1100 L tank, the power of the water pump is 1/2 HP. Do you think the circuit works? Or do you think i have to change any of the components

rlarios (author)  gerveruco4 days ago

Gerveruco, what is your pump's voltage?

The pump's voltage is 120 V.

rshamsi7 days ago


sun13lei14 days ago

sir, any idea on the water level alert used in big dams? Can you please suggest any circuit for sensing of water level alerts for big dams?

rlarios (author)  sun13lei14 days ago
Dear sun13lei,

I know nothing about water levels on big dams. However, due to the magnitude of dams and potential threat to life and property, there should be norms and regulations that dictate what kind of equipment should be used for infrastructure as such.

On the other hand, the circuit shown here is meant for water level control using two level and one common ground electrodes. Let's say, if you want to use the circuit shown in this instructable, you should also use the two electrodes to provide some hysteresis. The circuit shown turns on the pump whenever water level goes below "low" level and pump is turned off once level reaches "high" level.

In the case of your dam, -if you want to use same or similar circuit-. There should not be any alert for as long as water level is below a "safe" level, which could be our circuit's "low" level. When dam level reaches "low" level electrode, nothing should happen, it is until water level reaches the "high" level electrode that the "Alert" Light (or any other "Alert" device) should get turned on and stay on for as long as dam level does not go below the "low" level electrode, or our "safe" level. Both levels could be inches apart.

In order to do that with same circuit, you should cut the trace that goes from CD4001 pin 3 to pin 5. Then, solder a wire between CD4001 pin 11 and pin 5. This way, the circuit would turn on the Alert whenever "high" level electrode gets in contact with water and the Alert would stay on until water level goes below "low" or "Safe" level.

If you have something else in mind just let me know.

englatolar2 months ago

Thanks. I have assembled this project using same concept with CD4011 and it works pretty fine.........

rlarios (author)  englatolar2 months ago
Congratulations englatolar! Keep up the good work!

ikram0072 months ago

Thank you very much for reply.

I will update the
circuit according to your instructions then later I will discuss with you.

Thanks again!

ikram0072 months ago

very well done its really good job to make a water controller with pump protector.i am very intrusting in this project i will use for this my home overhead water tank and its underground bore water pump 1.5hp 240v ac. i prepared the circuit on breadboard but can't understand some thing is that if,

1- i am not using the reservoir tank then where i place the pump protect probe because the water pump is also underground.

2- How can i replace 12v dc 10A 220v ac relay on this kit according to my pump rating instead of 120v ac relay.i also read your suggestion in comments session about external relay but can you provide the on board solution.

3- Can i use this kit at 220v ac if not please sent to me some helpful changes.

i will be extremely grateful to you for this.


rlarios (author)  ikram0072 months ago
Hi ikram007, I'm glad you liked the instructable. Here I am going to try to answer your questions:

1. I believe you meant that somehow you can't reach the water inside where the pump is. If this is a problem, try shorting together both Pump protect and ground terminals with a jumper wire at the terminal block on the board. Of course, this means there will be no protection for the pump in case water level is too low for suction port.

2. You will need to download Jameco P/N: 144186 datasheet in order to see physical dimensions as well as leads layout of original relay. Then, try to get a similar relay but rated at 10A @ 240V and adapt your breadboard to accommodate this new relay. Another solution would be to remove the original relay and use an external one such as Jameco P/N: 137358. This relay's coil voltage is 12V and contact rating Is 20A @240V. You will need to run two wires from the transistor that energizes its coil with wires and quick connect/disconnect crimp terminals. You will also need to run some quick connect/disconnect terminals from relay's contacts to your pump.

3. Well, I believe you must be in Europe or another country with a 220V-50Hz system. Try to find an AC-to-AC wall adapter suited for 220V at input and 12V output so you can continue using same system without modifying onboard power supply. Unfortunately Jameco does not carry this type of item but you should be able to find one in your country.

I hope this helps. If you still need assistance, don't hesitate to give me a holler so we can get your pump controller together.

Thanks again for your "like".

jburns158 months ago
hey mate, I've created a similar design basing it primarily on this. All is working well, however i've found a tiny problem with corrosion.
I'm using this on a relatively small water tank ~7 L, and have banana sockets ( running through the wall of the tank. After about a week of operation i've noticed the contacts beginning to rust. So obviously they're not stainless.
My question is, if I can replace these with gold banana sockets (, will these still corrode?
I understand gold will not corrode, but i'm not certain if it may be affected by the constant current running through it.
rlarios (author)  jburns157 months ago
Hi jburns15,
You are right about corrosion. That's a problem which can be reduced with proper electrodes, though.

Your proposed binding posts look interesting, if this works for you go for it.

On the other hand, I have found that simple galvanized steel screws work fine as well. You can also choose to have the electrodes come from the top -fastened to the lid, if any- of the water tank so its walls don't need to be drilled through which would also eliminate potential leaks.

This is not a perfect world so I guess that by trial and error we should be able to minimize this problem.

Thanks for your comments and have a great day!
cfran9 months ago
The instructions are well done. I have fooled around with simple circuitry, and have been wanting to learn more. I now know something new - awesome

so how is the circuit modified if a have a 24Vac power source? I currently have a simple float switch operating a 24Vac solenoid and want to install this circuit to control the solenoid.

rlarios (author)  cfran9 months ago

You may do something else if you want to use 24Vac to feed the control board. You may use a capacitor in series with your 24Vac power source, then feed the water level control AC-in connector with this. This capacitor in series with your 24vac source will form a voltage divider with the controller so voltage will be reduced to safer levels.

This capacitor should have a total of 13.6uF. As this is not a commercial value, take two 6.8uF Polyester Film capacitors such as Jameco P/N: 2129852 at about $0.65 each and connect them in parallel to obtain 13.6uF.

This way, you don't have to modify the water level control.

Hope this helps.
rlarios (author)  cfran9 months ago
Cfran, thanks for your comments.

The simplest thing to do is to use the kit the way it is. Get yourself an inexpensive AC to AC wall adapter with 120Vac input and 12Vac output such as Jameco P/N: 2076543 which costs around 6 bucks. Use this adapter to feed the control board. This way, the water control relay contacts would take the place of your float switch which would switch your solenoid on and off the way you intended.

On the other hand, if you feed the power supply section of the control board with 24Vac directly, rectified voltage would be about 32.5Vdc. This voltage may be too high for the 7812 voltage regulator whose maximum input voltage is 35Vdc (per datasheet). This doesn't give you enough wiggle room because you'll rarely get exactly 24Vac from your existing power source so you would be at risk of damaging the 7812 IC in case of slight over voltages. This 7812 voltage regulator is needed for the CD4001 and the onboard relay. You will also need to make sure that input power supply decoupling capacitor is rated for 50Vdc operation.

If you like tinkering with electronic circuits, you may prefer to use a 7824 voltage regulator whose maximum input voltage is 40Vdc and then feed the onboard 7812 voltage regulator with the 24Vdc from this 7824. Now things start to become a bit more complicated than needed, don't you think so?

I still believe that you would be better off using the kit the way it is and use either a 120V:12V transformer or the AC-to-AC wall adapter I mentioned at the beginning of this post.

Just keep this in mind: "Engineers solve problems in the most cost effective way."

Hope this helps.
vanarion10 months ago
hi ,

i am a noob and very interested in doing these stuff.
I would like to install on a half HP motor .. can u please help me the components?.
rlarios (author)  vanarion10 months ago
Dear Vanarion,

The easiest thing to do is to use this kit the way it is with an external relay. This means, the on-board relay can switch on an external relay/contactor which in turn could switch on your 1/2HP motor.

Keep in mind that rating for on-board relay contacts is 10A @ 120V so this will determine your external relay's coil voltage. If your motor's voltage is 240V, you can use Jameco P/N: 282247 and a socket to mount this relay Jameco P/N: 282191. If your motor voltage is 120V, you need something bigger like Jameco P/N: 552462.

vanarion rlarios10 months ago
thanks a lot mate,

so kind of you
mrcurlywhirly11 months ago
Nice work, and well covered in the diagrams. TBH this is not exactly the system i need to design for our property, but your description was so detailed i read through it anyway!
rlarios (author)  mrcurlywhirly11 months ago
Thank you sir.
Now I am curious, what are your needs? I may be able to help.

My requirement is for three solar powered level gauges with wireless transmitters.
We have three cement 5000 gallon tanks, the top up pumping is not required, we get around 2000mm of rain per year, so only need to keep an eye on the levels to switch them in/out of service if the level of one drops too low.
I dont particularly want to have anything hanging in them, so that reduces the best options to a sonar pickup, or a pressure sensor in the outlet valve at the base of the tanks.
Don't want to cut through the tanks, or introduce weak points that may cause leakage, and would like to run wireless transmitters to the house with solar chargers. One tank is around 30 metres away, the other two around 5 metres. Can you feel a migraine coming on?
rlarios (author)  mrcurlywhirly11 months ago
Given the design constraints, yes, I feel the migraine coming on.

I've seen a few sensors on:

And both shown there, ultrasonic and pressure sensors have parts hanging inside the tanks. Washing machines use some sort of pressure sensors to detect water level in them so I guess you'll have to continue searching for something similar.

Sorry for not being able to give you more info than the one you already got.
NP, you have given me plenty of food for thought.
Beyond the water supply for our house/garden I have a greenhouse project I am about to start (when i get home again), and want that to be practically self sufficient/sustaining with hydroponic setup and its own mini water tank.
Your water level control 'ible may be useful there for keeping the nutrient tank at the correct level.
Chipsy1 year ago
Nicely designed and well explained !! Maybee i missed it but what are the purposes of the capacitors and how did you choose the values?

I may be wrong but i think the C1 capacitor is to "smooth" out the electrodes detection? ( so it doesn't trigger until there is a real contact with the water )

Why use C2 and C3 in parallel and why C3 is 1uF ?

rlarios (author)  Chipsy1 year ago
Hi Chipsy,

C1 is the non-regulated DC supply's main filter. After reading your comments, I checked ripple voltage at this capacitor and saw it's about 1 Vp-p when relay and green LED both come on which is when the most power is drawn by the board.
C2 is the regulator's output main filter. This one is to keep +12V as constant as possible every time relay and green LED come on and off, both draw about 50 something mA.
C3 is the IC's decoupling capacitor to help improve transient response as close as possible to CD4001. Eagle's model for CD4001 does not include supply and ground leads for this IC, so I drew them the way they appeared on the schematic to compensate for this and yet have them included on the PCB layout.

Thanks for your comments !
MikB rlarios1 year ago
Eagle (in common with "industry standards") hides things like power rails to a most ICs, they just get in the way. I think you can specifically place them on the circuit when you are adding gates, but usually out of the way, in a corner, somewhere. If you named your power rail nets correctly (e.g. VDD, VCC, VSS), they would be automatically hooked up in the PCB layout stage without you having to manually connect them up at all, although it would be nice to show the pin numbers on the schematic for human readers.
rlarios (author)  MikB1 year ago
Hi MikB,

I have yet to learn many things about Eagle software. I really appreciate your taking your time to let me know about power rails to ICs. However, before I learn how to do what you just mentioned, I modified the schematic by hand to show pin numbers and make sure parts and wiring look clearer

I do appreciate it. Thanks so much!
MikB rlarios1 year ago
Right click on one of your NOR gates, and pick "INVOKE", you should see gates A-B-C and D of the chip, and also a 5th gate called P, marked "Request". You have to ask for it, by selecting it and adding it, you can specifically add the "power" gate in a corner of the schematic to show the pin numbers. I guess if you don't do this, the reader is expected to just "know" this stuff :)

In one of the libraries (supply1.lbr and supply2.lbr) are the symbols for creating a VDD/VSS attachment point that should link up all the VDD/VSS pins automatically without you having to hand draw them and label them yourself.

Hope those hints point you in the right direction. Been using Eagle on and off for years and it always trips me somewhere :)
Chipsy rlarios1 year ago
Thanks for the reply !

Sorry i miss-read the schematic, i now understand with your explanations, very clever :)

pfred21 year ago
Your article looks great. Your project looks great too. Super job!
rlarios (author)  pfred21 year ago
Thank you sir !
ODC1 year ago
has to be one of the best explained instructables I read. Thumbs up for your work, now going to look at what else you've written.
rlarios (author)  ODC1 year ago
Sir, I feel overwhelmed!

Thank you!
rimar20001 year ago
Very good work, clever and well explained.

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!