Using ESPhome to build a water flow rate meter

You’re correct @Olivier974, the new ENERGY dashboard from 2022.11.1 is a better choice for global water usage. I will probably move that sensor there.

1 Like

I will make a post soon summarizing everything. I will finish setting things up with @NoGrout as my code used Legacy Sensor configuration format and I want it to be more future-proof modern configuration format.

3 Likes

thanks!

cant wait for it :wink:


thank you again

2 Likes

Could you post your config?

1 Like

For anyone who may be trying to integrate the Ultrasonic flow sensor TUF-2000M, I finally got it working with ESPhome yesterday: TUF-2000M Ultrasonic Water Flowmeter MODBUS integration - #6 by newnub

Hi Vincent,

Very good job. Thank you to this share.
So, could you share your connexion schema ?

Best regards.
Merci d’avance :wink:

I will send a complete update very soon. I’m just very busy and don’t have much time to spend on preparing that post. But I will! Thank you @fabal45

6 Likes

Great. Thank you very much to this answer and the work.

Petite question pratico pratique, est-ce que ce type de mécanisme se fait ressentir sur l’usage ? J’entends par là, perte de pression ou encore nuisances sonores ?

I haven’t heard any noise and it does not seem to reduce flow. :slight_smile:
Logically it must slow flow a little, but it is negligible.

2 Likes

Can you share your sensor code for this meter? I am about to order one. Thank you in advance.

Hey friends,
maybe you can help me with this related use case. I want to go one step further and implement a heat monitor, which combines water flow with temperature differences:

Would love to discuss

hello everybody,

I bought the YF-B1 sensor

I’ve been struggling to figure out how to calculate the Liters/min and Liters/hour.
According to the datasheet F=11*Q

What are the two columns with numbers ???
Does it mean 2 liters > 22 pulses, 2.1 liters > 23.1 pulses ???

So far I have the following code for liters/hour but am not quiet sure if it’s right.

  - platform: pulse_counter
    pin:
      number: 4
      mode:
        input: true
        pullup: true
    unit_of_measurement: 'L/hour'
    id: water_usage
    name: "Instant water flow"
    update_interval: 5s
    filters:
      - lambda: return (x / 660);   # 660 = 11 * 60 min  

Is this correct ?

Anyone please ??
I need to finish the project and have the wife happy …

I think that’s what the datasheet is saying.

Hi!!
I have bought for my installation a sensor similar to yours but the exact model is the following YF-B10 and I can’t understand what would be the necessary adjustment to calibrate this sensor, that is, the lambda that I have put, could you help me?

I’ll post the specs here.

(6 * Q-8) Q= L/Min ±5%

What would be the setting for my sensor. Thank you, I hope it arrives so I can configure it.

Maybe you could try the following:

sensor:
  - platform: pulse_counter
    pin:
      number: 4
      mode:
        input: true
        pullup: true
    unit_of_measurement: 'L/min'
    accuracy_decimals: 2
    id: water_usage
    name: "Instant flow rate"
    update_interval: 5s
    filters:
      - lambda: return 6 * (x / 396) - 8;

Let me know if it returns correct values.

2 Likes

Ok, Thank you.

I am waiting for it to arrive, I have the board ready and with the configuration ready to load. And when it arrives I will try to imitate your config, I found it very interesting.

Greetings!

1 Like

I have been looking at the whole post, I am waiting for a sensor with similar characteristics to the one used by you (@NoGrout , @donparlor ) and it is very long and difficult to understand, there is the possibility of sharing the complete code, that is, everything that refers to this automation, sensors, automations, input_numbers, binaries etc… thanks!

Hello valsergi, despite many attempts and the help of Donparlor, I have not managed to get consistent data. I’ve been using the energy_water module since a recent update, unfortunately the data isn’t consistent either. I had many other occupations in the meantime, and I left this function aside. I remain very interested in this subject.

1 Like