Introducing AC-Powered OpenSprinkler v4.0: Powered by ESP32

Exciting news! We’re getting ready to launch the next generation of OpenSprinkler: AC-Powered OpenSprinkler v4.0, the first built on ESP32. From the outside it looks just like v3.4 — same enclosure and same ports — but inside is an entirely new brain, with a faster processor, more memory and flash space, WiFi 6, analog inputs, native USB, and radio hardware that opens the door to Matter, Thread, and Zigbee.

We’re accepting pre-orders now, with shipments expected in late September 2026.


TL;DR — What’s New in OpenSprinkler v4.0?

  • ESP32-C6 replaces ESP8266 – A faster and more capable MCU with substantially more RAM and flash, WiFi 6, offering better compatibility with modern routers and mesh networks.
  • Improved security – Hardware-accelerated encryption and modern security features provide a stronger foundation for secure network connections.
  • Built-in analog sensor inputs – Thanks to plentiful ADC-capable pins, all four built-in sensor ports (SN1–SN4) can be individually configured as either digital or analog input (0–3.3V).
  • Built-in USB-C port – Native USB CDC means no separate USB-serial programmer needed for firmware recovery or debugging.
  • Matter / Thread / Zigbee-ready – ESP32-C6 is equipped with a 802.15.4 radio. Firmware support for these features is planned for future releases.
  • Same accessory compatibility – Fully compatible with existing Zone Expander (v3), the newly debuted Sensor Expander, and the W5500 wired Ethernet module.

Goodbye ESP8266, Hello ESP32

The ESP8266 has served OpenSprinkler remarkably well since v3.0 was released ten years ago. It is inexpensive, reliable, has built-in Wi-Fi, and remains surprisingly capable for such a small microcontroller.

But technology moves on. Espressif has officially listed ESP8266 as Not Recommended for New Designs, and many new IoT products have long since migrated to the ESP32 family.

Moving to ESP32 gives OpenSprinkler considerably more headroom. The ESP32-C6 has a 160 MHz RISC-V processor, 512 KB of SRAM, many more peripherals, ADC channels, native USB, and modern wireless capabilities. As OpenSprinkler firmware has grown over the years, we’ve added more networking features, sensor support, integrations, and increasingly sophisticated web. ESP32-C6 gives us substantially more room to continue developing these features without constantly worrying about resource constraints.


Fun Fact About Version 3.4

When I announced OpenSprinkler v3.4 last year, there was an embarrassing little truth: v3.4 was never supposed to exist! The original plan was to go directly from v3.3 to v4.0, with v4.0 being the first ESP32-based OpenSprinkler.

The problem was deciding which ESP32.

You see, when ESP8266 arrived, it had no variants. The decision was a no-brainer because there was nothing else to choose. ESP32, on the other hand, has close to a dozen variants, so many that they’re organized into whole series: S, C, H, P. Usually, having choices is a good thing. Having too many choices, however, causes confusion and exhaustion — evaluating all of them and working out which was best for OpenSprinkler took me a lot of reading and several rounds of prototyping.

I eventually settled on the C6, because it hits a sweet spot: ample GPIOs, plenty of memory and processing power, WiFi 6, hardware-accelerated encryption, and the 802.15.4 radio. It doesn’t have the raw horsepower of the S series, and it lacks the 5 GHz WiFi of the C5 — but neither matters much for a sprinkler controller, so those were easy trade-offs to accept.

The result of all that deliberation was roughly a year of delay, and v3.4 became the transition release that filled the gap. Classic paralysis by too many choices. But I’ve finally caught up, and OpenSprinkler v4.0 is just around the corner!


Questions You May Have

Q: When will v4.0 be available?
A: We’re accepting pre-orders now, with shipments expected in late September 2026.

Q: What about the OpenSprinkler DC and Latch models?
A: DC v4.0 is in development and expected to be ready by November 2026. There’s no immediate plan for a v4.0 Latch due to its relatively small demand. We will continue evaluating demand and revisit it in the future.

Q: Will v3.4 or v3.3 still be available?
A: v3.4 is a transition version and will no longer be offered once it sells out.
v3.3 will continue to be available as a replacement board (without enclosure) for repairs and DIY projects.

Q: Will v4.0 use different firmware?
A: OpenSprinkler will continue using a unified firmware codebase, so the source is the same. However, because v4.0 has a different microcontroller, the compiled binary is different. To avoid confusion, automatic firmware download and flashing will be provided as a software feature.

Q: Will you keep releasing firmware updates for v3?
A: Yes. The ESP8266 is older but still very capable, with plenty of RAM and flash headroom, and firmware development will continue for all v3 versions (v3.0–v3.4). Advanced features that depend on v4 hardware — built-in analog sensor inputs, Matter/Thread/Zigbee — will be v4-only.

Q: Can I reuse my existing Expanders and the W5500 wired Ethernet module?
A: Yes. v4.0 is fully compatible with Zone Expander v3, the recently released Sensor Expander, and it uses the same W5500 wired Ethernet module as v3.4/v3.3.

Q: Does v4.0 support 5 GHz Wi-Fi?
A: No — the ESP32-C6 is 2.4GHz only, though it does support WiFi 6 (802.11ax) and WPA3 on that band. This is a good fit for an IoT device like OpenSprinkler, where 2.4 GHz generally provides better range and wall penetration.

Q: Can I power v4.0 using the onboard USB-C port?
A: The USB-C port is used for firmware recovery (in the case of a corrupted firmware) or debugging. While it can provide power to the logic board, you still need a 24VAC transformer to operate solenoid valves.

Q: Given it has built-in analog sensor inputs, do I still need the Sensor Expander?
A: It depends on how many sensors you need. OpenSprinkler v4.0 has four built-in sensor ports, and each can be configured as either a digital or analog input. This means existing digital sensors, such as rain or flow sensors, will reduce the number of ports available for analog input. The Sensor Expander provides 16 additional analog input channels, independent of the four built-in sensor ports. So if you need more analog inputs, or want to keep the built-in ports available for digital sensors, the Sensor Expander is still the way to go.

Q: Do I need to upgrade to v4.0?
A: If your existing OpenSprinkler is working well, there is no need to upgrade just for normal sprinkler operation. v4.0 mainly provides a newer processor with more resources, analog sensor inputs, native USB, and support for future features that the v3 hardware cannot provide.

Q: I just bought an OpenSprinkler AC v3.4. Can I exchange it for v4.0?
A: Yes, as long as your purchase was made within 30 days, which qualifies under our no-questions-asked return and refund policy (see our terms and conditions).


Announcing OpenSprinkler Firmware 2.2.1(5) and the Official Sensor Expander Release

Some projects take a weekend. Some take a summer. And some take… a little over five years. Today I’m thrilled to make two announcements at once: OpenSprinkler Firmware 2.2.1(5) is officially available, and the Sensor Expander — after a month of pre-orders — is officially shipping.

As detailed in our previous New Product Alert post, the Sensor Expander is an add-on for OpenSprinkler v3 that provides 16 channels of analog sensor input. You can plug in a variety of external sensors, such as soil-moisture, temperature, light, water-level — you name it. This allows OpenSprinkler to read, display, and log these sensors, and use them to automatically adjust programmed water times based on real-world conditions. This opens the door to more advanced irrigation applications in which watering decisions are guided by precise environmental measurements rather than simple on-or-off sensor signals.


The Backstory

What makes this release especially meaningful to me is the long journey it took to get here.

The idea for an analog sensor board based on ADS1115 goes back more than five years. You see, one long-standing limitation of OpenSprinkler has been its inability to read analog sensors. While its built-in digital sensor ports can detect binary signals (e.g. HIGH or LOW, open or closed), many environmental sensors produce a continuously varying voltage—those analog signals are essential for applications that need to measure how much moisture, light, temperature, or water is present, rather than simply whether a threshold has been crossed.

In late 2020, an idea occurred to me: OpenSprinkler’s expander port uses I²C, and many analog-to-digital converter (ADC) chips also communicate over I²C. One of the most popular choices in the maker community is the ADS1115. An expander built around that chip could give OpenSprinkler analog-input capability while still allowing Zone Expanders to share the same port.

In February 2021, I built an early prototype and demonstrated that the concept was feasible. That was in the early days of the pandemic, and I had to deal with the sudden onset of several personal issues, so unfortunately the progress on the project stalled.

Then something wonderful happened: our German distributor, Stefan Schmaltz, took my prototype and continued developing the idea. He designed his own version, implemented firmware support for it, and has sold it for the past several years as the Analog Sensor Board, or ASB. Stefan’s design repurposes the existing Zone Expander enclosure. That enclosure works nicely, but it has room for only 16 terminal ports. Including the required +5V, 3.3V, and ground terminals, the board is limited to 8 ADC input channels. Kudos to Stefan for keeping the project alive, turning the original concept into a real product, and demonstrating that there is genuine demand for analog sensor support.


From Prototype to Sensor Expander

Meanwhile, I continued sketching ideas, albeit slowly, for a more refined version. Instead of repurposing the existing Zone Expander enclosure, I envisioned a new board with its own dedicated 3D printed enclosure, and enough space for 16 ADC channels—the maximum supported by the available I²C address configurations of the ADS1115.

At the same time, I had been thinking about another recurring customer request: support for a 2-wire irrigation system in which multiple zones share the same pair of wires and are controlled through encoded signals. Such a system can greatly reduce the amount of copper wiring required for installations with many zones. With that future application in mind, I added a 1-Wire master chip to the board. It is intended to support future experimentation with 2-wire-style encoder and decoder systems, while also making it possible to interface with standard 1-Wire sensors such as the popular DS18B20 temperature sensor.

After several rounds of revisions, the hardware finally came together last year. Along the way it also went through several name changes. At first, I called it the Analog and 1-Wire Extension Board. I also considered the abbreviation OWA, for “1-Wire and Analog.” Neither name was particularly attractive or easy to understand.

Eventually—with a little help from generative AI—the obvious name emerged: Sensor Expander, a natural counterpart to the existing Zone Expander.


The Software Challenge

Finalizing the hardware was only half the story. Supporting an entirely new class of configurable, loggable, and watering-adjusting sensors required substantial changes to both the firmware and the user interface. It turned out to be a significant usability-design challenge: users needed a way to configure different sensor types, understand their readings, view historical logs, and define how each sensor should affect watering.

The software work began during the summer of last year, kick-started by my student, Andrew Friedman. Our original plan was to integrate Stefan’s OpenSprinkler ASB firmware and interface directly into the official OpenSprinkler repositories. After further consideration, we decided instead to draw on the concepts and lessons from his implementation while rewriting the firmware and user interface from scratch, to fit more naturally into the official OpenSprinkler framework.

As the summer ended, progress stalled once again while we turned our attention to several more urgent priorities: launching OpenSprinkler v3.4, in both AC and DC versions, releasing OpenGarage 2.3+, and navigating continuing supply-chain difficulties.

Then, earlier this year, we got our momentum going again—helped along in no small part by the recent leaps in generative AI and agentic coding tools, which turned many slow, repetitive firmware, interface, testing, and documentation tasks into something we could complete much more efficiently. And finish we did! During the past month, all of the final pieces came together: the Sensor Expander circuit, its dedicated 3D-printed enclosure and acrylic front cover, Firmware 2.2.1(5), the updated app/user interface, and a completely refreshed set of manuals.

From the first idea to the finished product, the journey took more than five years. It is both a genuine relief and a real thrill to finally see it cross the finish line.


What Else is New in Firmware 2.2.1(5)?

While support for the Sensor Expander is its primary addition, Firmware 2.2.1(5) also includes several other important features, performance improvements, and bug fixes.

  • Support for Up to Four Master Zones, with independent on/off timing and per-zone control over Master selection. One of OpenSprinkler’s distinguishing features has always been that Master zones are defined in software. Most sprinkler controllers provide a single dedicated Master Valve (MV) terminal. OpenSprinkler instead allows any zone to be designated as a Master. The benefit of that design is especially clear with this update: you are not restricted to one fixed Master terminal, and different zones can activate different Master valves or pumps as needed.
  • Two Additional Built-In Sensor Ports. OpenSprinkler v3.4 added the SN3 and SN4 ports, bringing the total number of built-in sensor ports to four. Firmware 2.2.1(5) enables these two additional ports, each of which can be configured independently as a rain sensor, soil-moisture sensor, or program switch.
  • Longer Watering Duration. While programmed water durations are still limited to 18 hours, after scaling by weather and sensor adjustments, the resulting runtime is allowed to exceed this limit, up to the firmware’s 7-day bound.
  • Updated Documentation: The documentation has been substantially refreshed and expanded. New and updated resources include the firmware User Manual, API doc, and dedicated user manuals for the Sensor Expander and Zone Expander respectively.
  • Performance, Reliability, and Bug Fixes. This firmware includes numerous performance and reliability improvements (e.g. more efficient memory allocation, reduced fragmentation, improved OTF library and streaming server output) as well as bug fixes (e.g. out-of-bound memory access involving parallel groups, repeated Run-Once program attribution, a potential station runtime overflow when adjustment exceeds 100%).

Firmware Update: Because this firmware is a build-number update, upgrading from any 2.2.1 (e.g. 2.2.1(4)) to 2.2.1(5) will preserve your existing settings, programs, and logs. No factory reset is needed. Regardless, we always recommend exporting a copy of your current configurations before updating, just in case a factory reset becomes necessary.

End of Support for OpenSprinkler v2.3: One important change is that Firmware 2.2.1(5) no longer supports OpenSprinkler v2.3 (the legacy AVR-based hardware model that was discontinued 10 years ago). Going forward, official firmware releases will continue to support OpenSprinkler v3 (v3.0-v3.4) as well as OSPI/Linux. For OpenSprinkler v2.3 users, Firmware 2.2.1(4) is the final supported firmware.


Where to Get Everything?

Finally, a big thank-you to Stefan Schmaltz and Andrew Friedman, whose work helped pioneer and advance this project.

Comments and feedback are always welcome.