Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Moderator: Ulrich
Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Nach einem Update der Firmware des Wechselrichters wird der SOC immer mit 100% angezeigt. Weiterhin scheint der Batteriestrom negiert dargestellt zu werden.
Unter https://github.com/mkaiser/Sungrow-SHx- ... issues/406 ist für Homematic das gleiche Thema gelistet. Es wurden anscheinend bei zwei Registern die Datentypen von uint16 auf int16 gewechselt. Ich habe das auch als Test bereits einmal gemacht ("U16" nach "I16" in Sungrow.php in Zeile 493 ) es ist aber leider kein Effekt zu sehen.
Wie können wir das Problem lösen?
Unter https://github.com/mkaiser/Sungrow-SHx- ... issues/406 ist für Homematic das gleiche Thema gelistet. Es wurden anscheinend bei zwei Registern die Datentypen von uint16 auf int16 gewechselt. Ich habe das auch als Test bereits einmal gemacht ("U16" nach "I16" in Sungrow.php in Zeile 493 ) es ist aber leider kein Effekt zu sehen.
Wie können wir das Problem lösen?
- Ulrich
- Administrator
- Beiträge: 6320
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 159 Mal
- Danksagung erhalten: 933 Mal
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Welche Register sollen das denn sein?
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Hallo, danke für die schnelle Antwort.
<Sungrow.php>
......
$RegisterAdresse = (13023 - 1); // Dezimal
$RegisterAnzahl = "0001"; // HEX
$DatenTyp = "I16"; // war U16
$Ergebnis = $funktionen->modbus_tcp_lesen($COM1, $GeraeteAdresse, $FunktionsCode, $RegisterAdresse, $RegisterAnzahl, $ if (is_array($Ergebnis)) {
$aktuelleDaten["SOC"] = ($Ergebnis["Wert"] / 10 );
} else {
$funktionen->log_schreiben("Lesefehler => Ausgang.", " ", 5);
goto Ausgang;
}
--> LOG ergibt irgendwo bei ca. 50% das hier...
01.12. 10:29:07 -Befehl => 005800000006010432de0001
01.12. 10:29:07 -Antwort => 00580000000501040203e8
Ausgelesen wird 100%
<Sungrow.php>
......
$RegisterAdresse = (13023 - 1); // Dezimal
$RegisterAnzahl = "0001"; // HEX
$DatenTyp = "I16"; // war U16
$Ergebnis = $funktionen->modbus_tcp_lesen($COM1, $GeraeteAdresse, $FunktionsCode, $RegisterAdresse, $RegisterAnzahl, $ if (is_array($Ergebnis)) {
$aktuelleDaten["SOC"] = ($Ergebnis["Wert"] / 10 );
} else {
$funktionen->log_schreiben("Lesefehler => Ausgang.", " ", 5);
goto Ausgang;
}
--> LOG ergibt irgendwo bei ca. 50% das hier...
01.12. 10:29:07 -Befehl => 005800000006010432de0001
01.12. 10:29:07 -Antwort => 00580000000501040203e8
Ausgelesen wird 100%
- Ulrich
- Administrator
- Beiträge: 6320
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 159 Mal
- Danksagung erhalten: 933 Mal
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Die Ausgabe des Registers ist Hex 0x03e8 = 1000/10 = 100%
Den HEX Wert kannst du umwandeln wie du willst, es bleibt bei 100%
Da muss sich also das Register geändert haben.
Der Batteriestrom und die Batterieleistung wird jetzt positiv bei Ladung und negativ bei Entladung angezeigt. Das habe ich jetzt in dem Update geändert.
Den HEX Wert kannst du umwandeln wie du willst, es bleibt bei 100%
Da muss sich also das Register geändert haben.
Der Batteriestrom und die Batterieleistung wird jetzt positiv bei Ladung und negativ bei Entladung angezeigt. Das habe ich jetzt in dem Update geändert.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Ah oh, dann muss ich da meine Anpassung in der .math deaktivieren. Danke.
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Hallo, wie könnte man herausbekommen, welches Register das nun ist?
Könnte das auch int32 oder uint32 sein? Die Doku auf Github wurde im Mätz geändert auf
13022 Battery level Batteriekapazität % uint16be 1 0.1 0 value false false
Das wäre unt16 big endian. evtl. ist das nun wieder anders?
Könnte das auch int32 oder uint32 sein? Die Doku auf Github wurde im Mätz geändert auf
13022 Battery level Batteriekapazität % uint16be 1 0.1 0 value false false
Das wäre unt16 big endian. evtl. ist das nun wieder anders?
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Hier ein Beitrag zum gleichen Thema https://github.com/evcc-io/evcc/issues/17461
Die Firmware ist folgende:
MDSP Version SAPPHIRE-H_03011.95.03
LCD Version SAPPHIRE-H_01011.95.03
Die Firmware ist folgende:
MDSP Version SAPPHIRE-H_03011.95.03
LCD Version SAPPHIRE-H_01011.95.03
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Es scheint so zu sein, das am internen LAN Anschluss einige Akkuwerte mit einem falschen Datentyp ausgegeben werden (der SOC ist dort Ok). Am WiNet Dongle wird der SOC immer als 100% geliefert.
Der Sungrowsupport hat noch gar nicht reagiert.
Der Sungrowsupport hat noch gar nicht reagiert.
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Nach einem Downgrade der Wechselrichters läuft erst einmal wieder alles.
Re: Sungrow SH8.0RT-V112 mit neuer Firmware zeigt immer SOC 100%
Die SOC Anzeige in der Geräteuberwachung im WiNet-S zeigt auch schon die 100 Prozent. Es ist kein modbusproblem.
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste