Introduction: No Pump Automatic Watering!

In this instructable I'm going to show you how you can make your very own automatic plant watering system. The best part? This solution requires no pump!

The benefit of using an automatic watering system is that you avoid having your plants start to dry out, and you also wont accidentally soak your plants. The moisture is kept at the perfect level for your plants and you end up using less water!

There's a lot of different automatic watering systems out there. These seem to work great however there has always been something preventing me from building them. They all require a pump. Personally I would prefer not to use a pump because I think they are expensive and makes a lot of noise. I went to the drawing board to see if I could come up with something different!

This system uses a micro controller and soil sensor to monitor the water level of your plants. If your soil is starting to dry out the controller will counter this by watering the soil until it is sufficiently moist again.

Instead of using a costly and noisy water pump, we are going to use a servo to elegantly open and crimp a water tube. So cheap. So easy.

Let's get started!

Step 1: Parts and Tools

You are going to need the following:

Parts

  1. Arduino
  2. Soil moisture sensor
  3. Servo
    1. Any tiny servo will do. Like those small 9G servos you can buy for a dollar!
  4. Water tube
    1. I'll show you how to make one if you don't already have one laying around
  5. Cable ties
  6. Power supply
    1. For your arduino
  7. Water reservoir
    1. I used a milk carton, an empty bottle works just as well
  8. Bredboard wires

Tools

  1. Hot glue gun
  2. X-acto knife
  3. Yarn
  4. Pliers

Step 2: Making a Water Tube

This step is optional and you can skip it if you already got a small water tube.

It's possible to use the outer isolation on a power wire as a water tube. To do this we need to remove the inner copper wires without damaging the outer rubber.

Start by cutting a length of wire. I used the wire from an old power cord I was going to throw away. You only need about 25 cm or 10 inches.

Strip away part of the isolation on one of the wire ends. Use your pliers and start pulling the inner wires. You don't need much just enough to get a grip later on.

We're going to soak the wires in hot water to soften the plastic and make it more manageable to us. Fill up your sink with really hot water and keep the wire under for at least 5 minutes.

Now it's time to finish what we started. Use the pliers to get a solid grip on the inner wires and start pulling. Don't strain too much or the wires might snap. Hold the wires while pulling downwards on the isolation. This is hard at first, but suddenly the isolation is gonna release it's grip and the wires will slide out.

Perfect, you now made yourself a watering tube!

Step 3: Making the Water Supply

Let's make the water reservoir work! First cut several tiny slits in the cork of your bottle. Now insert the water tube and seal the hole with some hot glue. Glue both sides of the cork for the best water insulation. Be careful not to get any glue on the cap threads!

I chose to cut the milk carton in half to make it easier to fill up. You may also cut a couple of holes in the bottom of the bottle/carton so you can hang it up upside down.

Now screw in the cap with the water tube and hang up your water reservoir. You should hang it at a height where the end of the tube dangles slightly over to plants pot.

Step 4: Awaken the Electronics

Now we'll create the brain of the project and make the system come alive!

Connect the components and micro controller as follows:

  • Analog Input 0 - Sensor Pin
  • Digital I/O 2 - Sensor +
    • This output pin is configured to power the sensor. That way we don't need a bredboard and can connect everything directly to the arduino!
  • GND - Sensor GND
  • Digital I/O 3 - Orange Servo Wire
  • 5V - Red Servo Wire
  • GND - Brown Servo Wire

Now upload the code. I've attached what I wrote, but feel free to make your own or modify what I've written!

Look at line 6 and 7 to calibrate the sensor for your own plant. Just change the values to the sensor values you prefer when the soil is dry and when it's wet, but not soaked.

Step 5: Preparing the Servo Solution

This is where the magic happens! And where this ible differs from the ones that use a water pump.

When you got your servo you probably also got a couple of plastic attachments. You can fasten whatever you prefer, I used the cross part.

Screw the attachment in place. Now fasten the servo to your window sill right above your plant. Make sure the servo has free unobstructed rotation!

I initially intended to just use hot glue, but I ended up using double sided tape. This makes it much easier to adjust where the servo sits later on.

Use a couple of cable ties to fasten the water tube to the servo attachment. You should check that the tube is open when the servo is in the "watering" position. And most important, make sure the tube gets bent and crimped when the servo is in the "dry" position.

Step 6: How Everything Works

So the way this works is that the arduino is monitoring the moisture levels in the soil. Every 5 minutes the microcontroller takes 10 readings 30 seconds apart. These readings are used to calculate an average value for the soil readings. This average is calculated to reduce any random artifact affecting the sensor.

The average readings are compared to the value you stored when you think the soil is dry. You can change this value on line 7. If the soil is dry the arduino will lower the servo. When this happens the water tube opens up and water starts flowing.

Now the code is constantly reading the soil moisture with only 20 ms delays. It checks if the soil has become moist. You can change this value on line 6. As soon as the soil is wet the arduino will turn the servo upwards. This crimps the water tube which in turn stops the water flow.

The program will then restart it's five minute sensor check and the plant wont be watered again until the soil has dried.

Step 7: Finished!

Now insert the soil moisture sensor, fill the water tank, power up the arduino and you're all set!

That's how you make automatic watering so your plants get a bit more and you use a bit less.

This solution is easily expandable to include several sensors and servo watering solutions. So get to making!

You may also like my tutorials on even more automation and making an LED panel for work or growth light!

Comments

author
SiDawg (author)2016-08-16

Very cool! Nice idea with the simple crimping. I've been contemplating making one of these for a while (on account of accidentally killing every plant i've ever owned).


Would be cool to include a UV lamp and some sort of "growth measure"... and program so that it "self learns" and adjusts light and moisture levels accordingly. Not sure how the growth measure would work... perhaps an infrared camera if you could tune it so the plant foliage glows a different colour from surroundings (should in theory be slightly warmer)... or would be really cool if you could maybe measure a current through the actual plant somehow? Bigger plant = bigger current? hmm *ponder*

author
gravityisweak (author)SiDawg2017-06-12

Growth monitor is a cool idea. What if you used weight to monitor growth? Have a scale under your plant. Take a weight measurement if your sensor senses the soil is dry and is about to water the plant. Record that measurement every time your plant senses dry soil and begins watering. That change in measurement should correspond to the increase in mass of your plant. Of course if you added or removed soil it would throw off your measurement but otherwise I think that might work.

author
SiDawg (author)gravityisweak2017-06-12

yeah that could work! I guess would be tricky to compensate for the fluctuating weight of the water though, especially as the moisture sensors only check one bit of the soil... and are sensitive to "density" i.e. if i push the soil around my sensor i get different levels, or if i bump it so it's kinda loose in the soil... so the weight of the water wouldn't accurately correspond to the moisture level being read

author
Sverd Industries (author)SiDawg2016-08-19

Cool idea! I think an IR camera should work. Would be really cool to add the self learning so it auto tunes to different plants as well.

author
levanf (author)2017-06-01

Really creative, thanks

I am interested in using this system without power adapter, using batteries.

What kind of battery would it be advised to use, that it was sufficient to last about 1 month? I know it depends on power consumption, but I have no idea what consumption is likely to be.

And one more thing, do you think the moisture meter is going to work, if dug deeper in ground? and making its connections watertight? like 20cm deep in ground?

Thanks again

author
Ahnirudh (author)2017-01-16

Hey the code isnt working.....the serial monitor is blank....do i need to give any input.. pls do help

author
bgoldberg1 (author)2016-09-18

For a slightly lower-tech solution, you set up your plant so that it's weight opens or closes a valve. When the plant is dry (and therefor less heavy), the valve opens, and when the plant is wet (and therefor heavier), the valve closes.

author

I like your thinking, however that sounds a lot more complicated to me!

author
RollingB (author)2016-09-10

good idea for control water

author
ChillProd made it! (author)2016-09-07

:)

14101838_10153952690638215_1738884994_n.jpg
author

Well done!

author
LinhN48 (author)ChillProd2016-09-09

bạn làm được rồi à, có thể bán cho mình được không?

author
ChillProd (author)2016-08-25

Thx nice idea !

author

Thanks mate!

author
Electrogreen (author)2016-08-21

Great idea, thanks for sharing

author

Thanks mate!

author
Dawsie (author)2016-08-17

like the idea but it means you have to keep the water above everything and that would look messy over time as much as pumps do make a noise they at least keep the water below out of site. Now I just have to work the idea to flick a switch to the pump when it needs watering and then to turn it off after a minute as a pump would move the water faster. So the test would be to see how long it takes for the pump to move the water to the plant to fill the self watering pot reserve and then turn it off once there is enough water hum will have to get my friend to look at this as he's the expert when it comes to this sort of thing :-)

Thanks for the idea I do like it just need to modify it to suit my planes :-) if this works out it could be used in the garden too :-)

It defiantly has a lot of possibilities for veggie boxes and garden beds :-)

Thanks :-)

author
Sverd Industries (author)Dawsie2016-08-19

I like your thinking! Would love to see pictures if you make it for your garden beds or veggie boxes!

author
Dawsie (author)Sverd Industries2016-08-22

Sure thing :-) it's in my list of things to do now :-) as I did like the original idea just need to collect all the pieces together plus make room for the new veggie boxes :-)

author
PrakashK11 (author)2016-08-17

In my system, I am using the water directly from overhead tank.

Instead of servo motor, water flow is effectively controlling by a cheap 24VDC solenoid valve commonly using in RO water purifiers.

author
brug71 (author)PrakashK112016-08-17

Can you supply the 24VDC valve link?

author
PrakashK11 (author)brug712016-08-18

Please note that, I made the system in its simplest form using a "Programmable Digital Timer Time Switch" and the solenoid valve.

The timer is available at

Aliexpress: http://www.aliexpress.com/store/product/CN101A-Di...

Amazon India: http://www.amazon.in/Multipurpose-Programmable-Di...

author

Great thinking using simple electronics so you wont have to code!

author
PrakashK11 (author)brug712016-08-18

24VDC Solenoid Valves

ebay India: http://www.ebay.in/itm/222193811540?aff_source=Sok-Goog

Amazon India: http://www.amazon.in/Solenoid-Aquaguard-RO-Purifiers-Original/dp/B017ELLQWS?tag=googinhydr18418-21&tag=googinkenshoo-21&ascsubtag=245554ab-a47a-4a69-897b-e7c3b7c5b3b8

Aliexpress: http://www.aliexpress.com/store/product/24V-1-4-N-C-Plastic-Inlet-Water-Solenoid-Valve-Reverse-Osmosis-Controller-for-RO-Reverse/1668679_32292939297.html

Aliexpress 12VDC: http://www.aliexpress.com/store/product/12V-1-4-N-C-Plastic-Inlet-Water-Solenoid-Valve-for-RO-Reverse-Osmosis-Pure-System/1668679_32293599169.html

author

That will also work really well!

author
BramS3 (author)2016-08-18

Great idea of using the power cord as a water tube

author
Sverd Industries (author)BramS32016-08-19

Thanks! I was scrambling my mind for what I could use as a water tube. Really didn't want to go all the way to the store to get some tubing. Luckily inspiration struck!

author
BramS3 (author)2016-08-18

Any way cool little Instructable, I made something like it, for I too do not like pumps mine uses a solo kid to open/close the flow of water

author
Sverd Industries (author)BramS32016-08-19

Thanks mate, that's a cool use!

author
BramS3 (author)2016-08-18

Are you from Israel? (I noticed the power plug)

author
Sverd Industries (author)BramS32016-08-19

From norway actually. I guess we have the same wall outlets and power system!

author
ticketingtie0 (author)2016-08-17

Wow I was really surprised how well thought out this was and it's a great idea ? you can take it a step farther and it will be really awesome!

author

Thanks mate! Now what's the next step you recommend?

author
FunLife3315 (author)2016-08-17

go one step further....

Lighting, humidity control, water, fertiliser, etc.

also try not to go to overboard if you go all out.

but still...... AWESOME IDEA

author

Haha thanks man! I'm already looking at so many different additions to expand the system.

author
Consider My Solution (author)2016-08-16

Some questions:

What happens when power goes away?

Without power, does the servo stay in its last position?

As the unit powers down, does the PWM signal tend to drive the servo one way or the other before it quits working?

author

Sure thing! When the power goes away the servo stays in it's last position. It won't move again until power is applied and a pulse is sent. When it powers down and stops moving it's instant, the servo won't jitter around.

author
DaniloD21 (author)2016-08-16

I've thinking about having my own garden plants and using an arduino to control the watering was my idea. Thanks for sharing it! I live in an apartment and it doesn't have enough sun light in the garden. So, one solution I thought (I know it was not what you were trying to do, but it is complementary) is to use a luminosity sensor and all sprectrum lights to compensate the sunlight missing. Unfortunately, I have no time to think about how to do it now.

author

Mate this got me really excited because I've actually made tutorials for both those things!

Here I show how you can use sensor values to turn on and off a light, and here I show how to make a full spectrum light!

author

Thanks a lot!!! I will try it as soon as possible. I think there are just others two key controlable factors to deal with: ambient temperature and air humidity. With all those we can make a perfect environment to grow plants.

author

No worries friend! I'm eager to hear how everything works out and comes together!

author
MartinK135 (author)2016-08-15

You can buy water pump cheaply on ebay Maximum lift: 40-110cm & Flow rate: 80-120L/H should be enough for plant watering. Price 1£

http://www.ebay.com/sch/i.html?_from=R40&_sacat=0&...

author

I'll look into those when I plan on expanding the system!

author
sixsmith (author)2016-08-14

well now, that is an elegant solution.
I've been wanting to do something similar, for my indoor plants, using electric valves, but the only electric valves I have on hand are from an old washing machine and I think only operate on 120AC, I balked at spending the money on relays or a smaller DC solenoid valve.
I've done quite a bit of work with non automated garden drip irrigation in the past, I recommend getting a pack of connectors and a coil of 1/4 tubing for anyone wanting to build this and modify it after the fact, the tubing is cheap, fairly easy to work with, and the barbed fittings generally don't leak, you could conceivably make a manifold after the servo to send water to multiple plants, although in that situation you might install a water level sensor in a lower drip pan to show when to turn of and on the water.
great Instructable, I voted for you.

author

Thanks mate much appreciated! I would like to expand the system for several more plants. I'll look into the tubing and connectors!

You should share your drip irrigation system, I would like to take a look!

author
heinzdrei (author)2016-08-15

This is a really cool idea and an excellent instructable! Do you think, the small 8g servos often used in small RC projects would do the job -- I think you used a bigger one, but they're so cheap I'd really prefer them when seeing after a lot of plants :)

author

Thanks mate! Those tiny and super cheap servos will work no doubt! The one I used is the same size just a difference in gear material.

I'll add a note on the parts list to make it clear any servo will work :)

author
Nandan09 (author)2016-08-14

Can I use raspberry pi instead of arduino?

author

Sure thing! You just need a module to send PWM signals to control the servo position.

author
shure (author)2016-08-14

A electronic valve is better solution that a servo ,isn'tit ?