Sprinkler Controller Automation

Another node type is now available on the Gateway automation interface: a sprinkler controller. This is achievable through a board I designed to be able to control many outputs. I call this board IOShield and it features two 74HC595 serial to parallel shift registers.The IOShields are daisy chainable and can take 24VAC through a buck regulator. Wireless control is done with a regular Moteino or MoteinoUSB and in a daisy chain only the first board would need the regulator and Moteino. These are now available in the web shop. See the overview video and details/code below.

I had an old sprinkler controller which worked just fine. But I had a few things I could be improved:

  • The programming interface was not really intuitive, definitely not user friendly
  • Every spring when it needs adjustment or sprinklers tested and fixes, it’s a pain to turn it on manually and then run in the far end of the yard to check/fix a sprinkler
  • Water is expensive and Michigan weather is unpredictable. I need a finer control of the sprinklers and the ease of turning programs or zones ON/OFF remotely, or when I’m away from home

I took apart the sprinkler controller to figure out how it works. There are 2 boards, one hosts the 24VAC TRIACs and circuitry that powers the solenoids. The other was a controller board with user interface, LCD, buttons etc. This gets power from the first board and controls the TRIACs through a ribbon cable. A quick continuity test reveals the pins of the ribbon connector control the gates of the TRIACs, simple enough.

So I designed the IOShield to be able to take the same 24VAC input and power the Moteino and itself. I have 9 sprinkler zones, but one IOShield will support up to 16 outputs. I can use the TRIAC board and only tap into the 9 zones that are active. I can just use the first board with all the TRIACs and then replace the clunky standalone sprinkler controller board with the IOShield+Moteino combo for completely wireless control and integration to the Gateway. If you have a similar older controller you may be able to do a similar setup with otherwise minimal changes to your sprinkler system. Here’s the hacked controller and control from the Gateway UI:

The RFM69 IOShield example skech for sprinkler control has been posted at Github.

The latest Gateway metric definitions also contain the definition for the sprinkler node, just plug it in and it should pop right on the interface. Sample zones and events have been defined as well, you can easily define your own or make your own schedules in metrics.js. Graphing will show you which zone ran, for how long etc. Enjoy!