Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [How-To] Goodwe Wechselrichter und Modbus TCP

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.6k

[How-To] Goodwe Wechselrichter und Modbus TCP

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
goodwemodbustcptcpip
144 Beiträge 40 Kommentatoren 63.3k Aufrufe 39 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • U Unbeliveable89

    @frank-zoellner sagte in [How-To] Goodwe Wechselrichter und Modbus TCP:

    @unbeliveable89 Sind das nicht die Tagessätze ? Was ist an denen denn nicht richtig ?

    Ich beziehe mich hier wieder auf dem FossyTom Adapter, nicht auf Modus. Damit es hier nicht zu Verwechselungen kommt.

    Einige Werte sind einfach falsch bezeichnet/verknüpft im Adapter.

    EnergyDayLoad ist korrekt, das war ein Versehen von mir. Gibt die gesamte Last des Tages an.

    EnergyDaySell sollte nach Definition den gesamten, verkauften Strom des Tages anzeigen. Der Wert passt aber nicht, muss man nur öfters mit SEMS vergleiche, am besten kurz vor Mitternacht.
    Hierbei handelt es sich tatsächlich um den generierten Tagesstrom aus der PV-Anlage. Quasi die "PVEnergyDay minus Verlustleistung". Das ist der Tagesstrom von welchem man ausgehen sollte.

    Analog hierzu gibt es ja auch die korrekten Datenpunkte "PvEnergyTotal" und "EnergyTotal". Erstes ist der Strom, den die Panels generieren (DC). Zweites ist der tatsächlich zur Verfügung stehende Strom, welchen der Wechselrichter nach der Umwandlung (AC) ausspuckt. Hier habe ich auf das Jahr gesehen ca 7,5% Unterschied (= Verlustleistung).

    Die Werte in der SEMS-App (Arbeite, Heutige Produktion, Monatsgenerierung, Produktion Gesamt) beziehen sich immer auf die Panels, nicht auf den tatsächlichen Strom! Das sieht man, wen man den Wert von "Heutige Produktion" mit "Selbstnutzung von PV + Verkaufen" unter Today vergleicht. Letzteres sollte immer etwas weniger sein, da es zusammengerechnet die tatsächliche Tagesleistung ergibt.

    EnergyTotelBuy (im Ordner RunningData) sollte den gesamten zugekauften Strom vom Netz seit Installation der Anlage anzeigen. Passt auch nicht. Sieht mir eher nach dem Tagesbezug aus dem Netz aus.

    Der selbe Datenpunktname im Ordner ExComData scheint zu passen. Wäre ja auch komisch, wenn es den Wert doppelt gäbe.

    Grundsätzlich scheinen alle Daten im Ordner ExComData die Werte vom Smartmeter zu sein. Alles unter RunningData wird aus dem WR ausgelesen.

    Welche Werte noch nicht korrekt sind, kann ich nicht beurteilen, ich arbeite nicht mit allen. Eine Batterie habe ich noch nicht.

    VG

    Frank ZoellnerF Offline
    Frank ZoellnerF Offline
    Frank Zoellner
    schrieb am zuletzt editiert von
    #118

    @unbeliveable89 Hallo,

    ja, ich stimme Dir zu das da einiges nicht ganz klar ist bei all den Werten.
    EnergyDayBuy ist bei mir immer 0, wenn ich mit dem SEMS Portal vergleiche, denke ich das EnergyDaySell dem EnergyDayBuy entspricht (?), aber sicher bin ich mir da nicht.

    Der ExComData Ordner sind die Werte vom Smartmeter, soweit ich das sehe.

    Was ist in dem Zusammenhang denn InverterTotalPower?

    Vielleicht gibt es ja noch Nutzer des Adapters, die hier beitragen können, dass man die Werte sicher zuordnen kann ?

    1 Antwort Letzte Antwort
    0
    • U Offline
      U Offline
      Unbeliveable89
      schrieb am zuletzt editiert von Unbeliveable89
      #119

      EnergyDayBuy ist bei mir auch 0.

      EnergyDaySell hatte ich ja oben bereits beschrieben: das ist der zur Verfügung stehende Strom, welcher am selben Tag erzeugt wurde. Entspricht exakt der Summe aus den SEMS-Werten "Selbstnutzung von PV" und "Verkaufen". Leider sind die letzten 2 Werte nicht über den Adapter realisierbar, da nicht vorhanden. Wäre nur einer vorhanden, würde sich der andere berechnen lassen.

      InverterTotalPower sollte DER Echtzeitwert sein, wieviel Strom aktuell erzeugt wird und live und jetzt zur Verfügung steht. Also "TotalPowerPv minus Leistungsverlust". Ohne Sonne steht er auf -2, das ist der Standbyverbrauch des Wechselrichters. Diese Werte über den Tag kumuliert sollten dann eben den oben genannten "EnergyDaySell" (mit falscher Bezeichnung) ergeben.

      AcActivePower sollte in Echtzeit den exakten Netzbezug bzw. die Einspeisung aufzeigen - je nachdem. Ergibt sich aus "TotalPower plus/minus InverterTotalPower". Sieht man auch insbesondere Nachts gut, mit den -2w Standby des WR.

      Leider scheint @FossyTom die Entwicklung des Adapters eingestellt zu haben und @paeppi verwendet nun auch den Modus-Adapter, welcher einen Fork auf Github erstellt hatte. Wirklich schade, da der Adapter ansonsten wirklich gut und ohne Probleme (bei mir mit altem only-Wifi-Adapter) läuft.

      1 Antwort Letzte Antwort
      0
      • F Flash

        Hallo zusammen,

        wir haben einen GoodWe Wechselrichter GW20K-ET daheim, standardmäßig mit dem WLAN-Dongle.
        Da wir das Ganze über ModBus TCP Port 502 mit einer cFos-Wallbox verbinden wollen, um Überschussladen zu realisieren, haben wir das Wifi-/LAN-Kit gekauft und angeschlossen.

        Wifi-/LAN-Kit funktioniert nicht
        Das Dongle funktioniert für 5 Sekunden und geht dann aus - danach blinkt das Power-Symbol nur alle 5 Sekunden kurz.

        Über die SolarGo-App haben wir versucht, die Firmware des WR zu updaten:

        • ARM: Von Version 07 auf 08 - jetzt steht dort: "Bereits die neueste Version"
        • DSP: Von Version 05 auf 06 (auch wenn in der App noch steht, dass die V06 noch zu installieren wäre - jedoch in dem Ereignis-Log steht V06 "Erfolg")

        GoodWe schreibt hier von V25 und höher:
        https://www.memodo.de/media/pdf/ea/e8/3 ... be4103.pdf

        Es scheint, dass die größeren GoodWe ET (ET15-30) hier noch nicht unterstützt werden.
        Der GoodWe-Support selbst ist grottig, antwortet sehr langsam oder schlecht.

        @2schaf
        Wie genau hast du den Dongle über die Webseite resettet?
        Wie hast du Modbus TCP über Wifi zum Laufen gebracht?
        Hast du einen kleineren GoodWe-WR (also nicht ET15-30)?

        GoodWe Wifi-/LAN-Kit Version 2.0
        Wir haben auch gesehen, dass es ein neues Wifi-/LAN-Kit Version 2.0 gibt.
        https://emea.goodwe.com/wifi-lan-20-and-wifi-20
        Weiß da jemand mehr dazu?

        Bester Weg?
        Was wäre denn aus eurer Sicht der beste Weg, um die Daten aus dem GoodWe-WR auszulesen?

        Dankschön und beste Grüße
        Flash

        2 Offline
        2 Offline
        2schaf
        schrieb am zuletzt editiert von 2schaf
        #120

        @flash
        Also zunächst: viele Versuche. Genau nachvollziehen ist schwierig:
        Um Modbus via Wifi zu realisieren:

        • Kein Netzwerkkabel stecken! Nicht über die App einrichten

        • der Adapter agiert als AccessPoinz: in WLAN einwählen: 12345678; webseite 10.10.100.53. admin/admin öffnen

        • unter STA das Wifi vom Router auswählen/einrichten

        • ohne Gewähr auf die Reihenfolge: Modus STA einstellen und über die Weboberfläche „Device management“ einen Neustart durchführen.
          Statische IP unter STA eintragen, neustarten, im Router statische IP eintragen.

        • über diese IP erreiche ich den GW10K- ET plus über Modbus

        Wenn was schief geht. Kann man den Dongle über den Standard AP erreichen und auf der 10.10.100.53 unter Device Management einen Factory Reset durchführen. Interessanterweise hat sich bei mir der Name des Wifis dadurch geänder.

        Gleiches für LAN hat bei mir nicht geklappt.

        1 Antwort Letzte Antwort
        0
        • Frank ZoellnerF Offline
          Frank ZoellnerF Offline
          Frank Zoellner
          schrieb am zuletzt editiert von
          #121

          Im FossyTom Adapter gibt unter Batterie den Eintrag Mode, der kann bei mir die Werte 1, 2 und 3 annehmen. Hat jemand eine Ahnung was die genau bedeuten?

          @paeppi hatte ja mal Mode 1 und 2 als be- btw entladen berichtet, aber was ist mode 3 dann ?

          JB1985J P 2 Antworten Letzte Antwort
          0
          • Frank ZoellnerF Frank Zoellner

            Im FossyTom Adapter gibt unter Batterie den Eintrag Mode, der kann bei mir die Werte 1, 2 und 3 annehmen. Hat jemand eine Ahnung was die genau bedeuten?

            @paeppi hatte ja mal Mode 1 und 2 als be- btw entladen berichtet, aber was ist mode 3 dann ?

            JB1985J Offline
            JB1985J Offline
            JB1985
            schrieb am zuletzt editiert von
            #122

            @frank-zoellner sagte in [How-To] Goodwe Wechselrichter und Modbus TCP:

            @paeppi hatte ja mal Mode 1 und 2 als be- btw entladen berichtet, aber was ist mode 3 dann ?

            Evtl. "Standby".

            Frank ZoellnerF 1 Antwort Letzte Antwort
            0
            • JB1985J JB1985

              @frank-zoellner sagte in [How-To] Goodwe Wechselrichter und Modbus TCP:

              @paeppi hatte ja mal Mode 1 und 2 als be- btw entladen berichtet, aber was ist mode 3 dann ?

              Evtl. "Standby".

              Frank ZoellnerF Offline
              Frank ZoellnerF Offline
              Frank Zoellner
              schrieb am zuletzt editiert von
              #123

              @jb1985 hm keine Ahnung in Mode 3 hat er Saft von der PV bekommen ....

              1 Antwort Letzte Antwort
              0
              • Frank ZoellnerF Frank Zoellner

                Im FossyTom Adapter gibt unter Batterie den Eintrag Mode, der kann bei mir die Werte 1, 2 und 3 annehmen. Hat jemand eine Ahnung was die genau bedeuten?

                @paeppi hatte ja mal Mode 1 und 2 als be- btw entladen berichtet, aber was ist mode 3 dann ?

                P Offline
                P Offline
                paeppi
                schrieb am zuletzt editiert von
                #124

                @frank-zoellner ich glaube das war Standby, bei solargo heißt der Wert glaub ich warten

                Frank ZoellnerF 1 Antwort Letzte Antwort
                0
                • P paeppi

                  @frank-zoellner ich glaube das war Standby, bei solargo heißt der Wert glaub ich warten

                  Frank ZoellnerF Offline
                  Frank ZoellnerF Offline
                  Frank Zoellner
                  schrieb am zuletzt editiert von
                  #125

                  @paeppi ok danke

                  1 Antwort Letzte Antwort
                  0
                  • Z zaphood

                    @thrill Meines Wissens hat GoodWe nur lesbare Register dokumentiert. Vermutlich gibt es auch schreibbare, nur stehen die in keiner (offiziellen) Doku (zumindest hab ich auch nach langen Recherchen keine gefunden)

                    M Offline
                    M Offline
                    Michi_Pi
                    schrieb am zuletzt editiert von
                    #126

                    @zaphood @thrill @besimo
                    Hat schon jemand eine Doku bzgl. Modbus-Protokoll mit den Schreibregistern? Die sollen wohl unter den 45xxx,47xxx zugeordnet sein.

                    D 1 Antwort Letzte Antwort
                    0
                    • M Michi_Pi

                      @zaphood @thrill @besimo
                      Hat schon jemand eine Doku bzgl. Modbus-Protokoll mit den Schreibregistern? Die sollen wohl unter den 45xxx,47xxx zugeordnet sein.

                      D Offline
                      D Offline
                      DatzerF
                      schrieb am zuletzt editiert von
                      #127

                      @michi_pi
                      Frohe :christmas_tree: euch allen....
                      habe seit Ende November einen GW10KN-ET mit zwei LX F9.8-h Speichern am laufen und sammle gerade alle Modbus-Register die ich so finde....
                      Basis ist die GoodWE Doku Vers. 1.7 die @xReactz hier im Thread bereitgestellt hat.
                      Dazu Infos aus dem GitHub Projekt "goodwe" von Marcel Blijleven
                      Weiter Register aus den GitHub - Repos von OpenEMS
                      Das ganze ich noch nicht fertig...
                      goodwe_modbus1.tsv.csv
                      Aktuell unterscheide ich die verschiedenen Register-Typen nicht.

                      Franz

                      M 1 Antwort Letzte Antwort
                      0
                      • D DatzerF

                        @michi_pi
                        Frohe :christmas_tree: euch allen....
                        habe seit Ende November einen GW10KN-ET mit zwei LX F9.8-h Speichern am laufen und sammle gerade alle Modbus-Register die ich so finde....
                        Basis ist die GoodWE Doku Vers. 1.7 die @xReactz hier im Thread bereitgestellt hat.
                        Dazu Infos aus dem GitHub Projekt "goodwe" von Marcel Blijleven
                        Weiter Register aus den GitHub - Repos von OpenEMS
                        Das ganze ich noch nicht fertig...
                        goodwe_modbus1.tsv.csv
                        Aktuell unterscheide ich die verschiedenen Register-Typen nicht.

                        Franz

                        M Offline
                        M Offline
                        Michi_Pi
                        schrieb am zuletzt editiert von
                        #128

                        @datzerf
                        Hab gestern noch eine Doku gefunden für meinen GW25K-ET. Ist zwar auch nicht mehr ganz aktuell, fehlen ein paar Register, aber vermutlich 98% ist damit so abgedeckt.
                        Die Doku ist für Hybrid-WR der Serie ET, EH, BT, BH, EHB, AES, ABP, BTC laut Beschreibung
                        ARM.745.ESG2.ET30.MODBUS.Protocol.Map.20221231.-.v1.pdf

                        D 1 Antwort Letzte Antwort
                        0
                        • M Michi_Pi

                          @datzerf
                          Hab gestern noch eine Doku gefunden für meinen GW25K-ET. Ist zwar auch nicht mehr ganz aktuell, fehlen ein paar Register, aber vermutlich 98% ist damit so abgedeckt.
                          Die Doku ist für Hybrid-WR der Serie ET, EH, BT, BH, EHB, AES, ABP, BTC laut Beschreibung
                          ARM.745.ESG2.ET30.MODBUS.Protocol.Map.20221231.-.v1.pdf

                          D Offline
                          D Offline
                          DatzerF
                          schrieb am zuletzt editiert von
                          #129

                          @michi_pi
                          Danke, gleiche ich bei Gelegenheit mit den vorhandenen Registern ab und ergänze was fehlt. Wenn sinnvoll werde ich eine Spalte mit einfügen die festlegt ob für ET10 oder andere Geräte der ET-Serie.
                          Franz

                          1 Antwort Letzte Antwort
                          0
                          • D Offline
                            D Offline
                            DatzerF
                            schrieb am zuletzt editiert von
                            #130

                            Hallo in die Runde,

                            hier die Doku zu den Modbus-Registern.
                            Die Spalten A - O können per copy und paste für die Import-Funktion des Modbus Adapters genutzt werden.
                            Die Spalte P definiert ob das Register RO oder RW ist.
                            Die Spalte Q habe ich mit Commentaren versehen, da einige Register nicht funktionieren.
                            Auffällig ist, das der Adapter viele Fehler wirft, obwohl die einzelnen Register alle gelesen werden können:
                            "Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 2. Received 30"

                            goodwe_modbus.csv

                            Viel Spass damit.

                            Franz

                            1 Antwort Letzte Antwort
                            0
                            • A Achim

                              @fossytom Wie soll der Adapter installiert werden?
                              Ich arbeite mich gerade in iobroker ein, und schaffe es nicht, den Adapter zu installieren.
                              Ich habe zuerst, wie auf https://github.com/FossyTom/ioBroker.goodwe empfohlen "npm install iobroker.goodwe" probiert. Es gibt zwar die Erfolgsmeldung "added 4 packages, and audited 5 packages in 2s", aber dennoch wird der Adapter nicht auf der Plugin Seite von iobroker angezeigt - auch nicht nach einem Neustart.
                              Bei dem Versuch mit "iobroker url https://github.com/FossyTom/ioBroker.goodwe --debug" erhalte ich zum Ende des Ablaufs der Installation diese Fehlermeldungen:

                              npm ERR! code 1
                              npm ERR! git dep preparation failed
                              npm ERR! command /usr/bin/node /usr/lib/node_modules/npm/bin/npm-cli.js install --force --cache=/home/iobroker/.npm --prefer-offline=false --prefer-online=false --offline=false --no-progress --no-save --no-audit --include=dev --include=peer --include=optional --no-package-lock-only --no-dry-run
                              npm ERR! npm WARN using --force Recommended protections disabled.
                              npm ERR! npm ERR! code 1
                              npm ERR! npm ERR! path /home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild
                              npm ERR! npm ERR! command failed
                              npm ERR! npm ERR! command sh -c -- node install.js
                              npm ERR! npm ERR! node:internal/errors:478
                              npm ERR! npm ERR!     ErrorCaptureStackTrace(err);
                              npm ERR! npm ERR!     ^
                              npm ERR! npm ERR! 
                              npm ERR! npm ERR! <ref *1> Error: spawnSync /home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild/bin/esbuild EACCES
                              npm ERR! npm ERR!     at Object.spawnSync (node:internal/child_process:1119:20)
                              npm ERR! npm ERR!     at spawnSync (node:child_process:847:24)
                              npm ERR! npm ERR!     at Object.execFileSync (node:child_process:890:15)
                              npm ERR! npm ERR!     at validateBinaryVersion (/home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild/install.js:90:32)
                              npm ERR! npm ERR!     at /home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild/install.js:243:5 {
                              npm ERR! npm ERR!   errno: -13,
                              npm ERR! npm ERR!   code: 'EACCES',
                              npm ERR! npm ERR!   syscall: 'spawnSync /home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild/bin/esbuild',
                              npm ERR! npm ERR!   path: '/home/iobroker/.npm/_cacache/tmp/git-cloneMXO1EP/node_modules/esbuild/bin/esbuild',
                              npm ERR! npm ERR!   spawnargs: [ '--version' ],
                              npm ERR! npm ERR!   error: [Circular *1],
                              npm ERR! npm ERR!   status: null,
                              npm ERR! npm ERR!   signal: null,
                              npm ERR! npm ERR!   output: null,
                              npm ERR! npm ERR!   pid: 87178,
                              npm ERR! npm ERR!   stdout: null,
                              npm ERR! npm ERR!   stderr: null
                              npm ERR! npm ERR! }
                              
                              

                              Ich habe schon mit chown die Rechte so gesetzt, dass /home/iobroker und auch /opt/iobroker dem Nutzer "iobroker" gehören. Daher verstehe ich nicht, warum es ein Problem mit Zugriffsrechten gibt (EACCES).

                              Dann werde ich wohl erst einmal bei https://github.com/marcelblijleven/goodwe bleiben, da ich damit per Python Script problemlos alle Werte von meinem GoodWe GW6.5K-ET mit WLAN-Modul auslesen. Wäre zwar schöner, nicht per Exec-Aufruf in iobroker ein externes Script aufrufen zu müssen, und die Ausgabe parsen zu müssen, aber immerhin erhalte ich damit einen lokalen, direkten Zugriff auf alle relevanten Werte. Der Entwickler mletenay hat auch schon ein Plugin für "Home Assistant" erstellt.

                              Servus,
                              Achim

                              D Offline
                              D Offline
                              DatzerF
                              schrieb am zuletzt editiert von
                              #131

                              Hi @achim,
                              hilf bitte mal einem "DAU" auf die Sprünge.
                              Ich habe mir das Python-Script auch geladen bin aber zu blöd es zu startet. Wo muss ich die Parameter eintragen und wie dann das Python-Script auf der Konsole starten?

                              Vielen Dank im Voraus
                              Franz

                              1 Antwort Letzte Antwort
                              0
                              • J Offline
                                J Offline
                                JayJay 0
                                schrieb am zuletzt editiert von
                                #132

                                Sagt auf was is den bei euch die BYD Batterie mit einem Ladestrom eingestellt. Ich hab hier 12A stehen.. kann das stimmen ???

                                1 Antwort Letzte Antwort
                                0
                                • J JayJay 0

                                  @paeppi sag wie hast du dein problem nun gelöst? Der Adapter von @FossyTom macht bei mir die gleichen Probleme. Ich hätte gerne beides - SEMS Portal (ist einfach schön anzusehen, wenn du bei den Schwiegereltern bist und die dich fragen wie es aussieht) und den Rest brauch ich ja für meine Steuerungen....

                                  R Offline
                                  R Offline
                                  revilo1337
                                  schrieb am zuletzt editiert von
                                  #133

                                  Kleiner Zwischenruf: Ich teste gerade einen bisher vielversprechenden Ansatz mit einer Modbus zu MQTT-Bridge (modbus-2-mqtt-bridge, auch fertig als Container für ARM, also z.B. Raspi, zu haben)

                                  Damit kann ich einzelne Register zu unterschiedlichen Intervallen abfragen (Leistungswerte z.B. häufig, Fehlerzustände z.B. minütlich, andere Sachen nur einmal am Tag oder seltener), teilweise Codes direkt auf Strings mappen (z.B. einen Fehlermeldungscode direkt auf einen Text) und kann das u.a. in iobroker direkt weiterverwerten, aber z.B. auch in evcc und sonst wo.

                                  Die Konfiguration für meinen GW20K-ET (also neuere ET-Serie) funktioniert.

                                  Voraussetzung ist allerdings Modbus TCP, also das passende WiFi/LAN-Kit. Bei Interesse poste ich gerne mehr, ggf. in eigenem Thread.

                                  1 Antwort Letzte Antwort
                                  0
                                  • X xReactz

                                    Da ich mich nun schon länger mit der Einbindung der Goodwe Wechselrichter per Modbus TCP beschäftige, und ich ebenfalls von der IoBroker Community viel Hilfe, Scripte oder Adapter nutze, möchte ich meine Erfahrungen mit euch teilen.:hugging_face:

                                    Grundlegen sind mir 3x Möglichkeiten bekannt um Daten der Goodwe Wechselrichter in IoBroker zu bringen.

                                    • Daten vom Sems Portal auslesen und in IoBroker Datenpunkte schreiben: Siehe Goodwe Wechselrichter und IoBroker

                                    • Daten per Modbus RTU und RS485 Konverter per Rasp einlesen und per MQTT an IoBroker senden (Keine Erfahrung).

                                    • Daten per Modbus TCP/IP (Modbus Adapter) auslesen und in Datenpunkte schreiben (Nachfolgend).

                                    Welche der mit bekannten Metoden die richtige für euch ist, müsst ihr selbst entscheiden.

                                    Einrichtung und Installation Modbus TCP/IP Adapter:

                                    Vorweg soweit mir bekannt, funktioniert Modbus TCP nur mit der Goodwe LAN Box (5-Pin), solltet Ihr weitere Erfahrungen mit dem alten Wifi Dongle oder mit neuen Wifi+LAN Dongle haben, so könnt Ihr diese gerne hier teilen! Eine Hand wäscht die andere :handshake: .

                                    Außerdem sollte dem LAN Dongle eine feste IP Adresse zugewissen sein, entweder per Heimnetzwerk oder in der Dongle Konfiguration selbst. Ansonsten kann es sporadisch zu Verbindungsabbrüchen kommen.

                                    1. Installation Modbus Adapter
                                      Adapter: LINK
                                      Nach der Installation sollte der Modbus Adapter in den Debug Modus gesetzt werden, damit erleichtert Ihr euch selbst das Leben bei der Fehlersuche.

                                    2. Einstellungen Modbus Adapter

                                      Goodwe_Modbus_Protocol_Hybrid_ET_EH_BH_BT__ARM205 HV__V1.7 _ Read Only_20200226 (1).pdf

                                    • Verbindung per TCP (nicht TCP/RTU !)

                                    • Eure fest vergebene IP Adresse des Wechselrichters

                                    • Port 502 (siehe Goodwe Modbus Protokoll)

                                    • Geräte ID 247 (Standardmäßig in der Konfiguration eingerichtet, kann per Wifi Dongle und PV Master App verändert werden.)
                                      Sollten mehrere Wechselrichter ausgelesen werden sollen, so muss "Mehrere Geräte ID's" angehackt werden. Nachfolgend muss dann an jedem Wechselrichter eine andere Geräte ID angegeben werden. (Geräte ID == Slave ID)

                                    • Typ Master

                                    • Alle weiter Einstellungen können bei erstmaligen Start so bleiben, sollten jedoch nachfolgend auf die persönlichen Bedürfnisse angepasst werden.

                                      06a02720-c5e0-4e18-b618-199b00e8ca17-grafik.png

                                      Unter Allgemeine Einstellungen werden die Checkboxen, so wie nachfolgend ersichtlich, gesetzt:
                                      Mit Aliases sind die definierten Register Ranges gemeint wie z.B. coils, 1-10000, discrete inputs, 10001-30000 ,input register 30001-40000, holding register 40000-65535. Dieser müssen deaktivert werden, da wir nicht mit diesen Bereichen arbeiten können.

                                      ecf4ce2b-dbb8-43e8-a80b-701712aa0911-grafik.png

                                    1. Anlegen der Register:

                                      Die von Goodwe unterstützen und abfragbaren Register findet Ihr im Goodwe Modbus Protokoll.
                                      Nun geht es an die eigentlichen Arbeit, das befüllen der Register. Da bei uns eigentlich alle Register Holding Register sind (Read Only), müssen wir unsere Register auch hier eintragen.
                                      Dies sollten dann etwa so aussehen:

                                      039c0de0-d233-43e6-8879-9a7984448516-grafik.png

                                      Tragt am besten mal nur 1-2 Register ein, und seht auch dann den Debug Log an, dann seht Ihr schon ob die Funktion gegeben ist.

                                      Wenn alles klappt, alle für euch notwendigen Register eintragen und sich freuen :grin:

                                    Solltet Ihr Probleme beim Verbindungsaufbau oder mit den auslesen der Register haben, so kann ich euch das Tool von Schneider Electric ans Herz legen. Modbus Tool

                                    Damit könnt Ihr prüfen ob der Wechselrichter generell Ansprechbar ist und ihr Rückmeldung bekommt. Sollte das nicht der Fall sein, stimmt schon mal etwas mit euere Konfig bzw. eurer Netzwerksanbdinung nicht.

                                    Viel Spaß damit!

                                    Gruß

                                    E Offline
                                    E Offline
                                    enti123
                                    schrieb am zuletzt editiert von
                                    #134

                                    @xreactz Sehr gute Beschreibung - aber ich verzweifele trotzdem!

                                    Ich fange mal von hinten an: Die Kommunikation grundsätzlich funktioniert offenbar, aber ich bekomme keine Werte.

                                    Das Protokoll sieht so aus:
                                    47789732-fa6e-4ba5-8276-8766a2a46484-image.png

                                    Die Konfiguration:
                                    481d2ba9-777d-4809-8c9c-87e95fc13d58-image.png
                                    0952ac3f-a576-40cc-8380-13ae10a3f542-image.png
                                    a09f8b7a-f3c8-4d5d-b050-cad971f87921-image.png

                                    Das Ergebnis:
                                    5f0a4739-3f9d-44a0-a5f9-f8c244b93d1c-image.png

                                    Mein ioBroker läuft auf einem Rpi4, dort läuft auch der Goodwe-Adapter ohne Probleme.

                                    Im Keller hängt ein Goodwe GW8K-ET.

                                    Mit den Einstellungen habe ich intensiv herumprobiert (TCP vs. RTU, Port, Geräte ID, den verschiedenen Zeitparametern). Entweder änderte sich nichts, oder die Fehlermeldungen werden noch gravierender.

                                    Ich halte "Socket closed with error" und "Clearing timeout of the current request" für die Übeltäter, finde aber leider keine weitere Informationen. Eine Vervielfachung des Timeout-Parameters bringt keine Änderung, gefühlt wird auch gar nicht gewartet.

                                    Was kann ich noch machen?

                                    1 Antwort Letzte Antwort
                                    0
                                    • S Offline
                                      S Offline
                                      Stromy
                                      schrieb am zuletzt editiert von
                                      #135

                                      Hallo in die Runde,

                                      ich hoffe ihr könnt mir weiterhelfen.

                                      Habe hier einen Goodwe GW3648-EM mit LX U5.4-L dem ich gerne seine Daten über RS485 seriell entlocken möchte (nicht über TCP).
                                      Was man vom WR so abrufen konnte:
                                      FW Version 3121217
                                      ARM FW 02034.00
                                      BMS Version 27136

                                      Ich versuche die RS485 über einen Waveshare Adapter (FTDI) RS485 to USB abzufragen.
                                      Der Adapter hängt via USB an einem Raspberry 4B mit IOBroker und Modbus Adapter.

                                      An der RS485 habe ich sowohl die Pins 1 und 2, 3 und 6 sowie 1 mit 3 und 2 mit 6 verbunden getestet
                                      und auch jeweils + und - vertauscht, leider jeweils ohne Erfolg (im Forum gab's mal einen Tip bezüglich der Parallelschaltung von Pin 1+3 und 2+6. Deswegen auch dies ausprobiert!).

                                      Die Kommunikation ist konfiguriert mit 9600bit/s, 8/N/1, Geräte-ID mit 247

                                      Bekomme in keinem Fall eine brauchbare Kommunikation zustande.

                                      Der Modbus Adapter startet, wird kurz grün und geht dann wieder auf gelb.

                                      Ich hoffe, dass Ihr mir evtl. auf die Sprünge helfen könnt!

                                      Hier mal die Meldungen nach Start der Modbus Instanz mit debug:

                                      modbus.0
                                      2024-06-05 20:08:22.053 error Error response: Data address of some or all the required entities are not allowed or do not exist in slave

                                      modbus.0
                                      2024-06-05 20:08:22.052 error Error response for FCx3: Illegal Data Address

                                      modbus.0
                                      2024-06-05 20:08:21.779 debug [DevID_247/holdingRegs] Poll address 35103 - 6 registers

                                      modbus.0
                                      2024-06-05 20:08:21.779 debug Initialization of scale factors done!

                                      modbus.0
                                      2024-06-05 20:08:21.777 debug [DevID_247] Poll start ---------------------

                                      modbus.0
                                      2024-06-05 20:08:21.776 info Connected to slave

                                      modbus.0
                                      2024-06-05 20:08:21.762 debug connect to serial /dev/ttyUSB0 with 9600

                                      modbus.0
                                      2024-06-05 20:08:21.482 debug Add holdingRegisters.35108_PV2Current: {"_id":"holdingRegisters.35108_PV2Current","type":"state","common":{"name":"","role":"","type":"number","read":true,"write":true,"def":0,"unit":"A"},"native":{"regType":"holdingRegs","address":35108,"deviceId":247,"type":"uint16be","len":1,"offset":0,"factor":1,"poll":true}}

                                      modbus.0
                                      2024-06-05 20:08:21.482 debug Add holdingRegisters.35107_PV2_Voltage: {"_id":"holdingRegisters.35107_PV2_Voltage","type":"state","common":{"name":"","role":"","type":"number","read":true,"write":true,"def":0,"unit":"V"},"native":{"regType":"holdingRegs","address":35107,"deviceId":247,"type":"uint16be","len":1,"offset":0,"factor":1,"poll":true}}

                                      modbus.0
                                      2024-06-05 20:08:21.482 debug Add holdingRegisters.35104_PV1_Current: {"_id":"holdingRegisters.35104_PV1_Current","type":"state","common":{"name":"","role":"","type":"number","read":true,"write":true,"def":0,"unit":"A"},"native":{"regType":"holdingRegs","address":35104,"deviceId":247,"type":"uint16be","len":1,"offset":0,"factor":1,"poll":true}}

                                      modbus.0
                                      2024-06-05 20:08:21.481 debug Add holdingRegisters.35103_PV1_Voltage: {"_id":"holdingRegisters.35103_PV1_Voltage","type":"state","common":{"name":"","role":"","type":"number","read":true,"write":true,"def":0,"unit":"V"},"native":{"regType":"holdingRegs","address":35103,"deviceId":247,"type":"uint16be","len":1,"offset":0,"factor":1,"poll":true}}

                                      modbus.0
                                      2024-06-05 20:08:21.481 debug Initialize Objects for holdingRegs: [{"_address":35103,"name":"PV1 Voltage","description":"","unit":"V","type":"uint16be","len":1,"factor":1,"offset":0,"formula":"","role":"","room":"","poll":true,"wp":"","cw":"","isScale":"","address":35103,"deviceId":247,"id":"holdingRegisters.35103_PV1_Voltage"},{"_address":35104,"name":"PV1 Current","description":"","unit":"A","type":"uint16be","len":1,"factor":1,"offset":0,"formula":"","role":"","room":"","poll":true,"wp":"","cw":"","isScale":"","address":35104,"deviceId":247,"id":"holdingRegisters.35104_PV1_Current"},{"_address":35107,"name":"PV2 Voltage","description":"","unit":"V","type":"uint16be","len":1,"factor":1,"offset":0,"formula":"","role":"","room":"","poll":true,"wp":"","cw":"","isScale":"","deviceId":247,"address":35107,"id":"holdingRegisters.35107_PV2_Voltage"},{"_address":35108,"name":"PV2Current","description":"","unit":"A","type":"uint16be","len":1,"factor":1,"offset":0,"formula":"","role":"","room":"","poll":true,"wp":"","cw":"","isScale":"","deviceId":247,"address":35108,"id":"holdingRegisters.35108_PV2Current"}]

                                      modbus.0
                                      2024-06-05 20:08:21.480 debug Initialize Objects for inputRegs: []

                                      modbus.0
                                      2024-06-05 20:08:21.479 debug Initialize Objects for coils: []

                                      modbus.0
                                      2024-06-05 20:08:21.479 debug Initialize Objects for disInputs: []

                                      modbus.0
                                      2024-06-05 20:08:21.326 info starting. Version 6.1.0 in /opt/iobroker/node_modules/iobroker.modbus, node: v20.14.0, js-controller: 5.0.19

                                      modbus.0
                                      2024-06-05 20:08:20.894 debug Plugin sentry Initialize Plugin (enabled=true)

                                      modbus.0
                                      2024-06-05 20:08:20.856 debug States connected to redis: 127.0.0.1:9000

                                      modbus.0
                                      2024-06-05 20:08:20.796 debug States create User PubSub Client

                                      modbus.0
                                      2024-06-05 20:08:20.795 debug States create System PubSub Client

                                      modbus.0
                                      2024-06-05 20:08:20.787 debug Redis States: Use Redis connection: 127.0.0.1:9000

                                      modbus.0
                                      2024-06-05 20:08:20.768 debug Objects connected to redis: 127.0.0.1:9001

                                      modbus.0
                                      2024-06-05 20:08:20.759 debug Objects client initialize lua scripts

                                      modbus.0
                                      2024-06-05 20:08:20.742 debug Objects create User PubSub Client

                                      modbus.0
                                      2024-06-05 20:08:20.739 debug Objects create System PubSub Client

                                      modbus.0
                                      2024-06-05 20:08:20.728 debug Objects client ready ... initialize now

                                      modbus.0
                                      2024-06-05 20:08:20.688 debug Redis Objects: Use Redis connection: 127.0.0.1:9001
                                      host.raspberrypi
                                      2024-06-05 20:08:19.378 info instance system.adapter.modbus.0 started with pid 3270
                                      host.raspberrypi
                                      2024-06-05 20:08:19.252 info "system.adapter.modbus.0" enabled

                                      1 Antwort Letzte Antwort
                                      0
                                      • H Offline
                                        H Offline
                                        Hochgern
                                        schrieb am zuletzt editiert von
                                        #136

                                        Hallo, ich bin neu hier und habe folgendes Problem.
                                        Wechselrichter Goodwe ET29.9
                                        Kann via Modbus RTU Daten lesen und auch schreiben.
                                        Nur finde ich nicht raus, wie ich den Wechselrichter gezielt sagen kann, dass die Batterie jetzt mit einem Strom von xA geladen werden soll.
                                        Kann mir jemand weiterhelfen?

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • H Hochgern

                                          Hallo, ich bin neu hier und habe folgendes Problem.
                                          Wechselrichter Goodwe ET29.9
                                          Kann via Modbus RTU Daten lesen und auch schreiben.
                                          Nur finde ich nicht raus, wie ich den Wechselrichter gezielt sagen kann, dass die Batterie jetzt mit einem Strom von xA geladen werden soll.
                                          Kann mir jemand weiterhelfen?

                                          M Offline
                                          M Offline
                                          Michi_Pi
                                          schrieb am zuletzt editiert von
                                          #137

                                          Hi @hochgern, es gibt verschiedene Möglichkeiten den Speicher zu laden. Ich selbst steuere das über die Schnelllade Funktion, das sind die Register 47545 = Fast chargin aktivieren, 47646 = SOC Stop und 47603 = Ladeleistung in %. Früher hab ich einfach den SOC minimum 45346 auf den gewünschten SOC wert eingestellt und dann wieder zurück bis der gewünschte Ladezustand erreicht wurde. Das funktioniert nur noch bedingt bei mir, da nur noch mit 450W geladen wird, wieso auch immer. Über die Register 47511 und 47512 würde auch gehen.

                                          G 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          557

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe