The battery discharge curve is a graph of cell voltage versus capacity (mAh) or time during discharge at a specific current. It is the most fundamental characterisation of any battery cell, revealing true capacity, voltage profile, internal resistance, and end-of-life indicators. Understanding discharge curves is essential for accurate SoC estimation, choosing cutoff voltages, and comparing cells. This guide covers how to read, record, and analyse discharge curves for common battery chemistries.
What Is a Battery Discharge Curve?
A discharge curve plots voltage (Y-axis) against discharged capacity in mAh (X-axis) at a constant discharge current. The shape of this curve tells you everything about how the battery will behave in your application:
- Starting voltage: How much voltage the cell provides at the beginning of discharge
- Plateau region: The voltage range where the cell spends most of its capacity (usable range)
- Knee point: Where voltage begins dropping steeply, indicating the cell is nearly empty
- Cutoff voltage: The minimum safe voltage before the cell is damaged by over-discharge
- C-rate effect: How the curve changes at different discharge currents (higher current = lower voltage = less usable capacity)
Discharge Curves by Chemistry
Li-Ion (NMC/NCA) — 3.7V nominal: Gradual slope from 4.2V to ~3.0V. Relatively linear mid-section makes voltage-based SoC somewhat feasible (though not precise). About 80% of capacity is delivered between 3.5V and 4.0V.
LiFePO4 — 3.2V nominal: Very flat curve at 3.2-3.3V for 80% of capacity, then sharp drop below 3.0V. This extreme flatness makes voltage-based SoC nearly impossible — 3.25V could be 20% or 80% charge. Coulomb counting is essential for LiFePO4.
LiPo — 3.7V nominal: Similar to Li-Ion NMC but slightly different curve shape due to polymer electrolyte. More sensitive to high C-rate discharge (greater voltage sag).
NiMH — 1.2V nominal: Flat plateau at 1.2V for most of capacity, with a relatively sudden drop below 1.0V. The flat region makes NiMH excellent for applications requiring steady voltage.
Lead-Acid — 2.0V nominal: Gradual slope from 2.1V to 1.75V (per cell). The 12V battery curves are well documented. Significant voltage sag at high currents due to high internal resistance.
Recording Your Own Discharge Curves
Using an Arduino and INA219, you can record publication-quality discharge curves:
#include <Adafruit_INA219.h>
#include <SD.h> // Optional: log to SD card
Adafruit_INA219 ina;
float cutoff = 2.80; // Adjust for chemistry
unsigned long startTime;
void setup() {
Serial.begin(9600);
ina.begin();
startTime = millis();
Serial.println("time_s,voltage_V,current_mA,capacity_mAh");
}
float totalMah = 0;
unsigned long lastSample = 0;
void loop() {
float v = ina.getBusVoltage_V();
float i = ina.getCurrent_mA();
unsigned long now = millis();
if (lastSample > 0) {
float dt_h = (now - lastSample) / 3600000.0;
totalMah += abs(i) * dt_h;
}
lastSample = now;
float elapsed = (now - startTime) / 1000.0;
Serial.print(elapsed,1); Serial.print(",");
Serial.print(v,3); Serial.print(",");
Serial.print(i,1); Serial.print(",");
Serial.println(totalMah,1);
if (v 10) {
Serial.println("DISCHARGE COMPLETE");
Serial.print("Total: "); Serial.print(totalMah,0);
Serial.println(" mAh");
while(1);
}
delay(5000);
}
Import the CSV into Excel, Google Sheets, or Python matplotlib to generate professional discharge curve plots.
Analysing Discharge Data
- Voltage at 50% capacity: This is the “nominal” operating voltage. It should match the cell’s rated nominal voltage.
- Capacity at rated cutoff: The mAh delivered from full to cutoff voltage at the test current. This is the cell’s true capacity at that C-rate.
- Voltage sag: Compare curves at 0.2C and 1C discharge. The voltage difference is proportional to internal resistance: IR = (V_0.2C – V_1C) / (I_1C – I_0.2C).
- Knee point detection: The capacity where voltage drops below the plateau by more than 0.1V. This indicates 85-95% of usable capacity has been delivered.
Determining Usable Capacity from Curves
Usable capacity depends on your application’s minimum operating voltage:
Example: 18650 cell, 1A discharge
Total capacity to 2.5V cutoff: 2,450 mAh
Capacity to 3.0V cutoff: 2,380 mAh (97%)
Capacity to 3.3V cutoff: 2,100 mAh (86%)
Capacity to 3.5V cutoff: 1,650 mAh (67%)
For a 3.3V LDO regulator needing 3.5V input:
Usable capacity = only 1,650 mAh from a 2,450 mAh cell (67%)
For a boost converter working down to 2.8V:
Usable capacity = 2,400 mAh from same cell (98%)
This demonstrates why boost converters are strongly preferred over LDO regulators in battery-powered designs — they extract nearly all of the cell’s capacity.
Shop All Batteries & Power Modules →
Frequently Asked Questions
Why does my cell show less capacity at higher discharge rates?
Internal resistance causes voltage sag proportional to current. At higher currents, the cell voltage drops below the cutoff voltage earlier, leaving unreacted material in the electrodes. A cell rated 2,500mAh at 0.2C may only deliver 2,200mAh at 1C and 1,800mAh at 3C. This is the Peukert effect (exact for lead-acid, approximate for lithium).
How many discharge curves should I record for cell grading?
Minimum two: one charge+discharge cycle for formation, then a second for the measurement. The first cycle often shows 3-5% less capacity due to initial SEI formation. Use the second cycle values for grading. For high-precision work, average three cycles.
Can I compare discharge curves from different cell brands?
Yes, but only at the same C-rate and temperature. A Samsung 25R at 1A and a Sony VTC6 at 1A can be compared directly. Different test conditions invalidate comparisons.
Add comment