Water flow meter - pulse meter included - esphome

I wanted a reliable water meter.
Solution with proximity doesn’t work with grid water meter that has plastic wheels.

So I’ve purchased a pulse flow water meter from Amazon (about 55euro), I’m in Europe and the item reached me from Germany. See pictures. The brand is systeme-sh.
I’ve chosen the 88pulses/L. (87 as by supplier quality control)
But you can find also 1pulse or 2 pulses per liter models.

I’ve used a d1 mini as interface with ESPHome.
Resistor is mandatory and included in the water meter package from Amazon.

Here’s the code I’ve used:

sensor:
  - platform: pulse_meter
    pin: GPIO12
    name: "Instant water consumption"
    unit_of_measurement: "L/min"
    icon: "${ha_icon}"
    timeout: 1s
    accuracy_decimals: 3
    filters:
      - lambda: return (x / 87.0);
    total:
      name: "Total water consumption"
      unit_of_measurement: "m³"
      device_class: water
      state_class: total_increasing
      accuracy_decimals: 3
      icon: "${ha_icon}"
      filters:
        - lambda: return (x / 87000.0);








And if you need a ultra basic box, here is my design:

3 Likes

What sensor did you use? You have a link?

Nice, is this amazon thing accurate vs. the main water meter? I for sure need a second one as my meter is outside of the home and accessible by all.
So costs: 55 e+ 10e for d1 + e?? for the sensor ?

This is what I bought:

https://www.amazon.it/dp/B00PLZ6WOC/ref=cm_sw_r_cp_api_i_58KVVRZ158KR0W6WD24R

1 Like

ah…sensor included…nice
Does it reduce the pressure in any way? I already have not too great pressure in the house so not really looking forward to a shower in drizzle mode :slight_smile:

Yes it’s accurate and tested by the supplier as you can see 87 pen written on it
I do not fully get what you mean with sensor, but everything is on board. So only water flow meter plus d1 are required.

No it doesn’t reduce pressure.
But of course you need to power the d1 and Wi-Fi close to d1.
So I’ve installed a Wi-Fi repeater outside my house just for it.

With senor I meant the pulse element, which is part of the meter. And thanks for the rest of answers, will order the myself !

Right, sensor it’s part of the meter
I suggest you the 88-pulse one.

Exactly what I need!
Did you need to program the D1 element in anyway, or did it work out of the box?

Of course you need to program it.
You need to program it with ESPHome with the code on the first post

Thank you for the quick reply.

I have no experience with ESPHome (as you might have figured already).
I though it was the sensor .yaml to input in the HA config.

So I use the ESPHome interface (?) to inout the code in your post, and then it integrates as the right sensor type in HA?

Sorry for the noob questions :slight_smile:

ESPHome is quite easy to use and it has a frendly interface.
You can install ESPHome by following this guide:

D1 can be programmed connected via USB to a computer or to the home assistant server.
Then any next update can be done via wifi

After programming you’ll find the new water sensors in home assistant
Take your time to test ESPHome

Awesome!

I can’t find the flow meter on German amazon (and my italian is a bit rusty).

I did find the manufacturers website though - does this look to be compatible?
Would this work with any flow meter that has an impuls sensor?

The one you found seems the same just with 97 pulse per liter.
Also wiring seems the same as mine.

Would this work with any flow meter that has an impuls sensor?
It shoud work just changing the division factor on the ESPhome code.
Mine is a 87 pulse per liter that is why you find a 87 division factor in the code.

Thank you so much - will order parts and start playing around!

From Home assistant 2022.11, water consuption can be integrated in the energy panel.
So I’ve updated the ESPHome code in first post to be compatible as water sensor.

Please have a look to below line of the code. It’s a simple conversion from liter to m³

lambda: return (x / 87000.0)

Change the first two digits with your pulses per liter. Mine are 87

What is going on, Why am I getting the following error against device_class

Unknown value 'water', did you mean 'battery', 'power'?.

 - platform: pulse_meter
   pin: 
     number: GPIO5
   name: "esp2_water_usage"
   id: "esp2_water_usage_id"
   unit_of_measurement: 'L/min'
   timeout: 1s
   internal_filter_mode: EDGE
   accuracy_decimals: 3
   filters:
   - lambda: return (x / 10.0); #10 imp\l

   total:
     unit_of_measurement: 'm³'
     name: "esp2_water_total"
     state_class: total_increasing
     device_class: "water"
     accuracy_decimals: 4
     filters:
       - lambda: return (x / 10000.0);

Use
device_class: water

Without “ “

1 Like

can i use this for my gas meter?