Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

Battery Management System - What I Learned At Tesla Service Center

This site may earn commission on affiliate links.
Status
Not open for further replies.
However, every single SMT readback I have seen so far shows the buffer (as it is called out) is 4.5% of the full pack.

Of course there are other provisions the BMS could make which would hide battery
True, but It’s the “Nominal Full Pack” (NFP) variable that appears to have been affected by the OTA updates last year and varies from car to car. This is where any BMS uncertainty fudge factors would get included (IMO). A lower NFP value most likely equates to a lower max “miles remaining” display. I would love to see someone check and see if the NFP value increases after 3 or 4 deep cycles with 90%+ charging.

Scan My Tesla (OBDII) Install
Perhaps, again the BMS could hide energy from the car. But I would say that effectively this is not “fine” because it means there is less energy available to the user! The effective result is reduced energy available and I think we can all agree that is what matters to the user.

See this awesome thread which proves via the charging event time that a reduced rated miles indeed means less energy available. We just need someone with a mostly un-degraded SR+ to repeat the experiment and add 201 rated miles and show that it takes the same time, to really prove that available energy is directly proportional to charging time (assuming a warm environment
I don’t think the “hiding” of actual capacity from the car is really reducing the available capacity. Remember the vehicle will continue to operate until the most depleted battery module reaches a minimum voltage under load. The “NFP” variable should have no impact on real-time battery voltages. This explains why there are examples of users with healthy packs being able to continue driving even with UI showing zero miles remaining. IMO this so-called degradation people are seeing is a conservative strategy by Tesla to make sure users don’t experience a shutdown before they hit zero miles remaining. Measuring pack remaining capacity is tough without the deep cycling so they play it safe and have the car think it has less capacity than it has. Again, none of us know what is really going on, but what I’ve stated is entirely plausible.
 
  • Informative
Reactions: GSP and Dr. J
This explains why there are examples of users with healthy packs being able to continue driving even with UI showing zero miles remaining.

The design is intended to have 4.5% of the energy (the BMS estimate) available still, when you hit 0 miles. So most people should be able to continue to drive at that point, but certainly it gets iffy, and no one should try - as you say it is a tricky thing to properly estimate the true state of affairs. But every Model 3 is set up to behave this way.

A lower NFP value most likely equates to a lower max “miles remaining” display.

Agreed; it definitely does. It is directly related through a known formula (discussed here). Just multiply the max value by the charging constant.

This is where any BMS uncertainty fudge factors would get included (IMO)

Maybe. But actual adjustments like that, if you are saying they result in changes in energy of 5-10%, would result in significant changes in voltage at 100% (differences in that value from car to car). I don’t think the SMT data supports this all that well, though I could be wrong.

Again, whatever the underlying mechanics are, my main point here is that if we assume that no one wants to go below zero miles, a reduction of rated miles available represents a very real (and measurable, via the charging event, if you desire) reduction in available energy to use - and in the end that is the key metric for any user. There is a lot of misinformation going around here that the max value at full charge is “just an estimate” and doesn’t mean you have lost energy. But this is demonstrably not true - if desired, any user can accurately (within 1-2%) measure energy available at a full charge. Now of course, due to BMS adjustment, you could see some recovery in the 100% value after a discharge - but that does not help you on a trip before that happens, if you are trying to go somewhere! The 100% value really does seem to be a very good estimate of what usable energy your pack contains (again, assuming you do not want to go below zero miles and “explore” your “true” capacity).
 
Last edited:
I wonder what would happen if in an ICE car they had a display of gallons of fuel remaining with 0.1 gal precision and range remaining based on the EPA rated MPG multiplied by that number... would people would obsess over it? Take it in for service when, after filling up at the pump, the range-to-go was 5 mi less than window-sticker or when they drive a 23 mile commute to work and the range to go dropped by 26 miles?

Tesla could have just displayed the battery icon, no % number next to it, and no option to display range remaining. Or even more extreme, just made an E....1/2.....F bar. This would be the equivalent of an ICE gas gauge. Would everyone be happier?
 
I wonder what would happen if in an ICE car they had a display of gallons of fuel remaining with 0.1 gal precision and range remaining based on the EPA rated MPG multiplied by that number... would people would obsess over it? Take it in for service when, after filling up at the pump, the range-to-go was 5 mi less than window-sticker or when they drive a 23 mile commute to work and the range to go dropped by 26 miles?

Tesla could have just displayed the battery icon, no % number next to it, and no option to display range remaining. Or even more extreme, just made an E....1/2.....F bar. This would be the equivalent of an ICE gas gauge. Would everyone be happier?
That is an excellent idea and something I think Tesla will end up doing. There is no good reason not to when a user could just go into the Energy app for true remaining miles in current conditions. Tesla still needs to provide someway though to display true degradation.
 
Tesla still needs to provide someway though to display true degradation.

Again, once you degrade below the point where capacity loss becomes visible, the rated miles at 100% (with a warm battery) is an excellent proxy for effective capacity loss. That estimate is really quite excellent - I would guess within 1-2% of the true value. Multiply by the charging constant and then by 0.955 to get the available energy to 0 rated miles. Or equivalently just multiply by the discharge/BMS constant.

So that value is a great way to judge this. The only further improvement would be an improvement in BMS accuracy, which is a separate issue and based on available data, it is already very good indeed, so diminishing returns there.

Again, you could “try” to push things to see whether there is lots of extra “ hidden” capacity below 0 miles, but no one is going to do that. That’s why I say effectively this is an excellent metric for usable, accessible capacity.

Is this loss of capacity “true” degradation? I don’t know - sometimes a small amount of capacity comes back. But effectively it is still the loss of capacity which matters, at least for that particular battery discharge event.
 
Last edited:
  • Helpful
Reactions: Rocky_H
Hugh makes a good point that I did not consider, as do many others. Even so, I believe there is a difference. When I buy an ICE car I'm not paying extra for range. The fuel tank is a fixed size and I have a very good estimate of my range upon purchase. In an EV I am indeed paying for extra range - the bigger battery costs more. So to maximize utility for my use I have to consider the driving I'm likely to do, then find the battery pack that best matches my range needs with my purchasing budget. To do that I need to have a good idea of the true battery range. The EPA range isn't it - I'm not going to drive my car to 0% range, so I have to estimate how much true range do I have? If I live in CA with an average year round temperature of 65 degrees I'd likely assume that my battery pack range won't be seriously impaired during winter. Not so in my locale, so again I need an estimate of true range. I bought the LR RWD because at the time it provided the longest range available within my budget (Model S was too expensive for me). That decision was based upon my estimates that the SR pack would be too limiting in cooler weather, and the SR+, while better, still would have some issues in cooler weather or in other driving conditions. My decision to buy the LR RWD was then solely based upon projected driving conditions I'd likely face. That decision added $10K to my purchase price - not an insignificant amount. That's why I seem "obsessed" over knowing the true range of my car. My $10K purchase tax (paying for extra range that I intend to use) wasn't to get extra features, just extra range. And if I'm not getting what I paid for after careful consideration, then I feel that Tesla could have done a better job helping me make my purchase decision. If my true range is closer to 280 miles instead of 322, then I WOULD have purchased the SR+ and saved myself a significant amount of money since I would have to make an extra stop even if I bought the LR. So if the LR doesn't get me where I want to go without having to stop for an extra charge, then the LR has no utility for real range improvement. If you advertise the car as providing 322 miles of range (check the tesla.com website - that's the published range) and if in fact the actual true range is only 280 miles, then why shouldn't prospective buyers have that information and perhaps make a more efficient purchase decision? And that's my point.
 
Hugh makes a good point that I did not consider, as do many others. Even so, I believe there is a difference. When I buy an ICE car I'm not paying extra for range

You often are- since cars often have a choice of engine with different mileage. Ditto a choice of transmission with different mileage (though that's more rare these days)


If you advertise the car as providing 322 miles of range (check the tesla.com website - that's the published range) and if in fact the actual true range is only 280 miles, then why shouldn't prospective buyers have that information and perhaps make a more efficient purchase decision? And that's my point.


You have to pick an objective measurement standard. Because no 2 peoples "real world" is identical.

In the US that standard is the EPA test. Which gets you 322 on the LR model 3 with 18s.

In Europe it's WLTP (which many find far LESS real world than the EPA model).
 
  • Like
Reactions: Gasaraki
Two issues here, don’t want to confuse them. Achievable range - that just will vary a lot and can be quite a lot lower than some new EV owners expect, primarily due to heat use, speed, and vampire. No need to discuss that here.

Separate topic, on topic for your thread, is energy available and what you had when you started, and now.

That's why I seem "obsessed" over knowing the true range of my car.

You don’t need to obsess any more. Take your rated miles at 100%, and for your LR RWD multiply by 223Wh/rmi. That will be your usable energy from 100% to 0%. (Trip meter will show about 2% less.)

Alternatively, if you don’t like that method, in warm conditions, charge your battery at about 7.7kW, from near 0% to 90% or 100%, and log: voltage, current and time precisely. Log rated miles added too for completeness.

Take V*I*t and then multiply by 0.89.

And then extrapolate to 100% (if necessary...so divide by the % of the 0-100 range you filled).

Short story: cars with reduced capacity take less time to charge. That’s the most direct way to know capacity is reduced. No ambiguity there when comparing warm charge events conducted at the same charge rate.

If you advertise the car as providing 322 miles of range (check the tesla.com website - that's the published range)

That is for the 2020 AWD. Your car was advertised at 310 and then unofficially increased to 325 (EPA rating is actually about 335).

if in fact the actual true range is only 280 miles,

That’s an issue of range not capacity, unless your car shows 280 miles of rated range at 100%, in which case that is a matter of capacity. But it sounds like your LR RWD vehicle is at 300 rated miles vs. the original 310, ~3.3% loss from new, and ~8% loss (nominally, might be a little more actually) from the maximum that was available from any LR RWD. Overall these are fairly normal results for a car that age.
 
Thanks to all for the detailed informative posts. Much appreciated. AlanSubie - that's for the explanations and your patience explaining the details of battery management. Your last sentence sums it up pretty well. I'll continue to monitor my range/available energy and try to better understand BMS information, which I still find very confusing.
 
Here is everything that doc has to say on battery capacity calculation. Doesn't really demystify how the BMS actually calculates CAC, but gives a good overview of the high level stuff:

Battery Capacity/Range Calculations
General
The range of the vehicle, typically displayed in miles or kilometers, is a function of many parameters in the vehicle to provide the most accurate assessment of range remaining. We do this to prevent the customer from running out of charge prematurely. The voltage of the pack is directly correlated to the State of Charge (SOC) of the vehicle. This is indicated by the bar in the UI. However the capacity of the pack changes over time which means 100% SOC will always be 100% but the range can change based on the battery capacity. The capacity is tracked by the HVBMS in a value called Calculated Amp-hour Capacity (CAC).

Theory of Operation
The range calculation can be shown using the simple flowchart below.
upload_2020-2-24_17-29-59.png

Starting from left to right, we can see the first important number that comes into the equation is CAC. This number can viewed in logs and Garage and is constantly changing from HVBMS calculations to update the value to reflect energy capabilities in the pack. Note that this value is the Ah capacity for a single brick. All bricks have their capacities calculated and the minimum brick is used for the range calculation as is the brick that will at the end limit the pack capacity. As seen earlier, the parallel count of cells (brick) defines the pack energy storage capacity and the series count its power output.

Now to get the full capacity of the entire battery the value will need to be multiplied. Multiplied by the average brick voltage will give the kWh value. *Note that this full pack energy does take into account temperature in a small amount; therefore a really cold pack will have slightly less full pack energy.

The full pack energy is then just multiplied by the SOC of the pack. Therefore 50% SOC means .5 (or half) of the full pack energy.

The energy is then divided by a fixed Watt-hour per mile (whpm) value that is hard-coded into the pack based on the rated range setting and vehicle configuration. This is the average efficiency found during the EPA drive cycle testing (or EU/APAC equivalent standard). The final number will appear in units of distance and this is what is displayed on the MCU.

Capacity Specifications
As shown above, the capacity of the pack has a direct correlation to the final range displayed to the customer. CAC is calculated by the HVBMS by monitoring voltage change as well as current leaving and entering the pack. The simplified CAC calculation is indicated in the diagram below:
upload_2020-2-24_17-29-36.png

GUID-81EFC107-1C2C-4E53-B4CD-E0A98CCFEDE8-online.png

The pack shunt is used to count amp-hour over a certain amount of time. That value and on the delta SOC for that amp-hour amount is used to determine CAC. [JH5] This calculation is done whenever there is a drive or charge cycle however values are only stored when the calculation is deemed accurate. There are many complex parameters that factor into the accuracy of that number, and the HVBMS decides when the number is accurate enough to update CAC. One of these parameters is rest time before and after the drive/charge cycle. Notice in the figure above that the SOC was flat for a long time before and after the drive, this results in the most accurate voltage/SOC measurement which makes the CAC calculation accurate. Therefore in a worst case example, if a driver constantly charged and drove without ever letting the vehicle rest at a fixed SOC, then CAC algorithm will not update during that time.

Brick Balancing
Note that the capacity of a pack is limited by the brick with the lowest capacity. When that brick is charging, it will gain voltage faster than other bricks. The HVBMS will stop charge when any brick reaches its ceiling voltage (~4.2V). If one brick has a significantly lower capacity that others, the pack will be limited by that brick which will get to 4.2V faster than the other ones. We refer to the brick with the lowest capacity as: min CAC. In periscope, its value can be seen by viewing the signal: 'BMS_cacMin'

Another limitation could come from bricks being imbalanced, or some bricks with a voltage higher/lower than others. This would limit ability to charge the pack as the brick with a higher voltage than others would reach the ceiling voltage early. Same idea when discharging, the brick with the lowest voltage would hit the floor voltage early which would cause the HVBMS to open contactors from low power

To mitigate this imbalance, Batman has some bleed resistor that can be placed and removed in parallel of each brick via a FET relay. Batman can put that resistor across the brick with the highest voltage which would slightly discharge that brick and bring it back to the level of the other bricks. Batman closes a FET which puts that resistor across the brick. The HVBMS will order Batman to put that bleed resistor across the brick with the highest voltage when Delta V is > 5mv MinBrickV > 4.0v (~85% SOC) && HVBMS State == STAND BY.

Note that Batman can also do balancing when the HVBMS is asleep :).

The best way to balance the Model 3 pack is to set charge limit to 90% or higher and let the vehicle sit idle for hours (plugged in or not). 24 hours of balancing can reduce imbalance by 1mV.
 
Therefore 50% SOC means .5 (or half) of the full pack energy.

Not quite. It excludes the buffer (4.5% of the full pack energy).

SoC % = (Current Pack kWh - BufferkWh ) / (Max Pack kWh - BufferkWh)

the parallel count of cells (brick) defines the pack energy storage capacity and the series count its power output.

I was a bit confused by this statement and the diagram. The bricks as I understand it for the LR pack are 46 cells in parallel (that makes a brick). Then 96 of these bricks (in 4 different modules, 2x23 bricks + 2x25 bricks) are placed in series.

And I would modify this statement to say: the number of cells in parallel in a brick (46 for LR, 31 for SR) determines the max current capacity of the pack. And the series count determines the voltage (96*4.2V = 403V max). Together, they determine the power that can be delivered, and the energy contained in the pack (power integrated over time).

I feel like this verbiage in the diagram is wrong, but maybe I am missing something. Should be "nb_of_brick_series" (???).

Because that would result in 96 (nb_of_brick_series) * 3.6V * CAC = 79 kWh. (So CAC might be somewhere around 230Ah - matches the EPA document, anyway...)

Screen Shot 2020-02-24 at 5.45.02 PM.png
 
Last edited:
Again, thanks for the helpful posts. One point I'd like to clarify. The last sentence on the prior post states:

The best way to balance the Model 3 pack is to set charge limit to 90% or higher and let the vehicle sit idle for hours (plugged in or not). 24 hours of balancing can reduce imbalance by 1mV.

For my purposes does that statement mean that if I periodically charge to 90-95%, and let the car stay at that level for as much as 24 hours, that I'll effectively rebalance the battery pack to obtain maximum range (given the state of my battery pack)? If so, shouldn't I then just charge from 30-80% as "standard", and then charge to the higher level "occasionally"? That seems to suggest that I'll have maximum battery life (staying in a 30-80% range), and maximum range (rebalancing the battery pack to offset low cell voltage and other issues?
 
Not quite. It excludes the buffer (4.5% of the full pack energy).

I was a bit confused by this statement and the diagram. The bricks as I understand it for the LR pack are 46 cells in parallel (that makes a brick). Then 96 of these bricks (in 4 different modules, 2x23 bricks + 2x25 bricks) are placed in series.

View attachment 514865

I think the labeling of the diagram is just poor, an earlier section of that doc states "There are 25 bricks in the longer module and 23 bricks in the shorter module, both in series. There are 46 cells in parallel in each brick."

Maybe they call each brick a "parallel brick" so the diagram is saying "count of parallel bricks" which each parallel brick is then connected in series
 
  • Informative
Reactions: AlanSubie4Life
I think the labeling of the diagram is just poor, an earlier section of that doc states "There are 25 bricks in the longer module and 23 bricks in the shorter module, both in series. There are 46 cells in parallel in each brick."

Maybe they call each brick a "parallel brick" so the diagram is saying "count of parallel bricks" which each parallel brick is then connected in series

Sure. That makes sense. Ok. "nb_of_(brick_parallel)", where "brick_parallel" is...a brick.... is what was intended to be conveyed.
 
  • Like
Reactions: ord3r
I'm going to avoid sharing any more of this doc, but there are a ton of goodies in it if you guys want to keep digging. just google "site: pastebin.com model3"

It looks like it is what is given to the service center, but really not sure. Got tipped off to it from a twitter post by green and was fairly easy to come across in google.
 
I'm going to avoid sharing any more of this doc, but there are a ton of goodies in it if you guys want to keep digging. just google "site: pastebin.com model3"

It looks like it is what is given to the service center, but really not sure. Got tipped off to it from a twitter post by green and was fairly easy to come across in google.

reading your post. Very good info.

Regarding the balancing procedure, it says it's able to correct 1mV difference per day of balancing... do you have any idea of the order of magnitude these imbalances can be? By the sound of it, it would seem as if it may take weeks of the car to be idle to correct for cumulative imbalances. Does that make sense?

As somebody that has very rarely charged above 80% for the last 6 months, only for the ocassional road trip, this means the balacing procedure never really kicked in, so i'll start charging to 90% and leave it for a few weeks to see if that does anything.
 
Two issues here, don’t want to confuse them. Achievable range - that just will vary a lot and can be quite a lot lower than some new EV owners expect, primarily due to heat use, speed, and vampire. No need to discuss that here.

Separate topic, on topic for your thread, is energy available and what you had when you started, and now.



You don’t need to obsess any more. Take your rated miles at 100%, and for your LR RWD multiply by 223Wh/rmi. That will be your usable energy from 100% to 0%. (Trip meter will show about 2% less.)

Alternatively, if you don’t like that method, in warm conditions, charge your battery at about 7.7kW, from near 0% to 90% or 100%, and log: voltage, current and time precisely. Log rated miles added too for completeness.

Take V*I*t and then multiply by 0.89.

And then extrapolate to 100% (if necessary...so divide by the % of the 0-100 range you filled).

Short story: cars with reduced capacity take less time to charge. That’s the most direct way to know capacity is reduced. No ambiguity there when comparing warm charge events conducted at the same charge rate.



That is for the 2020 AWD. Your car was advertised at 310 and then unofficially increased to 325 (EPA rating is actually about 335).



That’s an issue of range not capacity, unless your car shows 280 miles of rated range at 100%, in which case that is a matter of capacity. But it sounds like your LR RWD vehicle is at 300 rated miles vs. the original 310, ~3.3% loss from new, and ~8% loss (nominally, might be a little more actually) from the maximum that was available from any LR RWD. Overall these are fairly normal results for a car that age.
Nice briefing.

FWIW: my May 2018 build LR RWD indicated 499 km when I first topped it up to 100% about three weeks into ownership (in June 2018). The last time I had it at 100% was just before New Years (about eight weeks ago) and with 44,000 km on the clock, the car showed 503 km.
 
(rebalancing the battery pack to offset low cell voltage and other issues?

Answering this general question. Note that rebalancing according to the document will cause your battery to lose energy, not gain it. It lowers high cell voltages (according to the document). So that allows on a subsequent charge for all cells to charge higher before hitting the voltage limit. Which would then mean more energy.

I’ve never seen any impact on my range that depends on where I charge to, but my guess is it depends on the battery. For example: If you lose a cell somewhere in the pack due to a fusible link, then I think you’ll constantly have to be rebalancing that associated brick (since it will charge up faster). This also will have a big impact on range of course (1/46).

Overall I just would not worry about it. Charge to what you need and forget about it. There is very little evidence that how you treat the battery matters much at all (so far). Everyone’s battery loses capacity initially, so that probably does not have much to do with how it is treated.
 
  • Helpful
Reactions: Dr. J
Status
Not open for further replies.