M-Tec Wärmepumpe mit Keba-Platine über Modbus TCP in Home Assistant einrichten

Du möchtest deine M-Tec Wärmepumpe mit Keba-Platine lokal in Home Assistant einbinden, um Betriebs- und Temperaturwerte ohne Cloud im Blick zu behalten? Über das Netzwerkprotokoll Modbus TCP lassen sich die Daten der Steuerung direkt abgreifen. Mit wenigen Zeilen Konfiguration hast du die wichtigsten Sensoren – von der Warmwassertemperatur bis zur Heizleistung – im Dashboard.

Das brauchst du

  • Home Assistant (Core oder OS)
  • M-Tec Wärmepumpe mit Keba-Regler, per Ethernet-Kabel im Heimnetzwerk angeschlossen
  • Feste IP-Adresse der Wärmepumpe im lokalen Netzwerk
  • Dauer: ca. 10 Minuten

1. IP-Adresse und Modbus-Port ermitteln

Für die Kommunikation benötigt deine Wärmepumpe keinen zusätzlichen Hardware-Adapter; die Keba-Platine wird schlicht über ein Standard-Netzwerkkabel mit deinem Router oder Switch verbunden. Notiere dir die vergebene IP-Adresse der Heizung. Als Standard-Port für Modbus TCP wird Port 502 verwendet.

2. Modbus-Konfiguration anlegen

Home Assistant bringt eine native Modbus-Integration (eine Schnittstelle zur Kommunikation mit Geräten) mit. Am übersichtlichsten bindest du die Sensoren über eine ausgelagerte Konfigurationsdatei ein. Trage in deiner configuration.yaml folgende Zeile ein:

modbus: !include modbus.yaml

Erstelle anschließend im Home-Assistant-Verzeichnis die Datei modbus.yaml und trage die Register deiner Wärmepumpe ein. Passe die IP-Adresse an dein Setup an:

In modbus.yaml:

- name: WP_M-Tec
  type: tcp
  host: 192.168.1.50
  port: 502
  sensors:
    - name: WP_M-Tec_aktuell_eingestellte_Raumtemperatur
      data_type: uint16
      slave: 1
      address: 2
      device_class: temperature
      scan_interval: 15
      scale: 0.1
      precision: 1
      state_class: measurement
      unique_id: eingestellte_Raumtemperatur
      unit_of_measurement: "°C"
    - name: WP_M-Tec_Warmwasserspeicher_Temperatur
      data_type: uint16
      slave: 1
      address: 401
      device_class: temperature
      scale: 0.1
      precision: 1
      state_class: measurement
      unique_id: Warmwasserspeicher_Temperatur
      unit_of_measurement: "°C"
    - name: WP_M-Tec_gesamte_Heizenergie
      data_type: uint16
      slave: 1
      address: 701
      device_class: power
      scale: 1
      precision: 1
      state_class: measurement
      unique_id: gesammte_Heizenergie
      unit_of_measurement: "kWh"
    - name: WP_M-Tec_Heizleistung
      data_type: uint16
      slave: 1
      address: 706
      device_class: power
      scale: 0.001
      precision: 2
      state_class: measurement
      unique_id: Heizleistung
      unit_of_measurement: "kW"
    - name: WP_M-Tec_Stromverbrauch
      data_type: uint16
      slave: 1
      address: 707
      device_class: power
      scale: 1
      precision: 1
      unit_of_measurement: "W"
      state_class: measurement
      unique_id: Stromverbrauch
    - name: WP_M-Tec_Sole_Eingangstemperatur
      data_type: int16
      slave: 1
      address: 708
      device_class: temperature
      scan_interval: 15
      scale: 0.1
      precision: 1
      state_class: measurement
      unique_id: Sole_Eingangstemperatur
      unit_of_measurement: "°C"
    - name: WP_M-Tec_Sole_Ausgangstemperatur
      data_type: int16
      slave: 1
      address: 709
      device_class: temperature
      scan_interval: 15
      scale: 0.1
      precision: 1
      state_class: measurement
      unique_id: Sole_Ausgangstemperatur
      unit_of_measurement: "°C"
    - name: WP_M-Tec_Rücklauftemperatur
      data_type: uint16
      slave: 1
      address: 710
      device_class: temperature
      scale: 0.1
      precision: 1
      state_class: measurement
      unique_id: Rücklauftemperatur
      unit_of_measurement: "°C"

3. Konfiguration prüfen und neu starten

Öffne Einstellungen > Entwicklerwerkzeuge > YAML und klicke auf Konfiguration prüfen. Ist alles in Ordnung, wähle Neu starten, um Home Assistant neu zu laden und die Modbus-Verbindung aufzubauen.

Funktioniert es?

Gehe auf Einstellungen > Geräte & Dienste > Entitäten (eine Entität ist ein einzelner Datenpunkt im System) und filtere nach WP_M-Tec. Werden aktuelle Werte für Raumtemperatur, Leistung oder Vor-/Rücklauf angezeigt, steht die Kommunikation.

Wenn es nicht klappt

  • Entitäten bleiben nicht verfügbar: Kontrolliere die IP-Adresse in der Konfiguration und prüfe, ob Port 502 an der Wärmepumpe erreichbar ist. Ein einfacher Neustart von Home Assistant behebt gelegentlich anfängliche Verbindungsprobleme.
  • Falsche Soletemperaturen bei Frost: Wenn deine Anlage Minusgrade erreicht (etwa bei PVT-Kollektoren), stelle für Adresse 708 und 709 den data_type auf int16 statt uint16, da vorzeichenlose Integer keine negativen Werte abbilden.
  • SunSpec schlägt fehl: Die Standard-SunSpec-Integration scheitert oft an Keba-Controllern; die direkte Definition über modbus.yaml oder maßgeschneiderte Keba-Integrationen aus HACS lösen das Problem.
  • Frischwasserstation (FriWa) nicht auffindbar: Die FriWa-Temperaturen werden in vielen M-Tec-Modbus-Registern nicht standardmäßig mitgeliefert; hierfür ist eine alternative Abfrage über KeEnergy erforderlich.

Mit den erfassten Sensordaten kannst du nun das integrierte Energie-Dashboard füttern und die Heizleistung optimal mit einer Photovoltaikanlage abstimmen.

Quellen: Forum: Simon42 – Forum, community.simon42.com, community.home-assistant.io

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen