Speak EV - Electric Car Forums banner

Battery reconditioning / upgrading

8.9K views 39 replies 13 participants last post by  DBMandrake  
I think I'd like a bit more techy answers - I always assumed that essentially the only info the cars ECUs needed out of the battery pack was the current voltage - everything else re BMS balancing etc is sort of packaged into the battery module - in which case, as long as you can recreate those factors with an after-market setup you'd be ok - but I'll be honest, I'd completely forgotten the cost element !!
Depends how you define a BMS, as the overall battery management system is usually distributed among a number of ECU's.

Usually there are cell management units in the battery pack itself which measure the voltage of individual cells and perform the balancing of individual cells. (By switching a resistor across the cell when it needs bleeding down) Typically one of these cell management units will handle a number of cells - in my Ion each CMU handles 4 or 8 cells with most of them handling 8 cells. CMU's may also handle the measurement of cell temperatures. On the Ion there are 66 temperature sensors spread among 88 cells, or three sensors per 4 cells. In a Leaf there are only 3 sensors for the entire pack!

Then you have the BMU or battery management unit - this is another ECU which has "overall" control of the battery, and is probably the one most people think of. It communicates with each individual CMU, obtaining voltage readings from them for every cell, (and in some cars temperature readings) it will also measure the current in/out of the pack using a hall effect sensor so it knows when the pack is charging or discharging and at what rate.

It commands the CMU units to switch on balancers for individual cells that need balancing during charging. It has the characteristics of the cells programmed into it, such as a topographic map describing the maximum charge and discharge current for different cell temperatures (primarily to reduce charging rates at very low or high temperatures) as well as the minimum and maximum cell voltages allowed.

It will communicate with the motor control unit to tell it maximum allowed charge (regeneration) and discharge rates based on the current cell temperatures and state of charge. It will also communicate with the onboard charger (which usually also handles rapid charger communication) to tell it the maximum allowed charging rate at any given time based on SoC, cell temperatures and cell voltages.

Another job it has is to keep track of state of charge and state of health of the battery. This is typically done using a combination of voltage estimation and coloumb counting, along with topographic maps of the performance of the cells in adverse conditions such as high charge and discharge rates and temperature extremes.

It will also be responsible for requesting heating or cooling of the pack from the car, if the car has such a facility, and deciding what the acceptable or optimal working cell temperature range is before performance should be limited.

In short the BMS is very intracately programmed with the characteristics of the cells and how to "treat them right" for both safety (don't let them blow up) and longevity over the years.

Although most Lithium Ion chemistries have the same working voltage range (4.1 volts down to about 3.0-3.6 volts) meaning that you could in theory replace the cells with cells of equal or greater capacity/performance, it's unlikely to be that easy or even safe in practice.

While newer cells of a different design may have a higher capacity in a smaller space, they might be more particular about operating temperatures for example - some older lower density cells such as those in my Ion are more thermally stable than some of the newer high energy density types, thus the old cells get away with no active cooling without becoming unsafe, however the newer cells require active cooling and could potentially be dangerous if operated without cooling by a BMS which is not aware of their temperature sensitivity. (Such as the cells used in Tesla's)

Likewise reducing chrage rates at low temperaures is critical to avoid Lithium plating the anode which results in capacity loss and eventual short circuits and catastrophic failure, and it's not automatically the case that a newer higher capacity cell has superior low temperature charging ability. If it does not, the BMS would push it outside its safe working area in a way that may not show up for months or years until the battery catches fire due to gradual dendrite build up resulting in catastrophic failure due to a short. (In other words you've created a ticking timebomb)

Another issue is that the BMS might or might not be able to "understand" the increased capacity of a battery with after market higher capacity cells. It will be programmed with a factory new default value (45.8Ah for my Ion) and adapt as the battery gradually loses capacity, however despite the ECU having a "battery calibration" routine that can be triggered by a diagnostic tool to learn the battery capacity, there are no guarentees that it would be willing to learn a capacity that is significantly higher than a factory new capacity, as the feature is specifically to measure the performance of a degraded battery. It may look upon a much higher than new Ah measurement as an error condition instead, in which case the additional capacity of the cells cannot be used.

This will depend on the programming of the BMU and is thus on a case by case basis for a model of car, and possibly even dependent on firmware versions of the BMU.

In short, a major change to the battery chemistry and/or capacity is unlikely to be either safe, or take full advantage of the cells with a stock unmodified BMU.

To do a significant 3rd party upgrade of the cells to a higher capacity and/or different more dense chemistry you're realistically looking at either reprograming the BMU with the characteristics of the new cells (including their safe operating region for temperaure, current and so on, and a willingness of the ECU to believe the higher capacity) or using an after market programmable BMU, in the same way that you can get after market Engine Management ECU's for ICE vehicles.

In the first instance you're talking about finding a specialist ECU hacker/reprogrammer to try to decode the firmware of the unit and flash it with a patched version of the firmware and then hope that a dealer doesn't accidentally reflash it in the future - you'd probably only do this on an out of warranty car.

In the second instance after market programmable BMU's are available and could be readily programmed with the characteristics of the cells, certainly much easier than trying to reverse engineer the firmware in the original BMU, however you then have the problem that this after market BMU has to know how to communicate with the CMU's in the car, the on board charger, the motor control unit etc...

So instead of having to reverse engineer the BMU's firmware you instead have to reverse engineer the the communications protocols between the ECU's.... In my opinion probably an easier task since Can Bus traffic can be sniffed and reverse engineered.

However you then might run into issues with VIN coding between the ECU's, and just cross your fingers that there isn't any sort of cryptographic stuff going on between the different ECU's. And while you'd get away with it on most cars that don't do over the air firmware updates, forget about ever doing something like this on a Tesla.

It's going to take some very knowledgable, skilled and persistent people to figure this stuff out on a model by model basis unfortunately unless manufacturers are forced to open up their "proprietary" BMS firmware and/or over the wire communication protocols to allow after market BMS's to be implemented easily. (Personally I think this should be legislated, on the basis of "right to repair", where repair means having to replace the cells with newer types when originals are no longer available...)

In the long term I think 3rd party battery upgrades will happen - but only for popular models of EV that are worth upgrading the battery on when they get to a certain age, and probably not for a good few years yet as there just isn't the demand at the moment.
 
The capacity of the cells is not fixed, its reduces over time so the BMS must be able to cope with changing capacity.

I think that if the cells were swapped out with news ones that had say 20% more capacity and used the same type of lithium chemistry then all would be good.
As long as the capacity of the replacement cells wasn't more than the original factory new capacity that wouldn't be an issue. In fact I'm going to do a cell swap of 4 cells in my Ion soon as there are a few cells letting the team down that have a lot lower capacity than all the others, in theory once I do this and tell the BMS to do a battery calibration to measure the new capacity (using a diagnostic tool) it should go back up again to that of the good cells again.

However if you were to fit a replacement battery with a lot more capacity than an original new battery it is unknown (on a car model by model basis) whether the BMS could be persuaded to recognise the higher than usual capacity or not.

Some may well do, but it would be an expensive experiment to fit all the new cells and modify the car extensively only to find the BMS refuses to acknowledge the increase in capacity even after a battery calibration! :confused:

If the BMS will not recognise the higher than usual capacity you will not get any increase in usable range.
 
Most EV's don't charge Li-ion cells to 4.2 volts. 4.1 volts is typical, some go slightly higher but I'm not aware of any that go all the way to 4.2 volts. It puts too much strain on the cycle life for only an incremental range increase. (Cycle life is roughly halved by charging to 4.2 volts instead of 4.1 - not worth it for getting an extra 5% range or so!)
 
Most battery management systems dont care what capacity cells are installed, and they coulomb count - so given a few hundred driven miles after a capacity upgrade the stats reflect the increase.
Would you be willing to bet a few thousand pounds worth of new replacement battery pack on that though ? ;)

I wouldn't, until someone else goes first. :)
 
When Leaf30 battery is sufficiently degraded, that is exactly what I plan to do.

- Leaf 30 kWh
Sent from mobile phone so please mind the typos
What, replace the battery with much higher capacity than original factory new cells without making any changes to the BMS system ? If so, do remember to let us know how that goes...
 
Why would it have an issue? Wouldn’t it just charge to a set voltage?
Not quite as simple as that. Voltage is not the issue.

The BMS is responsible for measuring and maintaining a record of the usable Ah capacity of the battery which it uses as part of the calculation for available range remaining.

This capacity figure degrades over time so it's important that the BMS keeps track of it as the cells degrade, which is done by a combination of occasional opportunistic measurements and a programmed in assumption of rate of degradation with cycling, temperature etc for the specific cells used in the car (which would be wrong for replacement cells of a radically different type btw) to fill in the gaps between actual measurements, which can be very infrequent depending on the range of SoC you use the battery over. (If you were to keep it between 40% and 80% for example it would never have a chance to actually measure it)

On my car a new battery has a capacity of 45.8Ah from the factory and this is the figure the ECU will reset to if you use the "battery replacement" procedure in a diagnostic tool which would normally be used if you were doing a whole battery pack swap.

The ECU will only adapt slowly to changes in apparent Ah based on the expected degradation rates of the cells, so if you make a sudden large change to the capacity by swapping the battery the ECU is very reluctant to make abrupt changes that don't fit in with its perceived degradation model.

There is also a "battery calibration" routine which can be run with a diagnostic tool that will attempt to make an immediate correction to the Ah figure based on a full discharge/charge cycle of the battery however there is no guarantee whatsoever that you could throw in a battery of say 100Ah or double the original capacity and expect this test to complete without errors and change the Ah figure to a value this high. For example there might be a timeout in the test that prevents it completing with such a large battery that takes longer to charge, or it may have a cap to the highest Ah figure which it will accept. (A sanity check in the code that refuses to accept "impossible" results from the test)

We have no idea how any given BMS would respond to a battery that has dramatically higher capacity than what it expects of a new battery. If someone wants to spend thousands fitting a custom battery to try it without a modded BMS as an experiment - be my guest, and let us all know how that works out for you. Somebody needs to be first to do the experiment for any given car.

However don't be disappointed if the battery "works" but the BMS refuses to acknowledge the increase in capacity above factory new normal capacity. If it does not acknowledge the additional capacity you will not be able to use that additional capacity and you will not get more usable range as the BMS will not allow the battery to be discharged beyond what it thinks is the minimum capacity of the cells even if the cell voltages are still high and the cells actually still have a lot of capacity left.

Low SoC shutdown in an EV is controlled primarily by the presumed SoC and cell voltage is used as a backstop in case the cells reach dangerously low voltage when it still thinks the SoC is high.

If you hit the presumed SoC where the car should shut down early (because the Ah figure does not reflect the true higher capacity of the cells) and the cell voltage is still high - it doesn't matter. The BMS will still think it's near 0% SoC and go into turtle mode and then shut down. You won't be able to use the extra capacity despite the cell voltages still being high as cell voltage is not the primary trigger to put the car into turtle mode and shut it down.

Every BMS is going to handle an unusually large battery differently depending on how they are programmed. Some will be smarter and more adaptable and I'm sure there will be some that will happily calibrate to a higher than usual capacity, perhaps with some prodding from the appropriate diagnostic tool to force a battery calibration.

But there will be other BMS's that are "stupid" and will refuse to accept battery parameters outside a certain narrow expected range, probably those in older cars.

So I think it is extremely naive to think that you could just chuck a battery of 1.5 to 2x the capacity of the original battery into an old EV and expect the BMS to accept this new size and make it fully usable, without some reprogramming of the BMS or substituting an after market BMS.
 
The BMS might not be able to measure the capacity accurately for a bit but you are giving it intelligence it doesn't have.
Quite the reverse, you're assuming more intelligence than it may have... as a general rule the ECU's in older cars are more "stupid" and inflexible than those in modern cars, and were programmed to work within a very narrow set of conditions. This applies to ECU's in ICE vehicles as well such as the engine management ECU, which often couldn't accommodate much or any performance "tuning" changes without reprogramming or replacing with a more generic programmable Engine ECU. The ECU was tuned to the specific characteristics of a stock unmodified engine (cartographic maps for volumetric efficiency and many other parameters etc) and that was that...
 
You've obviously never done any EV battery upgrades, so I'll excuse your ignorance.
If you're an expert on the matter, by all means please list which models of commercially sold EV you have personally upgraded the battery capacity on using third party cells, by how much it was increased, and whether changes to the BMS were required for it to be successful. I'm sure we'd like to know, since this is what this thread is about after all. Share your real world experience...

PS, please don't make unfounded assumptions about what my technical expertise might or might not be.