Skip to Content

Industrial IoT Case Study: Water Utility

Water Consumption Monitoring with ESP32 PLC | FEDA Case Study

How SIRA and FEDA deployed a pulse-counting water monitoring system across multiple buildings. Zero data loss, no licences, full code ownership.

See how it was built

ESP32 PLC

Hardware deployed

Modbus TCP

Communication protocol

Circutor PowerStudio

SCADA system

Zero data loss

μSD backup on power cut

FEDA | Andorra's National Energy Utility

FEDA is not a startup running a pilot. It is Andorra's national energy company, responsible for critical infrastructure across an entire country. When FEDA decided to modernise its water consumption monitoring, it was not experimenting. It needed a system that would work, every day, without exceptions.

The project was executed by SIRA, an Andorran systems integrator specialised in industrial automation and AI, the kind of partner who knows that "it mostly works" is not an acceptable outcome.

FEDA headquarters in Andorra

How do you monitor water consumption across multiple buildings without losing data?

Monitoring water consumption across multiple buildings sounds straightforward, but accounting for every litre is another matter. FEDA needed to answer three questions, in real time, from a single interface: How much water is each building consuming right now? Is any building above threshold? And if the network drops or power fails, will the data still be there when it comes back?

That third question is where most systems fail. A missed reading means a gap in the audit trail. A gap means you cannot prove your efficiency figures. For a national energy company, that is not acceptable.

Off-the-shelf proprietary solutions introduced licence dependencies and limited the integrator's ability to adapt the system over time. SIRA needed hardware it could own completely: code, configuration, and all.

ESP32 PLC + Modbus TCP: a zero-loss water monitoring architecture for multi-building facilities

SIRA selected the ESP32 PLC from Industrial Shields. Each building received water meters (Salvador Escoda) fitted with Bmeters NFC-parameterised pulse emitters, one pulse per litre consumed. The PLC reads every pulse, accumulates the total, and transmits via Modbus TCP over Ethernet to Circutor PowerStudio SCADA.

The critical detail: pulses are packed before transmission. If the network drops, no reading is lost. The PLC holds the data until the connection is restored. And if power fails, the onboard μSD memory card preserves every counter value across the outage.

The entire system is programmed in C++ using the Arduino IDE. No licences. No vendor dependency. Full code ownership by SIRA.

Meters and pulse emitters used in this project:

Counters by Salvador Escoda. Pulse emitters by Bmeters (IWM-PL3, N-MOS NPN outputs, max. 30Vdc / 100mA).

Salvador Escoda meters and Bmeters pulse emitters

Wiring diagram. Pulse generator to ESP32 PLC

Connection of the pulse generator to the PLC.

The outputs of the pulse emitter IWM-PL3 are N-MOS (NPN) type, max. 30Vdc, 100mA.

Wiring diagram: pulse generator to ESP32 PLC for water consumption monitoring

SCADA system. Visualisation and alarm management

The SCADA screen (Circutor PowerStudio) displays per-meter readings, m³/h averages, and monthly totals. A data export to Excel is available for any meter and time range. The alarm system triggers notifications when consumption exceeds pre-defined thresholds, enabling rapid identification of leaks before they become costly.

SCADA screen showing water consumption monitoring data for FEDA buildings

The information collected by the SCADA system enables trend analysis of water consumption over time, identifying patterns, optimising operations, and reducing costs through improved efficiency.

Water consumption trend analysis graph via SCADA

What FEDA achieved: real-time water monitoring across all its buildings

Real-time visibility

All FEDA buildings monitored from a single Circutor PowerStudio dashboard. One pulse per litre, transmitted via Modbus TCP every cycle. No manual readings, no delays.

Automatic leak detection

Configurable thresholds trigger immediate alarms, identifying abnormal consumption patterns before they become costly leaks or audit gaps.

Zero data loss

Pulses are buffered before transmission. Network drops: PLC holds data until connection restores. Power cut: onboard μSD card preserves every counter value across the outage.

Frequently asked questions about ESP32 PLC water consumption monitoring

Can the ESP32 PLC work with Modbus TCP for SCADA integration?

Yes. The ESP32 PLC from Industrial Shields supports Modbus TCP over Ethernet natively. In the FEDA project, it transmits accumulated pulse data to Circutor PowerStudio SCADA at configurable intervals, with no additional gateway required.

What happens if the network connection drops during monitoring?

The ESP32 PLC buffers pulse data locally before transmission. If the connection is interrupted, no readings are lost. The PLC holds the accumulated count and resumes transmission automatically when the connection is restored.

Does this system require proprietary software licences?

No. The entire system is programmed in C++ using the Arduino IDE, fully open source. No annual licence fees, no vendor lock-in. The integrator owns all code and configuration, with no dependency on Industrial Shields for ongoing operation.

What type of water meters are compatible with this system?

Any water meter fitted with a pulse emitter output (NPN/N-MOS type, max. 30Vdc / 100mA). In the FEDA project, Salvador Escoda meters with Bmeters IWM-PL3 NFC-parameterised pulse emitters were used, one pulse per litre consumed.

Why SIRA chose Industrial Shields over proprietary alternatives

SIRA evaluated multiple PLC options for the FEDA project. Industrial Shields was selected for four reasons that matter in long-term industrial deployments:

No licence fees

Programmed with Arduino IDE, fully open source toolchain. No annual renewals, no vendor lock-in. Full code ownership.

Industrial-grade hardware

DIN-rail mount, CE-certified, designed for 24/7 continuous operation in real industrial environments.

Modular and scalable

Start with the base I/Os. Expand via I2C modules as the project grows, without replacing the base unit.

Dedicated support

Technical support from pre-sale specification through deployment and long-term maintenance.

Working on a similar project?

Tell us about your application and we will help you find the right solution. No commitment required.

(*) I have read and accept the privacy policy