ES32D26-Beispielcode von einem italienischen Kunden

# --- 1. Allgemeine ESP32-Eigenschaften ---

esphome:

  name: "es32d26"

  friendly_name: ES32D26-Steuergerät

  min_version: 2025.5.0

  name_add_mac_suffix: false

  

  

esp32:

  board: esp32dev

  framework:

    type: arduino

 

# Logger aktivieren

logger:

 

# Home Assistant API aktivieren

api:

 

# Over-the-Air-Web-Updates aktivieren

ota:

- platform: esphome

 

# 2 Wi-Fi-Netzwerke kaskadenartig aktivieren

wifi:

  networks:

  - ssid: "SSID 1"

    password: "password"

 

 # Wi-Fi-Access-Point (Hotspot) mit Captive Portal aktivieren, falls keine Verbindung zum WLAN besteht

  ap:

    ssid: "SSID ES32D26"

    password: "password"

  # Optionale manuelle IP-Adresse

  manual_ip:

    static_ip: 192.168.1.10

    gateway: 192.168.1.1

    subnet: 255.255.255.0

captive_portal:

 

# Web-Oberfläche aktivieren

web_server:

 port: 80

 

# --- 2. Spezifische Hardware-Komponenten des ES32D26-Boards ---

 

# Shift-Register SN74HC595 zur Steuerung der 8 Relais (Ausgänge) für die Verbrauchersteuerung aktivieren

 

sn74hc595:

  id: output_relays # Eindeutige ID für diese Komponente (wird von den Schaltern verwendet)

  data_pin: GPIO12 # DS-Pin (Serial Data Input) auf Komponente U9-74HC595 Pin14-SER

  clock_pin: GPIO22 # SH_CP-Pin (Shift Register Clock Input) auf Komponente U9-74HC595 Pin11-SRCK

  latch_pin: GPIO23 # ST_CP-Pin (Storage Register Clock Input / Latch) auf Komponente U9-74HC595 Pin12-RCK

  oe_pin: GPIO13 # Output Enable auf Komponente U9-74HC595 Pin13-G#

  sr_count: 8

  # num_chips: 1 # Anzahl der kaskadierten 74HC595-Chips (normalerweise 1 für dieses Board)

 

 # Shift-Register SN74HC165 für die digitalen Eingänge aktivieren  

sn74hc165:

  - id: sn74hc165_hub # Eindeutige ID für diese Komponente

    clock_pin: GPIO2 # CP (Clock Input) auf Komponente U11-74HC165 Pin2-CLK

    data_pin: GPIO15 # QH' (Data Output) auf Komponente U11-74HC165 Pin9-QH

    load_pin: GPIO0 # PL (Parallel Load Input / Latch) auf Komponente U11-74HC165 Pin1-Serial-Shift/Parallel-Load

    # clock_inhibit_pin: GPIOXX

    # num_chips: 1 # Falls mehr als   74HC165 kaskadiert angeschlossen sind

    sr_count: 8

 

# 1-Wire-Bus für DS18B20-Temperatursensoren aktivieren

one_wire:

  - platform: gpio

    pin: GPIO4 # Über denselben GPIO4 (Durchschleifen vom ESP32 zum Erweiterungsboard ES32D26) werden alle DS18B20-Temperatursensoren angeschlossen

    #update_interval: 30s

 

 

# --- 3. Konfiguration der Entitäten, die sich auf die in Abschnitt 2 angegebenen Hardware-Komponenten beziehen---

# Konfiguration der 8 Relais als Schalter zur Steuerung aller Verbraucher

switch:

  - platform: gpio

    pin:

      sn74hc595: output_relays # Verweis auf die ID der Komponente sn74hc595

      number: 0               # Bit 0 des 74HC595 (entspricht CH1)

      inverted: false         # Viele Relais werden mit invertierter Logik aktiviert (LOW = ON)

    name: "1. Webasto ACS"         # Anzeigename in Home Assistant

    id: relay_ch1             # Eindeutige ID für diesen Schalter

 

# Definition der physischen Taster-Eingänge: Die Anwesenheit einer Spannung zwischen 3V3 und In1 erzeugt eine Zustandsänderung 0/1

# Einzelne Eingänge

binary_sensor:

  - platform: gpio

    name: "Taster In 1"

    pin:

      sn74hc165: sn74hc165_hub

      # Verwenden Sie Pin-Nummer 0

      number: 0

      inverted: true

# Konfiguration der analogen Eingänge

#Spannungsmesser

sensor:

  #- platform: adc

  #  pin: GPIO14

  #  name: "Spannungsmesser Vi1"

  #  update_interval: 1s

  #  filters:

  #    - calibrate_linear:

  #        - 0.0 -> 0.0

  #        - 10.0 -> 100.0  # Anpassen basierend auf Ihre Skalierung

 

  - platform: adc

    pin: GPIO33 #An den Durchflussmesser angeschlossen

    name: "Durchflussmesser 1"

    update_interval: 0.2s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 10.0 -> 100.0  # Anpassen basierend auf Ihre Skalierung

    unit_of_measurement: "l/min"

    device_class: "volume_flow_rate"

    

  #- platform: adc

  #  pin: GPIO27

  #  name: "Spannungsmesser Vi3"

  #  update_interval: 1s

  #  filters:

  #    - calibrate_linear:

  #        - 0.0 -> 0.0

  #        - 10.0 -> 100.0  # Anpassen basierend auf Ihre Skalierung

  

  - platform: adc

    pin: GPIO32

    name: "Spannungsmesser Vi4"

    update_interval: 1s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 10.0 -> 100.0  # Anpassen basierend auf Ihre Skalierung

  #Amperemeter

  - platform: adc

    pin: GPIO34

    name: "Amperemeter Ii1"

    update_interval: 1s

    filters:

      - calibrate_linear:

          - 0.0 -> 0.0

          - 20.0 -> 100.0  # Anpassen basierend auf Ihre Skalierung

    unit_of_measurement: A

    

# Definition der Temperatursensoren

  - platform: dallas_temp

    address: 0x9c3c01f095431d28

    name: Außentemperatur

    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: Paraflu PHE-Eintrittstemperatur

    id: sonda_2

    accuracy_decimals: 1

    update_interval: 30s

    filters:

      - median:

          window_size: 5

          send_every: 5

          send_first_at: 1

Zurück zum Blog

Hinterlasse einen Kommentar