I am from a software engineering background, so I don't know too much about electric engineering apart from basic stuff like Ohm's Law (but willing to learn if needed). I'm building a garden irrigation system for my home. The valves are latching solenoids operating at 9 V (25ms impulse, 350-500mA according to manufacturer). I've built myself a custom distribution unit with 6 solenoids. This unit is underground inside a "valve shaft" like this:

valve shaft

The valves are operated by an ESP32 that communicates over WiFi with some in-house server. I can then use an app or web interface to control the ESP32.


My current issue is powering this ESP32. Although unpractical, I want to be able to open and close the valves any time, for show's sake. Furthermore I wanted to make use of the deep sleep capabilities of the ESP32 so it could run on a battery and wouldn't need a dedicated power supply. However, according the data from this blog, I found that constant accessibility and power saving won't both be possible.

data from blog

Possible Solutions

I thought about packing a bigger battery in there, but i think this still won't be enough to achieve my goal of constant availability, without having to change out the batteries every week or so.

I thought about reducing power consumption by using a less power consuming system than WiFi, maybe something like LoRaWan.

Another solution would be to harness the energy in the water pressure and flow, by including a small hydroeletric generator in the distribution unit, which would then charge a battery every time the valves are opened.

water generator with ~1 inch tubing

However the garden is only watered for around 1-2 hours per day, so the generator would have to be able to harness as much energy in 1-2 hours as the esp32 consumes in 24 hours. I was not able to find a generator that fitted those specs.


Is there any way to achieve my goals of not needing a dedicated power line while also being able to instantly open and close the valves? Is there a way to remotely wake the ESP32 from it's deep sleep, without it needing to wake up, connect to the WiFi and check every 10 seconds?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.