Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden

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

      Hallo zusammen,

      ich hab einen SH10RT und einen SG7.0 Wechselrichter im Retrofit-Modus.

      Die Darstellung des Hausverbrauches will bei mir einfach nicht passen...
      Über Modbus lese ich die AC Wirkleistung von beiden Wechselrichtern aus (#5030) und addiere diese zzgl. 140W, allerdings ist es nicht der korrekte Wert für den in der App dargestellten Wert. Natürlich sind die Werte in der App etwas zeitversetzt, aber bei mir ist die zeitliche Abweichung gering. Jemand eine Idee was ich hier falsch mache?

      1.JPG 2.JPG

      1 Reply Last reply Reply Quote 0
      • D
        DRUROB last edited by

        Hallo!

        Ich habe die Problematik, dass die Werte für die Batterieladeleistung überhaupt nicht mehr passen.
        Ich kann euch nicht mal genau sagen seit wann der Fehler da ist....
        Im register 13021 stehen immer Werte (also falls der Ladevorgang aktiv ist) um die 64.000 (tausend) drin. Im Register 13020 für die Ampere sind ebenfalls nur 64.000er Werte vorhanden, allerdings ist ja hier in der Grundkonfig bereits ein Faktor 0.1 hinterlegt. Daher denke ich das das Grundproblem aus den 13020 herkommt und er intern die Ladeleistung aus 13019 und 13020 berechnet. Ich habe die Einstellungen konntrolliert aber die sind immer noch die gleichen wie bei allen Eingangsregistertabellen die ich hier im Forum finden konnte. Type "Unsigned 16bit (Big Endian)
        Oder hat sich das irgendwie geändert?
        Im Sungrow gab es keine Umstellung die ich nicht mitbekommen habe?

        VG!

        W 1 Reply Last reply Reply Quote 0
        • W
          wolfi913 @DRUROB last edited by

          @drurob

          Im Sungrow gab es keine Umstellung die ich nicht mitbekommen habe?

          Könnte sein das Sungrow da an der Firmware gedreht hat.
          Bei mir passen die Modbus-Register (noch).

          Aber bei evcc findet sich dazu auch schon was in der Richtung:
          https://github.com/evcc-io/evcc/issues/18270
          Möglicherweise hilft das ja weiter.

          Bluppy created this issue in evcc-io/evcc

          closed Sungrow SH15 Batterie Ladung wird nicht erkannt. #18270

          D 1 Reply Last reply Reply Quote 0
          • D
            DRUROB @wolfi913 last edited by

            @wolfi913 Danke, ich habe mir das mal kurz überflogen. tatsächlich gab es wohl eine neue Firmware. Ich schau mal ob ich die schon bekommen habe .... Grüße!

            1 Reply Last reply Reply Quote 0
            • D
              DRUROB last edited by DRUROB

              Tatsächlich gab es ein Update....na super.
              Nachdem ich mich nun ewig nicht damit beschäftigt habe und auch glücklicherweise nicht musste, habe ich ich natürlich jetzt ganz schön Nachholbedarf.

              Bei meiner Einrichtung damals waren die Register für Batterie und Smartmeter noch gar kein Thema.
              Jetzt wo ich schon mal bei bin möchte ich die ebenfalls einpflegen, aber....
              Ich such wie doof aber in den derzeit angebotenen Dateien finden sich die Register aber nicht.
              Kann mir jemand bitte die Dateien geben wo drin ich die Angaben zu den verfügbaren Registern für Batterie und Smartmeter finde? ich würde dann die Dateien zusammenführen und hier wieder rein posten, dann hat es der nächste vielleicht etwas leichter.

              Ich ärgere mich etwas darüber den Post mit den Angaben nicht gespeichert zu haben, aber ich hoffe wir finden den gemeinsam wieder....

              EDIT:
              wer suchet der findet..... was man nicht im Kopf hat.......
              https://github.com/c0ldtech/sungrow/blob/main/sungrow_input_registers_multiple_IDs.tsv

              M 1 Reply Last reply Reply Quote 0
              • M
                McBeath @DRUROB last edited by

                @DRUROB
                Mein Input Register vom SH8 RT

                _address	name	description	unit	type	len	factor	offset	formula	role	room	cw	isScale
                4999	Device type code	Geräte Typ-Code		int8be	1	1	0		value		false	false
                5000	Nominal Output Power	Installierte Leistung	Kw	uint16be	1	0.1	0		value		false	false
                5001	Output	Type		uint16be	1	1.0	0		value		false	false
                5002	Daily  Output Energy	Eigene Energienutzung heute (PV & Akku)	Kwh	uint16be	1	0.1	0		value		false	false
                5003	Total Output Energy	Eigene Energienutzung gesamt (PV & Akku)	Kwh	uint32sw	2	0.1	0		value		false	false
                5005	Total Runing Time	Laufzeit der Anlage	h	uint32sw	2	1.0	0		value		false	false
                5007	Inside  Temperature	Temperatur im Wechselrichter	°C	int16be	1	0.1	0		value		false	false
                5010	MPPT 1 Voltage	MPPT1 Spannung	V	uint16be	1	0.1	0		value		false	false
                5011	MPPT 1 Current	MPPT1 Strom	A	uint16be	1	0.1	0		value		false	false
                5012	MPPT 2 Voltage	MPPT2 Spannung	V	uint16be	1	0.1	0		value		false	false
                5013	MPPT 2 Current	MPPT2 Strom	A	uint16be	1	0.1	0		value		false	false
                5016	Total DC Power	Aktuell PV-Leistung DC	W	uint32sw	2	1	0		value		false	false
                5018	Spannung Ph A	Spannung Phase L1	V	uint16be	1	0.1	0		value		false	false
                5019	Spannung Ph B	Spannung Phase L2	V	uint16be	1	0.1	0		value		false	false
                5020	Spannung Ph C	Spannung Phase L3	V	uint16be	1	0.1	0		value		false	false
                5030	Total Active Power	Wirkleistung	W	int32sw	2	1.0	0		value		false	false
                5032	Reactive Power	Blindleistung	VA®	int32sw	2		0		value		false	false
                5034	Power Factor	Leistungsfaktor		int16be	1	0.001	0		value		false	false
                5035	Grid Frequency	Netzfrequenz	Hz	uint16be	1	0.01	0		value		false	false
                12999	System State	Systemstatus		uint16be	1	1	0		value		false	false
                13000	Running State	Betriebsstatus		uint16be	1	1	0		value		false	false
                13001	Daily PV Generation	PV-Stromerzeugung heute	Kwh	uint16be	1	0.1	0		value		false	false
                13002	Total PV  Generation	PV-Stromerzeugung gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13004	Daily export  energy from PV	PV-Einspeise Energie heute	Kwh	uint16be	1	0.1	0		value		false	false
                13005	Total export  energy from PV	PV-Einspeise Energie gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13007	Load power 	Aktuelle Last	W	uint32sw	2	1	0		value		false	false
                13009	Export power	Aktuelle Leistung am Übergabepunkt	W	int32sw	2	1	0		value		false	false
                13011	Daily battery charge energy from PV	Energie in Speicher aus PV heute	Kwh	uint16be	1	0.1	0		value		false	false
                13012	Total battery charge energy from PV	Energie in Speicher aus PV gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13014	C02 Reduction	C02 Einsparung	kg	uint32sw	2	0.1	0		value		false	false
                13016	Daily direct  Energy Consumption	Direkter Eigenverbrauch aus PV heute	Kwh	uint16be	1	0.1	0		value		false	false
                13017	Total direct  Energy Consumption	Direkter Eigenverbrauch aus PV gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13019	Battery voltage	Batteriespannung	V	uint16be	1	0.1	0		value		false	false
                13020	Battery current	Batteriestrom	A	uint16be	1	0.1	0		value		false	false
                13021	Battery power	Batterieent-Ladeleistung	W	uint16be	1	1	0		value		false	false
                13022	Battery level	Batteriekapazität	%	uint16be	1	0.1	0		value		false	false
                13023	Battery state of health	Gesundheit der Batterie	%	uint16be	1	0.1	0		value		false	false
                13024	Battery Temperature	Batterietemperatur	°C	int16be	1	0.1	0		value		false	false
                13025	Daily battery discharge Energy	Tägliche Entladungsenergie der Batterie	Kwh	uint16be	1	0.1	0		value		false	false
                13026	Total battery discharge Energy	Gesamte Entladungsenergie der Batterie	Kwh	uint32sw	2	0.1	1		value		false	false
                13028	Self-consumption of today	Heutiger Anteil des Eigenverbrauches	%	uint16be	1	0.1	0		value		false	false
                13029	Grid state	Netzstatus		uint16be	1	0.1	0		value		false	false
                13030	Phase A current	Strom Phase L1 aktuell	A	uint16be	1	0.1	0		value		false	false
                13031	Phase B current	Strom Phase L2 aktuell	A	uint16be	1	0.1	0		value		false	false
                13032	Phase C current	Strom Phase L3 aktuell	A	uint16be	1	0.1	0		value		false	false
                13033	Total active power	Aktuell PV-Leistung AC	W	int32sw	2	1	0		value		false	false
                13035	Daily Import Energy	Energie Bezug heute	Kwh	uint16be	1	0.1	0		value		false	false
                13036	Total Import Energy	Energie Bezug gesamt	Kwh	uint16be	1	0.1	0		value		false	false
                13038	Battery Capacity	Batterie-Kapazität	Kwh	uint16be	1	0.1	0		value		false	false
                13039	Daily Charge Energy	Batterie-Ladeenergie heute	Kwh	uint16be	1	0.1	0		value		false	false
                13040	Total Charge Energy	Batterie-Ladeenergie gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13044	Daily export energy	Energie Netzeinspeisung heute	Kwh	uint16be	1	0.1	0		value		false	false
                13045	Total export energy	Energie Netzeinspeisung gesamt	Kwh	uint32sw	2	0.1	0		value		false	false
                13049	Inverter alarm	Inverter alarm		uint32sw	2	1	0		value		false	false
                13051	Grid-side fault	Netzfehler		uint32sw	2	1	0		value		false	false
                13053	System fault 1	System Fehler 1		uint32sw	2	1	0		value		false	false
                13055	System fault 2	System Fehler 2		uint32sw	2	1	0		value		false	false
                13057	DC-side fault	Fehler DC-Seitig		uint32sw	2	1	0		value		false	false
                13059	Permanent fault	Permanenter Fehler		uint32sw	2	1	0		value		false	false
                13061	BDC-side fault	BDC-side fault		uint32sw	2	1	0		value		false	false
                13063	BDC-side permanent fault	BDC-side permanent fault		uint32sw	2	1	0		value		false	false
                13065	Battery fault	Batterie Fehler		uint32sw	2	1	0		value		false	false
                13067	Battery alarm	Battery Alarm		uint32sw	2	1	0		value		false	false
                13069	BMS alarm	BMS Alarm		uint32sw	2	1	0		value		false	false
                13071	BMS protection	BMS Sicherung		uint32sw	2	1	0		value		false	false
                13073	BMS fault 1	BMS Fehler 1		uint32sw	2	1	0		value		false	false
                13075	BMS fault 2	BMS Fehler 2		uint32sw	2	1	0		value		false	false
                13077	BMS alarm 2	BMS Alarm 2		uint32sw	2	1	0		value		false	false
                
                D 1 Reply Last reply Reply Quote 0
                • D
                  DRUROB @McBeath last edited by

                  @mcbeath Hi! Danke dir aber das sind die Register die ich ja schon hatte.
                  Neu ist ja die Variante mit dem Auslesen der DTSU Werte und der Batterie.
                  Kannst ja mal den Link in meinem Post folgen, vielleicht ist das ja was für dich

                  W 1 Reply Last reply Reply Quote 0
                  • W
                    wolfi913 @DRUROB last edited by

                    @drurob @McBeath

                    Falls es weiterhilft.
                    Hab das hierzu noch gefunden:
                    https://github.com/mkaiser/Sungrow-SHx-Inverter-Modbus-Home-Assistant

                    Dort wurde für die Register 13020 und 13021 von uint16 auf int16 umgestellt (sofern ich das richtig erkannt habe).

                          - name: Battery current
                            unique_id: sg_battery_current
                            device_address: !secret sungrow_modbus_slave
                            address: 13020 # reg 13021
                            input_type: input
                            data_type: int16
                            precision: 1
                            unit_of_measurement: A
                            state_class: measurement
                            device_class: Current
                            scale: 0.1
                            scan_interval: 10
                    
                          # old firmware ( before october 2024): always positive battery power
                          # use binary_sensor.battery_charging | discharging to retrieve the direction of the energy flow
                          # new firmware: positive if charging and negative if discharging
                          # with new firmware installed we could use this raw value directly as signed battery power
                          # to support both firmwares we use the template sensor "signed battery power"
                          - name: Battery power raw
                            unique_id: sg_battery_power_raw
                            device_address: !secret sungrow_modbus_slave
                            address: 13021 # reg 13022
                            input_type: input
                            data_type: int16 #updated to signed int, see issue #406
                            precision: 0
                            unit_of_measurement: W
                            device_class: power
                            state_class: measurement
                            scale: 1
                            scan_interval: 10
                    
                    

                    Falls das klappt wird Register 13021 dann mit +/- geliefert. Dann müsste, wenn mit Script weiterverarbeitet wird, auf
                    Screenshot 2025-02-04 093407.png
                    bzw.

                      // Modbus 13021_Battery_power
                      battery = Math.abs(getState('modbus.0.inputRegisters.13021_Battery_power_').val);
                    

                    umgestellt werden (um evtl. Vorzeichen wieder zu entfernen), sofern die Lade-/Entladeleistung über den RunningState ermittelt wird.
                    Screenshot 2025-02-04 093917.png

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      DRUROB @wolfi913 last edited by

                      @wolfi913 Klasse Erklärung! Danke dir. Genau das hatte ich heute bei meiner Recherche auch vermutet und mit den int / uint Werten rumgespielt. Zack war es wieder korrekt. Das ist echt ne doofe Umstellung, ich werde mal eine Änderung bei github beim Ersteller der Liste anmerken, dann tappt der nächste nicht auch in diese "Falle".
                      Klasse Forumsleute hier! Riesen Dank an alle!

                      M 1 Reply Last reply Reply Quote 1
                      • burghardpoe
                        burghardpoe @ms111175 last edited by

                        @ms111175 Hallo ms111175, ich habe genau das gleiche Problem. Wie hast du das damals gelöst? Ist ja schon eine ganze weile her.

                        1 Reply Last reply Reply Quote 0
                        • L
                          lxa83 last edited by

                          Ist mittlerweile in der neusten Winet-S2 Firmware die Möglichkeit gegeben dann endlich den MPPT3 abzufragen? Weil dann würde ich den Firmwareupdate beauftragen. Ansonsten muss ich den Waveshare mit RS485 / Ethernet anschließen.

                          1 Reply Last reply Reply Quote 0
                          • J
                            jwerlsdf last edited by

                            Hallo,
                            Bei uns ist seit dieser Woche ein Sungrow SH 20T verbaut. Jetzt würde ich Ihn gerne einbinden. Aber leider weiß ich nicht genau wie ich das machen muss.
                            Folgendes habe ich bisher schon verstanden.

                            1. Ich habe nur einen LAN Port am WR. Ich benötige wohl zusätzliche Hardware, um per modbus die Daten abzugreifen. Aktuell ist der LAN Port bereits belegt, da icu die Daten nicut über WLAN sende. Welches Hardware Modul kann man mir empfehlen? Was benötige icu genau?
                            2. Es soll wohl über den waveshare funktionieren. Aktuell habe icu bereits einen, um meine beiden eastron Zähler einzubinden. Kann ich diesen dafür Mitbenutzen oder benötige icu einen komplett neuen? Wie muss icu das anschließen?

                            Ich hoffe, es kann mir jemand helfen.

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              GombersIOB @jwerlsdf last edited by

                              @jwerlsdf
                              Ein LAN-Port reicht. Obwohl das jetzt das erste Mal ist, dass ich von jemanden höre, es gebe nur einen LAN-Port.
                              Ansonsten ist die Einrichtung eigentlich schon mit dem ersten Beitrag dieses Threads gut beschrieben. Wenn Du mal ganz nach oben scrollst findest Du es.
                              Die Registerbelegung findest Du auf GitHub (https://gist.github.com/dnoegel/543c72ef722365a3934bbad0bb43e222).

                              Ich würde da aber sukzessive vorgehen. Immer mal 5 Register eintragen und schauen obs funktioniert und dann weiter.

                              G J 2 Replies Last reply Reply Quote 0
                              • G
                                GombersIOB @GombersIOB last edited by

                                @gombersiob

                                Aktuell ist der LAN Port bereits belegt

                                Die Aussage verstehe ich nicht. Was heißt denn belegt? Man braucht doch nicht für jede Port-Adresse an einem Server einen eigenen LAN-Port!

                                Es soll wohl über den waveshare funktionieren.

                                Den Begriff kenne ich nicht. Wenn ich es suche, ist es wohl einfach nur eine Implementation, Modbus-Daten bereitzustellen. Aber wie das gemacht wird, ist doch vermutlich egal. Du brauchst die IP-Adresse und den Port, fertig!

                                1 Reply Last reply Reply Quote 0
                                • J
                                  jwerlsdf @GombersIOB last edited by jwerlsdf

                                  @gombersiob
                                  Also ich habe jetzt keine weiter Hardware angeschlossen. Lan kabel steckt. Dementsprechend kein WLAN.
                                  Ich habe die Einstellungen wie geschrieben entsprechend vorgenommen, der Adapter geht auf grün, aber ich bekomme keine Werte rein. Anbei zwei Bilder.
                                  Screenshot_20250214-191527_Chrome.jpg
                                  Screenshot_20250214-191417_Chrome.jpg
                                  Wo liegt mein Fehler?

                                  Folgende Fehler kommen

                                  modbus.1
                                  2025-02-14 19:36:58.348	error	Invalid object: {"type":"state","common":{"name":"Geräte Typ-Code","role":"value","type":"number","read":true,"write":false,"def":0,"unit":""},"native":{"regType":"inputRegs","address":-25002,"deviceId":1,"type":"int8be","len":"1","offset":"0","factor":"1"}}
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.348	error	Invalid data inputRegisters/0: {"_address":-25002,"name":"Device type code","description":"Geräte Typ-Code","unit":"","type":"int8be","len":"1","factor":"1","offset":"0","formula":"","role":"value","room":"","cw":false,"isScale":false,"deviceId":1,"address":-25002,"fullId":"modbus.1.0"}
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.347	error	Invalid inputRegisters address: -25002
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.347	error	Invalid inputRegisters address: -25001
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.347	error	Invalid inputRegisters address: -24999
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.346	error	Invalid inputRegisters address: -24998
                                  
                                  modbus.1
                                  2025-02-14 19:36:58.346	error	Invalid inputRegisters address: -24994
                                  

                                  Unter WiNet-S2 System Weiterleitung der Informationen ist als Modbus die IP vom iobroker bereits automatisch eingetragen. Passt also. Scheint wohl an den register Einträgen zu liegen oder?

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    GombersIOB @jwerlsdf last edited by

                                    @jwerlsdf said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:

                                    -25002

                                    Ein negatives Register "-25002" kann es nicht geben. Da sind Typo-Fehler in der Definition. Das sieht man auch in den in den Objekten gezeigten Namen. "NAN" bedeutet "Not A Number". Das heißt der Wert der an der Stelle, wo das Register erwartet wird, ausgelesen wird, ist eben keine Zahl.

                                    Nur um einen Eindruck zu geben, wie das Ergebnis der EIngabe etwa aussehen müsste, sei hier mal ein Screenshot meiner Eingangsregister:
                                    2929f7ed-1700-4bcf-ae2d-61d1db57008f-grafik.png

                                    Vielleicht kannst Du ja damit den Fehler finden.

                                    J 1 Reply Last reply Reply Quote 0
                                    • J
                                      jwerlsdf @GombersIOB last edited by

                                      @gombersiob
                                      Danke. Bei mir hat der slave gefehlt. Alias aus den Einstellungen rausgenommen und mehrere slaves hacken rein.
                                      Jetzt habe ich zwei erfolgreich drinnen und bekomme die Werte. Nehme ich die Liste von github funktioniert es nicht, da dort der slave fehlt. Füge ich den hinzu bekomme ich einen Fehler weil irgendwas an der falschen Position ist. Hast du vlt für mich eine fertige Liste als Txt die ich importieren kann oder wie kann ich die Liste richtig bearbeiten und dann importieren?

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        berlinerbolle @jwerlsdf last edited by

                                        @jwerlsdf

                                        https://github.com/c0ldtech/sungrow

                                        Da steht auch ein kurzer Text dazu. Aber @GombersIOB hat bestimmt auch eine einfachere Liste.

                                        G 1 Reply Last reply Reply Quote 0
                                        • G
                                          GombersIOB @berlinerbolle last edited by

                                          @berlinerbolle

                                          Meine Liste habe ich schon mehrfach in diesem Thread gepostet. Den Slave muss man auch nur bei einer bestimmten Adapter-Einstellung eingeben. Was genau das war, fällt mir gerade nicht ein, ich komme auch nicht an die Einstellungen.
                                          Den Slave kann man auch einfach in die Liste an die zweite Stelle hineineditieren und dann importieren.
                                          Meine Liste zu nehmen ist vielleicht nicht sinnvoll. Sie ist von eine SH08RT, womöglich hat sich da mittlerweile waa geändert. Manches unterscheidet sich sowieso von WR zu WR. Wirklich sicher ist man nur mit der Beschreibung.

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            berlinerbolle @GombersIOB last edited by

                                            @gombersiob

                                            Auch wieder wahr. Die die ich gepostet habe, ist von einem SH10RT.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            840
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            hardware sungrow sgh10rt modbu
                                            130
                                            860
                                            279249
                                            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