Seite 4 von 16

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 13. Nov 2022, 10:35
von teranus
bdgogo hat geschrieben:
Do 6. Okt 2022, 15:00
Kurze Bestätigung für das Problem. Ich hatte ein USB RS485 Verbindung. Die hat mit der 32 Bit Version einwandfrei funktioniert. Neue SD Karte mit 64Bit Version. Alles funktioniert ausser Pylontech auslesen. Neue SD Karte wieder mit 32 Bit Version alles funktioniert wieder. Es muß also einen Unterschied zwischen der 32 Bit und der 64 Bit Version geben. Jeweils die letzte aus dem Download verwendet und die gleichen Konfigfiles. 1.xx 2.xxx und Befehle.php Ansonsten nichts an den Images geändert.
Vielleicht hilft das ja
Auch gerade nochmal getestet, da ich meinen Raspi3 in einen 4er aufgestuft hab.
Neuestes 64Bit Image herunterladen, bei Setup noch die Solaranzeige Updates gemacht und im Hintergrund auch atp upgrade. Dann nur meine Pylontech über den gleichen USB FTDI RS232 Adapter eingerichtet wie vorher und es geht nicht.
Dann nochmal das neueste 32Bit Image genommen, selber Ablauf mit Updates und apt upgrade, selbe Einstellungen für die Pylontech - und geht sofort...
Hätte die 64Bit Version bevorzugt

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 13. Nov 2022, 16:34
von HolgerPV
Das Auslesen der Pylontech US2000(C) mit solaranzeige ist schon merkwürdig...
Nachdem ich jetzt die komplette Anlage (wegen Solarerweiterung) ein paar Woche abgeschaltet hatte und jetzt wieder in Betrieb genommen haben,
läuft wieder alles wie es soll und auch vorher getan hat.
Keine hardware oder software Ändererung.
Hurra, aber schon etwas merkwürdig.

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: Di 15. Nov 2022, 15:22
von teranus
Hallo Holger.
Welche Image Version benutzt du? 32 oder 64Bit?

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: Di 15. Nov 2022, 16:22
von HolgerPV
32 bit Version

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 20. Nov 2022, 15:54
von Solarboy
Tschuldigung dass ich hier so reingrätsche, aber ich komme mit dem Auslesen meiner 4xUS2000 (nehme an B, sind vom Sommer 2021, haben nicht die 6 Ports der C-Version) nicht weiter. Scheinbar sind hier noch mehr Pylontech-Verzweifelte mit einschlägigem Wissen versammelt.
Mein Problem: Ich kann über den RS232-Konsolenport und die Batterieview-Software die Pylons mittels FTDI-Kabel auslesen. Soweit so gut. Wenn ich aber den Raspi mit Kontroller-Einstellung 15 anschließe, geht nichts. Liegt dann wohl an der falschen Baudrate.
Dann habe ich gelesen, dass es über den RS485-Port mit Kontroller-Einstellung 41 auf der Solaranzeige gehen soll. Aber leider immer noch Fehlanzeige.
Ich habe das Kabel wie folgt verlötet:
IMG_0528.jpg
Ulrich, der mich sehr unterstützt ist leider auch kein Pylontech-Fachmann und auch mit seinem Latein am Ende, er sieht aber, dass keine Daten in der Influx ankommen.
Die Firmware-Version der Akkus ist 3.0, ich versuche gerade in einem anderen Beitrag die 3.4 zu bekommen, damit hatte jemand Erfolg.
Vielleicht kann mir hier geholfen werden bevor ich noch Wahnsinnig werde :cry:

Achso, ja: 64Bit-Version

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 20. Nov 2022, 19:48
von Solarboy
Da die obige Steckerbelegung nur für den US2000C getestet wurde, habe ich den Lötkolben geschwungen und im Sub-D Stecker Brücken eingebaut um das alte Anschlusschema zu verwenden.
IMG_0528 2.jpg
Leider immer noch ohne Erfolg. Jetzt werde ich die 32Bit-Version auf den Raspi spielen...

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: Mi 23. Nov 2022, 18:12
von DaineseBiker
So ich habe mich heute auch mal versucht...
Solaranzeige_V4.7.9 32bit

Diesen Adapter habe ich aus diesem Video.
https://www.youtube.com/watch?v=izZphGWnwn8&t=168s


US5000 und US2000C

PIN RS485 Regler 41
6 RJ45 auf RS232 P5 GND
8 RJ45 auf RS232 P3 TXD
7 RJ45 auf RS232 P2 RXD
485er Port angeschlossen, sowohl Master als auch Slave Batterie...
Datenbank füllt sich wenigstens mit 0en ^^

23.11. 18:01:01 -Multi Regler Auslesen [Start].
23.11. 18:01:01 -Verarbeitung von: '1.user.config.php' Regler: 48
23.11. 18:01:01 |------------------------- Start growatt.php ---------------------
23.11. 18:01:01 -Protokoll Version: 4
23.11. 18:01:02 -Firmware: 067.02 Warnungen: 0
23.11. 18:01:02 -Auslesen des Gerätes beendet.
23.11. 18:01:02 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
23.11. 18:01:02 -Multi-Regler-Ausgang. 8
23.11. 18:01:10 -OK. Datenübertragung erfolgreich.
23.11. 18:01:10 |------------------------- Stop growatt.php ---------------------
23.11. 18:01:10 -Verarbeitung von: '2.user.config.php' Regler: 41
23.11. 18:01:10 |--------------- Start us3000_bms.php -----------------
23.11. 18:01:11 -InfluxDB => [ Info Firmware=0,Produkt="",Objekt="",Datum="23.11.2022" 1669222871
Pack1 Zellen=0,Zelle1=0,Zelle2=0,Zelle3=0,Zelle4=0,Zelle5=0,Zelle6=0,Zelle7=0,Zelle8=0,Zelle9=0,Zelle10=0,Zelle11=0,Zelle12=0,Zelle13=0,Zelle14=0,Zelle15=0,Temp_Anz=,Temp1=-273.1,Temp2=-273.1,Temp3=-273.1,Temp4=-273.1,Temp5=-273.1,Strom=0,Spannung=0,Ah_left=0,Ah_total=0,Ah_left_2=0,Ah_total_2=0,Cycle=0 1669222871
Warnungen_Pack1 Zelle1=0,Zelle2=0,Zelle3=0,Zelle4=0,Zelle5=0,Zelle6=0,Zelle7=0,Zelle8=0,Zelle9=0,Zelle10=0,Zelle11=0,Zelle12=0,Zelle13=0,Zelle14=0,Zelle15=0,Temp1=0,Temp2=0,Temp3=0,Temp4=0,Temp5=0,Ladestrom=0,Spannung=0,Entladestrom=0,Status1=0,Status2=0,Status3=0,Status4=0,Status5=0 1669222871
Service Anzahl_Packs=1,Pack1_Status=0,Be_Entladung=0,Restkapazitaet_Gesamt=0,SOC=0 1669222871
]
23.11. 18:01:11 -Daten nicht zur lokalen InfluxDB gesendet! info: array (
'url' => 'http://localhost/write?db=Solaranzeige1&precision=s',
'content_type' => 'application/json',
'http_code' => 400,
'header_size' => 670,
'request_size' => 934,
'filetime' => -1,
'ssl_verify_result' => 0,
'redirect_count' => 0,
'total_time' => 0.009693,
'namelookup_time' => 0.000861,
'connect_time' => 0.001134,
'pretransfer_time' => 0.001347,
'size_upload' => 776.0,
'size_download' => 392.0,
'speed_download' => 43555.0,
'speed_upload' => 86222.0,
'download_content_length' => 392.0,
'upload_content_length' => 776.0,
'starttransfer_time' => 0.009593,
'redirect_time' => 0.0,
'redirect_url' => '',
'primary_ip' => '::1',
'certinfo' =>
array (
),
'primary_port' => 8086,
'local_ip' => '::1',
'local_port' => 50660,
'http_version' => 2,
'protocol' => 1,
'ssl_verifyresult' => 0,
'scheme' => 'HTTP',
'appconnect_time_us' => 0,
'connect_time_us' => 1134,
'namelookup_time_us' => 861,
'pretransfer_time_us' => 1347,
'redirect_time_us' => 0,
'starttransfer_time_us' => 9593,
'total_time_us' => 9693,
)




Consolenport (per BatteryView) auslesbar.
3 RJ45 auf RS232 P3 TXD
6 RJ45 auf RS232 P2 RXD
8 RJ45 auf RS232 P5 GND
An der Solaranzeige 32bit Regler 15 - kann nicht ausgelesen werden.

23.11. 16:33:01 -Multi Regler Auslesen [Start].
23.11. 16:33:01 -Verarbeitung von: '1.user.config.php' Regler: 48
23.11. 16:33:01 |------------------------- Start growatt.php ---------------------
23.11. 16:33:01 -Protokoll Version: 4
23.11. 16:33:02 -Firmware: 067.02 Warnungen: 0
23.11. 16:33:02 -Auslesen des Gerätes beendet.
23.11. 16:33:02 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
23.11. 16:33:02 -Multi-Regler-Ausgang. 8
23.11. 16:33:10 -OK. Datenübertragung erfolgreich.
23.11. 16:33:10 |------------------------- Stop growatt.php ---------------------
23.11. 16:33:10 -Verarbeitung von: '2.user.config.php' Regler: 15
23.11. 16:33:10 |--------------- Start us2000_bms.php -----------------
23.11. 16:33:26 -Keine Verbindung zum Pylontech Gerät vorhanden.
23.11. 16:33:26 |--------------- Stop us2000_bms.php -----------------
23.11. 16:33:26 -Multi Regler Auslesen [Stop].


Mit Batteryview ging alles über den ConsolePort
Unbenannt.PNG
Gibt es denn jetzt eventuell Leute hier, die das ganze am Laufen haben?

Gruß!

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: Mi 23. Nov 2022, 20:08
von Solarboy
Hallo,
bin ja auch noch am herumprobieren und es geht noch nichts. Mit dem Konsolenport kommt man wohl nicht weiter. Liegt wohl an der Baudrate, die nicht auf die erforderlichen 1500 einzustellen sind. Gerade mit dem US2000C geht es nur über RS485, siehe auch:https://solaranzeige.de/phpBB3/viewtopi ... 5&start=10

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 27. Nov 2022, 00:02
von djcysmic
Hallo,

auf einem 64-Bit-Betriebssystem wird die Checksumme aufgrund der größeren Datenbreite für die Pylontech-Akkus in der Datei

Code: Alles auswählen

/var/www/html/phpinc/funktionen.inc.php
falsch berechnet:

Original

Befehl: 20024642E00202
Checksumme: FFFFFFFFFD33

Code: Alles auswählen

function crc16_us2000( $Input ) {
    $Summe = 0x0;
    for ($i = 0; $i < strlen( $Input ); $i++) {
      $Summe = $Summe + ord( $Input[$i] );
    }
    return strtoupper( substr( dechex( (~ $Summe) + 1 ), 4 ));   <------- Zeile 8088 ersetzen
  }

Patch
Befehl: 20024642E00202
Checksummer: FD33

Code: Alles auswählen

function crc16_us2000( $Input ) {
    $Summe = 0x0;
    for ($i = 0; $i < strlen( $Input ); $i++) {
      $Summe = $Summe + ord( $Input[$i] );
    }
    return strtoupper( dechex( (~ $Summe + 1 ) & 0xffff ));   <------- neue Zeile 8088
  }
Dieser Patch sollte sowohl auf 32-Bit, als auch auf 64-Bit-Systemen funktionieren - getestet habe ich allerdings nur auf 64-Bit.
Vielleicht könnte das noch jemand verifizieren, sodass der Patch vielleicht ins nächste Update mit aufgenommen werden kann ;)

Eine Projektseite auf Git usw. habe ich leider nicht gefunden - sonst hätte ich dort einen Pull-Request gestellt...

Re: Pylontech auslesen funktioniert nicht mehr

Verfasst: So 27. Nov 2022, 09:52
von Ulrich
Vielen Dank für den Hinweis!
Ich schaue mir das an und berichtige den Update.