Exemple de code ES32D26 d’un client italien

# --- 1. Paramètres généraux de l'ESP32 ---

esphome:

  name: "es32d26"

  friendly_name: Unité centrale Van ES32D26

  min_version: 2025.5.0

  name_add_mac_suffix: false

  

  

esp32:

  board: esp32dev

  framework:

    type: arduino

 

# Activer le journaliseur

logger:

 

# Activer l'accès à l'API Home Assistant

api:

 

# Activer les mises à jour web Over-The-Air

ota:

- platform: esphome

 

# Activer 2 Wi-Fi en cascade

wifi:

  networks:

  - ssid: "SSID 1"

    password: "password"

 

 # Activer le point d'accès Wi-Fi (Hotspot) (portail captif) si la connexion au Wi-Fi échoue

  ap:

    ssid: "SSID ES32D26"

    password: "password"

  # Adresse IP manuelle facultative

  manual_ip:

    static_ip: 192.168.1.10

    gateway: 192.168.1.1

    subnet: 255.255.255.0

captive_portal:

 

# Activer l'interface web

web_server:

 port: 80

 

# --- 2. Composants matériels spécifiques de la carte ES32D26 ---

 

# Activer le registre à décalage SN74HC595 pour le contrôle des 8 relais (donc des sorties) de contrôle des équipements

 

sn74hc595:

  id: output_relays # ID unique pour ce composant (utilisé par les interrupteurs)

  data_pin: GPIO12 # Broche DS (Serial Data Input) sur le composant U9-74HC595 Pin14-SER

  clock_pin: GPIO22 # Broche SH_CP (Shift Register Clock Input) sur le composant U9-74HC595 Pin11-SRCK

  latch_pin: GPIO23 # Broche ST_CP (Storage Register Clock Input / Latch) sur le composant U9-74HC595 Pin12-RCK

  oe_pin: GPIO13 # Output Enable sur le composant U9-74HC595 Pin13-G#

  sr_count: 8

  # num_chips: 1 # Nombre de puces 74HC595 connectées en cascade (généralement 1 pour cette carte)

 

 # Activer le registre à décalage SN74HC165 pour les entrées numériques  

sn74hc165:

  - id: sn74hc165_hub # ID unique pour ce composant

    clock_pin: GPIO2 # CP (Clock Input) sur le composant U11-74HC165 Pin2-CLK

    data_pin: GPIO15 # QH' (Data Output) sur le composant U11-74HC165 Pin9-QH

    load_pin: GPIO0 # PL (Parallel Load Input / Latch) sur le composant U11-74HC165 Pin1-Serial-Shift/Parallel-Load

    # clock_inhibit_pin: GPIOXX

    # num_chips: 1 # Si plusieurs 74HC165 étaient connectés en cascade 74HC165

    sr_count: 8

 

# Activer le bus 1-Wire pour les sondes de température DS18B20

one_wire:

  - platform: gpio

    pin: GPIO4 # Sur le même GPIO4 (passant de l'ESP32 à la carte d'extension ES32D26), je connecte toutes les sondes de température DS18B20

    #update_interval: 30s

 

 

# --- 3. Configuration des entités qui font référence aux composants matériels spécifiés dans la section 2---

# Configuration des 8 relais comme interrupteurs pour contrôler tous les équipements

switch:

  - platform: gpio

    pin:

      sn74hc595: output_relays # Référence à l'ID du composant sn74hc595

      number: 0               # Bit 0 du 74HC595 (correspond à CH1)

      inverted: false         # De nombreux relais sont activés avec une logique inversée (LOW = ON)

    name: "1. Webasto ACS"         # Nom affiché dans Home Assistant

    id: relay_ch1             # ID unique pour cet interrupteur

 

# Définition des entrées numériques des boutons physiques : la présence de tension entre 3V3 et In1 génère un changement d'état 0/1

# Entrées individuelles

binary_sensor:

  - platform: gpio

    name: "Bouton In 1"

    pin:

      sn74hc165: sn74hc165_hub

      # Utiliser le numéro de broche 0

      number: 0

      inverted: true

# Configuration des entrées analogiques

#Voltmètres

sensor:

  #- platform: adc

  #  pin: GPIO14

  #  name: "Voltmètre Vi1"

  #  update_interval: 1s

  #  filters:

  #    - calibrate_linear:

  #        - 0.0 -> 0.0

  #        - 10.0 -> 100.0  # Ajuster en fonction de votre mise

 

  - platform: adc

    pin: GPIO33 #connecté au détecteur de débit

    name: "Compteur de litres 1"

    update_interval: 0.2s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 10.0 -> 100.0  # Ajuster en fonction de votre mise

    unit_of_measurement: "l/min"

    device_class: "volume_flow_rate"

    

  #- platform: adc

  #  pin: GPIO27

  #  name: "Voltmètre Vi3"

  #  update_interval: 1s

  #  filters:

  #    - calibrate_linear:

  #        - 0.0 -> 0.0

  #        - 10.0 -> 100.0  # Ajuster en fonction de votre mise

  

  - platform: adc

    pin: GPIO32

    name: "Voltmètre Vi4"

    update_interval: 1s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 10.0 -> 100.0  # Ajuster en fonction de votre mise

  #Amperométrie

  - platform: adc

    pin: GPIO34

    name: "Ampèremètre Ii1"

    update_interval: 1s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 20.0 -> 100.0  # Ajuster en fonction de votre mise

    unit_of_measurement: A

    

# Définition des sondes de température

  - platform: dallas_temp

    address: 0x9c3c01f095431d28

    name: Température extérieure

    id: sonda_1

    accuracy_decimals: 1

    update_interval: 30s

    filters:

      - median:

          window_size: 5

          send_every: 5

          send_first_at: 1

 

  - platform: dallas_temp

    address: 0x033c01f0958f4b28

    name: Température d'entrée Paraflu PHE

    id: sonda_2

    accuracy_decimals: 1

    update_interval: 30s

    filters:

      - median:

          window_size: 5

          send_every: 5

          send_first_at: 1

Retour au blog

Laisser un commentaire