User Manual — Basics
- Hardware Interface
- Power Supply
- Wire Sprinkler Valves
- Set Up Options
- Network Connections
- Button Functions
- LCD Display
- Rain Sensor
The microcontroller (mcu) is flashed with the most recent firmware at the time of shipping. To upload a new firmware, refer to the Firmware Update Instructions. Known issues and trouble shooting solutions are documented in the F.A.Q. page.
The interface of the controller is shown in the pictures below. The 24VAC power jack, switch, and USB connector are on the left side; the three push buttons and the Ethernet connector are on the right side; the COM (common) terminal and screw terminals for connecting sprinkler wires are on the bottom. Note that the two ports on the COM terminal are internally wired together, so either can be used as the common wire. There are also a rain sensor connector and zone expansion connector.
Official Fully Assembled v2.0s
The controller uses a standard 24∼27V AC (note that the output is AC, not DC) sprinkler transformer. Since AC transformers are not regulated, the output may vary anywhere between 22V AC to 29V AC. The current rating should be at least 500mA (12VA). Sprinkler transformers can be purchased online (search for sprinkler transformer or 24V AC transformer), or at local home improvement stores. You can also buy a cheap off-the-shelf sprinkler timer which usually comes with a transformer.
Important: DO NOT plug 24VAC into the COM port or the Rain Sensor port! Doing so may damage your transformer or the controller. We recommend using a permanent marker to mark the screw terminal pieces to help you easily identify the two. Also, to reduce the chance of damage due to power surge, please use a surge protector.
- Update: from version 2.1, the 24VAC terminal has been changed to an orange-colored one with a different pin spacing. This can help prevent mistakes in plugging in power.
After connecting the power supply, slide down the power switch. The LCD should turn on and start displaying messages.
Wire Sprinkler Valve
A sprinkler valve has two wires. Connect one wire to the COM (Common) terminal (either of the two ports), and the other wire to an individual station terminal (S1-S8). For multiple valves: one wire from each valve is combined together and goes to the COM terminal, and the other wire of each valve goes to its corresponding station terminal. If you are not sure, ask a landscaper or go to a home improvement store to ask for help.
Set Up Options
The controller is programmed with a list of options. Most of them do not need to be changed. However, if you wish, you can change the controller options /settings by following the procedure below:
- Turn off the controller. Hold pushbutton B3 while starting the controller, until you see the message Setup Options.
- Click B3 to cycle through all available options, and click B1 or B2 to increase or decrease the value of each option. Note that some options can only be set via the web interface and cannot be changed using buttons.
- Once you are done, hold B3 again, until the controller restarts. Your changes are now saved and applied.
Self-test: this is activated by holding B1 while starting the controller. The self-test mode opens each station for 10 seconds in turn, including stations on the zone expansion boards (if you have). This is useful for quickly checking if all stations are working. The self-test time can be changed in options.
Reset: on OpenSprinkler 2.0 and prior versions, holding B2 while starting the controller provides a short-cut to the Reset option. Select yes and then hold B3, a hardware reset will be triggered, and the controller will recover to default settings.
From OpenSprinkler 2.1, holding B2 while starting the controller will enter bootloader mode, which allows you to flash the microcontroller with a new firmware. To enter Reset as above, you can use the Reset option.
List of Options (Firmware 1.8.3 and 2.0.3)
The latest firmware version is 1.8.3 for 1.x hardware, and 2.0.3 for 2.x hardware. The complete list of options are described below:
- Time Zone: select your time zone (used for NTP time sync and effective only after reboot).
- NTP Sync: automatic time sync via NTP. Default on.
- Use DHCP: yes to enable DHCP (i.e. obtain a dynamic IP from your router), no to disable DHCP and use static IP. Static IP is recommended as the controller will have a fixed IP address and is faster to reconnect.
- Static IP: Default 192.168.1.22. Only available when Use DHCP option is set to no. The IP address spans four fields (ip1, ip2, ip3, and ip4). Keep clicking B3 to access all fields. If you use Static IP, you must set the correct Gateway IP as well.
- Gateway IP: your router’s IP. Default 192.168.1.1. Only available when Use DHCP option is set to no.
- HTTP Port: can only be set via the web interface. Default 80.
- Auto Reconnect: automatically reconnect upon network failure. Default on.
- Exp. Boards: number of zone expansion boards. Default 0.
- Sequential: sets the controller’s execution mode (yes to select sequential mode, where station runs are serialized; no to select concurrent mode, where multiple stations can run simultaneously). Default yes.
- Station delay: delay time (up to 240 seconds) between two consecutive stations. Default 0.
- Master station: Master is a station that turns on when other stations are running. It can be used on a water pump or main valve, such that the pump or valve will turn on automatically when any other station is open. The default value is 0, which means no master station. A value larger than 0 selects a master station: any stations from 1 to 8 can be assigned as a master station.
- Master on adjust: adjust the time (0 to +60 seconds) that master will turn on when a station opens. For example, +5 means the master will turn on 5 seconds after a station opens. Default 0.
- Master off adjust: adjusted the time (-60 to 60 seconds) that master will turn off when a station closes. For example, -5 means the master will turn off 5 seconds before a station closes. Default 0.
- Use Rain Sensor: allows a rain sensor to stop the water schedule when rain is detected. Default no, which means rain sensor reading is ignored.
- Rain sensor type: normally open or normally closed.
- % Water time: percentage of water time (from 0% to 250%). Default 100%. This provides a way to globally scale up/down water times. For example, if a program normally waters each zone for 10 minutes, and if the water level is changed to 150%, then the actual water time is 15 minutes.
- Self-test Time: the time (up to 255 seconds) to open each station during self-test.
- Ignore password: select yes to disable password on the web interface.
- Device ID: sets the last byte of the controller’s MAC address. Default 0.
- LCD Contrast: sets the contrast of the LCD display. Hardware v2.x only.
- LCD Backlight: sets the brightness of the LCD backlight. Hardware v2.x only.
- NTP server IP: sets the server used for NTP sync (default 22.214.171.124). Hardware v2.x only.
- Reset all: yes will restore the controller to default settings (warning: water schedules will be erased).
All option values are stored in EEPROM, which are preserved through power loss.
Network Connection Choices
Wired Connection: OpenSprinkler has a built-in Ethernet connector which can be directly plugged into your router via a standard RJ45 Ethernet cable.
WiFi Connection. To use OpenSprinkler on a WiFi network, you need a wireless adapter or repeater. To do so, connect OpenSprinkler to the adapter/repeater using an Ethernet cable, then configure the adapter/repeater to log on to your WiFi network. (Note that USB WiFi dongles will not work!) The diagram below shows an illustration.
There are many available WiFi adapters/repeaters on the market. We recommend the TP-LINK TL-WR702N and the NetGear WNCE2001, both of which have built-in WiFi Client / Adapter mode. They are pocket-size and inexpensive (around 25 bucks). Also, you may power these adapters directly through OpenSprinkler’s USB port. Besides, any router that supports DDWRT also works.
Port forwarding. To access the controller from an outside network, you need to set up Port Forwarding on your router. This allows an external request to be mapped to the controller. To do so, you need to find out the external IP (WAN IP) and forward Port 80 to OpenSprinkler’s IP address. Please refer to your router’s user manual.
Note that most modern routers support dynamic DNS service, such as dyndns-web.com, which eliminates the need to remember your external IP. Also, if necessary the HTTP port number can be changed in options.
After the controller starts normally, the buttons are assigned the following functions:
- Click B1 to display controller’s IP and port number.
- Click B2 to display gateway/router IP.
- Click B3 to change the board displayed on the LCD (MC: master controller, E1: ext. board 1, and so on).
- Hold B2 to disable controller operation (all stations will be closed).
- Hold B1 to enabled controller operation back to normal.
- Hold B3 to restart the controller.
During normal operation, the LCD displays the following information:
- Current time is shown on the first line.
- Station status is shown on the second line. If a station is on, the LCD will display a 3-character animation .oO to indicate that it’s open. The master station is marked M. If you have zone expansion boards, click button B3 to cycle through all available boards.
- Network status is shown as a single-character icon at the end of the second line. It tells whether the network is on or temporarily lost (based on ping results from your router). If the network is lost for more than 5 minutes, the controller will automatically reconnect. You can disable the automatic reconnect feature in options.
- On firmware 1.8.3: no icon will be displayed if network is on, otherwise a question mark will be displayed.
- On firmware 2.0.3: an SD card icon will be displayed if a microSD card is detected.
Connecting to Rain Sensor
From OpenSprinkler v1.4, there is an on-board screw terminal for connecting to an off-the-shelf rain/freeze sensor. You can also select the rain sensor type (normally open or normally closed) in controller options. Connect the two wires from the rain sensor to the screw terminal, and then set the Use Rain Sensor option to Yes. When rain is detected, the controller will automatically shut down all stations. If you want to bypass/ignore the rain sensor reading, just turn that option off.