Flow debimeter avec ESP32

Niquel cela fonctionne. Merci à toi.
En revanche j’ai min debit instantané d’eau qui n’arrete pas de m’afficher des valeurs différentest tte les secondes alors que l’eau est coupée.

image
En 2 Minutes, alors que la vanne d’arret est coupée.

normalement si tu n’a pas de tirage d’eau au bout d’une minute tu devrais avoir 0 l/mm

Pour mon compteur, Je me suis inspirée de ce sujet : Une solution complète de récupération des données Eau, Gaz et Electricite

Mais tu as aussi cet article de Argonaute :

voici mon code, Je me sert de pulse-meter pour avoir l’information de débit l/mm, mais pour le comptage je me sert du binary_sensor, car j’utilise un compteur à impulsion (1L par impulsion) et pas un compteur à effet hall.

J’utilise ce code avec un shelly uni, il faudra adapté les GPIO pour ton Esp

mon code

esphome:
  name: shelly-uni 


esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: !secret api_key

ota:
  password: !secret ota_password 

# Enable Web server (optional).
web_server:
  port: 80
  auth:
    username: !secret auth_login
    password: !secret auth_password


# Wifi Config
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  
  # ...
  manual_ip:
    # Set this to the IP of the ESP
    static_ip: !secret ip_su1
    # Set this to the IP address of the router. Often ends with .1
    gateway: !secret ip_gateway
    # The subnet of the network. 255.255.255.0 works for most home networks.
    subnet: 255.255.255.0  

# Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid:  "Shelly-Uni Fallback Hotspot" #!secret ap_ssid_su1  
    password: !secret ap_password_su1 

captive_portal:


##########################
# Device Specific Config
##########################

# Name device mask
substitutions:

  friendly_name1: "Sensor ECS"
  friendly_name2: "Compteur ECS"

globals:
    
  - id: ecs_pulse_counter
    type: float #Le counter n'est pas integer car il sert aussi pour la division m3
    initial_value: "0" 

#################
# Binary Sensor #
#################

# Binary sensor utilisé pour comptage des impulsions et Totalisateur
binary_sensor:

  - platform: gpio
    pin:
      number: GPIO13
      allow_other_uses: true
      mode: INPUT_PULLUP
      inverted: True
    filters:
      - delayed_on: 50ms
      - delayed_off: 50ms 
    name: "${friendly_name1} counter state"
    id: ecs_counter_state

    on_press:
      then: 
        - lambda: |-
            // increment le compteur ECS puis publish mqtt
            id(ecs_pulse_counter) += 1;
            id(ecs_counter_pulse).publish_state(id(ecs_pulse_counter));
            id(ecs_counter_l).publish_state(id(ecs_pulse_counter)/1);
            id(ecs_counter_m3).publish_state(id(ecs_pulse_counter)/1000);

   
####################################
# Sensors with general information.
####################################
sensor:

# Débit d'eau instantané l/mm (0 après 10s)
# Ne pas utiliser pour comptage (comptage erroné)
  - platform: pulse_meter
    name: "${friendly_name1} pulse"
    id: pulse_id_ecs
    pin:
      number: GPIO13
      allow_other_uses: true
      inverted: true
      mode:
        input: true
        pullup: true
    internal_filter: 500ms    
    icon: mdi:water
    timeout: 300s
    unit_of_measurement: 'L/mn'
    filters:
      - multiply: 1

# Comptage impulsion  
  - platform: template
    name: "${friendly_name2} counter pulse"
    id: ecs_counter_pulse
    unit_of_measurement: ''
    accuracy_decimals: 0  # Précision en entiers
    icon: "mdi:counter"
    #update_interval: 5s  # Mise à jour sur changement de valeur

 
# Comptage litres 
  - platform: template
    name: "${friendly_name2} counter l"
    id: ecs_counter_l
    unit_of_measurement: 'L'
    accuracy_decimals: 0  # Précision en entiers
    state_class: total_increasing    
    device_class: water

# Comptage m³ (utilisé pour le compteur services HA)
  - platform: template
    name: "${friendly_name2} counter m3"
    id: ecs_counter_m3
    unit_of_measurement: 'm³'
    accuracy_decimals: 3  # Précision en entiers
    state_class: total_increasing
    device_class: water    
      
############Pour Flash shelly uni -- Tasmota --- Esphome-- mode OTA
# https://ghost.canaletto.fr/flasher-un-shelly-1-avec-esphome/
# http://shellyip/ota?url=http://dl.dasker.eu/firmware/mg2tasmota-ShellyUni.zip   

Merci à toi.
Mon problème de débit « foufou » venait du pin.
Changement de port et du pin dans la config et tout est bon.
Reste à calibrer plus précisément mais cela à l’air d’être déja assez précis.