Lazy Man's Automatic Plant Watering Robot




I really love plants and gardening. I enjoy taking a tiny seed and watching them grow in time. That being said, plants don't really like me. For me the problem is remembering to water them on time. Needless to say I've killed many a house plant because of my carelessness.

Having a new fond interest in Arduino and automation I did a little research into solving this problem. I discovered a great deal of information on automated watering systems and adapted that for my own needs. I present to you the fruits of my findings and a truly enjoyable project, the Lazy Man's Automatic Plant Watering Robot! As the name suggests it takes the hard labor involved in remembering to water your plants away from you. House plants everywhere will rejoice, and you won't have to replace your spouse's (or significant someones) beloved plant whom they've named "Sarah" because you killed it...Let's get started!

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Parts

Here's what I used to make the magic happen:

Arduino Uno or one of it's variants


Relay Module

Water Pump

Aquarium Tubing

jumper wires

Step 2: Arduino Sketch

Upload the attached sketch to your arduino. It measures the level of humidity in the soil surrounding your plants. If that level drops below a specified threshold it turns on the water pump delivering just the right amount of water while you're on vacation, crushing in frolf, or otherwise engaged in other activities.

Step 3: Wiring and Final Adjustments

Once the arduino is loaded with the program it's time to wire it all up. Follow the diagram and wire everything up accordingly. Do not plug the arduino in to power at this point. Make sure everything is situated before letting it loose on your plants. You will need to attach a hose to the pump which will deliver water to your plants. I used a fish air hose to do this.

I situated a bucket of water and a shelf (for all of the electronics) close to the actual plant. The hygrometer needs to be placed into the soil and the pump needs to be submersed in water before plugging in the Arduino. If you haven't plugged in the pump go ahead and do so. Finally connect the arduino to your chosen power source. I'm using a simple 5V charger and a USB cable.

Step 4: Sweet Sweet Automation

Congratulations, now you can enjoy long vacations away from your precious plants knowing they are well taken care of. Show us a your build in the comments below, and the plants that now enjoy your creation.

Gardening Contest 2017

Participated in the
Gardening Contest 2017

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    4 Discussions

    Amila Dhanushka

    2 years ago

    Hi !!! I followed the same circuit and same code. But I am not able to start my motor.All components I have configured. I don't know why it's not working.. only problem with the motor.

    please help..

    3 replies

    Check the motor outside of the circuit. Also confirm the soil isn't moist to the point the motor doesn't kick on. After that double check all wires and connections.

    Thanks for your feedback. I have double checked but still issue persist.Not coming relay output to the motor.I can certify all wire connection and components are ok. Is there any issue with coding? As well How can I get a serial monitor? I entered it as shown in below but not displaying. could you give me the code? ( and what can I do for next..?

    void setup()


    pinMode(RELAY1, OUTPUT);

    digitalWrite(RELAY1, HIGH);

    delay(2000); //wait 2 seconds before starting the loop

    Serial.begin (9600);


    Try it without the motor to see if the relay is working. You will be able to hear it click. Try it with the moisture sensor in dry dirt then in wet dirt. If you hear nothing then try switching the wires on the relay.