Sc00bs Posted February 17 Share Posted February 17 Hi Guys I found this Github collection for connecting up ESPHome with Battery BMS's that I thought some of you guys might find useful. I have BSL batteries so I am just trying to work out how to enable comms on the RS485 port works, I think it has to be done using PBMS Tools, anyone know? It includes repositories for: esphome-jk-bms Public ESPHome component to monitor and control a Jikong Battery Management System (JK-BMS) via UART-TTL or BLE esphome-basen-bms Public ESPHome component to monitor a Basen Battery Management System via BLE esphome-ant-bms Public ESPHome component to monitor and control a ANT-BMS via UART esphome-virtual-can-bms Public ESPHome component to emulate a SMA/Victron compatible BMS via CAN bus esphome-jbd-bms Public ESPHome component to monitor and control a Xiaoxiang Battery Management System (JBD-BMS) via UART-TTL or BLE esphome-tianpower-bms Public ESPHome component to monitor a Tianpower Battery Management System via BLE esphome-seplos-bms Public ESPHome component to monitor a Seplos Battery Management System (Seplos-BMS) via UART or RS485 esphome-pace-bms Public ESPHome component to monitor and control a PACE Battery Management System (PACE-BMS) via RS485 (Modbus) Quote Link to comment Share on other sites More sharing options...
Gambit Posted February 22 Share Posted February 22 I would be interested in doing the same for the Sunsynk batteries if anyone has any info. Quote Link to comment Share on other sites More sharing options...
Sc00bs Posted February 22 Author Share Posted February 22 Not sure which BMS the Sunsynk's use, maybe someone else can comment. I seem to remember some of the models BMS's no being compatible so there may be models with different models of BMS All the inverters using PBMS tools seem to use the Pace BMS's, PBMS sort of makes sense now, lol. Quote Link to comment Share on other sites More sharing options...
Gambit Posted February 23 Share Posted February 23 (edited) Been looking for documentation on the Sunsynk battery modbus implementation but so far have only found the document for the inverters. Was hoping to use the rs-485 port but might make more sense to use the CAN bus instead as the batteries are already communicating via CAN with themselves and the inverter. Was thinking of connecting a USB CAN analyser to my laptop to record the communication between the inverter and the batteries. Might get some useful information to figure it out. Edited February 23 by Gambit Quote Link to comment Share on other sites More sharing options...
Zodiac69 Posted February 24 Share Posted February 24 (edited) From what i can see, the SS Inverter does not pull all the battery data from the BMS. Looking at Solar Assistant, it uses the battery RS232 port to retrieve the battery data. I don't have SA, just looking at the info - SA Battery Config SA connect to the inverter via RS485 and a separate RS232 it communicates to the battery. I found some battery comms in the SS protocol that i want to try and use to extract battery cell data. Edited February 24 by Zodiac69 Quote Link to comment Share on other sites More sharing options...
Zodiac69 Posted April 25 Share Posted April 25 So i went down the wrong rabbit hole, assuming that the Sunsynk Battery data was accessible via the RS485 Modbus as this would have been the preferred way. After some interaction with Sunsynk, i was informed that they do not support communicating with the battery via the RS485 Modbus port, Looking at Solar Assistant, they use RS232 to communicate with the battery, i then started looking for info on the protocol. I tested many BMS software programmes and finally found one that worked instantly - PBms Tools V2.4 So my Sunsynk 10.65kW battery has a Pace BMS. Now that i know what to look for i found the Protocol document. I also reached out to Sunsynk support, and they confirmed that it is Pace BMS by sending me the same protocol document. Here is a post by Tertiush where he posts about a Python script he made to communicated with the Pace BMS. Here is the link to his Github repository. If there is some clever ESPHome gurus that can implement this on ESPHome, then we can use the same ESP32 for RS485 to the inverter and RS232 to the batteries. I captured some data between the software and my battery. What i found was that he software just repeat these four (4) calls, over and over. I have attached some data but not my Serial No. ~250146C10000FD9A # Software Version ~25014600602850313653323030412D4132313038342D312E3035F57F ~250146C20000FD99 #SerialNumber ###### ~25014642E00201FD30 #PackAnalogData ~25014600D07C0001100D230D220D230D220D240D230D1F0D260D220D210D240D160D230D220D230D22060B960B950B940B940BA20BC70000D21D4C640436B100604E2061E332 ~25014644E00201FD2E #2WarnInfo ~25014600E04E000110000000000000000000000000000000000600000000000000000000802410000000000001EEC8 PACE-BMS-RS232-communication-protocol-20180705.pdf Quote Link to comment Share on other sites More sharing options...
Sc00bs Posted April 26 Author Share Posted April 26 Hi @Zodiac69 I found these repositories which speak to the Battery using ESPhome so no need to re-invent it :-) Depending on how your PACE BMS is setup you may be able to speak to it via the RJ45 RS485 port or otherwise the RS232 port, i think that this depends on the firmware on the BMS as it definitely works with some but not others. I could not find anywhere to switch it on with my BSL batteries. https://github.com/syssi/esphome-pace-bms He has repositories for communications with a lot of other BMS's as well. Quote Link to comment Share on other sites More sharing options...
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.