Open-source Sprinkler Controller Keeps Your Lawn Looking Great


[Ray] wrote in to share a great project he just recently wrapped up, an open-source sprinkler valve controller. Built in collaboration with Wired Magazine’s editor-in-chief [Chris Anderson], the sprinkler controller is designed to replace the limited commercial sprinkler timers that typically come with a new home sprinkler setup.

Their system greatly expands on the idea of a standard sprinkler timer, adding Ethernet connectivity, web-based scheduling, and 8 separate controllable zones. At the heart of the controller is an ATmega328 running the Arduino bootloader, which means that the system is easily tweakable to fit your specific needs. The controller works off a standard 24V AC sprinkler transformer, which means that the controller can easily act as a drop-in replacement for your existing system.

The pair sells kits through the web site, but you can always simply download the schematics, PCB layout files, and BoM to build one yourself. Whichever path you choose, be sure to swing by [Ray’s] site and take a good look around – there is an incredibly detailed assembly and programming guide there that will be a great resource as you go along.

Continue reading to see a video of the sprinkler controller in action.


16 thoughts on “Open-source Sprinkler Controller Keeps Your Lawn Looking Great

  1. i don’t know what the blocking voltage of the triac is, but maybe an optocoupler would be extra nice. if you set up a sprinkler system, lots of outside wiring can pick up lots of stray voltage in a thunderstorm. wifi is a nice idea though: it is a far worse connector for lightning than standard ethernet…

  2. This is a great setup but it does not work correctly!! In a real automatic sprinkler setup you would not have all valves on due to the water pressure at the water supply. Rainbird and other automatic sprinkler system have the “zones” set to come on one after another. I really like this and would probably get one but it not configured correctly.

    1. From looking at the settings there is a Multi-Valve option that will limit the number of open valves…on the website they say that the commercial ones do it for current flow not water flow.

      Since not all sprinkler setups are alike having multiple valves open at the same time might be suitable for the layout, considering coverage with reduced flow and the duration.

      And like other open source stuff you should be able to configure control algorithms yourself for your setup.

      Features to add would be forecast awareness where it wouldn’t water if rain was expected. Also a rain gauge that would give an approximate rainfall so that the system could supplement nature when rain was lighter then optimum.

      1. A better solution than weather forecast would be simple moisture sensor. I believe, that can be connected as the rain sensor so no need to change or enhance the device or code.

  3. All good sprinkler controllers will allow two solenoids open at one time. On many systems, opening a third will exceed the transformer’s output even if water pressure allows otherwise.

    On many systems, solenoid #1 is frequently used to act as a master valve, which is especially important for people who have a gray water system. Accordingly, in this configuration, you must have valve #1 plus whatever zone is active, open.

    I do agree allowing more than two solenoids is asking for trouble and allowing more than three is downright broken.

  4. Nice project. I agree on the optocouplers. Long horizontal runs of unshielded copper tend to pickup close lightning induction and then theres shorts. This project would be great with a wireless bridge and a good web interface with stats, logging, etc. Perhaps some weather sensor inputs even. I was thinking an old wrt54g running something like ddwrt to base a basic two or three valve controller. You wouldnt have a screen though. Guess you could add one of the ddwrt screen hacks. Again, top work.

    I like the see through case btw.

  5. The reason he allows multiple zones to be opened at once is because this is meant as a multi-purpose controller. Many people have different uses for a networked timer, and would want to use each output independently. I am using one to build an aquarium controller to turn lights on, co2 injection, and automate water changes. Some of these would require simultaneous use. As stated above you can limit the number of zones active at once through programing. Not a big deal..

  6. Hmm, I have not played with any projects like this but I think I would like to see:

    Zone moisture sensor network.
    Ultrasonic people detector, so I dont’t soak the dog walkers.
    The opposite principle in the backyard to soak any unwelcome critters. Maybe even triangulate the target.
    A real splash screen, some fancy synchronised water works at start up.

  7. Cables in the garden? “Yummy Yummy”- said a passing by rodent type animal!.. Makes me think of robotic protection systems ..ever since our pet rabbit ate some of our cables at home because we didn’t protect them(that’s what I call lulzsec.. :D). A non-lethal turret of some sort would be useful also for other parts of a garden and some projects in these areas are already completed.

    1. Sorry Ivan if you are telling me cables are bad but burying cables in a slit trench along with the supply pipe seems logical. Yes it should be optically isolated and may require a totally separate controller to handle the a/d. I was thinking of a sensor net to characterise the depth of water penetration vs time & temperature. In fact this could be a temporary tool just to create a profile. Then you flog it around the neighbours as an add on service. But as a business service then each probe should be wireless, no digging required.

      Was thinking of simple conductivity measurements at fixed depths 1 – 6 inches. Although I found today there is a temperature (-45C to +125C) and hunmidty chip. Conformal coat it except the sensor window then see if it survives being dunked in water.

      1. Nah, I was just looking at the video and seeing all those cables for the sprinkler system on the open just made me think that one needs to protect them or they may end up being eaten while the owner is away. Maybe this project isn’t finished yet.
        Zone moisture sensors and ultrasonic people detector projects sound really interesting, would fit not only in a garden but in a flat.
        Excuse my english, I am a bulgarian.

  8. What would be nice enhancement to the code is designate a zone as indoor/outdoor. The purpose is some irrigation systems control not only the outdoor landscape but also patio and other indoor plants. The rain sensor and rain delay would be ignored for those zones.

  9. The Rainbird ESP-M controller has a 6-pin “Remote” header on the back of the front panel. Anybody know how to use this header with the Open-source sprinkler controller so I don’t need to reconnect all the solenoid wiring?

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.