irekzielinski / Pylontech-Battery-Monitoring

Adding WiFi monitoring to US2000B and US2000C batteries.
130 stars 56 forks source link

Software und/or hardware modifications for Pylontech US3000C #22

Closed alexandergeiler closed 1 year ago

alexandergeiler commented 1 year ago

Hi,

I use irekzielinski Pylontech-Battery-Monitoring solutions since years at 2 different locations. At the first location, I have a Pylontech US2000 at the second location I have a Pylontech US3000. The solution is working fine. I did some small modifications, SYSLOG support, change the OTA update procedure, diffrent landing page, ... but the hole functionallity is still from irekzielinski

I ordered a new Pylontech US3000C to replace the Pylontech US2000. I tried to connect it to my existing WEMOS but a communications was not possible.

I didn't see that irekzielinski updated his documentation and found the the description of how to wire it up now at: issue5

Also after changing the wiring, I am not able to communicate with the Pylontech US3000C. grafik

According to: issue1 Wibet10 added a IIC I2C Logic level converter bi-directional module and changed the source code

According to: issue5 The old code is still working without a change. mduchain identified that the "drop to 1200 baud or send that byte sequence to communicate" is not needed anymore. And few days later mduchain write "I avoid this by sending a few CR/LF before sending the actual command – an alternative wakeup sequence of sorts."


Now my question? Is anyone using the orginal source code from Pylontech-Battery-Monitoring to communicate with a Pylontech US3000C? Is it working without a IIC I2C Logic level converter bi-directional module?

commander-bln commented 1 year ago

I use the original code with an ESP32 Dev Kit V1 without level converter, only TRANSCEIVER BREAKOUT - MAX3232 from SparkFUN and this works fine with 3X US5000 on Port Console

alexandergeiler commented 1 year ago

@commander-bln your answer is really helpful. The "wakeUpConsole();" is still active in the code?

I have a cheap MAX3232 from Aliexpress that was working with my Pylontech 2000. May be I should try the MAX3232 from SparkFUN.

commander-bln commented 1 year ago

hello your name sounds like german??

I have 3 "TRANSCEIVER BREAKOUT - MAX3232 from SparkFUN" and all worked on breadboard. i heard sometimes the user had problems with the transceiver and tryed multiple , till they get lucky.

2023-07-28 10_10_08-ESP32twoPylontech Batt fzz - Fritzing -  Schaltplanansicht

alexandergeiler commented 1 year ago

Hi commander-bln, ja, Deutscher :-) Ich habe einmal den "orginal " MAX3232 from SparkFUN an meiner US3000 und einen "noname" MAX3232 an meiner US2000 (die ich gerade versuche zu tauschen). Ich teste das mal mit dem orginal MAX3232 from SparkFUN Danke für Dein Bild!

commander-bln commented 1 year ago

OK, ich hatte auch am Anfang Fehler, deshalb hatte ich mit Fritzing PCB und Schaltplan gezeichnet, und dann hatte ich auch schnell die Fehlverdrahtung auf dem Breadboard entdeckt. 2023-07-28 11_06_59-MAX3232 RS232 zu TTL-Adapter - RobotShop 2023-07-28 11_06_52-MAX3232 RS232 zu TTL-Adapter - RobotShop

Auf dem Board sind auch 4-5 Kondensatoren bestückt, vielleicht macht das den Transceiver Stabiler..

alexandergeiler commented 1 year ago

Ich schaue nochmal. Auf die schnelle habe ich es nicht hinbekommen. Danke erstmal. Eine US5000 ist baugleich mit einer US300C?

Noch eine Frage: Du verwendest den Consolen Port (also PIN 3&6) oder den RJ485 Port (PIN 7&8)?

guybw commented 1 year ago

If it helps, someone has forked this to support the us5000 and us3000c so that might help ?

alexandergeiler commented 1 year ago

I tested the fork from Wibet10 too. My US2000 and my US3000 are connected via the "console" port. Several people seems to be using the B/RS485 port.

Can someone that is using a US3000C decibe, if he is using the "console" or the "B/RS485" port.

Startertrek commented 1 year ago

I am using console port. Connected are 1 x US2000c and 1 x US3000c, both are reading stable

commander-bln commented 1 year ago

I am using 3x us5000 on Port  console with no Problems...using esp32.with converter tll2seitial Von Unterwegs gesendet. -------- Ursprüngliche Nachricht --------Von: Startertrek @.> Datum: 30.07.23 21:01 (GMT+01:00) An: irekzielinski/Pylontech-Battery-Monitoring @.> Cc: commander-bln @.>, Mention @.> Betreff: Re: [irekzielinski/Pylontech-Battery-Monitoring] Software und/or hardware modifications for Pylontech US3000C (Issue #22) I am using console port. Connected are 1 x US2000c and 1 x US3000c, both are reading stable

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

alexandergeiler commented 1 year ago

@Startertrek, nice to know that it works for you with a US3000C.

So you use the unchanged code from irekzielinski. Including the wakeup call with 1200 baud?

Are you using the SpaarkFun MAX3232 transceiver or a "none". Are you using an I2C IIC logic level converter 5V~3.3V?

Last question, all your jumper at the US3000C are looking to the ADD desciption at the batterie?

grafik

commander-bln commented 1 year ago

Here is my Breadboard Wiring that Works with US5000 and the standard code ESP32 Dev Kit V1 + MAX3232 and konnector RJ45 , i use standard RJ45 cable

the only thing i have make with my First Battery, i connect with Battery View 3.0.24 to look for Firmware/Update

20230310_163344

alexandergeiler commented 1 year ago

Hi all,

it was a layer 8 problem. It is now working with a SparkFun MAX323 chip without the I2C IIC logic level converter (like in the screenshot from @commander-bln. I use the code @irekzielinski

Thank´s to all for you support!

grafik