Exemple de code ES32D26 d’un client italien
Partager
# --- 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