Feed on

OpenSprinkler F.A.Q.

NOTE: This page is obsolete. Please check the documents for the current firmware version.

Circuit Design and Extensions

Q: What pins are available for connecting to external sensors and/or circuits?
A: The available pins depend on the particular hardware version. Please check the PCB image of each version, and the available pins are all marked in the pinout area. Here is a short summary:

  • Hardware v1.0: TXD, RXD, (SPI) SCK, MOSI, MISO, (I2C) SDA, SCL, digital D3.
  • Hardware v1.1: TXD, RXD, (SPI) SCK, MOSI, MISO, (I2C) SDA, SCL, digital D3 and D9.
  • Hardware v1.2u: (I2C) SDA, SCL, digital D2, D3, analog A1.
  • Hardware v1.3u: (I2C) SDA, SCL, analog A1, A2, A3.
  • Hardware v1.4u/1.42u: (I2C) SDA, SCL, analog A2, A3.
  • Hardware v1.4s: (I2C) SDA, SCL, analog A2, A3, A6, A7.
  • Hardware v2.0s: (I2C) SDA, SCL, analog A5, A6, A7, serial TXD, RXD, interrupts INT0, INT2, digital D14, D15.

Note that Arduino analog pins can also be used as digital pins. Also, if not using the RFM12B transceiver, digital pins D2 and D10 are free in all hardware versions.

Q: Can I power a USB WiFi adapter (or other USB devices) through OpenSprinkler?
A: This is supported by default from hardware versions 1.42u and 2.0s. For earlier hardware versions, please check this blog post.

Q: How to add MOVs (varistors)?
A: From OpenSprinkler 2.1, the fully assembled OpenSprinkler has built-in bidirectional transient voltage suppressor (TVS). There is no need to install MOVs for fully assembled OpenSprinkler (2.1 or above).

MOVs are useful for protecting the controller from impulse high voltages such as lightning. The surface mount versions (including 1.4s, 2.0s, and zone expansion boards) currently have PCB holes designed to fit one MOV per station. You can solder MOVs by following the picture below: each MOV (blue colored) should be inserted across the top and bottom holes next to every triac. The stock MOVs that we offer are of type 07D560K.

Q: How to use OpenSprinkler to interface with DC devices?
A: There are two solutions. The simplest is probably to use a relay board, which you can get from Amazon, eBay and a variety of places. The basic idea is that OpenSprinkler will control the relays, which in turn control DC devices. See the blog post here for an example.

A potentially simpler and cheaper option is to use OpenSprinkler to directly drive DC devices. This can be done by replacing the traics (i.e. AC transistors) with DC transistors. We recommend MPSA14, a common NPN Darlington transistor. However, note that if the DC devices you are driving are inductive load (such as DC valves), you need to solder additional protecting (flyback) diodes, one per station. The positive lead of the diode should go to the common wire, and the negative lead should go to each individual station wire.

Q: How to add an external Real-Time Clock (RTC) module?
A: RTC (DS1307) support has been added in code since firmware 1.7. RTC allows time keeping even when the controller is offline. OpenSprinkler hardware 1.4 or above has built-in RTC and backup battery, and the RTC option is turned on by default. For previous versions of OpenSprinkler hardware, you can add an external RTC module by connecting the following pins (from RTC module to controller): SDA->SDA, SCL->SCL, VCC->VIN(+5V), GND->GND. Note that you must use the VIN(+5V) line on the controller: the VCC line on the controller is +3.3V and will not work for the DS1307 RTC. Special notes:

  • On v1.0, there is no pinout for VIN. Please check the schematic to identify pads that are connected to the VIN line.
  • On v1.1, there is an RTC breakout pin header. Do not use this pin header because there is an error in its design. Instead, use the pins in the main pinout area.
  • On v1.2u, the VIN pin is located on the upper-left corner of the PCB, next to the indicator LED.

The external DS1307 RTC module is available from Rayshobby Shop. It is also available at Adafruit and Sparkfun.

Q: Why is there not a built-in WiFi chip on the controller?
A: As I explained in this page, this is mainly due to the cost of adding a WiFi chip and the lack of robust open-source WiFi solutions currently. However, you can provide the controller with wireless connectivity by using WiFi repeater or bridge. This way, the WiFi password and security options will be handled by the repeater or bridge, so the controller does not have to deal with them at all. This makes a lot of sense because WiFi repeaters are inexpensive (the cheapest options are $20-$30), and it significantly reduces the code on the controller side, thus improving it robustness.

More circuit design notes can be found in this blog post.

Modify the code

Q: How do I know which file to modify?
A: The OpenSprinkler code consists of two components: an OpenSprinkler library, which provides functions to interface with the hardware (e.g. solenoid Ethernet, LCD controls etc.), and a scheduling program, which implements a scheduling algorithm and maintains schedule data. In most cases, you will probably be modifying the latter. The scheduling program is further divided into a main program (e.g. interval_program.pde), a server program (server.pde), and program data structure (e.g. program.h/.cpp). The main program is in charge of initialization, setting up controllers, and running the main loop; the server program responds to Ethernet packets, and the program data structure keeps the necessary program data.

Q: How do I implement a new http GET command?
A: The basic steps are:

  • Go to server.pde, find the analyze_get_url function, and add a new GET keyword there (e.g. getstatus)
  • Implement a function that responds to the keyword (e.g. print_webpage_getstatus)
  • Inside print_webpage_getstatus function, parse the input http string to extract the information you need (e.g. station index, custom requests), and then call suitable functions to instrument these requests
  • Return an http page by calling bfill.emit_p and insert strings and/or data. Example return pages are a simple http webpage that prints the data requested, a confirmation page, an automatic re-direct, or a Unauthorized page in case something is wrong with the incoming requests.

Q: How do I change the http port number?
A: From firmware v1.8, http port can be set on the Options webpage.

Modifications and General Use

Q: What’s the range of allowed input power voltage?
A: The absolute maximum input voltage is 28V if using AC, or 40V if using DC (note that the peak voltage of 28VAC is about 40V). This is mainly limited by the voltage rating of the switching regulator, which can handle up to 40V input. The minimum input voltage is 6V, as the switching regulator is set up in ‘step-down’ mode and diode D1 will drop about 0.7V.

When you measure the open-circuit voltage of your sprinkler transformer, sometimes you will get a reading higher than 28VAC. This is ok. These transformers are not regulated, so the open-circuit (i.e. no load) voltage can be quite high. Once you connect the transformer to a circuit and current is drawn from it (i.e. with load), the voltage will drop to about 24~25VAC.

Q: I understand the main controller can control up to 8 station. How to expand beyond 8 stations?
A: From OpenSprinkler v1.1, zone expansion is generically supported in both hardware and software. This is implemented by adding pinouts for the 74HC595 shift register. A connector is used to link master controller with zone expansion boards, each of which extends the number of stations by 8. The connection follows (master->expansion): CLK->CLK, LATCH->LATCH, DOUT (QH*)->DIN (DATA), VCC->VCC, GND->GND. Check the Zone Expansion Boards page for additional details.

Q: How do I perform an emergency stop?
A: You can stop the operation of the controller either by clicking the ‘Stop Operation’ button (requires password) on the homepage, or by pressing and holding button B2 on the controller manually.

Q: I replaced the mcu with a fresh one I bought from Digikey. Now I get an avrdude: initialization failed, rc=-1 error. What should I do?
A: To use a fresh mcu, run the following command first:
avrdude -c usbtiny -p m328p -B 250 -F -U lfuse:w:0xe2:m -U hfuse:w:0xd1:m -U efuse:w:0x06:m
This will set the correct fuse bits, and then you can upload a program. More technically: the USBtiny programmer that comes with OpenSprinkler is set to work at the highest speed by default. This requires the ATmega328 to run at 8MHz or above. Fresh mcus are usually clocked at 1MHz, so you need to set the fuse bits first to change the clock rate to 8MHz.

Sprinkler Valves

Q: What’s the maximum distance allowed between the controller and the valves?
A: This depends on the wire gauge (AWG) that you are using to connect the valves. Here is an example list of the maximum distance with respect to the wire gauge. In general, you should be able to run at least 700-800 feet (>200 m) by using 20 AWG wires, and longer if you use thicker wires.

Q: What’s the maximum distance allowed between the main controller and extension boards?
A: This depends on the wire gauge (AWG) of the extension board cable. The default cable shipped with the kit is a 15 inch long 24AWG cable. The resistance on each wire measures about 0.14 ohm. Since the control lines draw very little current, the voltage drop on the wire is usually very small. The ground line runs higher current as it sinks current for the sprinkler solenoids. Because of this, the circuit design allocates three wires to the ground to reduce resistance. Overall you can probably run at least 50 feet without significant voltage drop.

Q: Can I connect the sprinkler valves with garden hoses?
A: Yes you can. Most sprinkler valves use NPT (National Pipe Thread) standard, while garden hoses use GHT (Garden Hose Thread) standard. So you need an adapter. Just Google ‘NPT to GHT adapter’. You can also get these adapters in local retail stores such as Lowe’s or HomeDepot.

Q: My valves are making a loud noise and do not seem to be fully open.
A: You may have soldered RN1 (1K ohm resistor network) in the place or RN2 or RN3 (330 ohm resister networks). This would reduce the gate current of the triacs and thus they cannot remain fully open (saturated). Check to see if this is the case.

Networking Issues

Q: When using a WiFi adapter/bridge, the DHCP does not work – the controller cannot get a valid IP.
A: Try using static IP instead. To do so, hold B3 when powering up the controller, you will enter option setup mode. Click B3 to navigate to the ‘Use DHCP’ option, and set it to ‘No’. Following from this option, set static IP and gateway IP. Make sure these IP addresses are set correctly according to your router’s configuration.

Update: the latest firmware uses the new JeeLabs EtherCard library, which seems to have solved the DHCP issue. Flash your controller with the most recent firmware and see if it solve the problem.

100 Responses to “OpenSprinkler FAQ”

  1. dargs says:

    Hey Ray, Something to add to the ‘EEPROM was not initialized’ issue, my OpenSprinkler was actually resetting itself every time I tried to go into the Schedule on the webpage.

    The ‘Reset All’ fixed it! So assuming it’s bad data in the EEPROM that was causing it to reboot.

    • ray says:

      Yes, that’s caused by uninitialized EEPROM, which has all values of 255. This causes the schedule packet to be too large, exceeding the Ethernet buffer size. In the next software update a flag will be set in the external EEPROM to indicate initialization, in the same way as how the internal EEPROM is initialized now.

  2. Steve Hiller says:

    Hi Ray,

    I already have a Myers shallow well pump that is driven by a GE motor. Can I use your system to run the pump directly just like the old timer that I have does?


    • ray says:

      That depends on the voltage required to run your pump. Does it run on 110V power line voltage, or it runs on 24V AC (or DC)? If it’s the former, you need additional circuitry because you cannot connect the open sprinkler controller directly to 110V power line. You can check this page for additional information.

  3. Mark Hyer says:

    Everything has been working great with 1.2u until last evening. We had a quick power loss and when the power came on the connection fails. I have tried to reset parameters and verified the Ethernet connection but the controller will not connect.
    I am operating the sprinklers in manual mode but don’t know when they will energize.
    I gave up trying to install 1.3 because of Microsoft.
    Thank you in advance and I will look forward to your reply.

    • ray says:

      Have you ever updated the software? I am confused by the manual mode you mentioned: 1.2u ships with firmware 1.5, which has no manual mode, perhaps you are referring to self-test? If you are talking about firmware 1.6, it has a manual mode but through a web interface. So if you are able to run manual mode, that means you do have Ethernet connection.

      There is no firmware 1.3. I think what you mean is ‘…gave up trying to install firmware 1.6…’.

  4. Mark says:

    Hello Ray,
    Thanks for the prompt reply. To be clear I am running version 1.5 on the 1.2u controller. I have temporarily given up on installing 1.3u or version 1.6 because of my operating system and USB issues. The failed connection issue was DHCP pulling a new IP address and IPSEC security stopping the connection. Changing to a static IP address and modifying the IPSEC protocol to reflect the new address allowed the system to connect again. Everything is as it should be and change should prevent connection issues in the future.
    Thank you for designing such a sleek user friendly system.

  5. Reid says:

    My house has eleven valves. I would like to buy one but I would like to see if it is possible to have one circuit board that can control twelve valves. I hate to have two circuit board. Is it possible do that?

  6. Detelin Chernev says:

    Hi I want to ask how can I make Aitony whose refresh the webpage OpenSprinkler for continuous monitoring timer valve timing.

    • ray says:

      You can add a

      meta http-equiv=”refresh” content=”5″

      at the end of the homepage to allow auto-refresh every 5 seconds. I don’t recommend it though because it increases net traffic, and usually you don’t need to track the status in real-time. You can also manually press F5 to refresh.

  7. Gary Giddings says:

    I just built the 1.4 board that I received two days ago.
    Nice kit, good instructions, great pictures, thanks.

    Soldering the DIP sockets, apparently I got too much solder
    down the hole around a few of the pins, and the ICs do
    not seat all the way into their sockets. A warning to others.

    It has firmware 1.8, which booted fine on an Ethernet connection.

    However, when trying to use the Netgear 2001 WiFi adapter as
    recommended, the OpenSprinkler ended up with IP instead
    of the that it had gotten from the Ethernet connection.

    I might need to set a fixed IP (and Gateway), but by fussing with
    the WiFi and Ethernet connections, an IP finally “stuck”… but it
    might not last.

    Have the Program Preview go to a page that shows Today, Tomorrow,
    and shows the month’s calendar, with a Next and Last option.

    The actual Program Preview displays well on my Android tablet’s
    browser, but rather poorly on IE7 on Vista.

    Also, on Vista, the main Status page displays substantially differently.
    Cheers, and Thanks, Gary

    • ray says:

      Hi Gray, thanks for your feedback. Regarding the WiFi adapter, note that how well DHCP works depends on your main router and the DHCP settings on your main router. I would recommend static IP because it’s a fixed IP and much faster to reconnect. Regarding the program preview in IE, note that in the instructions I wrote ‘Internet Explorer is currently unsupported. Please use a different browser.’ The issue is mainly because for some Javascripts, IE produces different behavior than other browsers like Firefox, Chrome, Safari etc. Since I don’t normally use Windows, I have not done much testing in IE.


  8. Peter says:

    Hi Ray,

    can the OpenSprinkler power a Wifi adapter which has a micro usb input for power (5V, I assume). Which contacts can be used for this?

    • ray says:

      Hi Peter, very good question, and in fact I just experimented with this a few days ago. You can use the USB connect on the OpenSprinkler to power your WiFi adapter, but there are two changes I made:
      1) I got a USB male B to female A converter, because most WiFi adapters use a USB male A type plug.
      2) I soldered an extra 1 ohm resistor for Rsc (current limiting resistor for the 34063 switching regulator) to increase the current output.
      With these, the controller can power WiFi adapter reliably. I will write a blog post about this in a couple of days.

      • Peter says:

        Thanks Ray, I also read the post. Unfortunately the USB converter is no option for me, but I will make a custom cable…

  9. Steve says:

    I’m not sure how you are getting away with using a switcher that has a 40V maximum input voltage. Because you have grounded one side of the 24VAC wall cube, you should be seeing peak voltages on the input cap at close to 70VDC. Obviously with a load it will be somewhat less, but this seems dangerously over the rated input. Peak to peak output of a 24VAC source should be 24 * 2 * sqrt(2). It would be interesting to see a scope trace of the voltage on C1.

    • ray says:

      Steve, diode D1 performs half-wave rectification, so the negative portion of 24VAC will not pass through. The peak output is 24*sqrt(2)-3.0 where 3.0 is the forward drop voltage of D1 (R3000-TP).

    • Steve says:

      I just rigged something up and you are right. I stand corrected. But I don’t have my brain wrapped around it yet. OK, I think I get it now. Once you choose to ground refferance one side of floating transformer the other wire wiggles both above and below that point. You can only recover half the peak to peak on a DC rectified system. This is true regardless of whether you full wave or half wave rectify. Anyway Sorry for the trouble, and Thanks.

  10. Rudy says:

    In was just planning a project like this when I saw your site. It will save a lot of effort if I start with your kit and make my changes from there. The main difference is I was going to put a larger graphic LCD display (possibly touchscreen) so it can more easily be run from the box itself. I was also going to add an atomic clock receiver but they’re suddenly hard to find, so I’ll just stick with your RTC and maybe push time corrections from a server or add periodic NTP queries. I figure I’ll try your design unmodified first before changing anything. Anyway, thanks for all the effort you’ve put into this project. I can’t wait to get my kit together and start trying it out.

  11. Luis says:

    May i connect a pump relay to this system? Does it include a way to do it?

    Thank you.

  12. Steve says:

    Hi Ray!

    Great product – had a top time over Xmas setting up my system.

    Found what appears to be a bug in (possibly) GMT correction code & the program scheduling. I’m in Sydney and am running GMT+11hrs. When I click the Program Preview button it shows my schedules – out by a whole day. eg. Today is 3rd Jan 2013, but the Red “now” line appears on the 4th Jan preview page. The scheduled programs all seem to run on “tomorrow’s” schedule (ie. the program preview reflects the actual events – a day removed from when I asked for them.

    PS. Echo Gary’s suggestion for a “next / previous” button on the preview page – would be most handy.


    • ray says:

      Hi Steve, that’s an interesting finding. I may have forgotten to consider time zone for the program preview feature. Will check it shortly. Thanks for the feedback.

  13. Stewart says:

    I have recently built and am running the opensprinkler, which is great.
    On the main page when I log in, there is a line that says….

    Log: Front & back ran P1 for 344m16s @ Thu, 21 May 2037 17:18:09

    The RTC shows the correct date and time so why is this strange line displayed?

    Its the latest version of hw/sw

    • ray says:

      Hmm, I’ve never seen this problem before. Can you check to see if the ‘Device Time’ on the homepage (close to the top of the page) is correct? Also, what browser are you using?

      • Stewart says:

        Hi Ray,
        Device time shows the correct time/date.
        Device time: Sat, 05 Jan 2013 06:15:24 GMT+8:00
        Browsers are.. ipod touch (safari), firefox.

        If the device is manually activated before the clock is set and the clock time happens to randomly be in the future, will a future time ever be replaced in the log? or do log entries just get written when they happen with no date/time check for the latest?
        Its been the same entry in the log always.

      • ray says:

        The log time is recorded when a station finishes running. So if the controller doesn’t have the correct time at the moment when a station finishes running, the log time will be wrong.

      • Stewart says:

        From what I’ve seen, the RTC has been correct since just after construction. I have never seen it give a wrong time/date. The strange log entry does not seem to change.

        At present, the device is not physically connected to any solenoids, its just running in isolation, testing. I can give you the web address so you can view it remotely if you want. Please contact me directly and I will give you the required details.

      • ray says:

        Does the strange log entry remain there after rebooting the controller?

  14. Dave says:

    This is exactly what I have been looking for! Fabulous job! Was leaning on the Ras Pi side but nothing there yet other than putting your web files and hosting it on the Pi.

    Anyway, just wanted to know how this is protected from lightening since I am in Florida and things outside seems to get a pretty good increase when lightening is about. Is there protection built-in like self resetting components etc?

    • ray says:

      Currently it’s not protected from lightening. The surface mount (1.4s) version does have PCB holes designed for one MOV (varistor) per station, as well as the 24VAC input line. These holes are currently not populated with components. But if you need we can solder these MOVs for you.

      • Dave says:

        Thanks Ray…since I’ll most like be ordering the DIY kit, can you post a how-to on adding the MOVs, unless you would do this part prior to shipping the kit. I assume this would also be needed on the expansion boards so if you can also provide the MOV part numbers to get that would help.

        This is great! Thanks!

      • ray says:

        Sorry but the DIY version does not have PCB holes for MOVs, because there is not enough space on board.

      • Dave says:

        No worries then…the surface mount would do. What about the expansion boards? Do they currently support MOVs?

      • ray says:

        Similar to the main controller, the extension boards also have PCB holes designed to fit MOVs.

  15. Dave says:

    Another question, you mentioned approx 50 feet with 24 AWG. I assume if I use cat6 at 22 AWG I should be able to get more distance if needed. However, can I use one of the zones on the expansion board for common and have that tie back to the common on the controller board? What I am trying to do is isolate the zones on one side of the property to an expansion board but it seems I will need to run a common wire back the the main controller from each of the expansion boards even if I daisy chain the expansion boards around the property. Please advise. Thank you.

    • ray says:

      You can always extend the distance by using thicker wires. Regarding the common wire, I am not sure what you mean by ‘isolate the zones’. Note that extension cable does not carry the common wire, which is run separately. Basically, every valve must have one wire connected to the common wire, which supplies power to the valves. One option you could try is to use a separate sprinkler transformer for each extension board: one wire of the transformer must be connected to GND — the ground wire, and the other wire is the common wire. In practice this seems to be more complex than running a common wire around your property along with the extension cable.

      • Dave says:

        Agreed…after considering it some more, it make sense and probably cheaper to run the common around the property. Good to know a separate transformer would also work just in case I face an issue with running a common under a long run of concrete.

  16. Luca says:

    I put together and am running a 1.4 OpenSprinkler board and 1 extension board. It was working well for a month but now I believe somewhere in the middle of a program the board crashes where the LED is lit but just blank no buttons work and it is unaccessible through the network. I need to restart the board and it seems to help if i restart the network switch it is plugged into. This is the first circuit I have ever soldered together with the exception of a learn to solder board. My first I am thinking it is a short but have nothing to go on but inexperience. I tried updating to 1.8.3 and making sure programs did not run simultaneously but it still has the problem. I can run programs manually and it doesn’t seem to have a problem with my 1 zone program but it crashes when I run the 15 zone program. Does anyone have any sugestions on where to start looking for problems?


    • ray says:

      Luca, it will help if you can post your 15 zone program (or send it to me). If I can reproduce the problem, it must be a software bug, otherwise it may be a soldering related issue.

  17. Alex says:

    I recently purchased the RTC to add to my 1.3u board. I was wondering if you had any advice on where to place it in the case? I was thinking of sticking it to the acrylic along the top of the case above the LCD. I’d have to unplug the wires when removing the cover but that’s not a big deal. Also the picture of the RTC in your shop has right-angle header pins (which is what I’ll need for the RTC module to put it where I’d like) but the header pins that come with it are straight. Just thought that might be worth mentioning on the shop page for the RTC.

    I built this last week with my daughter who wanted to learn to solder (never got around to putting it together last year). She certainly had her fill of it. It’s been fun and I can’t wait to hook this up to the solenoids sometime this week so I can play with it live!


  18. Justin says:

    I recently hooked up my OpenSprinkler controller and it turns the sprinklers on without any problems, but it cannot turn the valves off. The solenoid on the valves gets really hot and will not turn off. I have tried two solenoids and the same problems occurs with both of them.

    Do you have any ideas of what could be causing this problem?

    Thanks – Justin

    • ray says:

      Are you using an AC transformer or DC? If it’s DC, it won’t turn off sprinkler solenoids. Also, did you buy a DIY kit or assembled board? Last question: does this happen on all of the 8 ports or just one port?

      • Justin says:

        I am using a 24v AC power supply. The kit came pre-assembled.

        I currently only have one valve hooked up for testing, but I have tried it on 4 different stations and the same problem occurs. I am using CAT5 wire between the valves and the controller.

        Any suggestions of what to try?

      • ray says:

        The pre-assembled board has been tested before shipping out, so it should function normally. Can you try the self-test (press pushbutton B1 while starting the controller) and see if the valves can turn off?

  19. Justin says:

    I did the self test at startup and the valves still didn’t turn off. I even replaced the wiring and the solonoids. I have replaced and reconfigured everything and same problem occurs so I am thinking it has to be something on the controller board itself.

    Any other ideas of what to try?

    • ray says:

      Hmm, that’s puzzling because all assembled circuits have been tested before shipping. So it should be working. If I understand correctly, in self test mode, every 10 seconds you see the next valve turn on but the previous valves don’t turn off, is that right? Is it that the solenoid won’t turn off, or is it that you are watching the water flow and that doesn’t stop? One potential problem could be that your sprinkler valve won’t turn off once it’s on (say, due to low water pressure), and that is a mechanical problem instead of electric problem. In any case, if you need, you can send me an email to [email protected] and arrange for a return or replacement.

      • Kent McNeill says:

        Was there a resolution to this issue? I am experiencing the same issue, though with the OpenSprinkler Pi – I have one solenoid hooked up to the first station, and the solenoid will open, but then won’t ever close, and the solenoid then proceeds to get quite hot, until I unplug the system. I ran the self-test program and got the same result – the valve would open, but then never close, and the solenoid would get hot to the touch. (btw, I’m also using a 24VAC).

      • ray says:

        Can you make sure your transformer outputs AC voltage? That’s probably the only reason I can think of that would match the symptom you described. Sometimes there is confusion that DC adapters are marketed as AC adapters but they output DC voltage and not AC. In any case, if the problem is not resolved, please email [email protected] to arrange for an exchange/return.

      • Kent McNeill says:

        Are you saying that sometimes even if the adapter’s packaging and the adapter itself says AC on it, it may actually be DC? Would I need to buy a multi-meter to test whether that’s the case?

      • ray says:

        Sometimes the term ‘AC adapter’ can be confusing. Technically it should be called ‘AC-to-AC adapter’ and the contrary is ‘AC-to-DC’ adapter (which means the output is DC voltage). It’s usually pretty easy to tell from the label of the adapter: AC-to-AC adapters shouldn’t have any polarity markings, and the ‘output’ label should have a curved line indicating the output is AC voltage; AC-to-DC adapters usually have polarity markings (+ and -), and the ‘output’ label should have a flat line indicating the output is DC.

      • Kent McNeill says:

        Ok – based on that explanation, it does seem like I have an AC-to-DC adapter, given that there are polarity markings. Bummer! Now I have to try to track down an AC-to-AC adapter, which is proving more challenging (at least here in Australia).

        Anyway, thanks for the explanation.

      • ray says:

        OpenLab in Australia sells a 24V AC sprinkler transformer:
        Also, where you get your sprinkler valves, don’t they sell sprinkler transformers?

      • Rowan says:

        This is Australia…retail here is completely illogical.

  20. leon says:

    I recently purchased the Open Sprinkler Pi V1.0 but noticed that the lid has the network cutout/slot is back to front with the SD Card cutout/slot.

    Do you you have the STL Files at all so I can redesign a print out a lid?

  21. Arlene says:

    Hello. My husband recently installed this system and he loves it. One question I have is about accessing the control panel. We currently access using the IP address. This is fine until our internet cuts out. Once we are able to reconnect to the internet, we then have to go out to the open sprinkler unit to get the new IP address. I have tried accessing the the homepage using the address http://opensprinkler/ but the search is unsuccessful. Is there another way of accessing the control panel without having to go directly through the IP address?

    Thank you.

    • ray says:

      The controller uses DHCP by default, so the IP may change every time the router restarts. There are two ways to assign a static IP (so that the IP remains the same). One is to turn DHCP off on OpenSprinkler and provide static IP (see the user manual for details: http://rayshobby.net/?page_id=3775#setup).

      The other way is to go to your router’s admin page, and associate the MAC address of the OpenSprinkler to a static IP.

      Both ways, when the router restarts, it will assign OpenSprinkler the same IP as before.

  22. Dan says:

    Hi Ray,
    I have a problem with v1.2u, sw 1.83, I can’t set the password, the options…nothing, the returns is” 401 Unauthorized”

  23. Micah says:

    I have been looking in to different options for my yard irrigation and was wondering if you are able to connect 1 or more moisture meters to the system? And if so what would be involved.

    • ray says:

      Sure. OpenSprinkler 1.4 has two spare analog pins, and 2.0 has even more, so you can certainly connect more than 1 moisture sensors to the system.

  24. Brian says:

    Thanks for all of work that went into this product, it is exactly what I am looking for. I have seen in a few posts that you reference a 2.0 version. I was getting ready to order a controller, but I was wondering if I should wait for the 2.0 to be released. Do you have any estimates as to when the 2.0 version will be ready to ship?

    • ray says:

      Any order of the assembled OpenSprinkler 1.4s is now automatically upgraded to 2.0. If you are interested in the DIY 2.0 kit, it is not available yet and probably won’t be available for another month or so.

  25. Frank says:

    You’ve gone to a lot of hard work, and I appreciate that. This is a really nice project.

    I believe you are using just one 24vac transformer to power the electronics and the sprinkler valves. Can you explain why the back emf from the valves’ collapsing fields is not a concern? I know you have considered that issue and you have found it not to be a problem. Can you explain why?

    Also the voltage into the 5v regulator will approach its upper limit, but it obviously is OK. Perhaps due to the very small current draw?

    Thanks for your time and advice.

    • ray says:

      That’s right, it’s a single power supply design. The sprinkler valves are typically placed very far away from the controller. Also, these are AC valves controlled by triac, and triacs work by turning the valve off at the zero crossings of the AC cycle. This is different from DC valves where there is usually a more rapid cutoff of the current.

      The input voltage to the switching regulator is typically around 35V. We use ST’s MC34063 which has an absolute maximum input voltage of 45V. It is close, but I don’t think it’s approaching the upper limit.

  26. Richard says:

    I have been looking for a controller to use that would allow me to set frequency other than daily/weekly. I am converting my entire lot to low water/drip irrigation and some tree circuits require water on a monthly schedule. It looks like that will not be a problem for this controller as it appears that I could set the interval to 30 days. Is that correct? I vote #2 on the new case color 🙂 Can I retrofit the case when its ready or should I wait till it ships before I buy?

    Thank you,

    • ray says:

      Hi Richard, yes, you can set a 30-day interval, no problem. Unfortunately the new case will not fit the current PCB: their dimensions are different, and the screw hole locations are different.

  27. Richard says:

    Thanks for the fast response. I will wait for the new cases. I will check back regularly, I am very impressed with your design and execution.

  28. Arlene says:

    Hi Ray. I’ve been looking through the site for an answer to my problem but haven’t seen it. There are times that when accessing the system online, we get an error and the page cannot be found. Each time we have to manually reset the open sprinkler system to get the connection back. Unfortunately, when this happens, the sprinklers do not operate. It looks like internet connection has been lost and then the system is unable to reconnect on it’s own. And, just this morning, I got online to check the system and again found an error and the page cannot be found. So, I went outside to reset the system and found that the 1st station was running and looks to have been running for a while. It appears that connection was lost after the program started running and then kept running after connection was lost. We have our system set to a static IP address. How can we address this problem?

    Thank you.

    • Arlene says:

      Sorry, I wanted to clarify about the issue from this morning. When I said that the sprinklers kept running after the connection was lost, I meant that only station 1 kept running. It looks like internet connection was lost after station 1 started, so that station never stopped running. It didn’t move through the programs nor did it shut off until I manually turned the controller off to regain wifi connection. I hope that makes sense. I hope you can help.


    • ray says:

      Could you specify which version of OpenSprinkler do you have? DIY or pre-assembled? Hardware version? Firmware version? The latest firmware will automatically reconnect to the router if it detects the connection is lost. So if you see frequent connection loss, you should check if your router or your WiFi adapter (in case you are using one) is functioning properly. Also, if a station is programmed with a finite running time, the controller will guarantee that it stops after the running time, unless if there is a hardware problem (such as freezing due to hardware issues).

  29. Arlene says:

    Hi Ray. Thanks for responding so quickly. We have the pre-assembled controller. Hardware version is V1.42u, firmware version is 1.8.3. Our WiFi adapter is functioning properly. We are currently using 7 stations, all have been programmed with finite running times of 7 to 20 minutes each. We’ve had three instances where the controller gets stuck on a station and the sprinkler doesn’t shut off until we manually turn off the controller. And, we’ve had numerous occasions, about every other day, where the controller doesn’t start the sprinklers at all. In both situations, when we manually turn off and then restart the controller, the preset program will run once and then won’t run again the following day.

    Thank you.

    • ray says:

      Are you sure it’s pre-assembled v1.42u? I don’t think we have ever sold 1.42u in pre-assembled form – 1.42u has always been a DIY version, which you solder and assemble yourself. I can’t seem to find your order through your name or the email you left with the post. In any case, it sounds like what you’ve encountered is a hardware problem. To diagnose, I suggest that you use a multimeter to measure the VIN-GND voltage as well as VCC-GND voltage when the controller is stuck (or lost connection). I suspect that there is a power circuit issue that may have caused the controller to freeze. If you’ve soldered the circuit yourself, unfortunately we do not provide any repair service. If this is assembled by us, we do provide repair or replacement service depending on the time of your order. To continue the conversation, I suggest that you send an email to [email protected]. Thanks.

  30. Enes says:

    Hi Ray,

    That is an amazing pruduct. We are producing waste water treatment systems pls check my website. I migh use this product as a brain of my system. So that I can control and keep track on every system I sell in the world. This is a big business…

    Is it available that we can see a pump or valve is broken from our computers? And maybe a warning for broken pump would be perfect…

    Also the only input of this system is rain sensor, or does it have any other inputs like flow meter?


  31. Cameron says:

    If i want to run 8 stations plus the rain sensor what current power supply would i need?


    • ray says:

      Unless if you want all 8 stations to turn on at the same time, typically a 24V AC transformer rated at 500mA or above is sufficient. The rain sensor doesn’t draw power — it’s merely a rain controlled switch.

  32. Marcos says:

    My open sprinkler clock freezes. I reset it and rebooted it and still the clock will just stop.

  33. jeff says:

    I need to be able to set a monthly schedule, the city here has restricted watering to every other Thursday, so I need to be able to use a calendar anything else would mean manual intervention weekly or monthly and if you forget or make a mistake it is very costly!.

    • ray says:

      You can set a ‘every other Thursday’ schedule with the current firmware by using an interval schedule — every 14 days.

  34. stefan says:


    I have just received the OpenSprinkler 2.1s (fully assembled), to replace my existing Hunter X-Core controller. At the moment I have 8 Hunter PGV valves connect.

    The device seems to work perfectly incl. network connection and remote controling through the android app.

    But as soon, as i start up the OpenSprinkler device, the valves are opened although the device shows them as closed. Switching a valve on the OpenSprinkler device does not open/close the valve. Only by turning off the OpenSprinkler device the valves get closed.

    Is it somehow possible that there ist some power going through the station connections although they are switched off?


    • ray says:

      Hi Stefan, here are my suggestions:
      1) Try self-test: to do so, turn off the controller, then press and hold the first pushbutton (B1) while turning power back on. This will open each valve for 10 seconds. Let me know if the test is successful.
      2) Unplug the common wire first, then start the controller, and after the controller finished initialization, plug back the common wire. See if you can switch on / off valve now. If this is successful, there is probably some start-up issue that causes the valve to get stuck.

      • stefan says:

        Hi Ray,

        I just tried your suggestions:

        1) The self-test was going through the valves as I could see on the display. But as soon, as the OpenSprinkler controller was powered up, the valves were immediatelly opened and did not close when going throught the self-test.

        2) Powering the OpenSprinkler controller without the common wire connected helped at first. When I connected the common wire, the valves kept closed and I could open a valve by switching a station on the OpenSprinkler controller. But unfortunately switching the station off afterwards did not close the valve. It kept open until I powered off the OpenSprinkler controller.

        As you mentioned, it seemes, that there is something causing the valves to stuck open.

        I also took a closer look at my valves to Itentify them. These are Hunter PGV-101 with 24VAC solenoid (http://www.hunterindustries.com/irrigation-product/valves/pgv).

        Is there anything else I can do?

      • ray says:

        What power adapter are you using? It has to be an AC adapter — i.e. must output AC voltage, not DC. Can you check your transformer label and see what’s the output voltage?

      • Anonymous says:

        Hi Ray,

        that was the right guess. My AC adapter is labeled as 24VAC. So it should work. But I just tried another one and the problem was solved immediately. So like others before I also stepped into the trap of an badly labeled AC adapter.

        Thanks for the support!

  35. THomas says:

    HI Ray… just got my fully building OS. I’m using the following to power it:
    with hard connection to router.

    It powers up great, and I can see it on my network via web interface. However, nothing happens when I go to manual mode and turn on a valve. the LCD shows it working, but nothing happening. No sounds, nothing.

    I tried the self test, and all I see on the LCD is the zone numbers cycle through, counting up. I don’t know if this means the controller thinks all is fine, or not. Any ideas? Power related?

  36. THomas says:

    In the area of full disclosure…. after a good hour of debugging, it turns out I had the comm port/wire plugged into the rain sensor connection. Works much better now 🙂

  37. Gene says:

    How many valves can you run at the same time with this? I’m not sure what the typical power draw is for a valve, but I’m also not sure what the typical power output is for the transformers you use with these.


    • ray says:

      There is no hardware limit. If you turn off ‘sequential mode’, you can run as many valve simultaneously as you want (as long as your power supply can drive that many valves). Each valve draws about 150 to 200mA of current when it’s turned on. A typical sprinkler transformer can output 500mA to 2amp current.

  38. Christos Keleshis says:


    I am having trouble to find a 24V ac adapter here in Cyprus or from an online store. I was thinking initially to buy a 3A 24V AC adapter in order to be able to simultaneously operate 6 valves. (not sequential mode). If i do not want to use sequential mode but i start the valves one after the other (let’s say with 1 minute separation) i will avoid the large in-rush current from all the valves. Instead in the worst case scenario i will have 5 valves running+ the inrush current of the 6th one. Is this correct, if yes, what rating of transformer do i need? I have the 2.1version of opensprinkler

    Thank you,


    • ray says:

      1A to 1.5A should be sufficient. In fact, I have a 750mA transformer and I can open 8 valves at the same time. What happens is that if the valves draw more current than the current rating of the transformer, the output voltage will drop below 24V AC, but the valves would still work under reduced voltage. So in reality a 750mA transformer probably works just fine.

  39. kanger says:

    Excellent site you have got here.. It’s difficult to find high-quality writing like yours these days.
    I really appreciate people like you! Take care!!

  40. Stefan83 says:

    I want to replace my Hunter X-Core Controller with opensprinkler.
    Currently I’m using the Xcore with the “Solar Sync” Sensor from Hunter.
    Can the “Solar Sync” Sensor also used by opensprinkler?


    • ray says:

      No because solar sync uses special encoding that Hunter does not publish, so we cannot decode the signal encoding.

Leave a Reply