Irrigation System Proof of Concept

I have worked on the irrigation system over the past weekend and have hooked it up for its first test run.  Here is the latest view of the hardware.


I’m not sure if you can tell everything that is hooked up and where, but here is the run down.  The relays are number 1-8 from right to left.  The red wires are the valves (solenoids) where the wire in relay 7 is the main valve which needs to be turned on when each of the solenoids is turned on.  The wires for the power is hooked up to the open side of the solenoid.


The wire for the valve is hooked up the middle of the three screw ports and the power to the open side (o).

I bought a new power supply to keep the old system all together, but it turns out the wires were just screwed down to the terminals like the valve wires, so I could have used it.  I got a 750mA 24VAC power supply and it seems to be working fine with no issues.

Added to the parts list:

Orbit Sprinkler System Power Source Transformer 57040 ~ $16 after tax (prime)

So, now for the programming:

I have created a web page to control the system.  I am not including the code yet as it is still very much a work in progress, but here is a screen shot.


If it looks familiar, it is because it is based on the code from the garage door opener project.  I have run the program manually and it works great so far, but I need to add all the handling on the particle IDE side for the photon to handle all of this configuration.

I have added the ability to turn on and off zones by clicking on the buttons.  It then changes the buttons color and indicates that there is a zone that is on.  Along with the ability to turn off the system (enable/disable toggle).  This functionality works and it it’s at least a proof of concept on the project.Capture

What I have left to do: (a lot left from the original list)

  • I would like to make this work google calendar. (the more I think about it, the more I am not sure this is very useful)
  • Plug into the weather to determine if they need to be run.
  • I have permanent restrictions which would reduce me to just being able to run a specific two days a week, so I need to run it in the evening if the forecast didn’t pan out.
  • Email notification when a watering is cancelled.
  • I would also like to run specific zones on command so that I can more easily test zones for problems. (Done)
  • I want a log of when it ran and for how long on each zone.
  • Each zone needs to be configurable to run for different lengths of time. (need to add the handler code on the form)
  • I’d like an option to skip the next watering with a button click.


Published by


I am a software developer that likes tinkering in the garage. I hope you like my projects and have fun reproducing them.

Leave a Reply

Your email address will not be published. Required fields are marked *