Direkte Anbindung des Danfoss TLX Pro Wechselrichters an Home Assistant über das EtherLynx-Protokoll (UDP Port 48004) – ohne zusätzliche Hardware wie ESP32 oder RS485-Adapter.
- ⚡ 40+ Sensoren — Leistung, Energie, Spannung, Strom, Betriebsmodus
- 🔌 Plug & Play — Automatische Inverter-Erkennung via Discovery
- 🔄 Konfigurierbares Polling — 5 bis 3600 Sekunden Abfrageintervall
- 🌙 Intelligente Offline-Erkennung — Inverter schaltet nachts ab, morgens automatisch zurück
- 📊 Energy Dashboard — Volle Integration mit dem HA Energy Dashboard
- 🛡️ Validierung beim Setup — Erkennt frühzeitig wenn der Inverter keine Daten liefert
- 🧩 2- und 3-String-Modelle — TLX 6k bis 15k unterstützt
- HACS in Home Assistant öffnen
- Integrations → drei Punkte oben rechts → Custom repositories
- Repository-URL einfügen:
https://github.com/volschin/Danfoss-TLX-2-HA - Kategorie: Integration → Add
- Nach "Danfoss TLX Pro" suchen und Download klicken
- Home Assistant neustarten
- Neuestes Release von der Releases-Seite herunterladen
- Den Ordner
danfoss_tlxnachcustom_components/danfoss_tlx/kopieren - Home Assistant neustarten
- Settings → Devices & Services → Add Integration
- Nach Danfoss TLX Pro suchen
- Konfiguration eingeben:
- IP-Adresse des Wechselrichters
- Seriennummer (optional, wird automatisch erkannt)
- Anzahl PV-Strings (2 oder 3)
- Abfrageintervall in Sekunden
Die Integration prüft beim Setup sowohl die Erreichbarkeit als auch das Lesen von Parametern.
Die Integration nutzt Polling über das EtherLynx-Protokoll (UDP). Der DataUpdateCoordinator fragt den Inverter in konfigurierbaren Intervallen ab:
- Standard-Intervall: 15 Sekunden (einstellbar von 5 bis 3600 Sekunden)
- Protokoll: UDP Port 48004 (EtherLynx)
- Batch-Abfrage: Alle ~45 Parameter werden in wenigen UDP-Paketen gleichzeitig gelesen
- Offline-Erkennung: Bei fehlgeschlagener Abfrage werden alle Sensoren als "nicht verfügbar" markiert. Ein Warnlog wird beim ersten Fehler geschrieben, beim Wiederherstellen ein Info-Log.
- Nachts: Der Inverter schaltet sich automatisch ab. Die Integration erkennt dies und markiert Sensoren als nicht verfügbar. Morgens erfolgt automatisch die Wiederverbindung inkl. Discovery.
- Netzleistung gesamt + pro Phase (W)
- PV-Spannung, Strom, Leistung pro String
- Netzspannung pro Phase (V), Netzstrom pro Phase (A)
- Netzfrequenz (Hz), Betriebsmodus
- Gesamtproduktion (kWh, Lifetime)
- Produktion heute, diese Woche, diesen Monat, dieses Jahr
- Netzenergie heute pro Phase, PV-Energie pro String
- Hardware-Typ, Nennleistung, Software-Version, Seriennummer
| Modell | Nennleistung | PV-Strings | Getestet |
|---|---|---|---|
| TLX 6k | 6.000 W | 2 | ✓ |
| TLX 6.5k | 6.500 W | 2 | – |
| TLX 7k | 7.000 W | 2 | – |
| TLX 8k | 8.000 W | 2 | ✓ |
| TLX 10k | 10.000 W | 2 oder 3 | ✓ |
| TLX 12.5k | 12.500 W | 3 | – |
| TLX 15k | 15.000 W | 3 | ✓ |
- Inverter mit Ethernet-Port (Communication Board #8)
- Netzwerkverbindung zwischen Home Assistant und Inverter (gleiches LAN/Subnetz)
- Inverter muss eingeschaltet sein (Solarproduktion oder Standby mit Netzversorgung)
- Danfoss TLX ohne Ethernet-Port (nur RS485)
- Danfoss ULX, DLX, CLX Serien (anderes Protokoll)
- Inverter hinter NAT/VPN ohne direkte UDP-Erreichbarkeit
Die Integration ist vollständig mit dem HA Energy Dashboard kompatibel:
- Solarproduktion:
sensor.danfoss_tlx_pro_netzleistung_gesamtals Echtzeit-Leistung - Tagesertrag:
sensor.danfoss_tlx_pro_produktion_heute_logals Tagesenergiezähler
Benachrichtigung bei Inverter-Fehler
automation:
- alias: "Danfoss TLX Fehler-Alarm"
trigger:
- platform: state
entity_id: sensor.danfoss_tlx_pro_letztes_ereignis
condition:
- condition: not
conditions:
- condition: state
entity_id: sensor.danfoss_tlx_pro_letztes_ereignis
state: "Kein Ereignis"
action:
- service: notify.mobile_app
data:
title: "⚠️ Wechselrichter-Ereignis"
message: "{{ states('sensor.danfoss_tlx_pro_letztes_ereignis') }}"Tagesertrag-Zusammenfassung abends
automation:
- alias: "Danfoss TLX Tagesbericht"
trigger:
- platform: time
at: "21:00:00"
action:
- service: notify.mobile_app
data:
title: "☀️ Solarertrag heute"
message: >
Produktion: {{ states('sensor.danfoss_tlx_pro_produktion_heute_log') }} kWhTemplate-Sensor: Wirkungsgrad
template:
- sensor:
- name: "PV Wirkungsgrad"
unit_of_measurement: "%"
state: >
{% set pv = states('sensor.danfoss_tlx_pro_pv_leistung_string_1') | float(0)
+ states('sensor.danfoss_tlx_pro_pv_leistung_string_2') | float(0) %}
{% set grid = states('sensor.danfoss_tlx_pro_netzleistung_gesamt') | float(0) %}
{% if pv > 0 %}
{{ (grid / pv * 100) | round(1) }}
{% else %}
0
{% endif %}Ein fertiges Inverter-Dashboard für HA 2026.2 (Sections-View) liegt unter dashboards/danfoss-tlx-inverter.yaml.
Dashboard einrichten
- Einstellungen > Dashboards > Dashboard hinzufügen
- Dashboard öffnen > Bearbeiten (Stift-Icon) > Roher Konfigurationseditor
- Inhalt der YAML-Datei einfügen
- Entity-IDs anpassen: Ersetze
sensor.danfoss_tlx_pro_durch dein tatsächliches Entity-Prefix (findbar unter Einstellungen > Geräte > Danfoss TLX Pro)
Enthaltene Bereiche:
- Status & Leistung — Betriebsmodus, Gauge mit aktueller Leistung, Netzfrequenz
- Energieproduktion — Heute / Woche / Monat / Jahr / Gesamt + Leistungsverlauf
- PV-Strings (DC) — Spannung, Strom, Leistung pro String + Vergleichsgraph
- Netz (AC) — Spannung, Strom, Leistung pro Phase L1/L2/L3 + Spannungsverlauf
flowchart LR
subgraph ha["Home Assistant"]
coord["DataUpdateCoordinator<br/>(danfoss_tlx)"]
sensors["HA Sensoren<br/>Energy Dashboard<br/>40+ Sensoren"]
coord --> sensors
end
subgraph inverter["Danfoss TLX Pro"]
comm["Communication<br/>Board (#8)<br/>Ethernet Port"]
end
coord <-- "UDP Port 48004<br/>Ethernet / LAN<br/>Ping → Discovery<br/>Get Parameters → ← Values" --> comm
Das EtherLynx-Protokoll ist die Ethernet-Variante des ComLynx-Protokolls (offizieller Danfoss User Guide):
- Transport: UDP, Port 48004
- Adressierung: Seriennummer des Inverters
- Nachrichtentypen: Ping (0x01), Get/Set Parameter (0x02), Get/Set Text (0x03)
- Parameter-Zugriff: Index/Subindex, Module ID 8 (Communication Board)
- Batch-Abfrage: Mehrere Parameter pro Request möglich
- Nachts keine Daten: Der TLX Pro schaltet sich bei fehlender Solarproduktion ab. Die Integration zeigt dann "nicht verfügbar" — das ist normales Verhalten.
- Temperatur-Sentinel: Sensoren für Umgebungs- und Modultemperatur zeigen "nicht verfügbar" wenn kein externer Temperatursensor am Inverter angeschlossen ist (Rohwert ≥ 120°C).
- Keine Schreibzugriffe: Die Integration liest nur Parameter. Konfigurationsänderungen am Inverter (z.B. Leistungsbegrenzung) sind nicht möglich.
- Einzelnes Subnetz: Der Inverter muss im selben Netzwerksegment erreichbar sein. UDP-Broadcast funktioniert nicht über Router-Grenzen.
- Firmware-Varianten: Verschiedene Firmware-Versionen können leicht abweichende Parameter unterstützen. Nicht alle 45+ Parameter sind bei allen Modellen verfügbar.
- Kein Auto-Discovery: Der Inverter unterstützt kein SSDP, mDNS oder DHCP-basiertes Discovery. Die IP-Adresse muss manuell eingegeben werden.
Inverter nicht erreichbar
- Inverter muss eingeschaltet sein (nur bei Tageslicht/Solarproduktion aktiv)
- Ethernet-Kabel prüfen (Link-LED am Inverter und Switch)
- IP-Adresse korrekt? Im Router/DHCP prüfen
- Ping-Test:
ping 192.168.1.100 - UDP-Port nicht blockiert:
nc -u 192.168.1.100 48004
Nachts keine Daten
Das ist normal! Der TLX Pro schaltet sich nachts ab. Die Integration erkennt dies automatisch und setzt den Status auf "offline". Morgens werden die Daten automatisch wieder aktualisiert.
Seriennummer erkannt, aber keine Parameterdaten
Wenn Discovery (Ping) funktioniert, aber keine Parameterwerte geliefert werden:
- Firmware-Unterschiede: Verschiedene TLX-Pro-Firmwareversionen können leicht abweichende Protokoll-Details haben
- Gerätetyp: TLX 6k/8k/10k/12.5k/15k können unterschiedliche Parameter unterstützen
- Protokoll-Timing: Manche Inverter brauchen längere Timeouts
E2E-Test gegen echten Inverter:
INVERTER_IP=192.168.1.100 python -m pytest tests/test_e2e_inverter.py -v -sFalsche Werte
- Skalierungsfaktoren in
custom_components/danfoss_tlx/etherlynx.pyprüfen - Manche Parameter sind erst ab bestimmten Firmware-Versionen verfügbar
- String 3 ist nur bei TLX 10k/12.5k/15k vorhanden
- Temperatursensoren zeigen "Nicht verfügbar" wenn kein externer Sensor angeschlossen ist (Sentinel-Wert ≥ 120°C)
| EtherLynx (diese Lösung) | RS485 + ESP32 | |
|---|---|---|
| Zusätzliche Hardware | Keine (0 €) | ESP32 + RS485 (~25 €) |
| Installation | HACS / Python-Script | Firmware flashen, löten |
| Wartung | Minimal | ESP32 kann abstürzen |
| Parameter pro Request | N gleichzeitig | Sequentiell |
| Datenrate | 100 Mbit Ethernet | 19200 Baud RS485 |
| Multi-Inverter | Broadcast möglich | Nur 1:1 |
| Schreibzugriff | Ja (Set Parameter) | Nur lesen |
MIT License – siehe LICENSE.
Das EtherLynx-Protokoll ist dokumentiert im offiziellen Danfoss "ComLynx and EtherLynx User Guide".