How to Build a Low-Cost Automated Plant Watering System with Arduino


An automated plant watering system can help keep your plants healthy and thriving when you are away from home. Building one yourself using an Arduino microcontroller is a fun electronics project that can fit many budgets. In this guide, I will walk through the entire process of constructing a simple automated water pump that waters plants on a schedule.

Components Needed

To build the automated watering system, you will need:

Circuit Assembly

With the components ready, it's time to assemble the circuit on the breadboard:

  1. Connect the RTC module to the Arduino using I2C pins.

  2. Connect the relay module to the Arduino's digital pins. Use a resistor on the input side.

  3. Connect the 9V battery to power the Arduino when unplugged from USB.

  4. Use jumper wires to connect the components neatly.

  5. Insert the Arduino and connect to your computer via USB (for now).

Writing the Arduino Code

The Arduino code controls the system by setting the timing for the water pump. Here are the key functions:

I used simple if statements and for loops for the logic. The full code can be found on GitHub.

Setting Up the Watering Mechanism

With the electronics ready, the watering mechanism needs to be assembled:

Completing and Testing the System

To complete the automated plant watering system:

Some tweaks may be required but once up and running the system will water your plants automatically! Just be sure to refill the water reservoir periodically.


Building your own automated plant watering system with Arduino is a great electronics project that can be adapted to suit many needs. The key is an Arduino to control the pump, a watering mechanism, and code to turn the pump on and off on a schedule. This provides a simple way to keep plants watered without daily effort.