DIY automated irrigation system

valve-enclosure copy

How to build an automated irrigation system for your garden.

In this article I have documented the process of designing and constructing a simple automated water irrigation system than can be expanded and adapted as required. The article is meant to be an overview so it is easy to follow.

I would be happy to provide more in-depth information. So I encourage you to comment on the content or provide feedback on anything that raises your interest.

To begin, generally most commercial off the shelf irrigation systems available on the market are proprietary in their hardware and software. They provide minimal flexibility. The result being the customer is locked into limiting technologies and automation applications.

With this in mind here are my requirements for designing this automated irrigation system:

  • Easy to build and cost effective
  • Flexible and can be customised
  • Hardware and software are open sourced and well supported.
  • Easily expanded and adapted to meet future multiple automation requirements beyond irrigation.
  • Can be monitored and controlled from anywhere using existing Internet router.
  • Has the ability to run on a stand alone sustainable power supply

Diagram 1. is the automated irrigation system design I have built incorporating the above mentioned requirements.

 Diagram 1. (Automated Irrigation System)

The design of the system was kept simple at this stage with the goal of being easily installed and maintainable. It is a proof of concept that can be scaled and changed depending on your automation needs and desires. As it stands the system provides an automated irrigation function with the ability for manual control via a computer or mobile phone.

The system can run as a standalone network or be incorporated to an existing WiFi LAN via cable connection to an Internet router. By connecting the system hub to your home router you can also add secure remote access to the irrigation system via the Internet. This is a very desirable function especially when you are travelling.

This system though simple at the moment has the potential to grow beyond basic irrigation applications as you discover more automation requirements for your property.

I would really like to know more of the potential applications from the community.

You can contact me by email

Just mention “DIY irrigation”  in the email Subject line.


Tony Duffy

For the technical people I have included a more detailed description of the irrigation system below.

System Hardware parts breakdown.

Diagram 2. are the controller components for the irrigation system. The individual parts are labelled and a described below.

Diagram 2. (Irrigation system controller)

Diagram 3. is the valve in an enclosure and connected to the water supply for the garden.

Water valve enclosure

Diagram 3. (Water flow valve installation for garden)

The controller system is powered by 12V power supply. In this build I am using a spare 12 volt adaptor I had available. You could easily replace the adaptor with a rechargeable battery attached to a small solar array. This would make system more self sufficient.

1. The 12V flow valve that controls the water from the tank to the irrigation pipes in the garden. This is a generic inexpensive part purchased on eBay.

1.Water flow valve

2. The relay that controls the 12V power to the water control valve. It is a common low cost relay that can switch both (5V-30 V) 10 Amp DC or (120 -240V) 10 Amp AC devices.


3. The ESP 32 micro-controller. The ESP32 is the core of the automation irrigation controller. It has a dual  microprocessor with built in WiFi and Bluetooth. It also has 34 General Purpose Input Outputs (GPIO) so it can control electric gates, pumps, motors and cameras. It has the ability to measure climate attributes such as temperature, humidity, water level, soil condition and movement with added sensors. In this build I am using only one GPIO to control the irrigation valve.

3. EPS32 controller

The ESP32 micro controller is low cost and very versatile. It also provides the bidirectional WiFi communications with the system hub shown in Diagram below.

4. The DC voltage converter. This steps down the 12voltage supply to 5V to power the ESP32 micro-controller. The 12v supply also provides power to the flow valve to open close the water to the garden.

4. DC voltage converter

5. The system hub. The hub in this build is a Raspberry Pi single board computer. It is running an automation software program called Home Assistant. The Raspberry PI was chosen as it is relatively inexpensive and I had one available. If you do not want to use a Raspberry Pi as the system hub the Home Assistant system software can be installed on many other operating systems including Linux, Microsoft Windows and Apple macOS.

5. Raspberry Pi System Hub

The Raspberry Pi is basically the server in the irrigation system as it contains all the automation and provides manual control for the users phone or PC via it’s custom web pages. All control is done locally so no external cloud connections are required. In this design the irrigation system hub is connected to a home Internet router using an Ethernet cable to enable secure remote access for external monitoring and control.

Diagram 4. shows the Raspberry Pi system hub connected to a Telstra Internet router using an Ethernet cable to a LAN port. Any home Internet router is sufficient as long as you have an available LAN port for connection.

Diagram 4 (Irrigation System Hub connected to Internet Router)

System Software Overview.

The System Hub runs Home Assistant. It is a very popular Open Source software automation product implemented by thousands of applications across the world. I chose Home Assistant as it is free to use and has wide community and industry support. Diagram 5. is the graphical configuration page of Home Assistant.

Diagram 5. (Home Assistant Configuration Page)

In this irrigation system I am only using a couple of basic automation scripts to control the turning on and off of the water valve at specified intervals. Diagram 6. is a screen shot of the Watering Garden on automation in Home Assistant.

Diagram 6 (Irrigation Automation)

The automation is triggered to activate when the time is 6.00 am every morning. The water flow valve is open for 20 minutes then the water is turned off.

I have not set any conditions for this automation at the moment. You could add a condition such as do not turn on the water flow valve if a connected rain gauge monitor is over 50 % full. The conditions are endless and dependant on how you set up and program the system.

The last attribute is the action which is a call to the script to turn on water the garden.

User interface

The hub provides control and feedback via it’s build in Graphical User Interface (GUI). Diagram 7. shows the current GUI on the phone. It is very flexible on what is presented to the user. In this Diagram I have created a Water Garden button at the top of the screen to provide manual switching of the irrigation system. The middle is the watering history automation showing when the watering was operating by Home Assistant. The bottom is a real time 5 day real time weather forecast imported into the program. The display options are up to you. They are only limited by the screen size and your needs when you setup in Home Assistant.

Diagram 7 (The GUI shown on the phone)

As mentioned this irrigation system is at the base level. It will develop as the needs and applications evolve. Overall the build was done quickly with commonly available components.

You can contact me by email

Just mention “DIY irrigation”  in the email Subject line.


Tony Duffy


There are no comments yet. Be the first one to leave a comment!