Modbus Problem mit Sungrow Wechselrichter und EVCC mit Modbus Proxy

Hallo zusammen,

Ich habe einen Sungrow-Wechselrichter SG10RT und nutze Home Assistant sowie EVCC als Addon, um die Daten per Modbus auszulesen. In Home assistant lese ich die Wechselrichter Daten mit der MKaiser Modbus Integration aus. Damit sich beide nicht in die Quere kommen, verwende ich ha-modbusproxy (installiert auf meinem Home-Assistant-Host als Addon).

Mein Sungrow-Wechselrichter liegt auf 192.168.178.53:502. In meiner Proxy-Konfiguration habe ich folgendes eingestellt:

upstreamhost: 192.168.178.53
upstreamport: 502
listenport: 502
connection_time: 0.1
timeout: 10
loglevel: INFO

Home Assistant und EVCC sollen beide nur auf den Proxy zugreifen (z. B. 192.168.178.6:502), damit es nicht zu parallelen Verbindungen auf den Wechselrichter kommt.

EVCC.yaml

meters:
  - type: template
    template: sungrow-hybrid 
    id: 1  
    host: 192.168.178.6  
    port: 502  
    usage: grid  
    modbus: tcpip  
    timeout: 10s  
    name: grid1

Home assistant Sungrow Integration:

modbus:
  - name: SungrowSHx
    type: tcp
    host: 192.168.178.6
    port: 502
    delay: 5
    timeout: 10

    sensors:
      - name: Sungrow inverter serial
        unique_id: sg_inverter_serial
        device_address: 1
        address: 4989 # reg 4990
        input_type: input
        data_type: string
        count: 10
        scan_interval: 600

Trotzdem erhalte ich immer wieder folgende Fehlermeldungen:

  • Im Home Assistant-Log (pymodbus):

pymodbus.exceptions.ModbusIOException: Modbus Error: [Input/Output] Unable to decode request

  • Im EVCC-Log:

ERROR read failed: read tcp 192.168.178.6:xxxxx->192.168.178.6:502: i/o timeout

  • Und im Proxy-Log taucht manchmal ein IndexError: index out of range auf, wenn er versucht, das Modbus-Paket zu verarbeiten.

Hat jemand eine Idee, woran es noch liegen könnte? Oder welche Debug-Optionen ich noch nutzen könnte, um das Problem besser einzugrenzen (z. B. in EVCC, Home Assistant oder dem Proxy)? Bin für jeden Hinweis dankbar!

Meine Umgebung:

  • Home Assistant ( IP 192.168.178.6)
  • ha-modbusproxy (auf demselben Host)
  • Sungrow-Wechselrichter auf 192.168.178.53:502
  • EVCC auf demselben Rechner (verbindet sich an 192.168.178.6:502)

Danke für eure Hilfe! Ich freue mich über jeden Tipp, wie ich den „Unable to decode request“ und die Timeouts in den Griff bekomme.

Funktioniert es denn generell und nur manchmal kommen die Fehler oder geht es gar nicht?

Generell funktioniert es. Der Fehler tritt mehrmals am Tag auf.