Kein Zugriff mehr auf WP über Modbus

Oberhesse

Member
Hallo u Moin,
habe seit gestern ein Problem mit der Einbindung der WP über Modbus. Es werden keine Werte mehr angezeigt. Habe folgende Dinge versucht, alle ohne Erfolg:
- Neustart der WP, -Neustart Fritzbox, -Neustart HA, -Neustart Raspi. Fritzbox meldet WP ist aktiv, im Herstellerportal kann ich alle Daten aktuell sehen. Alle anderen eingebundenen Systeme sind vorhanden und zeigen korrekte, aktuelle Werte.
Hat jemand eine Idee was da los sein könnte, wo das Problem liegt?
 
Hat sich evtl. die IP Adresse der WP geändert?
Ich hatte neulich das gleiche mit meinem Solar Wechselrichter, und das obwohl ich in der FRITZ!box ausdrücklich angegeben hatte das dem Gerät immer die selbe IP zugeteilt werden soll.
 
Nein, IP-Adresse ist unverändert. Allerdings war in der WP die Subnetzmaske ohne mein Zutun auf null. Habe die jetzt wieder auf Standardwert gesetzt, alles nochmal neu gestartet, keine Änderung.
 
Zuletzt bearbeitet:
Hab ich gemacht. Allerdings ohne Wirkung und diese Einstellung hat schon lange Zeit funktioniert. Hier mal der Passus aus der modbus.yaml:
YAML:
  climates:
    - name: "WP_Warmwasser"
      address: 42103
      input_type: holding
      data_type: int16
      max_temp: 50
      min_temp: 15
      offset: 0
      precision: 1
      scale: 0.1
      target_temp_register: 42103
      temp_step: 1
      temperature_unit: C
      unique_id: wpump.wwnormal
 
Hast du mehrere „climates“ in deiner Konfiguration?
Ich kann mir so garnicht vorstellen das das so passt?
Wenn ja, nimm die mal alle raus testweise.
 
Nein habe nur diese eine.
Allerdings bin ich inzwischen an anderer Stelle auf Merkwürdigkeiten gestoßen: Eine neue Daikin Klimaanlage eingebaut und nach Anleitung mit meinem Netz verbunden. Die tauchte allerdings nicht mit WLAN-Verbindung auf sondern die Fritzbox meinte sie wäre am LAN hinter der Wärmepumpe. Konnte das inzwischen korrigieren. Jetzt taucht plötzlich der Wäschetrockner als am LAN angeschlossen auf...... Dazu die gestrige Feststellung dass die Subnetzmaske der WP auf 000.000.000.0 stand.....
Möglicherweise liegt das Problem nicht an HA sondern an diesen merkwürdigen Verbindungsanzeigen in der Fritzbox.
 
Okay diese Merkwürdigkeiten der FRITZ!Box was die Darstellung der Netzwerkstruktur anbelangt würde ich keine große Aufmerksamkeit zukommen lassen solange die Netzwerkangaben alle okay sind. (ip Adresee, Subnet, Gateway etc)
Vor allem das Subnet muss natürlich stimmen.

Ich hatte nur die Idee weil mit dem letzten Update auch ein Update von Modbus.py erfolgte.
Bei sowas kann es sein das Fehler die bisher belanglos waren, auf einmal zur nicht Funktion führen.
 
Das scheint der Punkt zu sein, habe auf github entsprechende Fehlermeldungen gefunden. Allerdings kann ich damit echt nichts anfangen, so tief stecke ich in den Einzelheiten nicht drin.
ich habe keine Ahnung, was warum da jetzt nicht funktioniert. Wäre schön, wenn sich jemand damit auskennt und eine Hilfestellung geben könnte.
 
Dafür müsste der „jemand“ aber deinen jetzigen Code und die Modbusregisterliste haben.

Und schick mal einen Link zu den Fehler bei github
 
Zuletzt bearbeitet:
Sorry, da hast du recht.
PDF mit Modbus Daten Weishaupt
Hier der link zu github, da gehts wohl um das Problem:
https://github.com/home-assistant/core/issues/112607
Hier der yaml-Code meiner modbus-Datei:
YAML:
- name: wpump
  type: tcp
  host: 192.XXX.XXX.XX
  port: 502
  climates:
  - name: "WP_Warmwasser"
    address: 42103
    input_type: holding
    data_type: int16
    max_temp: 50
    min_temp: 15
    offset: 0
    precision: 1
    scale: 0.1
    target_temp_register: 42103
    temp_step: 1
    temperature_unit: C
    unique_id: wpump.wwnormal
 #Warmwasser
  sensors:
  - name: WP_Warmwassersolltemperatur
    slave: 1
    address: 32101
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
    unique_id: wpump.wwsolltemp
  - name: WP_Warmwassertemperatur
    slave: 1
    address: 42104
    input_type: holding
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
    unique_id: wpump.wwtemp
#System
  - name: WP_Betrieb
    slave: 1
    address: 30006
    input_type: input
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
    unique_id: wpump.betrieb
  - name: WP_Stoerungsfrei
    slave: 1
    address: 30005
    input_type: input
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
  - name: WP_Außentemperatur
    slave: 1
    address: 30001
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
#Test Schreibregister   
  - name: WP_Systembetriebsart
    slave: 1
    address: 40001
    input_type: holding
    data_type: int16
    unique_id: wpump.systembetriebsart
      
#Heizkreis
  - name: WP_Raumsolltemperatur
    slave: 1
    address: 31101
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
  - name: WP_Vorlaufsolltemperatur
    slave: 1
    address: 31104
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
  - name: WP_Vorlauftemperatur
    slave: 1
    address: 33104
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
  - name: WP_Rücklauftemperatur
    slave: 1
    address: 33105
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
  - name: WP_Leistungsanforderung
    slave: 1
    address: 33103
    input_type: input
    unit_of_measurement: '%'
    state_class: measurement
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WP_Heizkurve
    slave: 1
    address: 41108
    input_type: holding
    state_class: measurement
    scale: 0.01
    offset: 0
    precision: 2
    data_type: int16
# 2. WEZ
  - name: WP_E1_Status
    slave: 1
    address: 34104
    input_type: input
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
  - name: WP_E2_Status
    slave: 1
    address: 34105
    input_type: input
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
  - name: WP_E1_Stunden
    slave: 1
    address: 34106
    input_type: input
    unit_of_measurement: h
    state_class: measurement
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
  - name: WP_E2_Stunden
    slave: 1
    address: 34107
    input_type: input
    unit_of_measurement: h
    state_class: measurement
    scale: 1
    offset: 0
    precision: 0
    data_type: int16
#Stats
  - name: WPST_Gesamt_Tag
    slave: 1
    address: 36101
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_Gesamt_Monat
    slave: 1
    address: 36103
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_Gesamt_Jahr
    slave: 1
    address: 36104
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_Heizen_Tag
    slave: 1
    address: 36201
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_Heizen_Monat
    slave: 1
    address: 36203
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_Heizen_Jahr
    slave: 1
    address: 36204
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_WW_Tag
    slave: 1
    address: 36301
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_WW_Monat
    slave: 1
    address: 36303
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
  - name: WPST_WW_Jahr
    slave: 1
    address: 36304
    input_type: input
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    scale: 1
    offset: 0
    precision: 1
    data_type: int16
Ich hoffe, das hilft.....
 
Als Ergänzung: Habe vorgestern um 11:00 von 2024.3.3 auf 2024.4.4 upgedatet. Genau ab da funktionierte Modbus für die WP nicht mehr....
 
Also wie du schreibst hat das „Problem“ definitiv mit den Änderungen am Modbus zu tun.
Die Prüfung der Konfiguration wurde verschärft und entspricht jetzt mehr der Modbus Definition.
Vorher wurden „falsche Kleinigkeiten“ Geduldet die jetzt nicht mehr akzeptiert werden.
So u.a. das Register doppelt verwendet wurden.
Das einzige was mir allerdings bei deiner Konfiguration auffällt ist die Climate Entität.
Dort hast du zum einen keine Slave Angabe gemacht und die Adresse 42103 wird doppelt verwendet.

Als ich davon sprach die Adresse auszukommentieren meinte ich du sollst den ganzen „Climate“ Abschnitt rausnehmen, also das deine Konfiguration erst nach dem #Warmwasse
mit den Sensoren anfängt.
Der allgemeine Teil ganz oben muss natürlich bleiben.
Und danach bitte ganz HA Neustarten.
 
Danke, es läuft wieder. Der erste Teil deiner Antwort hats gebracht. Was meintest du mit dem 2. Teil, Sensoren für die Adressen .... aus der Datei nehmen?
 
Okay wenn es so funktioniert ist ja alles okay, dann kannst du den Rest vergessen, das war für den Fall gedacht das es immer noch nicht funktioniert.
 
Nun hat sich nach Lösung des ersten Problems ein weiteres gezeigt: Ich kann die aktuelle WW-Temperatur nicht mehr abfragen.
Hier die Modbus-Register dazu:


Das Register 32102 ist eigentlich die richtige Adresse, aber leider wird als Ergebnis nicht verfügbar angezeigt.
Außerdem wird die Zeile count: 1 angemeckert mit der Fehlermeldung
Invalid config for 'modbus' at wpumps.yaml, line 32: WP_Warmwassertemperatur: `count` illegal with `data_type: int16` 'modbus->0->sensors->1', got {'name': 'WP_Warmwassertemperatur', 'slave': 1, 'address': 32102, 'input_type': 'input', 'unit_of_measurement': '°C', 'state_class': 'measurement', 'count': 1, 'scale': 0.1, 'offset': 0, 'precision': 1, 'data_type': 'int16', 'unique_id': 'wpump.wwtemp'}
YAML:
  sensors:
  - name: WP_Warmwassersolltemperatur
    slave: 1
    address: 32101
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
    unique_id: wpump.wwsolltemp
  - name: WP_Warmwassertemperatur
    slave: 1
    address: 32102
    input_type: input
    unit_of_measurement: °C
    state_class: measurement
#    count: 1
    scale: 0.1
    offset: 0
    precision: 1
    data_type: int16
    unique_id: wpump.wwtemp
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.656
Beiträge
47.578
Mitglieder
4.299
Neuestes Mitglied
D'argo
Zurück
Oben