Flying ADC 16 channel BMS 96S test
Flying ADC 16 channel BMS 96S test
I got battery box fixtures in place and I’ve finally connected the battery to the BMS but have some strange voltage readings from a few BMS devices.
@johu, I’m unsure if this is the right place to post since it’s a continuation of the previous discussion. If not appropriate, I apologize—feel free to move the post. I’m sharing a Google Sheets doc with all data:
I manually checked the voltages multiple times before connecting the BMSes, and everything looked fine. All values measured on the BMS connector were as expected. Though I used a basic multimeter and rounded values while writing them down, they seem consistent. In the first sheet ("manual"), the orange columns show the manually measured values, while all other values are calculated. Total voltages match both box manual measurements and the values received from the ISA shunt.
I performed multiple CAN status reads for each BMS using the oic tool. The second sheet ("can") includes a comparison of these reads with HV battery connected and disconnected. The devices with expected values are marked in green (bms1, 4, and 6). However, devices 2, 3, and 5 return strange values. Additionally, I noticed that part of boards 2 and 5 gets unusually hot - over 110 celsius degrees. Log files here in zip
To rule out HV battery wiring issues, I tested another battery (5 cells) and confirmed that devices 2, 3, and 5 still report invalid readings, while 1, 4, and 6 behave correctly.
Any help figuring this out would be greatly appreciated! Let me know if more information is needed.
As a side note, while testing with the other pack, I captured a thermal camera image of BMS 2, showing the location of the hot area. I also measured that my RPi5 + RUT956 consumed about 450 mA at 12V (likely 250 mA from the RPi and 200 mA from RUT during 4G connection). The six BMS units consumed another 200 mA collectively.
Short video with everything connected and then BMS disconnected, left only rpi and router.
@johu, I’m unsure if this is the right place to post since it’s a continuation of the previous discussion. If not appropriate, I apologize—feel free to move the post. I’m sharing a Google Sheets doc with all data:
I manually checked the voltages multiple times before connecting the BMSes, and everything looked fine. All values measured on the BMS connector were as expected. Though I used a basic multimeter and rounded values while writing them down, they seem consistent. In the first sheet ("manual"), the orange columns show the manually measured values, while all other values are calculated. Total voltages match both box manual measurements and the values received from the ISA shunt.
I performed multiple CAN status reads for each BMS using the oic tool. The second sheet ("can") includes a comparison of these reads with HV battery connected and disconnected. The devices with expected values are marked in green (bms1, 4, and 6). However, devices 2, 3, and 5 return strange values. Additionally, I noticed that part of boards 2 and 5 gets unusually hot - over 110 celsius degrees. Log files here in zip
To rule out HV battery wiring issues, I tested another battery (5 cells) and confirmed that devices 2, 3, and 5 still report invalid readings, while 1, 4, and 6 behave correctly.
Any help figuring this out would be greatly appreciated! Let me know if more information is needed.
As a side note, while testing with the other pack, I captured a thermal camera image of BMS 2, showing the location of the hot area. I also measured that my RPi5 + RUT956 consumed about 450 mA at 12V (likely 250 mA from the RPi and 200 mA from RUT during 4G connection). The six BMS units consumed another 200 mA collectively.
Short video with everything connected and then BMS disconnected, left only rpi and router.
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
So to summarize:
- BMS1 works correctly but gets hot (in the lower mux region)
- BMS2 shows somewhat of a reading on ch1 but saturated ADC values on all other channels and does NOT get hot?
- BMS3 shows pretty much 0V no matter if cells are connected or not but it also does NOT get hot?
- BMS4 works correctly and does not get got
- BMS5 behaves like BMS2 and in addition gets hot
- BMS6 works correctly and does not get got
Do the hot ones cool down when you flick the "enable" parameter to 0 = Off?
On BMS2, 3 and 5 when you set numchan=1 which voltage do you see across C7? (it will then keep the first channel switched on all the time)
Does the fault stay with the module when moved to a different position, i.e. swapping 5 and 6?
- BMS1 works correctly but gets hot (in the lower mux region)
- BMS2 shows somewhat of a reading on ch1 but saturated ADC values on all other channels and does NOT get hot?
- BMS3 shows pretty much 0V no matter if cells are connected or not but it also does NOT get hot?
- BMS4 works correctly and does not get got
- BMS5 behaves like BMS2 and in addition gets hot
- BMS6 works correctly and does not get got
Do the hot ones cool down when you flick the "enable" parameter to 0 = Off?
On BMS2, 3 and 5 when you set numchan=1 which voltage do you see across C7? (it will then keep the first channel switched on all the time)
Does the fault stay with the module when moved to a different position, i.e. swapping 5 and 6?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
Thanks for the quick reply, and moving to a new topic...
BMS1 works ok and does not get hot, it looks like that on thermal image but it's showing BMS2 actually, BMS1 is not visible on the image. That image is from when I connected 5s battery to it and also disconected BMS1 from the "chain". BMS2 gets warm when connected to the battery and I would say that it gets hotter when powered on.
Devices are not in the car now because I removed them when went to the friend to check with 5s pack, but if needed I can reconnect BMS1 in chain and connect all to the 96s battery to confirm.
When I connected 96s battery, by touch it felt that oposite part of the mux is getting hot, one near pins 15 and 16.
Here is summary:
1. working ok - not hot
2. reads as you say and gets HOT
3. you are correct, reads always +-500mA no matter if connected to the battery or not, and not hot
4. working ok - not hot
5. behaves as BMS2, invalid reading and get HOT
6. working ok - not hot
I apologize for the typo in my previous post: it's BMS2 and BMS5 that get hot, not 1 and 5.
BMS1 works ok and does not get hot, it looks like that on thermal image but it's showing BMS2 actually, BMS1 is not visible on the image. That image is from when I connected 5s battery to it and also disconected BMS1 from the "chain". BMS2 gets warm when connected to the battery and I would say that it gets hotter when powered on.
Devices are not in the car now because I removed them when went to the friend to check with 5s pack, but if needed I can reconnect BMS1 in chain and connect all to the 96s battery to confirm.
When I connected 96s battery, by touch it felt that oposite part of the mux is getting hot, one near pins 15 and 16.
Here is summary:
1. working ok - not hot
2. reads as you say and gets HOT
3. you are correct, reads always +-500mA no matter if connected to the battery or not, and not hot
4. working ok - not hot
5. behaves as BMS2, invalid reading and get HOT
6. working ok - not hot
I apologize for the typo in my previous post: it's BMS2 and BMS5 that get hot, not 1 and 5.
Haven't tried flicking "enable" but disconnecting device from the ground. If it's not powered it still get warm.Do the hot ones cool down when you flick the "enable" parameter to 0 = Off?
Will put setup in the car and report back.On BMS2, 3 and 5 when you set numchan=1 which voltage do you see across C7? (it will then keep the first channel switched on all the time)
I was thinking that connecting 5s pack with the same wiring to all modules would cover question like this because it's reporting same values as from the 96s pack - compared just first 5 ofcourse.Does the fault stay with the module when moved to a different position, i.e. swapping 5 and 6?
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Ok, it seems like 3 modules have some sort of hardware fault. Can you return them to me?
I have 2 modules left, then I have to order more. I will test them before sending, the ones I sent to you were not tested.
Do you think they could have been damaged at any part of commissioning?
I have 2 modules left, then I have to order more. I will test them before sending, the ones I sent to you were not tested.
Do you think they could have been damaged at any part of commissioning?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
Does that mean that you don't need me to put it in the car and do above tests - measure c7, swap between...?
Sure, I can return if needed.
My plan was to connect complete battery and try to balance it, no need to send me first two and then 1 separately, just send them all when you have them ready, I'll wait.
I don't think they are damaged during use. I checked wiring before connecting them to the battery multitple times, and when I got wrong read outs, I first suspected wiring and checked it again, and did measurements manually - all ok.
I don't think there is any physical damage either, all looks good to me.
Thank you very much finding time to help.
Sure, I can return if needed.
My plan was to connect complete battery and try to balance it, no need to send me first two and then 1 separately, just send them all when you have them ready, I'll wait.
I don't think they are damaged during use. I checked wiring before connecting them to the battery multitple times, and when I got wrong read outs, I first suspected wiring and checked it again, and did measurements manually - all ok.
I don't think there is any physical damage either, all looks good to me.
Thank you very much finding time to help.
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
From your second clarification it seems like an obvious hardware fault. So you could send them back for inspection and possibly repair. Do you still have the address?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
Yeah, I'll find it on the original box and ship it tomorrow morning.
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Got the modules on the table now. So far I've established that module 2 and 5 had a shorted mosfet on channel 0. That's how they became hot and that's why they only displayed something meaningful on the first channel because all the others were shorted out.
On module #3 the mosfets seem fine but it was the ADC and I2C switch that was toast.
Unfortunately now I can't tell whether these parts were broken in the first place or if its some design quirk that fried them when you connected your cell voltages.
I've replaced the broken ADC and switch, now gotta steal some working mosfets from somewhere and then try to test the whole thing.
On module #3 the mosfets seem fine but it was the ADC and I2C switch that was toast.
Unfortunately now I can't tell whether these parts were broken in the first place or if its some design quirk that fried them when you connected your cell voltages.
I've replaced the broken ADC and switch, now gotta steal some working mosfets from somewhere and then try to test the whole thing.
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
Glad they made it to the operating table!
Ah, that’s not the news I was hoping for!johu wrote: ↑Sat Oct 05, 2024 5:04 pm So far I've established that module 2 and 5 had a shorted mosfet on channel 0. That's how they became hot and that's why they only displayed something meaningful on the first channel because all the others were shorted out.
On module #3 the mosfets seem fine but it was the ADC and I2C switch that was toast.
Unfortunately now I can't tell whether these parts were broken in the first place or if its some design quirk that fried them when you connected your cell voltages.
I’ll use the same wiring when I connect them again, fingers crossed it helps figure things out.
Thanks
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Testing the first 5 channels of #3 led to strange results. First only ch1 worked and ch2 was displaying negative. So I decided to solder some probing leads to check the transistor switching. Guess what: as soon as I started scoping it worked perfectly! That kinda sucks because now I don't know what was going wrong. Maybe I fixed a cold solder joint with my probe soldering?
Anyway, testing the other channels now and the other modules as well
EDIT: #3 now is fully working and calibrated
EDIT2: #4 is now working. It had multiple blown transistors and current limiting resistors
Anyway, testing the other channels now and the other modules as well
EDIT: #3 now is fully working and calibrated
EDIT2: #4 is now working. It had multiple blown transistors and current limiting resistors
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
I really doubt it was a cold solder joint, as that's not something I typically experience when soldering connectors.johu wrote: ↑Tue Oct 08, 2024 2:34 pm Testing the first 5 channels of #3 led to strange results. First only ch1 worked and ch2 was displaying negative. So I decided to solder some probing leads to check the transistor switching. Guess what: as soon as I started scoping it worked perfectly! That kinda sucks because now I don't know what was going wrong. Maybe I fixed a cold solder joint with my probe soldering?
I'm glad to hear that #3 and #4 are working now. Any thoughts on what might have caused those components to blow on #4?
Thanks a lot for the time you're spending on this. Let me know if I can compensate some of it by purchasing Engineering Hours in the shop or anything else you prefer.
- uhi22
- Posts: 956
- Joined: Mon Mar 14, 2022 3:20 pm
- Location: Ingolstadt/Germany
- Has thanked: 143 times
- Been thanked: 536 times
Re: Flying ADC 16 channel BMS 96S test
Are these boards populated by jlc or handsoldered? In professional life we would most likely run some pcbs in the climate chamber cycling between -30 and +90 degree Celsius to stress and find bad solder joints.
Github: http://github.com/uhi22 --- Patreon: https://www.patreon.com/uhi22
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
I was thinking more with one of the transistors. JLCPCB use very little solder paste and I have seen loose pins in the past.
Just a handwaving explanation. If there was a dry solder joint on a transistors gate that could have caused slow turn off and thereby shoot through.
Never mind, I think this wasn't your fault. Thanks for becoming a Patreon
By JLCPCB. I think from now on I will at least give each board a check with my new simulator. It's easy to spot shoot through because the current rises. Its a chain of 16 shunt references (3.3V)
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
I started as a Patreon a few months ago, but my old card expired, and I just noticed it yesterday. Sorry about that, and thank you!
I bought the boards from the shop even though you published the design, just to support your work and not have an excuse to bother you.
I really appreciate all the effort you and other OI old members put into this. Thank you all!
I'm glad that we learned and improved during this process.
I’ve also ordered a few boards from them, though with much simpler designs, and never had doubts about their quality. Looks like things change on their end too sometimes!
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
I have finally repaired module #2 also. The FET of channel 1 was permanently conducting. It seems mostly the lowest N-FETs that fail.
I have also changed software to insert a delay between changing channel and starting ADC sampling. Otherwise the ADC would sample while the low pass filter is still rising giving a too low and somewhat inconsistent reading.
I haven't put this on #3 and #4. If you do you will have to recalibrate, I have described this on the wiki page now: https://openinverter.org/wiki/16-cell_BMS#Calibration
Will send the modules back now.
I have also changed software to insert a delay between changing channel and starting ADC sampling. Otherwise the ADC would sample while the low pass filter is still rising giving a too low and somewhat inconsistent reading.
I haven't put this on #3 and #4. If you do you will have to recalibrate, I have described this on the wiki page now: https://openinverter.org/wiki/16-cell_BMS#Calibration
Will send the modules back now.
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
I see that the wiki mentions calibration using multimeter readings.
Quick question: if the boards are already calibrated initially, can I read the current parameters and then, after uploading the new firmware, simply re-enter those values? I'd plan to do that with all boards except #2.
Thanks again for all the work you've put into this—will get back with results when I receive and connect them .
Quick question: if the boards are already calibrated initially, can I read the current parameters and then, after uploading the new firmware, simply re-enter those values? I'd plan to do that with all boards except #2.
Thanks again for all the work you've put into this—will get back with results when I receive and connect them .
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
The calibration isn't lost on a firmware update. But because of the modified sampling scheme it will be slightly off, i.e. it will read maybe 5-10mV too high
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Have you had a chance to test again?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Re: Flying ADC 16 channel BMS 96S test
Hey,
Thanks for your concern...
I did test voltages reading, as soon as I received boards, and all looks good.
However, I didn't do calibration yet, and I want to check temp sensors reading also.
Hope I will get some time to do that soon and proceed. will get back when I do.
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Cool, that's what I was most concerned about. Glad to hear it now works
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
I started testing the new batch today and indeed it seems like not all modules are created equal. I have two that work perfectly and two that display quirky values on certain channels. Will look further into it but it seems there is a quality issue, probably with the transistors.
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
- rstevens81
- Posts: 373
- Joined: Sun Dec 22, 2019 10:36 am
- Location: Bristol, UK
- Has thanked: 29 times
- Been thanked: 105 times
Re: Flying ADC 16 channel BMS 96S test
have you used the same Mofset's (C2838029,C2682898,C845592) as in the original bom? as i haven't heard of these manufacturers (i am assuming chinease chip makers) I am wondering if that might be part of the problem, although i understand the reasoning as there are a hell of alot of p-chanel fets on there, but during development it might be better to use branded e.g. C50185 (this was just a quick filter in lcsc, based on 100v, its only 0.7A...)johu wrote: ↑Tue Dec 03, 2024 4:05 pm I started testing the new batch today and indeed it seems like not all modules are created equal. I have two that work perfectly and two that display quirky values on certain channels. Will look further into it but it seems there is a quality issue, probably with the transistors.
Rule 1 of EV Club is don't buy a rust bucket....
Which rule does everyone forget
Which rule does everyone forget
- johu
- Site Admin
- Posts: 6325
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 251 times
- Been thanked: 1320 times
- Contact:
Re: Flying ADC 16 channel BMS 96S test
Yes, still C2838029 for P-chan and C784617 for N-chan. Thanks for the suggestion, it is rather pricey though given the fact that 32 are needed.
Will check next week what exactly isn't working. It's one of those boards that shows the same voltage on all channels with negative sign on every other channel
Will check next week what exactly isn't working. It's one of those boards that shows the same voltage on all channels with negative sign on every other channel
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9