NEWS
Modbus: Solax Hybrid X3 Gen4 schreiben
-
Ich versuche gerade, bei meinem WR Register zu beschreiben.
Im Detail geht's darum, den Modus zu ändern.
Das quittiert der WR mit einem Fehler:2025-06-12 13:48:16.856 error Cannot write multiple registers [0]: {"err":"timeout","timeout":5000} 2025-06-12 13:48:16.856 error Client in error state. 2025-06-12 13:48:16.856 error Request timed out. 2025-06-12 13:48:16.856 warn Error: undefined
Was eigentlich auch erwartbar ist, da das entsprechende Register (alle!) lt. Doku nur lesbar ist.
Hat das jemand schon mal umgesetzt?
Meinen Recherchen zufolge gibt es wohl beschreibbare Register. Aber die Doku hält Solax da unter Verschluss. -
@codierknecht
jepp... müsste die 31 sein...unsigned 16 Bit BEich gehe aber über einen Modbusproxy... ohne Aliase
-
@docsnyder7 sagte in Modbus: Solax Hybrid X3 Gen4 schreiben:
müsste die 31
0x0031 oder dezimal?
Hex würde ja passen:
Hast Du 'ne Doku?
-
@codierknecht
die gleich wie Du... scroll die pdf mal runter auf seite 450x001F
SolarChargerUseMode
W
0:Self use mode 1:Feed-in priority 2:Back up mode 3:Menual modeder Modbus Adapter nimmt bei mir dann die 31 unter Holdings
-
So gleich wohl doch nicht
Meine hat nur 37 Seiten und 0x001F ist dort lediglich als "REV" (ReadOnly) gelistet.
Kannst Du Deine mal hier anhängen?
-
Hybrid-X1X3-G4-ModbusTCPRTU-V3.21-English_0622-public-version.pdf
Seite 45... ist zwar die G4 pdf , klappt aber auch beim G2
-
@docsnyder7
Ich habe den G4. Aber so wirklich passend sieht das nicht aus.
Einfach mal ausprobieren würde ich das so nicht wollen.
Du hast das bei den Holding-Registern eingetragen?Ist da sonst noch was umzustellen?
-
Greifst du direkt auf den Solax zu? Dann musst du glaube ich mit alias arbeiten und dann sehen die Register anders aus… statt 31 ist das dann 40032 glaube ich…und bei mi ist ein Modbusproxy dazwischen deswegenns Tat Port 502
Der 5021
Und den datenpunkt schreibst du mit dem korrekten Wert.. als 0, 1,2 etc… der Wert der dort aber steht ist 2800 bei mir -
Das,sind meine Holdings… mer mit den korrespondierenden read zum Write Register , um das Ergebnis zu checken -
@docsnyder7 sagte in Modbus: Solax Hybrid X3 Gen4 schreiben:
Greifst du direkt auf den Solax zu? Dann musst du glaube ich mit alias arbeiten und dann sehen die Register anders aus… statt 31 ist das dann 40032 glaube ich…
Ich greife mit einem Waveshare TCP/RS485 Konverter auf den WR zu.
Aliase verwende ich keine. -
@codierknecht dann leg doch noch die 139 an.. als DP, um zu sehen, wenn du in die 31 einen 1 oder 2 schreibst, siehst du dort , ob es auch passiert
-
Nach dem Motto "Versuch macht klug" probiert.
2025-06-13 13:54:54.166 error Cannot write single register [31]: {"err":"timeout","timeout":5000} 2025-06-13 13:54:54.166 error Client in error state. 2025-06-13 13:54:54.166 error Request timed out. 2025-06-13 13:54:54.165 warn Error: undefined
Muss da vorher ein Passwort in Register 0 gesetzt werden?
-
hast du als Typ: master oder Slave? in deinem Screenshot war nix ausgewählt
-
@docsnyder7 sagte in Modbus: Solax Hybrid X3 Gen4 schreiben:
hast du als Typ: master oder Slave?
Keines von beiden.
Hat zum Lesen einwandfrei funktioniert -
@codierknecht
meine kompletten Einstellungen...
-
@docsnyder7
Auch mit "Master" tut es das nicht.
Lesen geht weiterhin einwandfrei. -
@docsnyder7 sagte in Modbus: Solax Hybrid X3 Gen4 schreiben:
dann leg doch noch die 139 an.. als DP, um zu sehen, wenn du in die 31 einen 1 oder 2 schreibst, siehst du dort , ob es auch passiert
Den hatte ich schon die ganze Zeit drin.
Schreiben in 31 wird ja mit 'nem Error quittiert. Da passiert dann an 139 logischerweise auch nix. -
@codierknecht mir lag noch nahe, dass TCP evt nicht richtig ist, wenn du einen Adapter benutzt.. aber lesen geht ja
-
@codierknecht bist du weitergekommen?
-
@docsnyder7 sagte in Modbus: Solax Hybrid X3 Gen4 schreiben:
bist du weitergekommen?
Nö
Ich finde - wenn überhaupt - auch nur Register 0x001F.
Schreiben wird vom Adapter mit 'nem Fehler quittiert. Auch schreiben mit einem Modbus-Testtool funzt nicht.
Vielleicht schreibe ich Solax (oder in meinem Fall QCells - sind baugleich) mal an.Ob's an meinem Konverter liegen kann? Keine Ahnung