Documentation menu

System Overview — Hardware Architecture

IrrigEngine runs on the M5Stack STAMP PLC S3A — a compact industrial PLC built around the ESP32-S3. It controls solenoid irrigation valves either through its onboard relays or through remote Wireless RS485 IO Scanner slave boards spread across the field. All components are configured and monitored through the built-in web interface over WiFi.

Browser / Phone

Web UI · MQTT Dashboard

↕ WiFi (HTTP polling · MQTT)

STAMP PLC S3A · Main Controller

ESP32-S3

WiFi · Web Server

RTC

Timekeeping · NTP sync

8× Digital Inputs

5–36 VDC sensors

4× Onboard Relays

5A @250 VAC

RS-485 / Modbus

Up to 32 slave boards

1.14" LCD · Buzzer

Local status display

Direct relay wiring
RS-485 / Wireless

⚡ Onboard Relays (×4)

Each relay: N.O. · COM · N.C.
5A @250 VAC · 5A @28 VDC

RELAY 1RELAY 2RELAY 3RELAY 4

🔌 Wireless RS485 IO Scanners

Up to 32 slave boards · DC 8–25V · TDI/DIO protocol

Slave ID:1Slave ID:2Slave ID:3… ×32

↓ 24 VAC solenoid wiring (2-wire per valve)

Zone 1

Solenoid Valve

Zone 2

Solenoid Valve

Zone 3

Solenoid Valve

…

Up to 16 Zones

Direct relay wire RS-485 / Wireless bus WiFi

Hardware Components

M5Stack STAMP PLC S3A

The brain of the system — a DIN-rail-ready industrial PLC powered by ESP32-S3.

CPU
ESP32-S3, 240 MHz
Inputs
8× digital, 5–36 VDC
Relays
4× (N.O./COM/N.C.) 5A
Comms
WiFi · RS-485 · CAN · Grove
Display
1.14" color LCD
Extras
RTC · LM75 temp · TF-card · Buzzer

Solenoid Irrigation Valves

Standard 24 VAC or 12 VDC latching/non-latching valves that open and close each irrigation zone.

Type
N.O. or N.C. solenoid
Voltage
24 VAC (typical)
Wiring
2-wire to relay COM + N.O.
Config
Set Valve Type in Output tab
Control
One valve per relay channel

Wireless RS485 IO Scanners

Remote relay/input modules connected via RS-485 Modbus, extending control across the field without long relay wire runs.

Protocol
Modbus RTU over RS-485
Slaves
Up to 32 per RS-485 bus
Power
DC 8–25 V
Channels
Multiple relay + DI per board
Config
Set Scanner + Sub ID in Output tab

Wiring Quick Reference

ConnectionFromToNotes
Solenoid valve (direct)RELAY N.O. + COMValve solenoid wiresSet Valve Type = NORMAL_CLOSED in UI
Solenoid valve (scanner)IO Scanner relayValve solenoid wiresSelect Scanner + Sub ID in Output tab
RS-485 busSTAMP PLC PWR-485 (A/B)IO Scanner A/B terminalsDaisy-chain all slaves; 120Ω terminator at far end
Digital input (sensor)STAMP PLC IN 1–8Rain / flow sensor5–36 VDC; configure as Condition in zone settings
Power supply12–24 VDC PSUSTAMP PLC + / −Separate 24 VAC transformer for valve solenoids

Key Features

IrrigEngine is a flexible, web-based irrigation controller that runs on an ESP32 microcontroller. It lets you manage up to 16 irrigation zones, each with independent schedules, outputs, sensors, and conditions — all configurable from any browser on your local WiFi network.

Up to 16 Zones

Independent control of each irrigation circuit

3 Schedule Modes

Time-of-day, Humidity-triggered, or Interval

Modbus / IO Scanner

Connect remote relay boards and sensor modules

Smart Conditions

Boolean & numeric gate logic before running

MQTT Integration

Remote monitoring and command via broker

Backup & Restore

Download and upload full configuration files

Seasonal Factor

Scale run-time per schedule (e.g. 80% in autumn)

Run History

Per-zone log with result and exact duration