Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [How-To] Goodwe Wechselrichter und Modbus TCP

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [How-To] Goodwe Wechselrichter und Modbus TCP

    This topic has been deleted. Only users with topic management privileges can see it.
    • JB1985
      JB1985 last edited by

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

      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.

      Immer eine feste IP eintrage. Auf der Fritzbox UND auf dem GoodWe Adapter!

      1 Reply Last reply Reply Quote 0
      • Frank Zoellner
        Frank Zoellner @Unbeliveable89 last edited by

        @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 Reply Last reply Reply Quote 0
        • U
          Unbeliveable89 last edited by Unbeliveable89

          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 Reply Last reply Reply Quote 0
          • 2
            2schaf @Flash last edited by 2schaf

            @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 Reply Last reply Reply Quote 0
            • Frank Zoellner
              Frank Zoellner last edited by

              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 ?

              JB1985 P 2 Replies Last reply Reply Quote 0
              • JB1985
                JB1985 @Frank Zoellner last edited by

                @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 Zoellner 1 Reply Last reply Reply Quote 0
                • Frank Zoellner
                  Frank Zoellner @JB1985 last edited by

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

                  1 Reply Last reply Reply Quote 0
                  • P
                    paeppi @Frank Zoellner last edited by

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

                    Frank Zoellner 1 Reply Last reply Reply Quote 0
                    • Frank Zoellner
                      Frank Zoellner @paeppi last edited by

                      @paeppi ok danke

                      1 Reply Last reply Reply Quote 0
                      • M
                        Michi_Pi @zaphood last edited by

                        @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 Reply Last reply Reply Quote 0
                        • D
                          DatzerF @Michi_Pi last edited by

                          @michi_pi
                          Frohe 🎄 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 Reply Last reply Reply Quote 0
                          • M
                            Michi_Pi @DatzerF last edited by

                            @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 Reply Last reply Reply Quote 0
                            • D
                              DatzerF @Michi_Pi last edited by

                              @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 Reply Last reply Reply Quote 0
                              • D
                                DatzerF last edited by

                                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 Reply Last reply Reply Quote 0
                                • D
                                  DatzerF @Achim last edited by

                                  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 Reply Last reply Reply Quote 0
                                  • J
                                    JayJay 0 last edited by

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

                                    1 Reply Last reply Reply Quote 0
                                    • R
                                      revilo1337 @JayJay 0 last edited by

                                      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 Reply Last reply Reply Quote 0
                                      • E
                                        enti123 @xReactz last edited by

                                        @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 Reply Last reply Reply Quote 0
                                        • S
                                          Stromy last edited by

                                          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 Reply Last reply Reply Quote 0
                                          • H
                                            Hochgern last edited by

                                            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 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            goodwe modbus tcp tcpip
                                            40
                                            144
                                            44828
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo