I turned my old offline irrigation system into a remote controlled smart home solution on a very tight budget, mostly by temporarily repurposing the components of my smart heating system used during the winter months.
The architecture
- The irrigation system with a couple of valves (ie. irrigation circles) controlled by an old Hunter Pro-C controller, a model purchased around year 2000. The system used to include a rain sensor, but it broke some year ago. Although the latest models of the manufacturer provide options for smarter control the replacement was beyond my budget.
- A rainwater tank with an irrigation pump. If the tank runs out of rainwater, there are a few manual steps to take for switching over to using utility water. The pressure of the water utility system is high enough to allow watering without using the pump.
- A Shelly wifi smart plug for switching off the irrigation pump when there is no rainwater in the tank.
- A SmartWise wifi relay placed inside the Hunter controller replacing the broken rain sensor.
- Home Assistant OS as a smart home hub. It runs on a Raspberry Pi.
- A Sonoff temperature and humidity sensor communicating to the Raspberry Pi over a Sonoff Zigbee dongle. The sensor is not waterproof thus it was placed to a protected part the balcony.
- A wireless home router.
- A free account to the OpenWeatherMap API that allows access to location specific data of the current weather and some forecast.
- A free account to CloudFlare tunnel allowing safe remote access to my Raspberry Pi sitting behind the built-in firewall of the home router.
Home Assistant integrations
- Shelly for the smart plug
- Zigbee dongle to read data from the temperature and humidity sensor
- OpenWeatherMap API
- eWeLink add-on for the SmartWise relay
- CloudFlare add-on
Home Assistant configuration
- Automations to toggle the smart relay inside the Hunter controller and the smart plug driving the pump. The automations are time triggered, aligned with the watering times set manually in the Hunter controller.
- Statistic sensors to calculate the total rain and mean temperature based on data both from the local temperature sensor and the OpenWeatherMap API.
- Dashboards to provide a UI for tracking data and configuring the thresholds.
- Helpers to allow easy fine-tuning of the automations over the dashboards.
Assumptions
- In the area where I live the dry-out of the soil in the summer period (ie. the need for irrigation) depends on the sum of the rain fall and the mean temperature of a past period. Based on experience I set this period to 48 hours.
- The thresholds of rain fall and mean temperature cannot be hardwired, because the speed of dry-out depends on a couple of factors (type of soil, shadow, etc) and thus it needs some experimentation and an easy way to fine tune the threshold settings.
- If the weather forecast suggests a high probability of precipitation in the next couple of hours, it is not worth running the watering program. Based on experience I set the threshold of probability to 98%.
- The Hunter controlling system can safely stop the water flow even in the case of a power failure.
- Although I cannot remote control the watering programs of the Hunter controller, the amount of irrigation water can be controlled indirectly by running the same Hunter program zero or more times. I set this to a maximum of 3. This is why I configured 3 automations in Home Assistant.
![]() |
The smart relay inside the Hunter controller |
The automation
Each automation starts at a pre-set time that is manually synchronized with the Hunter watering times.
The automation turns on the SmartWise relay for 30 min if in the last 48 hours
- the total of rain fall (mm) is below and
- the mean temperature (Celsius) is above
the configured thresholds and the probability of precipitation is below 90%.
If the rainwater toggle is set to yes, the smart switch of the pump is also turned on. Finally the automation creates a persistent notification in order to log what it did.
![]() |
Weather data dashboard |
![]() |
Control dashboard |
Investments
- SmartWise 5V-32V 1-gang smart relay switch: $15
- Domain registration for the CloudFlare tunnel, per year: $5
All other components were either free or repurposed from my smart heating project idle in the summer period.
Next steps
I will perhaps implement a moisture sensor and collect data on how the rain fall and temperature impacts the dry-out period of the soil so that I can fine-tune the automations. An other alternative is to drive the automation purely by the data read from the moiseture sensor.