-
-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add JK balancer support #18
base: main
Are you sure you want to change the base?
Conversation
I'm sorry, I'm a novice pi user, with my ESP Home instance running on a Home Assistant Supervised docker and me not understanding this feature of github... how do I do this feature branch? |
Okay in this case just flash this configuration (you've to change it a bit to use ethernet instead of wifi f.e.):
|
OK tried that, same repeated result. I swapped the pins around and same answer.
If this is because of the WT32-ETH01 board I'm using, I am able to try a ESP32 devkit v1 and place a wifi AP in the container to test. Would the pins RX2 (16) and TX2 (17) along with one of the GND pins be suitable on this board? |
Yes. Should work! |
Which GPIOs do you use at the moment at your WT32-ETH01? |
I use GPIO5 RXD and GPIO17 TXD and the GND pin below it. Datasheet I am not sure about the (RS)485_EN function pin and it is not on a regular ESP32 so I dont use it. |
I have connected the ESP32 Dev Kit V1 and it reports the same. I have then swapped pins around, same. I then suspected the pins I was using were not correct so I set them to your GPIO14 & 4. same result
My next thought |
Could you provide a high-res photo of the mainboard? |
Good catch! This is a "Low-Power RS-485 Transceiver". In this case you have to add a RS485 to TTL converter module between the balancer and the ESP. |
Yes, I thought the same, so I reconnected my RS485 module back in, and I see the TX light flash every 5 secs but there is no data received in the logs or RX light on the module. |
SUCCESS after research into RS485 problems, by swapping A & B to correct for a polarity error.
|
Reverting to main branch returns the following: Still at 9600 baud rate
|
You should use 115200 baud now. |
Please try to use the original protocol again instead of this feature branch:
|
I have received the same data response as before and the data is not correct. I believe the formatting for the balancer rs485 protocol v1.3 response is not in the code. |
Please provide 4-5 responses. |
HI, thank you so much for your patientce. the response is the same every time. Branch: add-jk-balancer-support
Branch: main
|
If I move my mpp-solar Raspberry Pi from inverter cabinet into battery container, would you get the necessary data from bluetooth? or I could try the TTL-RS485 module on there? And in my search I found this old youtube video of issues with the arduino libraries and esp32. It is old, so I dont know if it is valid. |
Having a working setup to identify the root cause would be helpful. Please use mpp-solar to identify the supported protocol and baudrate. The YouTube video doesn't apply if your rs485 converter module doesn't have a "driver enable pin". If there is one we should care about. ;-) |
@bobwho69 Any new here? Could you do another try with 9600 baud? |
80469cb
to
10b90ec
Compare
33ab28a
to
8703651
Compare
let me stumbling in, log output for 17 LiFePo cells
and log output for 20 cells:
increasing debug level says
increasing timeout doesn't help, maybe i change the wrong line. |
@miracolix72 Thanks for th raw payloads! I will have a look! |
d38b4f1
to
04b6d38
Compare
Vielen Dank, ich habe jetzt in meinem Fork ein paar Hacks gemacht, einige checks ausgeschaltet da ich noch nicht durchblicke, aber dafür jetzt schonmal die Spannungen im Homeassistant angezeigt bekommen. Da das ganze mit Modbus nichts zu tun hat stellt sich mir die Frage ob man das nicht einfacher lösen kann - aber da ich gerade hier dazugestoßen bin und keine Ahnung habe muss ich diese Frage halt weiterreichen, evtl. kommt der Einblick noch. GGf. kannst Du davon etwas weiterverwenden bzw. besser lösen.
Am Wochenende gehts weiter. |
Mit Modbus hat das Protokoll nichts zu tun. Ich habe mich damals an der Klassen-Hierarchie festgehalten, da ich die Hoffnung, dass man den Jikong-Geräten eine Adresse (Device ID) zuweisen kann und dann mehrere Geräte über einen Bus ansprechen kann. Man ist aber lange nicht in diese Richtung gegangen, so dass man hier definitiv die Komplexität reduzieren kann. Vielleicht schaffe ich morgen ein reduzierter Beispiel zu liefern. Dann könntest du es weiter versuchen zu vervollständigen. Welche Jikong-Geräte hast du genau im Einsatz? |
Ok, das mit der Adresse / Modbus macht dann wohl deswegen Sinn. Das JK-DZ11-B2A24S hat ja auch ein Addressbyte. |
ESPHome ist nicht auf Home Assistant angewiesen. Neue Nodes compilieren und flashen geht auch über die Kommandozeile / außerhalb von ESPHome und die Messdaten kann man per MQTT oder Web-Interfacs zur Verfügung stellen. So ist ESPHome also nahezu mit allem kompatibel. Die nahtlose und automatische Integration in Home Assistant begeistert trotzdem schnell! ;-) |
5e3ca02
to
53a9f7e
Compare
Closes: #16
f31cd92
to
8e2d0e8
Compare
@miracolix72 Schau mal, ob du deinen Force rebasen magst. Ich habe heute folgendes getan:
Ich übergebe außerdem das gesamte Frame an den Parser, weil ich mit der Zeit gelernt habe, dass dies das Testing erleichtert, wenn man Rohdaten von fremden Nutzern einspielen möchte. Deshalb wundere dich nicht. Die Preamble und der CRC werden nun auch in den Decoder gereicht. |
@bobwho69: Could you download this feature branch and flash the esp32-example.yaml to your esp32:
I've added a single query to this feature branch. Your BMS should respond if it supports the 9600 baud balancer protocol. Please provide some responses of your BMS.
Closes: #16