This small system based on ESP32 makes it possible to control the water flow of the filtration pump and to trigger an alarm if it is too low. A small OLED screen and a web interface allow you to view the flow rate in real time. The system triggers an alarm on my Bayrol treatment system.

The approach of sunny days is conducive to the reopening of domestic swimming pools.
Mine has a measurement chamber that supports two Ph and ORP (Redox) probes.
The water is brought by a load intake collar downstream of the sand filter and the return is upstream of the filtration pump.

For the measurement to be correct, the water flow must be between 20 l/hour and 50 l/hour.
So I made a small interface based on the ESP32 which allows to count the pulses of an optocoupler placed on the trajectory of the blade of a small turbine.
I am able to count and display on a small OLED the flow rate in l/min circulating in the measuring chamber.

Then I thought it was easy to monitor the flow after each filter cleaning and set off an audible alarm when it was too low.
So I added a menu key, a + key and a - key to store the low speed in an EEPROM.
A hysteresis of 3 l/hour ensures that the alarm is not triggered at the slightest variation in flow.
A relay is activated in the event of an alarm. Its dry contact is connected to an alarm input of my Bayrol treatment system which warns me by a push message and by an email that my flow rate is too low and that the filter will have to be cleaned.
The screen being of the OLED type, whatever key (menu,+,-)  allows it to be turned on for 5 minutes so that it remains off the rest of the time.
A red light indicates that the water flow metering is correct.
The + key deactivates the buzzer in the event of an alarm.

I integrated the electronics in a small transparent Hammond box which is fixed by 2 screws next to the measuring chamber.
As I use an ESP32, I added the following features:
- OTA update to avoid having to disassemble the electronics when reprogramming the CPU.
- Small Web server indicating the real-time measurement of the flow as well as the alarm setpoint in l/min.
- When the flow is too low, the displayed html value flashes red at the same time as the buzzer sounds.
- You can also indicate the value of the minimum flow.

I have been using this very simple device for several months and I am very satisfied with its usefulness!