I’ve been slowly turning my garden watering into another node on my home automation network, and this week I finally settled on the hardware layout for it. Before I start wiring anything into the enclosure for real, I wanted to lay out exactly what’s going into this build and why I picked each part — partly to think it through properly, partly so I have a reference for myself once the box is closed up and I’ve forgotten which wire goes where.

The whole system lives in a single weatherproof enclosure, split roughly into three zones: control electronics on the left, the pump and plumbing manifold in the middle, and mains power distribution on the right.

Important in this stage, the supplies for the irrigation itself are not purchased. All is just in my head, where I used my first experience from exact 10 years ago (https://rutg3r.com/garden-sprinklers/) and the nowadays online opportunities together.

Let me add the technical design here. The wires are not completely right, but it gives a good picture what is involved here.

Irrigation System - Hardware explained

Which water source is used? One thing I haven’t challenged myself to it. I hired a local company to drill a deep hole in my garden till groundwater was reached. No heavy machinery, just high water pressure and man power. Impressive! They can go up to 20 meters with this equipment. Good enough for residential purposes.

Groundwater installation_1

Groundwater installation_2

Groundwater installation_3

In a nutshell:

  1. They will use my garden tap water to fill the big RVS bucket with water.
  2. They have an on petrol running pump in use to increase water pressure coming from the RVS bucket.
  3. The pump INLET will be in the right side of the RVS bucket where it gets it water from. The yellow hose will be connected to the water pump OUT and goes into the vertical yellow pipe into the ground. Those pipes can be twisted into each other. It looks similar as what they do in movies on big oil platforms to screw/twist the next pipe into the previous one, but without the chains to spins those things. The pipe is more or less 63mm wide.
  4. The yellow vertical pipe is wider than the yellow hose. With moving the yellow hose (with water pressure head on it), moving up and down, you basically pull the sand back up. This will be collected in the left part of the RVS bucket.
  5. Once the right depth is reached, everything is taken out incl the yellow pipes and a PVC pipe of it’s total length with a fabric sock around (to keep the bigger sand out of the PVC pipe), will be placed in the drilled hole.
  6. The PVC is cut of just above ground level and a (I think one inch) connector is attached to it for easy connection to the Pedrollo water pump.

From start till end, it was one hour of work.

The control hub: Waveshare 8CH WiFi Relay Controller

At the center of the electronics is a Waveshare 8-channel WiFi relay controller. This is doing the heavy lifting — switching the pump and the five solenoid valves, with a couple of channels spare for later. I like this board because it exposes both the relay outputs and a full screw-terminal input strip, so I’m not soldering flying leads onto anything. It’ll talk to Home Assistant directly, which means the irrigation zones become entities like everything else in the house — schedulable, automatable, and visible on my dashboards without a separate app.

The post explaining how to install ESPHome on this Waveshare device for having a full integration within Home Assistant, is available here: https://rutg3r.com/install-esphome-waveshare-esp32-s3-relay-module/

Pedrollo Future JETm 2A ST pump

The water itself is pushed by a Pedrollo Future JETm 2A ST, a self-priming jet pump with a built-in pressure switch (the Easy Press unit on top). It’s a residential-grade pump, more than enough for five drip or sprinkler zones, and the integrated pressure control means it will be switch off the pump if no water is coming up, just for protection.

Full ground water pump

 

Easy Press

Autosen Vortex flow meter + temperature sensor

Right after the pump sits an Autosen Vortex flow meter, DN25, with an integrated temperature probe. This is the piece I was most particular about — I wanted actual flow data, not just “valve open, valve closed.” With flow and temperature both feeding into Home Assistant, I can catch a clogged emitter, a leak, or a valve that isn’t actually opening, instead of only finding out my beds are dry three days later. Since not all water valves will be open at the same time, I can save the amount of water per setting or use an automation to give a specific zone a specific set to water, rather than just opening that valve for 2 hours.

Although the device itself consumed 10-33 VDC, they flow and temperature has their own signal out with the protocol 4-20 mA. This was quite a challenge to find a way to have this integrated in Home Assistant. Ideally via the Waveshare or a similar device. Sometimes less is more. There is a variety of hardware available can convert a 4-20 mA signal to a volt value and this can be send somehow to Home Assistant. Additional resistors are needed for this. I can do this, but I prefer to have a more one-piece hardware.

The setup of this part is not proven yet, and I will definitely spend a blog post on this one, but the idea for now is as follow:

First the Autosen Vortex flow meter G1 1/4A

AS010Vortex flow meter G1 1/4A

AS010 dimensions

AS010 Pinout

 

The challenge of the 4-20mA signal

Regarding the first picture of the flow meter, the green nipple in the top middle part of the picture, is where the M12 4-pin sensor cable needs to be connected to.

AS010 M12 sensor cable

 

So for each signal out value (flow / temperature) we have one wire.

The idea is as follows. For each signal I’ll use:

  • M5Stack AIN 4-20 mA Unit (with built in resistor)
  • Atom S3 Lite (with ESPHome on it)

M5Stack AIN4-20mAM5Stack Atom S3 Lite

 

Will this work? I’ll keep you posted in the next days in a blog post. If I put the device partially under water, it will be able to measure the water temperature (maybe even without water). if this setup is working within ESPHome, I’m confident the flowmeter will work as well. It’s just a matter of receiving the right signals.

The manifold: five Rainbird solenoid valves

Downstream of the flow meter, the line splits into a black PVC manifold feeding five Rainbird solenoid valves, one per zone. Each valve gets its own pair of wires back to the relay controller, so every zone can run independently — different durations, different days, different soil types, all controlled from the same automation logic in Home Assistant.

Side outlets: power distribution

On the right side of the enclosure is a bank of six switched Schuko outlets, split across three double sockets. This is just sensible power planning — the pump, the relay controller’s PSU, and both ESP32 boards all need mains or low-voltage power nearby, and having dedicated outlets inside the same enclosure means I’m not running extension cords across my mini irrigation housing.

What’s next

With the hardware laid out, the next step is finishing the physical wiring and getting the ESPHome configs written for the ATOM S3 Lite and ESP32-S3, then building out the Home Assistant automations — scheduling by weather forecast, flow-based leak detection, and manual zone overrides from the dashboard. I’ll cover that side of the build in a follow-up post once the box is sealed up and the first test run is done.

 

Blog posts related to this:

Privacy Preference Center