Best smart irrigation controllers with rain skip
Compare top local-first smart sprinkler controllers that integrate with Home Assistant and skip watering when it rains, with cloud-versus-local notes.
On this page
- What makes a good local-first irrigation controller
- OpenSprinkler - the local multi-zone controller
- FrankEver FK-06X - six local zones without the DIY
- Rachio 3 - popular, but cloud-only
- Eve Aqua - the local-first valve
- LinkTap - local API and MQTT
- Orbit B-hyve XR - budget Wi-Fi, cloud integration
- Third Reality Smart Watering Kit - local Zigbee, but for pots
- Quick verdict
If you’re running Home Assistant and want your sprinkler system to automatically skip watering when it rains, most “smart” irrigation controllers are cloud-first. A few are fully local, and even cloud controllers can be made smarter with Home Assistant doing the rain-skip logic. Rain skip is arguably the most valuable feature for any controller - it saves water, protects your lawn, and actually justifies the “smart” label.
For a multi-zone in-ground system off the cloud, OpenSprinkler (or the Shelly-based FrankEver FK-06X if you’d rather skip the DIY); for a single tap or drip line, the Eve Aqua over Thread. Whatever you buy, put the rain-skip decision in a Home Assistant automation rather than the controller’s cloud. I haven’t run any of these controllers myself; the picks rest on the spec sheets and what people running it in Home Assistant report.
What makes a good local-first irrigation controller
Before diving into specific products, here’s what matters for a Home Assistant setup:
How “local” really is local. Many popular Wi-Fi controllers only expose a cloud API - Home Assistant talks to the vendor’s servers, not the device on your LAN. That works, but it depends on the internet and the vendor keeping the API alive. A handful of products offer a true local API or use Zigbee/Thread, which keeps everything on your network.
Where rain-skip logic lives. Some controllers run their own weather-based skip in the cloud. The more reliable approach for a local-first home is to let Home Assistant decide - pull rain data from a weather integration (Met.no, Open-Meteo) or a local rain sensor, and have an automation hold the watering. That way the logic doesn’t depend on the controller’s cloud at all.
Zone count. Residential controllers typically support 4-16 zones. Don’t overpay for capacity you won’t use.
OpenSprinkler - the local multi-zone controller
If you have an in-ground system with real 24V AC valves and you want it off the cloud entirely, the OpenSprinkler is the one to start with, and it is the piece this category is usually missing. It is an open-source controller that drives 8 zones on the main board and expands to 72 with zone expanders, and it exposes a documented local HTTP JSON API on your LAN. On the Home Assistant side you install the mature hass-opensprinkler custom integration from HACS and point it at the controller’s IP address and password - there is no vendor account and no cloud relay anywhere in the path.
Rain skip can go either way here, which is the point. The controller has SN1/SN2 sensor terminals for a physical rain or soil-moisture sensor wired straight to it, and it also has its own weather-based watering adjustment that calls an online weather service. For a local-first build the cleanest arrangement is to leave that built-in weather adjustment off and let a Home Assistant automation hold the program using your weather integration or a local sensor - the same pattern as everything else on this list, except that here the controller never needed the cloud to begin with.
Expect roughly $140 to $185 depending on which variant you pick (AC, DC or latching solenoid) and whether you add the wired Ethernet module. The AC model expects the 24V AC transformer your old controller already used, and you buy it direct from the OpenSprinkler store.
Tradeoff: You’re wiring into valve terminals, not screwing a timer onto a hose bib. It’s the most capable local option here and also the most involved to install.
FrankEver FK-06X - six local zones without the DIY
If OpenSprinkler feels too hands-on, the FrankEver Smart Sprinkler Controller FK-06X is a 6-zone 24V AC controller built on Shelly hardware and running Shelly’s firmware. That matters practically: it has an on-device web interface, speaks MQTT, and is driven by Home Assistant’s built-in Shelly integration over the LAN - so you get a multi-zone local setup on a core integration, with no custom component to maintain. It runs around $130 and is stocked by US retailers.
Rain skip is the same story as OpenSprinkler: it has weather-aware scheduling of its own, but the resilient version is a Home Assistant automation gating the zones.
Tradeoff: Much newer and less battle-tested than OpenSprinkler, and Wi-Fi only.
Rachio 3 - popular, but cloud-only
The Rachio 3 Smart Sprinkler Controller is among the best-known smart sprinkler controllers in the US. It works reliably, has polished app software, and includes weather-based “Weather Intelligence” rain skip.
Be clear-eyed about the integration, though: Rachio is cloud-only for Home Assistant. The official integration is Cloud Push - it requires your HA instance to be reachable from the internet to receive updates, and there is no stable, documented local API. Community plugins exist, but they still go through Rachio’s cloud (just via outbound calls). Rachio has also changed its API in the past in ways that temporarily broke HA integrations.
So Rachio is a fine choice if you accept the cloud dependency and want a turnkey experience - but it is not a local-first product, and you can’t run it offline.
Eve Aqua - the local-first valve
If you want the most local experience possible, the Eve Aqua is a Thread smart water valve. It works locally with Home Assistant through the HomeKit Controller integration (HomeKit over Thread) - Eve has not yet shipped its promised Matter upgrade for the Aqua - and needs no cloud account for core control. You need a Thread border router on the network; Home Assistant then pairs the valve through that same HomeKit Controller integration, not through Matter.
It’s a single-outlet hose/valve controller rather than a multi-zone manifold timer - it threads onto a tap and is great for drip lines, a soaker, or a Gardena/Kärcher-style distributor. Rain skip isn’t automatic; you build it as a Home Assistant automation: pull rain from your weather integration (Met.no/Open-Meteo) and close the valve. Slightly more setup, but it’s fully local and very reliable.
Tradeoff: Effectively single-zone. For a real multi-zone in-ground system you’d want the OpenSprinkler or the FK-06X above rather than a stack of these.
LinkTap - local API and MQTT
The LinkTap Smart Water Timer is a battery-powered tap timer that talks to a small LinkTap Gateway. Unusually for this category, it offers a local HTTP API and a documented local MQTT integration, so Home Assistant can control it without going through LinkTap’s cloud. A community custom component drives the local “instant watering” path directly.
Rain skip can be handled either by LinkTap’s own weather features or - better for local-first - by a Home Assistant automation. Note the community local integration focuses on instant on/off; full schedule editing over the local API is more limited, so many people keep schedules simple and let HA gate them.
Tradeoff: Less mainstream in the US and smaller English-language community than the big brands, but the local story is one of the best here.
Orbit B-hyve XR - budget Wi-Fi, cloud integration
The Orbit B-hyve XR Smart Sprinkler Timer is an affordable multi-zone Wi-Fi controller with a rain-sensor input and weather-based skip in its app. It’s a reasonable value pick.
For Home Assistant, integration is via a community (HACS) custom component, and like Rachio it’s cloud-based - it connects to Orbit’s servers over a WebSocket; there’s no supported local API. The app is less polished than Rachio’s and other Home Assistant users report occasional connectivity hiccups, but for the price it’s a solid multi-zone option if you’re OK with the cloud dependency.
Third Reality Smart Watering Kit - local Zigbee, but for pots
The ThirdReality Smart Watering Kit is worth knowing about, but set expectations: it’s a battery-powered Zigbee 3.0 kit for indoor potted plants, not a sprinkler or in-ground irrigation controller. It pumps from a reservoir and pairs nicely with a Third Reality soil-moisture sensor.
The upside for local-first homes is real: it has excellent ZHA and Zigbee2MQTT support, so it runs entirely on your Zigbee network with no cloud. If your “irrigation” is houseplants or a small balcony garden, it’s a cheap, fully local option.
Tradeoff: Not a lawn/zone controller. Best as a supplemental, indoor watering solution.
Quick verdict
For true local-first control of a multi-zone in-ground system, OpenSprinkler is the pick - open firmware, a documented local HTTP JSON API, 8 zones expandable to 72 - with the FrankEver FK-06X as the less-DIY, Shelly-based alternative. For a single tap or drip line, the Eve Aqua (HomeKit-over-Thread, HA-driven rain skip) is fully local; the LinkTap system can also run cloud-free over its local HTTP/MQTT API, though cloud is its default path and the community Home Assistant integration is limited. For indoor plants on Zigbee, the Third Reality Smart Watering Kit is the most local-native option.
If you want a polished, multi-zone, turnkey controller and can accept a cloud dependency, Rachio 3 is the easy default - just know it’s cloud-only with no stable local API. Orbit B-hyve XR is the budget multi-zone alternative, also cloud-based.
Whatever you pick, the most resilient setup puts the rain-skip decision in Home Assistant using a weather integration, so a single controller’s cloud outage can’t leave your sprinklers running in the rain. For the full picture on keeping the watering logic off the cloud entirely, see how to control irrigation without the cloud.