This post is another nerdfest, for sure, but there are a findings and points that everyone thinking about range and battery capacity might be interested in, especially in the last paragraph.

I spent some time and did more careful calculations using data logged by TorquePro for those two long trips in my 2019 Bolt on July 4 and 5th (both about 235 miles on a single charge- 55579 Tom Cat Drive, Homer, to 49th State Brewery in Anchorage, Alaska for those interested in looking on Google or wherever your mapping is happiest). I also added a shorter trip (186 miles), but still using 70% of battery, but with cooler, wetter conditions on July 19th. I wanted to see how Battery % Displayed and Raw State of Charge (SoC) % might vary relative to each other and to kWh Used. That way I could evaluate how accurate the quick-and-dirty method might calculate battery capacity, at least for this small sample size of two trips. If the relationship is strongly non-linear then the calculations will be the most inaccurate over the portions of the curve where the non-linearity is strongest. I found that the quick-and-dirty method seems to be a good one, especially if you can control for other confounding variables such as high and low temperature and aggressive charging and driving history. I encourage you to present other measurements, especially if you have different findings!

Methods

The PIDs that TorquePro collects for the 2019 and later Bolt do not include values for cumulative kWh Used. In MSExcel, I calculated kWh Used using the area under the curve of Time vs Instant kWs of power, both recorded by TorquePro. Averages of adjacent half-second intervals over the duration of the trips were summed and divided by time (1/7200 hour). Another method is to fit a polynomial equation and integrate. However, results from those two methods are probably not significantly different. A shorter time interval would be more accurate, but for a long trip, that's a lot of data for MSExcel!

Wesley (above) mentions that displayed state of charge falls more slowly at high levels compared to kWh used, but falls more rapidly when the state of charge is lower. Wesley mentions that they use an SoC vs kWh Used relationship, but that relationship isn't shown on their graph. I wondered how extreme the non-linear relationship was. Enough to strongly bias calculations of capacity using a quick-and-dirty method described in a previous post? (looking at when the DIC shows 50% or 75% and at the same time noticing the kWh Used display, then doubling or quadrupling, respectively, kWh Used to get an estimate of capacity)

Here's what I got:

The bottom axis is kWh Used and along the left is the battery percentage. Despite the axis title, two different battery percentages from TorquePro are displayed for each trip, the SoC Raw HD % (darker red, orange and blue) and the Battery % Displayed (lighter red, orange and blue dashes)- the latter is what is used to display the green bars on the Dirver Information center (DIC) on the dashboard. The equations for the linear relationships are also displayed. The coefficients of these equations suggest that overall loss is about 1.5% battery capacity per kWh Used (1.5237% on the 4th, 1.4502% on the 5th, 1.43% on the 19th). It would be interesting to compare these coefficients among trips and different cars. 1/60 kWh = 1.67 and 1/66 kWh = 1.52. Comparison statics could be performed to determine if the coefficients are statistically different at chosen p-values. Those statistics would be a way to objectively demonstrate a significant decline in capacity.

Non-linearity

You can really see the s-shaped relationship that wesley writes about- the values for displayed battery percentage are higher than the raw SoC percentages when the battery is closer to full: the lighter-colored dashed points plot above the darker-colored lines. The lines are very close and nearly perfectly linear about halfway along the curve (between about 50% and 75% SoC). When the battery is closer to empty, the battery display % plots lower than the raw SoC % values. Therefore, especially at high and low states of charge, what's displayed in the car is based on different values than the Raw SoC %. Of course, what's displayed in the car is even coarser because that display is in 5% bins. I did not evaluate how the value for battery % that is displayed in the MyChevrolet app compares to either of these percentages.

The straight dotted lines of the linear relationships show that if the actual relationship between Raw State of Charge % and kWh Used was linear, then the % meter (and Raw SoC) is falling too slowly at first, compared to kWh used, and too quickly at low %, as wesley writes. GM has probably built in a little bit of an extra buffer to help prevent drivers from running out of juice unexpectedly when they are at low battery levels. Good idea!

However, maybe the relationship between Raw SoC % and kWh Used is, in reality, slightly non-linear? If the numbers that TorquePro gathers from the OBDII are accurate and we are interpreting them correctly, then the slight arch in the Raw SoC % vs. kWh Used curves seem to imply that the non-linearity is real. kWh Used declines more slowly at high Raw SoC % and slightly faster at low %.

It seems that a kW should be a kW regardless of the charge status of the battery, but battery capacity is not a fixed number. Since capacity varies depending on many things including temperature and charging history, it seems quite possible that battery capacity could increase ever so slightly when using a nominal kW at 95% SoC, and decrease a little extra when using 1 kW at a 25%. If so, then the quick-and-dirty method is more accurate than either non-linearity would suggest. It appears especially accurate between ~50-75% SoC where depatures from linearity are minor.

Of course, these are just three curves calculated during pretty uniform and benign conditions. I have never used a DC fast charger; there are none in my State. I use a level 2 charger at home to get 32A at 240V. I set my target charge level to 80% unless I'm planning to go on a longer trip. I set the cruise control to the speed limit on longer trips to increase efficiency and make similar trips comparable. At home, I plug in when outside temperatures are below freezing.

Standardize capacity comparisons

These findings suggest that first, get the most accurate % state of charge value at the most specific value for kWh Used that you can. Second, perform the calculation at between 50 and 75% charge where these relationships are the most linear. Using the full range of capacity is next best, because biases at higher states will tend to balance biases at lower states of charge.

Not specific to this analysis: do not perform the calculations when the confounding variables are expected to be especially confounding (high/low air temperatures, lots of fast driving and DC fast-charging to full). This makes god sense. Capacity should be calculated and compared using standardized conditions. If things change, like a DC fast-charger is suddenly installed in a convenient spot and you use it a lot, and the temperature is very much higher or lower, your comparisons won't be that, well, comparable. Measurements like these will always be confounded by degradation. However, Li-ion battery degradation curves suggest that degradation is small; occurring rapidly at first, then very slowly over time. Of course, controlling for conditions is not always possible, so plotting more measurements is better. The outliers should be apparent, especially if concomitant data are collected about relevant conditions.

Discrepancies

The capacity estimates for trips were about 2 kWh below the capacity calculated using "kWh Used" recorded from the car's display (66.17 vs 68.6, 64.3 vs 67.6, and 65.7 vs. 68.5 on the display). This ~2kWh discrepancy is almost certainly because the area-under-the-curve method underestimated the total kWh Used. It calculated that I used 50.8 kWh on the 4th (vs 54.2 on the display), 55.7 on the 5th (vs 56.9 on the display) and 46.3 on the 19th (vs. 48 on the display). Unfortunately for accuracy, on the July 4th trip, TorquePro missed recording about 2 minutes worth of data during the time the battery level was falling below 40%. Even with this missing data and inaccuracy, the area-under-the-curve calculations are probably sufficient to get a good sense of the magnitude and shape of the non-linearity between kWh Used and % States of Charge at any point along the curve.

Factors affecting range/kWh used

The early July trips were pretty similar, but with a few important differences. They were on the same road in dry conditions, but in different directions (a round trip with a stop overnight to charge). Starting elevation on the 4th was 500 feet higher than the ending elevation, so on the 5th there's more of a climb, but there was less weight in the car, maybe 175 pounds. I also had more headwinds on the 5th. The temperature was around 80 degrees F on the 4th and 57 degrees on the 5th. Maybe most importantly, the speed limit increases to 65 mph on a long hill- mostly downhill on the 4th and uphill on the 5th. That is probably the biggest reason that more kWh were used on the 5th, even though the distance was slightly shorter (1.5 miles). Otherwise the speed limit is 55 (mostly) or 45. I set the cruise control to the speed limit on both trips to try to keep conditions as similar as possible, although to make sure I got home on the 5th without charging, I set it to 60 for most of the (uphill) 65 mph zone. I only increased speed to 65 a few times, when a car was behind me without a passing zone.

The July 19th trip was less hilly, cooler- 55 degrees- and rainy. The seat heaters, wipers, and fan were on much of the time. It's flatter and mostly 55 mph the entire way. It was RT from the address above to the Kenai Airport.

I look forward to continued contributions to this subject. Make measurements! Record data!

Addendum:

Another trip (almost identical to the July 19th trip, ~190 miles)- this time I did not record kWh used at the end, so rely solely on the output from TorquePro. I just used calculations from between 25% and 75% because the trip did not begin fully charged. The DIC % fell to 25%, however, SoC Raw did not fall to 25%, thus the missing values. Now I see your point on variability! However, assuming that the "true value" is ~64-66 kWh, it does appear that subtracting the two kWh used values for when when DIC % displays 50% and 75% and multiplying by 4 is reasonably accurate- perhaps the most accurate way to estimate capacity: