Arduino Automatic Watering System For Plants Sprinkler

FeaturedContest Winner
    Last month, Elecrow have left from the original office and moved to a new office. We will miss our original office where we worked so hard for more than two years, we will miss everything here, the desks, the windows, and those potted plants, that we cared for more than two years with our neighbor.
  Our neighbor, a design team, led by a man named Kimi, we had so many memories together in the difficult early days. Together we planted some potted plants in the balcony, to help us release when tired after a whole day hard working. But as we leave, Kimi team are so careless and they often go out for some shows, we all worry about that these plants will be thirsty as we leave.
  So, We decided to design an automatic watering system to ensure that these plants are still alive when we come back here the next time. It monitor the soil humidity of each potted plant, if the humidity too low, the pump automatically start to spray, in this way, Kimi team do not need to water those plants every day.

I have recorded a video for reference:
First, we prepared the following modules(all parts can find in
1. Soil Moisture Sensor. Each flowerpot need such a soil moisture sensor to collect the humility data. the best advantage of this kind of sensor is, it is really cheap, while the disadvantage is that it may corrode after long-term usage. Of course, you can also use a better humidity sensors, such as the capacitive soil moisture sensor, but you may need to pay ten times the price.

2. A small pump plus a driver. A driver is to provide enough current for the pump, my application needs a spray distance about one meter, so this pump is enough. But if you need to make a system that needs a large spray range, you may need a larger pumps, or even a pressurized device to make the projectile even farther, such as the watering system in a tea garden.

3. Servo and Rotating Platform, to take the water pipe to water the target plot. In order to control the spray distance and angle, 2 servo wold be necessary.

4. Of course, the controller is a must, i use the Crowduino platform, plus an Expansion Board for easy connection.

5. Water pipes and the power supply is essential too, and, some wires would also be help.

OK, all things prepared, then let's get started.
Remove these adsRemove these ads by Signing Up
Expendables22 days ago

This is my final year it would be helpful if u mail me the code and components description .my email id is

dishack782 months ago
Try to develop more in features like screen display auto get position x, y from sensor....
lemmanuel14 months ago

Cant download the content in the arduino program.Someone please help me on how to retrieve it

Elecrow (author)  lemmanuel14 months ago


I have checked the download links, all of them are no problem, can be download. If you still can't download the code, please go to to download the code. Thank you.

mushfiq19967 months ago

Which arduino board can be used to make this. Where I'm from they got no crowduino boards.

And one more thing. Does the code need changing if I use a different motor driver ???? Please answer. Its an emergency!!

Elecrow (author)  mushfiq19964 months ago

Hello, you can using Arduino official board or other Arduino compaible mainboards. Thank you.

nimichichi6 months ago

Hi, Nice work, but I have a problem I'm trying to upload the but it doen't let me , said

'pos' was not declared in this scope

Hello, i would be Glad if you could send me the codes...mine doesnt contain any codes

mushfiq19965 months ago

Can this be done with a breadboard instead of an expansion board. If yes how will the connections be like ?

parameshwarnp7 months ago

hi , its showing " pos was not declared in this scope"

now , should i change it to 'posi' , or should i change it to 'posl'

please reply asap


i got it finally. change all "posl" to "pos". worked for me

scotchcollege8 months ago

Hi, any idea why the motor is only receiving minimal voltage and just vibrates slightly?

firazpeerjade9 months ago
when i compile automatic watering program i got this error
'pos' was not declared in this scope

posi is the the variable declared change the pos to posi

tiongson8 months ago

sir where did you get the mini water pump

elvispro8 months ago
i love it ,so i want to make it by myself . but i can't down the pdf file
firazpeerjade9 months ago
this is error message image
gbushta9 months ago
This is very clever. I like the idea.
ryebreadz9 months ago
lol, this is a funny little robot.
billbillt9 months ago
great idea...
diy_bloke9 months ago
cgrrty9 months ago
Good idea
joe_tunis9 months ago
billiejoe9 months ago
This is awesome. I LOVE IT

ray749 months ago
I love how it aims at the plants before spraying them. Made us laugh many times. Great job!!