Autonomous pumping stations with LoRaWAN telemetry
Robust local pump control with level float switches and remote supervision without network coverage or SIM cards.
Runs on: ESP32 PLC 14 / 38AR — Arduino sketches (.ino).
The application
A sanitation operator needed to supervise scattered pumping stations, some more than an hour away and without data coverage. Each station runs autonomously on an ESP32 PLC: a state machine driven by level float switches, alternation between two pumps to even out wear, and automatic failover on pump failure. Telemetry travels over LoRaWAN in 4-byte frames, and the hourly re-join acts as a communications watchdog.
Architecture
- Float switches and contactors → ESP32 PLC digital inputs
- 4-20 mA level probe → analog input (10 bits in the frame)
- State machine with alternation and failover (100 ms FreeRTOS task)
- LoRaWAN OTAA telemetry every 60 s (RN2xx3 module, EU868)
- LoRaWAN gateway → supervision backend
Bill of materials
- ESP32 PLC 14 / 38AR — Industrial Shields controller
- RN2xx3 LoRa module + 868 MHz antenna — telemetry without SIM cards
- Level float switches (3 pcs) — minimum, maximum and overflow
- 4-20 mA level probe — continuous tank level measurement
- Contactors with auxiliary contact + thermal relay — pump control and diagnostics
What is in the pack
dual-pump-control-lorawan-38ar.inofreertos-multitasking-rejoin.inolevel-sensor-4-20ma.inolorawan-telemetry-bitpacking.inopump-state-machine-float-switches.ino- Bill of materials + README
Get the pack by email — free
Fill in the form and we will send the complete pack to your inbox within minutes.