diy solar

diy solar

JBD AP21S002 BMS failed? Intermittent relay operation and limited communication over Bluetooth and RS485

kipper

New Member
Joined
May 19, 2023
Messages
21
Location
South Yorkshire
OK, this was going to be me asking advice as to why my BMS died after a few hours of testing but after re-reading the data sheet it seems that my temporary test battery pack made from Li-ion 3.6V (charged to 4.2V) cells might have been too high a voltage. Still, I might as well show my control panel with my BMS 'companion' board to tidy up the installation. The BMS is (was) a JBD AP21S002. the board reads the data from the BMS via RS485, connects to the inverter via an isolated can bus transceiver, makes all the links to the BMS sense inputs to configure it as a 16S unit and controls the heaters via an solid state relay.
Control panel.JPG

16S solar battery 3D.jpg

The project is located here, there's lots of details and code .
The BMS is showing up when the Overkill solar app scans for devices and connects when selected, the correct and stable pack voltage is displayed as well as the 16 cells with their respective voltages, no other data will down load, the 'BMS loading' text seems to correspond with the flashing of the BMS's blue led. No data can be retrieved from the RS485 connection. There is 3.3V on the BMS internal voltage regulator.

Previously when tested on a 10S pack the BMS worked perfectly, it would communicate to the Arduino IDE via the RS485 port, would charge, discharge and balance the cells but after several hours the Bluetooth would randomly drop out which I thought at the time was due to reading the RS485 port at the same time as the blue tooth was pulling data.

My circuit board seems to be working well, I've made a BMS simulator that sends the data that the BMS would normally send when requested, the board also makes the specific links to the voltage sense wires that configure the BMS to a 16S system and the heater relay is controlling by the data received from the BMS.
 
Last edited:
Oops! :oops: Looks a nice neat build - though your warning label should have read "Danger ⚡ 4.2V" ;)

Out of interest, which galvanically isolated CANBus module are you using?
 
Oops! :oops: Looks a nice neat build - though your warning label should have read "Danger ⚡ 4.2V" ;)
I like it!

I'm using a TJA1052i chip, I believe this should give about 1KV of isolation, its the first time I've tried one of these, it might not even be necessary but should make for a robust board.

I'm actually wondering now if the 4.2V was the issue, looking at the BMS spec the maximum pack voltage using 21 x 3.75V per cell would give 78V so my 63V would be well under....hmm. I might try bleeding some of the charge off them to see if the BMS recovers, its having some sort of hissy fit, it does connect to the Bluetooth and displays the battery voltage OK so its not totally dead.
 
I'm using a TJA1052i chip, I believe this should give about 1KV of isolation, its the first time I've tried one of these, it might not even be necessary but should make for a robust board.
So you've built your own CANBus module then, interfacing an MCP2515 or similar to the isolated transceiver?

FYI; I'm interested in this after my issues and thread I posted here...

I'm actually wondering now if the 4.2V was the issue, looking at the BMS spec the maximum pack voltage using 21 x 3.75V per cell would give 78V so my 63V would be well under....hmm. I might try bleeding some of the charge off them to see if the BMS recovers, its having some sort of hissy fit, it does connect to the Bluetooth and displays the battery voltage OK so its not totally dead.
I guess that will depend whether the issue was the overall pack voltage or the per-cell voltage:unsure:
 
Yes I wanted to make a complete board that would have the can bus transceiver, RS485 transceiver, isolated power supplies, fusing and a nice tidy way of terminating the battery sense wires.
The TSA1052i chip uses the same MPC2515 interface chip as the run of the mill can transceivers use but the chip has built in galvanic isolation, it does mean that a second voltage converter / power supply is needed to power the output side of the chip, I'm using Traco dc/dc modules for this, I've used hundreds of these in the past for industrial control circuit boards and like them, although they are quite pricy, actually the circuit board comes in at about £67 all in. I'm using an ATMEGA328 microprocessor so its easy to program with any Arduino IDE assuming minicore is installed.
I'm hoping to test the Can interface tonight.
 
I've just tested the isolated can bus transceiver and it seems to be working a treat, I don't have the inverter yet but using an Arduino with can module for for my board to talk to it seems quite happy.
Once I get my stroppy BMS sorted I'll get the inverter and batteries so I can get the project properly rolling.

Edit, I've done a bit of digging, the front end voltage sensing chip within the BMS is a Nuvatron KA49522A, looking at the data sheet it can accept a maximum pack voltage of 110V and absolute maximum of 11V between the volt sense pins (recommended 1 to 4.8V) so I'm well inside, so its a bit of a mystery why its acting up, I'm thinking about getting it changed under warranty. I'm currently discharging my Li-ion cells to get them down to about 3.5V per cell just to see if that helps.
 
Last edited:
Back
Top