photron Geschrieben February 27, 2025 at 11:03 Geschrieben February 27, 2025 at 11:03 @j.esser Installier mal bitte diese Firmware. Diese behebt das Problem nicht, gibt aber im Debug Report mehr Inforationen aus mit denen ich herausfinden kann, warum es nicht funktioniert. Edit: Veraltete Firmware entfernt. Zitieren
j.esser Geschrieben February 27, 2025 at 16:22 Geschrieben February 27, 2025 at 16:22 On 2/27/2025 at 12:03 PM, photron said: @j.esser Installier mal bitte diese Firmware. Diese behebt das Problem nicht, gibt aber im Debug Report mehr Inforationen aus mit denen ich herausfinden kann, warum es nicht funktioniert. Anbei die Logs wem-26Ji-Debug-Report-2025-02-27T17-22-14-242.txt wem-26Ji-SunSpec-Gerätesuche-2025-02-27T17-21-49-575.txt Zitieren
photron Geschrieben February 28, 2025 at 17:22 Geschrieben February 28, 2025 at 17:22 @j.esser Die aufgezeichnten Daten sehen gut aus. Aber die DC-Anschlussart für das Modell 714 steht auf NotImplemented anstatt PV. Das sollte das Webinterface garnicht zulassen. Schau bitte nochmal nach, das das wirklich auf PV steht. Zitieren
j.esser Geschrieben March 2, 2025 at 14:25 Geschrieben March 2, 2025 at 14:25 (bearbeitet) Am 28.2.2025 um 18:22 schrieb photron: @j.esser Die aufgezeichnten Daten sehen gut aus. Aber die DC-Anschlussart für das Modell 714 steht auf NotImplemented anstatt PV. Das sollte das Webinterface garnicht zulassen. Schau bitte nochmal nach, das das wirklich auf PV steht. Stand natürlich nicht mehr auf PV. Wird wohl mein Fehler gewesen sein danach nicht nochmals auf den Speichern Button zu drücken :( Habe es jetzt geändert und im Log steht nun auch was anderes. Register 41161 kann Ich übrigens auch nicht über py-sma-modbus python3 main.py -d -v -i5 -a"192.168.1.124" -p502 -u3 41161 Register with the id 41161 does not exist auslesen. Es wird bei mir auch nicht beim Scan der einzelnen Register? als Beschreibung mit ausgegeben. python main.py -v -g -l -a "192.168.1.124" -p502 -u3 40000 Siehe Ausgabe angehängte Textdatei. wem-26Ji-Debug-Report-2025-03-02T15-24-03-433.txt bearbeitet March 2, 2025 at 14:32 von j.esser Text erweitert. Dateri anhängen geht leider nicht siehe nächster Post. Zitieren
j.esser Geschrieben March 2, 2025 at 14:33 Geschrieben March 2, 2025 at 14:33 Hier noch die Ausgabe vom Scan per py-sma-modbus python main.py -v -g -l -a "192.168.1.124" -p502 -u3 40000 List.txt Zitieren
photron Geschrieben March 3, 2025 at 09:31 Geschrieben March 3, 2025 at 09:31 Ist das hier das py-sma-modbus das du verwendest? https://github.com/maluramichael/py-sma-modbus Ich fürchte, dass deren Registertabelle 6 Jahre alt ist und nicht mehr 100% zum aktuellen Stand von SMA passt. py-sma-modbus hardcoded Registeradressen, das ist leider nicht wie SunSpec funktioniert. Korrektur: py-sma-modbus liest auf Modbus Unit-ID 3. SunSpec ist bei SMA auf Unit-ID 126. Daher haben diese beiden Registersätze einfach nichts mit einander zu tun. An Adresse 41161 beginnt bei dir das SunSpec Modell 714. An dieser Adresse steht so erstmal kein Wert, sondern ab dort stehen 20 Register die den Header des Modells 714 bilden. Im Header steht, dann dass es drei DC-Anschlüsse gibt. Für jeden DC-Anschluss beinhaltet das Modell 714 dann 25 weitere Register. Macht insgesammt 95 Register die ich dann versuche ab Adresse 41161 zu lesen. Das klappt aber nicht und liefert Fehler ModbusIllegalDataAddress. Teste bitte die angehängte Firmware. Dort lese ich jetzt absichtlich nicht die beiden letzten Register im Modell 714, in der Hoffnung, dass das hilft. [Edit: Alte Firmware entfernt] Zitieren
j.esser Geschrieben March 4, 2025 at 17:20 Geschrieben March 4, 2025 at 17:20 (bearbeitet) Am 3.3.2025 um 10:31 schrieb photron: Ist das hier das py-sma-modbus das du verwendest? https://github.com/maluramichael/py-sma-modbus Ich fürchte, dass deren Registertabelle 6 Jahre alt ist und nicht mehr 100% zum aktuellen Stand von SMA passt. py-sma-modbus hardcoded Registeradressen, das ist leider nicht wie SunSpec funktioniert. Korrektur: py-sma-modbus liest auf Modbus Unit-ID 3. SunSpec ist bei SMA auf Unit-ID 126. Daher haben diese beiden Registersätze einfach nichts mit einander zu tun. An Adresse 41161 beginnt bei dir das SunSpec Modell 714. An dieser Adresse steht so erstmal kein Wert, sondern ab dort stehen 20 Register die den Header des Modells 714 bilden. Im Header steht, dann dass es drei DC-Anschlüsse gibt. Für jeden DC-Anschluss beinhaltet das Modell 714 dann 25 weitere Register. Macht insgesammt 95 Register die ich dann versuche ab Adresse 41161 zu lesen. Das klappt aber nicht und liefert Fehler ModbusIllegalDataAddress. Teste bitte die angehängte Firmware. Dort lese ich jetzt absichtlich nicht die beiden letzten Register im Modell 714, in der Hoffnung, dass das hilft. energy_manager_firmware_2_3_4_67c575ae_a78a03c5961b5db_merged.bin 2.55 MB · 2 downloads Ja ist genau das py-sma-modbus. Anbei neuer Debug LOG wem-26Ji-Debug-Report-2025-03-04T18-18-47-217.txt bearbeitet March 4, 2025 at 17:21 von j.esser Zitieren
photron Geschrieben March 14, 2025 at 19:21 Geschrieben March 14, 2025 at 19:21 Sorry für die späte Antwort. Der Versuch hat leider auch nichts gebracht. Diese Firmware hat jetzt die Möglichkeit, dass du damit frei Modbus/TCP Register lesen kannst, unter System -> Modbus/TCP Debug. Test das bitte mal. Folgende Werte eintragen (den Rest so lassen) und dann Ausführen klicken: Hostname oder IP-Adresse: 192.168.1.124 Geräteadresse: 126 Startadresse: 41161 Anzahl: 95 Vermutlich wirst du dann auch den ModbusIllegalDataAddress-Fehler erhalten. Dann verringere bitte die Anzahl jeweils um 1 und versuch es weiter bis kein Fehler mehr auftritt. Wenn es klappt kommen Daten, die so angezeigt werden: Addr Off Hex UInt 40000 0 5375 21365 Su 40001 1 6e53 28243 nS 40002 2 0001 1 .. 40003 3 0041 65 .A 40004 4 5469 21609 Ti 40005 5 6e6b 28267 nk 40006 6 6572 25970 er 40007 7 666f 26223 fo 40008 8 7267 29287 rg 40009 9 6520 25888 e 40010 10 476d 18285 Gm 40011 11 6248 25160 bH Das hätte ich gerne von deinem Wechselrichter gesehen, um zu verstehen was das Problem beim Auslesen des Modells 714 ist. energy_manager_firmware_2_3_5_67d47f51_cf0a70a4ed36f7b_merged.bin Zitieren
j.esser Geschrieben March 16, 2025 at 15:07 Geschrieben March 16, 2025 at 15:07 (bearbeitet) Am 14.3.2025 um 20:21 schrieb photron: Sorry für die späte Antwort. Der Versuch hat leider auch nichts gebracht. Diese Firmware hat jetzt die Möglichkeit, dass du damit frei Modbus/TCP Register lesen kannst, unter System -> Modbus/TCP Debug. Test das bitte mal. Folgende Werte eintragen (den Rest so lassen) und dann Ausführen klicken: Hostname oder IP-Adresse: 192.168.1.124 Geräteadresse: 126 Startadresse: 41161 Anzahl: 95 Vermutlich wirst du dann auch den ModbusIllegalDataAddress-Fehler erhalten. Dann verringere bitte die Anzahl jeweils um 1 und versuch es weiter bis kein Fehler mehr auftritt. Wenn es klappt kommen Daten, die so angezeigt werden: Addr Off Hex UInt 40000 0 5375 21365 Su 40001 1 6e53 28243 nS 40002 2 0001 1 .. 40003 3 0041 65 .A 40004 4 5469 21609 Ti 40005 5 6e6b 28267 nk 40006 6 6572 25970 er 40007 7 666f 26223 fo 40008 8 7267 29287 rg 40009 9 6520 25888 e 40010 10 476d 18285 Gm 40011 11 6248 25160 bH Das hätte ich gerne von deinem Wechselrichter gesehen, um zu verstehen was das Problem beim Auslesen des Modells 714 ist. energy_manager_firmware_2_3_5_67d47f51_cf0a70a4ed36f7b_merged.bin 2.56 MB · 1 download Entweder kommt die Meldung Error: Timeout beim Herunterladen oder Transaction failed: ModbusIllegalDataAddress (2) Bei 22 dann Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 41172 11 ffff 65535 .. 41173 12 ffff 65535 .. 41174 13 ffff 65535 .. 41175 14 ffff 65535 .. 41176 15 ffff 65535 .. 41177 16 0000 0 .. 41178 17 0001 1 .. 41179 18 0000 0 .. 41180 19 8000 32768 .. Addr Off Hex UInt 41181 20 ffff 65535 .. 41182 21 0000 0 .. bei 19 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 41172 11 ffff 65535 .. 41173 12 ffff 65535 .. 41174 13 ffff 65535 .. 41175 14 ffff 65535 .. 41176 15 ffff 65535 .. 41177 16 0000 0 .. 41178 17 0001 1 .. 41179 18 0000 0 .. 17 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 41172 11 ffff 65535 .. 41173 12 ffff 65535 .. 41174 13 ffff 65535 .. 41175 14 ffff 65535 .. 41176 15 ffff 65535 .. 41177 16 0000 0 .. 16 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 41172 11 ffff 65535 .. 41173 12 ffff 65535 .. 41174 13 ffff 65535 .. 41175 14 ffff 65535 .. 41176 15 ffff 65535 .. 11 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 5 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 4 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 2 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 1 Addr Off Hex UInt 41161 0 02ca 714 .. komischerweise klappt das auslesen auf diesen Adressen nicht immer! Ich habe das jetzt mehrmals ausprobiert entweder kommen dann Werte oder eine der beiden Fehlermeldungen. oberhalb 22 kommt immer eine der beiden Fehlermeldungen. Vielleicht gibt es eine Sperre weil zu oft hintereinander Werte ausgelesen werden? Hoffe das hilft weiter :) bearbeitet March 16, 2025 at 15:20 von j.esser Zitieren
photron Geschrieben March 17, 2025 at 14:47 Geschrieben March 17, 2025 at 14:47 Dass bei Adresse 41181 der Wert 65535 steht ist nicht gut. Dort sollte laut Spezifikatiion ein Wert von 0 bis 6 stehen. 65535 heißt hier "nicht implementiert". "Error: Timeout beim Herunterladen" kommt durch einen Fehler den ich noch in der Timeout-Behandlung drin hatte. Anbei eine verbesserte Firmware. Alles unter Länge 20 sollte funkitonieren. Modell 714 beseht bei dir aus 95 Registern: 20 Register Header gefolgt von jeweils 3x 25 Register pro DC Anschluss. Interessant wären daher die Anzahlen 20, 45, 70 und 95. energy_manager_firmware_2_3_5_67d833f6_74f7f3867115348_merged.bin Zitieren
j.esser Geschrieben March 22, 2025 at 17:54 Geschrieben March 22, 2025 at 17:54 Am 17.3.2025 um 15:47 schrieb photron: Dass bei Adresse 41181 der Wert 65535 steht ist nicht gut. Dort sollte laut Spezifikatiion ein Wert von 0 bis 6 stehen. 65535 heißt hier "nicht implementiert". "Error: Timeout beim Herunterladen" kommt durch einen Fehler den ich noch in der Timeout-Behandlung drin hatte. Anbei eine verbesserte Firmware. Alles unter Länge 20 sollte funkitonieren. Modell 714 beseht bei dir aus 95 Registern: 20 Register Header gefolgt von jeweils 3x 25 Register pro DC Anschluss. Interessant wären daher die Anzahlen 20, 45, 70 und 95. energy_manager_firmware_2_3_5_67d833f6_74f7f3867115348_merged.bin 2.56 MB · 7 downloads 20 Addr Off Hex UInt 41161 0 02ca 714 .. 41162 1 005d 93 .] 41163 2 ffff 65535 .. 41164 3 ffff 65535 .. 41165 4 0003 3 .. 41166 5 8000 32768 .. 41167 6 8000 32768 .. 41168 7 ffff 65535 .. 41169 8 ffff 65535 .. 41170 9 ffff 65535 .. 41171 10 ffff 65535 .. 41172 11 ffff 65535 .. 41173 12 ffff 65535 .. 41174 13 ffff 65535 .. 41175 14 ffff 65535 .. 41176 15 ffff 65535 .. 41177 16 0000 0 .. 41178 17 0001 1 .. 41179 18 0000 0 .. 41180 19 8000 32768 .. 45,70,95 (3 mal versucht zu lesen bei 2000ms) Transaction failed: ModbusIllegalDataAddress (2) Zitieren
photron Geschrieben March 24, 2025 at 15:53 Geschrieben March 24, 2025 at 15:53 Okay, danke. Ich bin da etwas mit meinem Latein am Ende. Soweit ich das sehen machen wir das Auslesen der SunSpec Daten über Modbus/TCP richtig (zumindest sehe ich nicht was wir falsch machen). Der Wechselrichter meldet aber dennoch, dass wir versuchen von einer ungültigen Adresse zu lesen. Die SMA eigene SunSpec Dokumentation hilft auch nicht weiter. Die entspricht der offiziellen SunSpec Dokumentation. Ich schaue mal, ob ich in den nächsten Tagen dazu komme, den SMA eigenen Modbus/TCP Registersatz zu unterstützen. Eine andere Lösung sehe ich leider nicht. Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.