Integrierung der AUX Klimaanlage in Home Assistant

Nach einer ausgedehnten Suche habe ich endlich eine Methode gefunden, meine AUX Klimaanlage in Home Assistant zu integrieren, und ich teile sie gerne mit euch. Seit etwa zwei Jahren nutze ich eine AUX Split-Klimaanlage in meinem Büro und bin damit sehr zufrieden. Ein Ärgernis war jedoch, dass die App ACFreedom sich nicht mit HA verbinden ließ und die Backdoors zum Abrufen der Daten des Broadlinks für mich zu komplex waren, um sie umzusetzen.

Glücklicherweise bin ich auf das folgende Repository gestoßen:

https://github.com/GrKoR/esphome_aux_ac_component

Für die Umsetzung dieses Repositories habe ich es mir jedoch etwas leichter gemacht und nichts gelötet. Die von mir verwendete Hardware umfasst:

  • ESP32 NodeMCU Development Board
  • LM7805 Spannungsregler
  • Jumperkabel
  • Wago Klemme
  • Plastikbox

Zuerst habe ich mir das YAML zusammengestellt und an meine Bedürfnisse angepasst. Es sieht nun wie folgt aus:

# Konfiguration für ESPHome mit spezifischen Einstellungen für das Gerät mit der Bezeichnung "AUX Klimaanlage".
substitutions:
  name: "TBD"
  friendly_name: AUX Klimaanlage

# Hauptkonfiguration für ESPHome, verwendet die oben definierten Substitutionen.
esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: '1.0'

# Konfiguration für den ESP32, der auf dem Nodemcu-32s-Board läuft und das Arduino-Framework verwendet.
esp32:
  board: nodemcu-32s
  framework:
    type: arduino

# Aktiviert das Logging auf DEBUG-Ebene und verwendet die Hardware-UART1.
logger:
    level: DEBUG
    hardware_uart: UART1

# WiFi-Konfiguration, verwendet geheime SSID und Passwort.
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Aktiviert den Fallback-Hotspot (Captive Portal), falls die WiFi-Verbindung fehlschlägt.
  ap:
    ssid: "TBD"
    password: "TBD"

# Ermöglicht Over-The-Air-Updates für die Firmware.
ota:

# Ermöglicht die Bereitstellung von WiFi über die serielle Schnittstelle.
improv_serial:

# API-Konfiguration mit Verschlüsselungsschlüssel.
api:
  encryption:
    key: "TBD"

# Captive Portal ermöglicht die Bereitstellung von WiFi-Anmeldeinformationen über den Hotspot.
captive_portal:

# Importiert ein Dashboard-Paket von GitHub für die Konfiguration.
dashboard_import:
  package_import_url: github://esphome/example-configs/esphome-web/esp32.yaml@main
  import_full_config: true

# Ermöglicht die Bereitstellung von WiFi-Anmeldeinformationen über Bluetooth LE (nur ESP32).
esp32_improv:
  authorizer: none

# Konfiguration des Web-Servers für die Bereitstellung von "nächster URL" für die serielle Bereitstellung.
web_server:

# Externe Komponenten
external_components:
  - source:
      type: git
      url: https://github.com/GrKoR/esphome_aux_ac_component

# Board Konfiguration
uart:
  id: ac_uart_bus
  # ATTENTION! For TX and RX use GPIO4 (D2) and GPIO5 (D1) for NodeMCU-like boards!
  # See docs for details: https://github.com/GrKoR/esphome_aux_ac_component/blob/master/docs/HARDWARE-EN.md
  rx_pin: GPIO16
  tx_pin: GPIO17
  baud_rate: 4800
  data_bits: 8
  parity: EVEN
  stop_bits: 1

# Klimaanlagen Konfiguration
climate:
  - platform: aux_ac
    name: ${friendly_name}
    id: aux_id
    uart_id: ac_uart_bus
    period: 7s
    show_action: true
    display_inverted: false
    timeout: 150
    optimistic: true
    indoor_temperature:  # AC Indoor Temperature 
      name: Innentemperatur
      id: ac_indoor_temp
      accuracy_decimals: 1
      internal: false
    outdoor_temperature:  # AC Outdoor Temperature 
      name: Außentemperatur
      id: ac_outdoor_temp
      internal: false
    outbound_temperature:  # AC Coolant Outbound Temperature 
      name: Kühlmittel-Ausgangstemperatur
      id: ac_outbound_temp
      internal: false
    inbound_temperature:  # AC Coolant Inbound Temperature 
      name: Kühlmittel-Eingangstemperatur
      id: ac_inbound_temp
      internal: false
    compressor_temperature:  # AC Compressor Temperature 
      name: Kompressor Temperatur
      id: ac_strange_temp
      internal: false
    display_state:  # AC Display State 
      name: Anzeigestatus
      id: ac_display_state
      internal: false
    defrost_state:  # AC Defrost State 
      name: Abtauzustand
      id: ac_defrost_state
      internal: false
    inverter_power:  # AC Inverter Power 
      name: Wechselrichterleistung
      id: ac_inverter_power
      internal: false
    inverter_power_limit_value:  # AC Inverter Power Limit Value 
      name: Grenzwert Wechselrichterleistung
      id: ac_inverter_power_limit_value
      internal: false
    inverter_power_limit_state:  # AC Inverter Power Limit State 
      name: Wechselrichterleistung Grenzzustand
      id: ac_inverter_power_limit_state
      internal: false
    preset_reporter:  # AC Preset Reporter 
      name: Voreinstellung Reporter
      id: ac_preset_reporter
      internal: false
    vlouver_state:  # AC Vertical Louvers State 
      name: Vertikale Lamellen Zustand
      id: ac_vlouver_state
      internal: false
    visual:
      min_temperature: 16
      max_temperature: 32
      temperature_step: 1
    supported_modes:
      - HEAT_COOL
      - COOL
      - HEAT
      - DRY
      - FAN_ONLY
    custom_fan_modes:
      - MUTE
      - TURBO
    supported_presets:
      - SLEEP
    custom_presets:
      - CLEAN
      - HEALTH
      - ANTIFUNGUS
    supported_swing_modes:
      - VERTICAL
      - HORIZONTAL
      - BOTH

Nachdem ich dieses YAML mit ESPHome auf den ESP32 geladen hatte, habe ich es zunächst in Home Assistant integriert. Alle Entitäten waren zwar sichtbar, aber natürlich nicht erreichbar.

Daraufhin habe ich verschiedene Jumperkabel genommen (Rot/Blau/Schwarz/Gelb/Grün) und diese gemäß des Repositories von GrKoR angeschlossen:

  • Grün - NodeMCU 5V Pin ➜ LM7805 PIN3 (Ausgang)
  • Schwarz (1) - NodeMCU GND Pin ➜ Wago Klemme
  • Blau - NodeMCU GPIO16 (RX) ➜ AC TX
  • Rot - NodeMCU GPIO017 (TX) ➜ AC RX
  • Schwarz (2) - LM7805 PIN2 (GND) ➜ Wago Klemme
  • Gelb - LM7805 PIN1 (Eingang) ➜ AC Vcc
  • Schwarz (3) - Wago Klemme ➜ AC GND

Nun habe ich alles in HA integriert und konnte es meiner Heizungssteuerung hinzufügen. Als nächstes kommen noch Automationen bei PV-Überschuss, damit die Klimaanlage etwas früher anspringen kann.

Ich hoffe, das Projekt gefällt dem ein oder anderen und kann nun seine Klimaanlage auch in HA integrieren. Über einen regen Austausch hier im Forum würde ich mich sehr freuen, Verbesserungen sind gerne willkommen.

MfG Joscha

1 „Gefällt mir“

Hallo Joscha,
vielen Dank für Deine Arbeit. Ich suche gerade ein Multisplit Klimagerät, welches in HA integrirt werden kann. Dank Deiner Info werde ich mir auch die AUX Geräte anschauen.
Bist Du zufrieden mit der Anlage und wieviele Innengeräte sind bei Dir angeschlossen. Ich vermute aufgrund der Yaml, dass es nur ein Gerät ist. Weißt du ob man auch zwei Inneneinheiten steuern kann?

Viele Grüße
Oliver

Hallo @oesser ,

ich benutze das Gerät jetzt schon seit ungefähr 2 Jahren, während mein Kollege es schon fast 6 Monate länger hat. Insgesamt bin ich sehr zufrieden damit. Über den genauen Verbrauch kann ich nicht viel sagen, aber der COP war in Ordnung. Es gibt sicherlich bessere Optionen, aber für mich war das weniger wichtig, da ich 15 kW/p auf dem Dach habe.

Ich nehme an, dass jedes Innenteil ein eigenes Modul hat und somit auch ein ESP benötigt. Ich habe auch gesehen, dass man eine YAML-Datei für das gesamte Haus erstellen kann, aber damit habe ich mich noch nicht auseinandergesetzt.

MfG Joscha