Using ESPhome to build a water flow rate meter

Click the link from Sender and it’s in the table below the item listing

I didn’t read all this tread. However one thing you have to have in mind.: This type of meter does need a minimal flow to start to measure. It means we have to have some fluid energy to make it running. If you look at the manufacture documentation, they states for a specific model: Flow rate: 5~200L/min. It means any flow below 5 L/min the meter will not “see”. The formule they gave you is valid only on 5-200L/min.

Question: does this solution also measure water pressure?
I’m asking because I see on the Amazon product listing below for the plastic Uxcell version of the YF-S201C the 5th bullet point says ‘Maximum water pressure: 1.75MPa…’

amazon listing

No it does not measure pressure

Great, thanks for quick reply @sender!

Hi, DeeBeeKay! What is the state of your project? I read the thread a month ago, but now it is a bit hard to keep track on the changes. Would you mind pointing me to the solution? If you found it, of course. So please let me know.

There is another project on github, if you are curious. I discuss it here: https://community.home-assistant.io/t/using-esphome-to-build-a-water-flow-rate-meter-j-pipe-github-version/239818

1 Like

hello, is it possible to display the meter in m³?
(I use TCRT5000)
Thanks

Hi @KameDomotics, if you can think of a formula that converts L/hr into cubic meters per hour, you can edit the lambda to display that data instead. Sadly I can’t, but I am not a clever man.

Litres, divide by 1000 = cubic metres.

The beauty of metric units.

Would anyone on this thread be willing to test our home water leak detection algorithm with your setup if you have this installed in your home?

Hey
Bought the yf-b10 water flow sensor.
Now I get no reading of any flow in homeassistant.
I assume that it somehow because of the flow pulse formula.

This is how I define the sensor in esphome:

sensor:

  • platform: template
    id: lifetime_counter
  • platform: pulse_counter
    id: water_pulse
    pin: D2
    name: “Pulse Counter”
    update_interval: 1s
    filters:
    • lambda: return (6.5163 * x) - 2.7;
      unit_of_measurement: “L/hr”

What am I doing wrong???

Hi! I have triedo to fix my meter without luck for 2 weeks, new to esphome also.

I have a zenner pulse sensor attached.
It sends 1pulse/10 litre: is this correct?

sensor:
  - platform: pulse_counter
    name: "Water Meter"
    id: flow_southgate
    pin: D3
    update_interval : 20s
    filters:
      - lambda: return (x / 0.1) * 60.0;
    unit_of_measurement: "L/hr"

Thanks in advance.

Hi @nedde, I find it highly unlikely that your sensor pulses once per 10 litres, that’s incredibly slow for the sheer volume of water flowing through. It’s more likely to be 10 pulses per litre, if not more. You haven’t linked us to the spec sheet of your sensor, so there’s no way I could comment further.

Thanks for the reply.

If you look @ the file: https://hydroflowaus.com.au/uploads/431eaee6020765bfc15277dfa597e5ad.pdf

Page 3 - I have the "WMZMNK-N Reed Switch/Pulse for MNK-N 111512

I have that installed on my meter and it says also on the meter 10l/imp , so I guess it must be correct?

image

Hi.

I read the pdf. Does it not say 1 pulse/100 liter.

Standard 1 pulse per 100 litres

Could it be it only give one puls for each full turn. They seem to graded with 10 numbers per turn. 10 x 10 = 100 liters per turn.
If it 100 liters / pulse you have to wait a long time for a pulse.
Maybe use a integration sensor that gives the sum over a time.


I have never used one but it seems to be summing up pulses over the day/hour/minute.

/Mattias

They have both 10 and 100 per pulse, dependiepeng on where they mount the magnet, mine is set to 10l/pulse. Then it must be something I am doing wrong with the code?

Have been able to get any pulses from the meter.
The calculation seems ok. With the water pressure I have at my place I can get around 8-16 l/min.

So if you turn on your water fully open and let it flow for 5 minutes than you should get at least some measurement.
How have you connected the sensor between which pins and what board do you have. It usually not recommended to use the gpio number instead of the D3. There was issues with the translation for D? to gpio number before for some boards.

/Mattias

1 Like

I am using nodemcu board, shall i switch to another pin?

Hi

The D3 is the GPIO 0. I think that is not recommended for usage when I googled nodemcu.
I usually use the D2. Thats GPIO4.
So connect the sensor to D2 instead and use the gpio number in the config instead.

    pin: 4

Maybe it goes better.
/Mattias

Best reference to pins I have found: https://randomnerdtutorials.com/esp8266-pinout-reference-gpios/