0% found this document useful (0 votes)
13 views46 pages

BQ2060A

Processador para baterias pack ion de litio.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views46 pages

BQ2060A

Processador para baterias pack ion de litio.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

bq2060A

SBS v1.1-Compliant Gas Gauge IC


Features General Description bq2060A provides LED drivers and a
push-button input to depict remaining
battery capacity from full to empty in
> Provides accurate measurement The bq2060A SBS-Compliant Gas 20% or 25% increments with a 4 or
of available charge in NiCd, Gauge IC for battery pack or 5-segment display.
NiMH, Li-Ion, and lead-acid in-system installation maintains an
batteries accurate record of available charge in The bq2060A works with an external
rechargeable batteries. The bq2060A EEPROM. The EEPROM stores the
> Supports SBS Smart Battery monitors capacity and other critical configuration information for the
Data Specification v1.1 battery parameters for NiCd, NiMH, bq2060A, such as the battery’s chem-
> Supports the 2-wire SMBus v1.1 Li-Ion, and lead-acid chemistries. istry, self-discharge rate, rate com-
interface with PEC or 1-wire The bq2060A uses a V-to-F converter pensation factors, measurement cali-
HDQ16 with automatic offset error correction bration, and design voltage and ca-
for charge and discharge counting. pacity. The bq2060A uses the pro-
> Reports individual cell voltages For voltage, temperature, and current grammable self-discharge rate and
reporting, the bq2060A uses an other compensation factors stored in
> Monitors and provides control to A-to-D converter. The onboard ADC the EEPROM to accurately adjust re-
charge and discharge FETs in also monitors individual cell voltages maining capacity for use and standby
Li-Ion protection circuit in a Li-Ion battery pack and allows conditions based on time, rate, and
> Provides 15-bit resolution for the bq2060A to generate control sig- temperature. The bq2060A also auto-
voltage, temperature, and cur- nals that may be used in conjunction matically calibrates or learns the true
rent measurements with a pack supervisor to enhance battery capacity in the course of a dis-
pack safety. charge cycle from near-full to
> Measures charge flow using a near-empty levels.
V-to-F converter with offset of The bq2060A supports the smart bat-
less than 16µV after calibration tery data (SBData) commands and The REG output regulates the operat-
charge-control functions. It communi- ing voltage for the bq2060A from the
> Consumes less than 0.5mW oper- cates data using the system manage- battery cell stack using an external
ating ment bus (SMBus) 2-wire protocol or JFET.
the Benchmarq 1-wire HDQ16 proto-
> Drives a 4- or 5-segment LED col. The data available include the
display for remaining capacity in- battery’s remaining capacity, temper-
dication ature, voltage, current, and remain-
> 28-pin 150-mil SSOP ing run-time predictions. The

Pin Connections Pin Names


HDQ16 Serial communication DFC Discharge FET control
HDQ16 1 28 SMBC input/output
CFC Charge FET control
ESCL 2 27 SMBD
ESDA 3 26 VCELL4
ESCL Serial memory clock
VON Cell voltage divider
RBI 4 25 VCELL3 ESDA Serial memory data and control
REG 5 24 VCELL2 address
VOUT 6 23 VCELL1 THON Thermistor bias control
VCC 7 22 SR1 RBI Register backup input
TS Thermistor voltage input
VSS 8 21 SR2
REG Regulator output
DISP 9 20 SRC SRC Current sense input
LED1 10 19 TS VOUT EEPROM supply output
LED2 11 18 THON SR1– Charge-flow sense resistor
LED3 12 17 CVON VCC Supply voltage SR2 inputs
LED4 13 16 CFC
VSS Ground VCELL1– Single-cell voltage inputs
LED5 14 15 DFC
VCELL4
DISP Display control input
28-Pin 150-mil SSOP SMBD SMBus data
LED1– LED display segment outputs
28PN2060.eps
LED5 SMBC SMBus clock
SLUS500A–OCTOBER 2001–REVISED MAY 2002

1
bq2060A

DFC Discharge FET control output


Pin Descriptions Output to control the discharge FET in the
Li-Ion pack protection circuitry
HDQ16 Serial communication input/output
CFC Charge FET control output
Open-drain bidirectional communications
port Output to control the charge FET in the
Li-Ion pack protection circuitry
ESCL Serial memory clock
CVON Cell voltage divider control output
Output to clock the data transfer between
the bq2060A and the external nonvolatile Output control for external FETs to connect
configuration memory the cells to the external voltage dividers
during cell voltage measurements
ESDA Serial memory data and address
THON Thermistor bias control output
Bidirectional pin used to transfer address
and data to and from the bq2060A and the Output control for external FETs to connect
external nonvolatile configuration memory the thermistor bias resistor during a tempera-
ture measurement
RBI Register backup input
TS Thermistor voltage input
Input that provides backup potential to the
bq2060A registers during periods of low op- Input connection for a thermistor to monitor
erating voltage. RBI accepts a storage ca- temperature
pacitor or a battery input.
SRC Current sense voltage input
REG Regulator output
Input to monitor instantaneous current
Output to control an n-JFET for VCC regu-
lation to the bq2060A from the battery po- SR1– Sense resistor inputs
tential SR2
Input connections for a small value sense
VOUT Supply output resistor to monitor the battery charge and
discharge current flow
Output that supplies power to the external
EEPROM configuration memory VCELL1– Single-cell voltage inputs
VCELL4
VCC Supply voltage input Inputs that monitor the series element cell
VSS Ground voltages

DISP Display control input SMBD SMBus data

Input that controls the LED drivers Open-drain bidirectional pin used to trans-
LED1–LED5 fer address and data to and from the
bq2060A
LED1– LED display segment outputs
LED5 SMBC SMBus clock
Outputs that each may drive an external Open drain bidirectional pin used to clock
LED the data transfer to and from the bq2060A

2
bq2060A

The VFC measures bipolar signals up to 250mV. The


Functional Description bq2060A detects charge activity when VSR = VSR2 –
VSR1 is positive and discharge activity when VSR = VSR2
General Operation – V S R 1 is negative. The bq2060A continuously
integrates the signal over time using an internal
The bq2060A determines battery capacity by monitoring counter. The fundamental rate of the counter is
the amount of charge input or removed from a recharge- 6.25µVh.
able battery. In addition to measuring charge and dis-
charge, the bq2060A measures battery voltage, tempera- Offset Calibration
ture, and current, estimates battery self-discharge, and
monitors the battery for low-voltage thresholds. The The bq2060A provides an auto-calibration feature to can-
bq2060A measures charge and discharge activity by cel the voltage offset error across SR1 and SR2 for maxi-
monitoring the voltage across a small-value series sense mum charge measurement accuracy. The calibration rou-
resistor between the battery’s negative terminal and the tine is initiated by issuing a command to
negative terminal of the battery pack. The available ManufacturerAccess(). The bq2060A is capable of auto-
battery charge is determined by monitoring this voltage matic offset calibration down to 6.25µV. Offset cancellation
and correcting the measurement for environmental and resolution is less than 1µV.
operating conditions.
Figure 1 shows a typical bq2060A-based battery-pack Digital Filter
application. The circuit consists of the LED display, The bq2060A does not measure charge or discharge
voltage and temperature measurement networks, counts below the digital filter threshold. The digital fil-
EEPROM connections, a serial port, and the sense resis- ter threshold is programmed in the EEPROM and
tor. The EEPROM stores basic battery-pack configura- should be set sufficiently high to prevent false signal de-
tion information and measurement-calibration values. tection with no charge or discharge flowing through the
The EEPROM must be programmed properly for sense resistor.
bq2060A operation. Table 9 shows the EEPROM mem-
ory map and outlines the programmable functions avail- Voltage
able in the bq2060A.
While monitoring SR1 and SR2 for charge and discharge
The bq2060A accepts an NTC thermistor (Semitec currents, the bq2060A monitors the battery-pack poten-
103AT) for temperature measurement. The bq2060A tial and the individual cell voltages through the
uses the thermistor temperature to monitor bat- VCELL1–VCELL4 pins. The bq2060A measures the pack
tery-pack temperature, detect a battery full-charge con- voltage and reports the result in Voltage(). The bq2060A
dition, and compensate for self-discharge and charge/dis- can also measure the voltage of up to four series ele-
charge battery efficiencies. ments in a battery pack. The individual cell voltages
are stored in the optional Manufacturer Function area.
Measurements The VCELL1–VCELL4 inputs are divided down from the
The bq2060A uses a fully differential, dynamically bal- cells using precision resistors, as shown in Figure 1. The
anced voltage-to-frequency converter (VFC) for charge maximum input for VCELL1–VCELL4 is 1.25V with re-
measurement and a sigma delta analog-to-digital con- spect to VSS. The voltage dividers for the inputs must be
verter (ADC) for battery voltage, current, and tempera- set so that the voltages at the inputs do not exceed the
ture measurement. 1.25V limit under all operating conditions. Also, the di-
vider ratios on VCELL1–VCELL2 must be half of that of
Voltage, current, and temperature measurements are VCELL3–VCELL4. To reduce current consumption from
made every 2–2.5 seconds, depending on the bq2060A the battery, the CVON output may used to connect the
operating mode. Maximum times occur with compen- divider to the cells only during measurement period.
sated EDV, mWh mode, and maximum allowable dis- CVON is high impedance for 250ms (12.5% duty cycle)
charge rate. Any AtRate computations requested or when the cells are measured, and driven low otherwise.
scheduled (every 20 seconds) may add up to 0.5 seconds (See Table 1.)
to the time interval.
The SRC input of the bq2060A measures battery charge
Charge and Discharge Counting and discharge current. The SRC ADC input converts
the current signal from the series sense resistor and
The VFC measures the charge and discharge flow of the stores the result in Current(). The full-scale input range
battery by monitoring a small-value sense resistor to SBC is limited to ±250mV as shown in Table 2.
between the SR1 and SR2 pins as shown in Figure 1.

3
bq2060A

Figure 1. Battery Pack Application Diagram–LED Display and Series Cell Monitoring

4
bq2060A

Table 1. Example VCELL1–VCELL4 Divider Current


and Input Range
The SRC input of the bq2060A measures battery charge
and discharge current. The SRC ADC input converts
Voltage Division Full-Scale Input the current signal from the series sense resistor and
Voltage Input Ratio (V) stores the result in Current(). The full-scale input range
VCELL4 16 20.0 to SBC is limited to ±250mV, as shown in Table 2.
VCELL3 16 20.0
Temperature
VCELL2 8 10.0
VCELL1 8 10.0 The TS input of the bq2060A in conjunction with an
NTC thermistor measures the battery temperature as
shown in Figure 1. The bq2060A reports temperature in
Temperature(). THON may be used to connect the bias
source to the thermistor when the bq2060A samples the
TS input. THON is high impedance for 60ms when the
Table 2. SRC Input Range temperature is measured, and driven low otherwise.

Gas Gauge Operation


Sense Resistor (W) Full-Scale Input General
(A)
0.02 ±12.5 The operational overview in Figure 2 illustrates the gas
gauge operation of the bq2060A. Table 3 describes the
0.03 ±8.3 bq2060A registers.
0.05 ±5.0
The bq2060A accumulates a measure of charge and
0.10 ±2.5 discharge currents and estimates self-discharge of the

Figure 2. bq2060A Operational Overview

5
bq2060A

Table 3. bq2060A Register Functions


Command Code SMBus
Function SMBus HDQ16 Access Units
ManufacturerAccess 0x00 0x00 read/write n/a
RemainingCapacityAlarm 0x01 0x01 read/write mAh, 10mWh
RemainingTimeAlarm 0x02 0x02 read/write minutes
BatteryMode 0x03 0x03 read/write n/a
AtRate 0x04 0x04 read/write mA, 10mW
AtRateTimeToFull 0x05 0x05 read minutes
AtRateTimeToEmpty 0x06 0x06 read minutes
AtRateOK 0x07 0x07 read Boolean
Temperature 0x08 0x08 read 0.1°K
Voltage 0x09 0x09 read mV
Current 0x0a 0x0a read mA
AverageCurrent 0x0b 0x0b read mA
MaxError 0x0c 0x0c read percent
RelativeStateOfCharge 0x0d 0x0d read percent
AbsoluteStateOfCharge 0x0e 0x0e read percent
RemainingCapacity 0x0f 0x0f read mAh, 10mWh
FullChargeCapacity 0x10 0x10 read mAh, 10mWh
RunTimeToEmpty 0x11 0x11 read minutes
AverageTimeToEmpty 0x12 0x12 read minutes
AverageTimeToFull 0x13 0x13 read minutes
ChargingCurrent 0x14 0x14 read mA
ChargingVoltage 0x15 0x15 read mV
Battery Status 0x16 0x16 read n/a
CycleCount 0x17 0x17 read cycles
DesignCapacity 0x18 0x18 read mAh, 10mWh
DesignVoltage 0x19 0x19 read mV
SpecificationInfo 0x1a 0x1a read n/a
ManufactureDate 0x1b 0x1b read n/a
SerialNumber 0x1c 0x1c read integer
Reserved 0x1d–0x1f 0x1d - 0x1f - -
ManufacturerName 0x20 0x20–0x25 read string
DeviceName 0x21 0x28–0x2b read string
DeviceChemistry 0x22 0x30–0x32 read string
ManufacturerData 0x23 0x38–0x3b read string
Pack Status 0x2f (LSB) 0x2f (LSB) read/write n/a
Pack Configuration 0x2f (MSB) 0x2f (MSB) read/write n/a
VCELL4 0x3c 0x3c read/write mV
VCELL3 0x3d 0x3d read/write mV
VCELL2 0x3e 0x3e read/write mV
VCELL1 0x3f 0x3f read/write mV

6
bq2060A

battery. The bq2060A compensates the charge current charge capacity of the battery. The last measured dis-
measurement for temperature and state-of-charge of the charge of the battery is based on the value in the DCR
battery. It also adjusts the self-discharge estimation register after a qualified discharge occurs. Once up-
based on temperature. dated, the bq2060A writes the new FCC value to
EEPROM in mAh to Last Measured Discharge. FCC
The main counter RemainingCapacity() (RM) represents represents the full battery reference for the relative dis-
the available capacity or energy in the battery at any play mode and relative state of charge calculations.
given time. The bq2060A adjusts RM for charge,
self-discharge, and leakage compensation factors. The Discharge Count Register (DCR)
information in the RM register is accessible through the
communications ports and is also represented through The DCR register counts up during discharge, independ-
the LED display. ent of RM. DCR can continue to count even after RM has
counted down to 0. Prior to RM = 0, discharge activity,
The FullChargeCapacity() (FCC) register represents the light discharge estimation and self-discharge increment
last measured full discharge of the battery. It is used as DCR. After RM = 0, only discharge activity increments
the battery’s full-charge reference for relative capacity DCR. The bq2060A initializes DCR to FCC – RM when
indication. The bq2060A updates FCC when the battery RM is within twice the programmed value in Near Full
undergoes a qualified discharge from nearly full to a low EE 0x55. The DCR initial value of FCC – RM is reduced
battery level. FCC is accessible through the serial com- by FCC/128 if SC = 0 (bit 2 in Control Mode) and is not
munications ports. reduced if SC = 1. DCR stops counting when the battery
voltage reaches the EDV2 threshold on discharge.
The Discharge Count Register (DCR) is a non-accessible
register that only tracks discharge of the battery. The Capacity Learning (FCC Update) and Qualified
bq2060A uses the DCR register to update the FCC regis-
Discharge
ter if the battery undergoes a qualified discharge from
nearly full to a low battery level. In this way, the The bq2060A updates FCC with an amount based on the
bq2060A learns the true discharge capacity of the bat- value in DCR if a qualified discharge occurs. The new
tery under system use conditions. value for FCC equals the DCR value plus the program-
mable nearly full and low battery levels, according to
Main Gas Gauge Registers the following equation:
RemainingCapacity() (RM) FCC(new) = DCR(final) = (1)
DCR(initial) + measured discharge to EDV2
RM represents the remaining capacity in the battery.
The bq2060A computes RM in either mAh or 10mWh de- +(FCC´ Battery Low% )
pending on the selected mode. where
On initialization, the bq2060A sets RM to 0. RM counts Battery Low % = (value stored in EE 0x54) ¸ 2.56
up during charge to a maximum value of FCC and down A qualified discharge occurs if the battery discharges
during discharge and self-discharge to 0. In addition to from RM ≥ FCC - Near Full * 2 to the EDV2 voltage
charge and self-discharge compensation, the bq2060A threshold with the following conditions:
calibrates RM at three low-battery-voltage thresholds,
EDV2, EDV1, and EDV0 and three programmable n No valid charge activity occurs during the discharge
midrange thresholds VOC25, VOC50, and VOC75. This period. A valid charge is defined as an input of
provides a voltage-based calibration to the RM counter. 10mAh into the battery.
n No more than 256mAh of self-discharge and/or light
DesignCapacity() (DC) discharge estimation occurs during the discharge
The DC is the user-specified battery full capacity. It is period.
calculated from Pack Capacity EE 0x3a–0x3b and is rep- n The temperature does not drop below 5°C during the
resented in mAh or 10mWh. It also represents the discharge period.
full-battery reference for the absolute display mode.
n The battery voltage reaches the EDV2 threshold
FullChargeCapacity() (FCC) during the discharge period and the voltage was less
than the EDV2 threshold minus 256mV when the
FCC is the last measured discharge capacity of the bat- bq2060A detected EDV2.
tery. It is represented in either mAh or 10mWh depend- n No midrange voltage correction occurs during the
ing on the selected mode. On initialization, the bq2060A discharge period.
sets FCC to the value stored in Last Measured Dis-
charge EE 0x38–0x39. During subsequent discharges, n There is no overload condition when voltage ≤ EDV2
the bq2060A updates FCC with the last measured dis- threshold

7
bq2060A

FCC cannot be reduced by more than 256mAh or in- rate. This method maintains a constant granularity of
creased by more than 512mAh during any single update 0.39% for each self-discharge adjustment, which may be
cycle. The bq2060A saves the new FCC value to the performed multiple times per day, instead of once per
EEPROM within 4s of being updated. day with a potentially large reduction.

End-of-Discharge Thresholds and Capacity Cor- The self-discharge estimation rate for 25°C is doubled
rection for each 10 degrees above 25°C or halved for each 10 de-
grees below 25°C. The following table shows the relation
The bq2060A monitors the battery for three low-voltage of the self-discharge estimation at a given temperature
thresholds, EDV0, EDV1, and EDV2. The EDV thresh- to the rate programmed for 25°C (Y% per day):
olds are programmed in EDVF/EDV0 EE 0x72–0x73,
EMF/EDV1 EE 0x74–0x75, and EDV C1/C0 Fac-
tor/EDV2 EE 0x78–0x79. If the CEDV bit in Pack Con- Temperature ( C) Self-Discharge Rate
figuration is set, automatic EDV compensation is en- Temp < 10 1
4
Y% per day
abled and the bq2060A computes the EDV0, EDV1, and 10 ≤ Temp <20 1
Y% per day
EDV2 thresholds based on the values in EE 0x72–0x7d, 2

0x06, and the battery’s current discharge rate, tempera- 20 ≤ Temp <30 Y% per day
ture, capacity, and cycle count. The bq2060A disables 30 ≤ Temp <40 2Y% per day
EDV detection if Current() exceeds the Overload Current 40 ≤ Temp <50 4Y% per day
threshold programmed in EE 0x46 - EE 0x47. The
bq2060A resumes EDV threshold detection after Cur- 50 ≤ Temp <60 8Y% per day
rent() drops below the overload current threshold. Any 60 ≤ Temp <70 16Y% per day
EDV threshold detected will be reset after 10mAh of 70 ≤ Temp 32Y% per day
charge are applied.
The bq2060A uses the thresholds to apply voltage-based The interval at which RM is reduced is given by the fol-
corrections to the RM register according to Table 4. lowing equation, where n is the appropriate factor of 2
(n = 14 , 12 , 1, 2, . . . ):
Table 4. State of Charge Based (2)
on Low Battery Voltage 640·13500
Self - Discharge Update Time = seconds
Threshold State of Charge in RM 256· n · (Y % per day)
EDV0 0%
The timer that keeps track of the self-discharge update
EDV1 3% time is halted whenever charge activity is detected. The
EDV2 Battery Low % timer is reset to zero if the bq2060A reaches the
RemainingCapacity()=FullChargeCapacity() condition
while charging.
The bq2060A adjusts RM as it detects each threshold. If
the voltage threshold is reached before the correspond- Example: If T = 35°C (n = 2) and programmed
ing capacity on discharge, the bq2060A reduces RM to self-discharge rate Y is 2.5 (2.5% per day at 25°C), the
the appropriate amount as shown in Table 4. If RM bq2060A reduces RM by RM/256 (0.39%) every
reaches the capacity level before the voltage threshold is
reached on discharge, the bq2060A prevents RM from (3)
decreasing until the battery voltage reaches the corre- 640·13500
sponding threshold, but only on a full learning-cycle dis- = 6750 seconds
256· n· (Y % per day)
charge (VDQ = 1). The EDV1 threshold is ignored if Mis-
cellaneous Options bit 7 = 1.
This means that a 0.39% reduction of RM will be made
12.8 times per day to achieve the desired 5% per day re-
Self-Discharge duction at 35°C.
The bq2060A estimates the self-discharge of the battery
to maintain an accurate measure of the battery capacity Figure 3 illustrates how the self-discharge estimate al-
during periods of inactivity. The algorithm for gorithm adjusts RemainingCapacity() vs. temperature.
self-discharge estimation takes a programmed estimate
for the expected self-discharge rate at 25°C stored in Light Discharge or Suspend Current
EEPROM and makes a fixed reduction to RM of an Compensation
amount equal to RemainingCapacity()/256. The bq2060A
makes the fixed reduction at a varying time interval The bq2060A can be configured in two ways to compen-
that is adjusted to achieve the desired self-discharge sate for small discharge currents that produce a signal

8
bq2060A

Threshold Associated State of Charge


VOC25 25%
VOC50 50%
VOC75 75%

For the midrange corrections to occur, the temperature


must be in the range of 19°C to 31°C inclusive and the
Current() and AverageCurrent() must both be between
–64mA and 0. For a correction to occur, the bq2060A
must also detect the need for correction during two adja-
cent measurements separated by 20s. The second mea-
surement is not required if the first measurement is im-
mediately after a device reset. The bq2060A makes
midrange corrections as shown in Table 5.
Figure 3. Self-Discharge at 2.5%/Day @25C
Charge Control
below the digital filter. First, the bq2060A can decrement Charging Voltage and Current Broadcasts
RM and DCR at a rate determined by the value stored in
Light Discharge Current EE 0x2b when it detects no dis- The bq2060A supports SBS charge control by broadcasting
charge activity and the SMBC and SMBD lines are high. the ChargingCurrent() and ChargingVoltage() to the
Light Discharge Current has a range of 44µA to 11.2mA. Smart Charger address. The bq2060A broadcasts the re-
quests every 10s. The bq2060A updates the values used
Alternatively, the bq2060A can be configured to disable in the charging current and voltage broadcasts based on
the digital filter for discharge when the SMBC and the battery’s state of charge, voltage, and temperature.
SMBD lines are high. In this way, the digital filter will The fast-charge rate is programmed in Fast-Charging
not mask the leakage current signal. The bq2060A is Current EE 0x1a - 0x1b while the charge voltage is pro-
configured in this mode by setting the NDF bit in Con- grammed in Charging Voltage EE 0x0a-0x0b.
trol Mode.
The bq2060A internal charge control is compatible with
Midrange Capacity Corrections popular rechargeable chemistries. The primary
charge-termination techniques include a change in tem-
The bq2060A applies midrange capacity corrections perature over a change in time (∆T/∆t) and current
when the VCOR bit is set in Pack Configuration. The taper, for nickel-based and Li-Ion chemistries, respec-
bq2060A adjusts RM to the associated percentage at tively. The bq2060A also provides pre-charge qualifica-
three different voltage levels VOC25, VOC50, and tion and a number of safety charge suspensions based
VOC75. The VOC values represent the open circuit bat- on current, voltage, temperature, and state of charge.
tery voltage at which RM corresponds to the associated
state of charge for each threshold.

Table 5. Midrange Corrections


Condition Result
≥ VOC75 and RelativeStateOfCharge() ≤ 63% RelativeStateOfCharge()→75%
< VOC75 and RelativeStateOfCharge() ≥ 87% RelativeStateOfCharge()→75%
≥VOC50 and RelativeStateOfCharge() ≤ 38% RelativeStateOfCharge()→50%
Voltage()
<VOC50 and RelativeStateOfCharge() ≥ 62% RelativeStateOfCharge()→50%
≥ VOC25 and RelativeStateOfCharge() ≤ 13% RelativeStateOfCharge()→25%
< VOC25 and RelativeStateOfCharge() ≥ 37% RelativeStateOfCharge()→25%

9
bq2060A
is no longer being charged (DISCHARGING bit set in
Alarm Broadcasts to Smart Charger and Host BatteryStatus()). The bq2060A continues to broadcast
zero charging current until the overvoltage condition is
If any of the bits 8–15 in BatteryStatus() is set, the cleared. The overvoltage condition is cleared when the
bq2060A broadcasts an AlarmWarning() message to the measured battery voltage drops below the
Host address. If any of the bits 12–15 in BatteryStatus() is ChargingVoltage() plus the Overvoltage Margin or when
set, the bq2060A also sends an AlarmWarning() message the CVOV bit is reset.
to the Smart Charger address. The bq2060A repeats the
AlarmWarning() message every 10s until the bits are n Over-Temperature: An over-temperature condition
cleared. exists when Temperature() is greater than or equal to
the Max T value programmed in EE 0x45 (most
Pre-Charge Qualification significant nibble). On detecting an over-temperature
condition, the bq2060A sets the ChargingCurrent() to
The bq2060A sets ChargingCurrent() to the pre-charge zero and sets the OVER_TEMP_ALARM and
rate as programmed in Pre-Charge Current EE TERMINATE_CHARGE_ ALARM bit in
0x1e-0x1f under the following conditions: BatteryStatus() and the CVOV bit in Pack Status.
The over-temperature condition is cleared when
n Voltage: The bq2060A requests the pre-charge
Temperature() is equal to or below (Max T – 5°C).
charge rate when Voltage() drops below the EDV0
The temperature set by MaxT is increased by 16°C if
threshold (compensated or fixed EDVs). Once
bit 5 in Miscellaneous Options is set.
requested, a pre-charge rate remains until Voltage()
increases above the EDVF threshold. The bq2060A n Overcharge: An overcharge condition exists if the
also broadcasts the pre-charge value immediately battery is charged more than the Maxmum
after a device reset until Voltage() is above the EDVF Overcharge value after RM = FCC. Maximum
threshold. This threshold is programmed in Overcharge is programmed in EE 0x2e–0x2f. On
EDVF/EDV0 EE 0x72-0x73. detecting an overcharge condition, the bq2060A sets
the ChargingCurrent() to zero and sets the
n Temperature: The bq2060A requests the
OVER_CHARGED_ALARM, TERMINATE_CHARGE_
pre-charge rate when Temperature() is between 0°C
ALARM, and FULLY_CHARGED bits in
and 5°C. Temperature() must rise above 5°C before
BatteryStatus(). The bq2060A clears the OVER_
the bq2060A requests the fast-charge rate.
CHARGED_ALARM and TERMINATE_CHARGE_
Charge Suspension ALARM when it detects that the battery is no longer
being charged. The FULLY_CHARGED bit remains set
The bq2060A may temporarily suspend charge if it de- and the bq2060A continues to broadcast zero charging
tects a charging fault. A charging fault includes the fol- current until RelativeStateOfCharge() is less than
lowing conditions. Fully Charged Clear% programmed in EE 0x4c.The
counter used to track overcharge capacity is reset
n Overcurrent: An overcurrent condition exists when with 2mAh of discharge.
the bq2060A measures the charge current to be more
than the Overcurrent Margin above the n Under-Temperature: An under-temperature
ChargingCurrent(). Overcurrent Margin is programmed condition exists if Temperature() < 0°C. On detecting
in EE 0x49. On detecting an overcurrent condition, the an under temperature condition, the bq2060A sets
bq2060A sets the ChargingCurrent() to zero and sets the ChargingCurrent() to zero. The bq2060A sets
TERMINATE_CHARGE_ALARM bit in Battery ChargingCurrent() to the appropriate pre-charge rate
Status(). The overcurrent condition and TERMINATE_ or fast-charge rate when Temperature() ≥ 0°C.
CHARGE_ALARM are cleared when the measured
current drops below the ChargingCurrent plus the Primary Charge Termination
Overcurrent Margin.
The bq2060A terminates charge if it detects a
n Overvoltage: An overvoltage condition exists when the charge-termination condition. A charge-termination
bq2060A measures the battery voltage to be more than condition includes the following.
the Overvoltage Margin above the ChargingVoltage() or
n ∆T/∆t: For ∆T/∆t, the bq2060A detects a change in
a Li-Ion cell voltage has exceeded the overvoltage limit
temperature over many seconds. The ∆T/∆t setting
programmed in Cell Under-/Overoltage. Overvoltage is programmable in both the temperature step,
Margin is programmed in EE 0x48 and Cell Under/Over DeltaT (1.6°C - 4.6°C), and the time step, DeltaT
Voltage in EE 0x4a (least significant nibble). On Time (20s-320s). Typical settings for 1°C/minute
detecting an overvoltage condition, the bq2060A sets the include 2°C/120s and 3°C/180s. Longer times are
ChargingCurrent() to zero and sets the required for increased slope resolution. The DeltaT
TERMINATE_CHARGE_ALARM bit in BatteryStatus(). value is programmed in EE 0x45 (least significant
The bq2060A clears the TERMINATE_ nibble) and the Delta T Time in EE 0x4e.
CHARGE_ALARM bit when it detects that the battery

10
bq2060A

In addition to the ∆T/∆t timer, a hold-off timer starts LED bit in Control Mode programs the 4 or 5 LED op-
when the battery is being charged at more than tion. A 5th LED can be used with the 4 LED display op-
255mA and the temperature is above 25°C. Until this tion to show when the battery capacity is ≥ to 100%.
timer expires, ∆T/∆t detection is suspended. If
Current() drops below 256mA or Temperature() below Activation
25°C, the hold-off timer resets and restarts only when
the current and temperature conditions are met again. The display may be activated at any time by a
The hold-off timer is programmable (20s – 320s) with high-to-low transition on the DISP input. This is usually
Holdoff Time value in EE 0x4f. accomplished with a pullup resistor and a pushbutton
n Current Taper: For current taper, ChargingVoltage() switch. Detection of the transition activates the dis-
must be set to the pack voltage desired during the play and starts a four-second display timer. The timer
constant-voltage phase of charging. The bq2060A detects expires and turns off the display whether DISP was
a current taper termination when the pack voltage is brought low momentarily or held low indefinitely. Reac-
greater than the voltage determined by Current Taper tivation of the display requires that the DISP input re-
Qual Voltage in EE 0x4f and the charging current is turn to a logic-high state and then transition low again.
below a threshold determined by Current Taper The second high-to-low transition must occur after the
Threshold in EE 0x4e, for at least 80s. The bq2060A uses display timer expires. The bq2060A requires the DISP
the VFC to measure current for current taper input to remain stable for a minimum of 250ms to detect
termination. The current must also remain above the logic state.
0.5625/RS mA to qualify the termination condition.
If the EDV0 bit is set, the bq2060A disables the LED
Once the bq2060A detects a primary charge termination, display. The display is also disabled during a VFC cali-
it sets the TERMINATE_CHARGE_ALARM and bration and should be turned off before entering
FULLY_CHARGED bits in BatteryStatus(), and sets low-power storage mode.
the ChargingCurrent() to the maintenance charge rate
as programmed in Maintenance Charging Current EE Display Modes
0x1c–0x1d. On termination, the bq2060A also sets RM
to a programmed percentage of FCC, provided that In relative mode, each LED output represents 20% or
RelativeStateOfCharge() is below the desired 25% of the RelativeStateOfCharge() value. In absolute
percentage of FCC and the CSYNC bit in Pack Configu- mode, each LED output represents 20% or 25% of the
ration EE 0x3f is set. If the CSYNC bit is not set and AbsoluteStateOfCharge() value. Tables 7A and 7B show
RelativeStateOfCharge() is less than the programmed the display operation.
percentage of FCC, the bq2060A clears the
FULLY_CHARGED bit in BatteryStatus(). The pro- In either mode, the bq2060A blinks the LED display if
grammed percentage of FCC, Fast Charge Termination R em a in in g C a p a c it y ( ) is les s t h a n R em a in in g
%, is set in EE 0x4b. The bq2060A clears the CapacityAlarm(). The display is disabled if EDV0 = 1.
FULLY_CHARGED bit when RelativeStateOfCharge()
is less than the programmed Fully Charged Clear %. Secondary Protection for Li-Ion
The bq2060A broadcasts the fast-charge rate when the
FULLY_CHARGED bit is cleared and voltage and tem- The bq2060A has two pins, CFC and DFC, that can be
perature permit. The bq2060A clears the TERMI- used for secondary override control of a Li-Ion protector
NATE_CHARGE_ALARM when it no longer detects or for blowing a fuse to disable the battery pack. The
that the battery is being charged or it no longer detects CFC pin is the Charge FET Control pin for secondary
the termination condition. See Table 6 for a summary protector control or for blowing a fuse. The DFC pin is
of BatteryStatus() alarm and status bit operation. the Discharge FET Control pin for secondary protector
control. Discharge current can cause an override of the
Display Port CFC control, and charge current can cause an override
of the DFC control. Pack Status can read the CVOV
General and CVUV status flags and can also read the true logic
state of the CFC and DFC pins.
The display port drives a 4 or 5 LED bar-graph display.
The display is activated by a logic signal on the DISP in- The CVOV status flag is set if Voltage() ≥ Charging
put. The bq2060A can display RM in either a relative or Voltage() + Overvoltage Margin, any VCELL voltage ≥
absolute mode with each LED representing a percentage Cell Overvoltage threshold, or if Temperature() ≥ MaxT.
of the full-battery reference. In relative mode, the When CVOV=1 and Miscellaneous Options bit 6 = 0, the
bq2060A uses FCC as the full-battery reference; in abso- CFC pin is pulled low unless DISCHARGING bit in
lute mode, it uses DC. BatteryStatus() is set or Temperature() > Safety
Overtemperature threshold. If Miscellaneous Options bit
The DMODE bit in Pack Configuration programs the 6 = 1, the CPC pin is pulled low only if Temperature()
bq2060A for the absolute or relative display mode. The >Safety Overtemperature threshold.

11
bq2060A

Table 6. Alarm and Status Bit Summary


CC() State and CC() = Fast or Pre-charge Current
Battery State Conditions BatteryStatus Bits Set and/or Bits Cleared

C() ≥ CC() + Overcurrent


Overcurrent CC() = 0, TCA = 1 C() < CC() + Overcurrent Margin
Margin

V() ≥ CV() + Overvoltage TCA = 1 DISCHARGING = 1


Margin
Overvoltage V() < CV() + Overvoltage Margin
VCELL1, 2, 3, or 4 > Cell CC() = 0, CVOV = 1
Over Voltage Li-Ion cell voltage ≤ Cell Over Voltage

CC() = 0, OTA = 1,
Overtemperature T() ≥ Max T T() ≤ Max T - 5°C or T() ≤ 43°C
TCA = 1, CVOV = 1
Capacity added after CC() = 0, FC = 1 RSOC() < Fully Charged Cleared %
Overcharge RM() = FCC() ≥
Maximum Overcharge OCA = 1, TCA = 1 DISCHARGING = 1

0°C ≤ Τ() < 5°C, CC() = Pre-Charge


Undertemperature T() < 0°C CC() = 0 Current
T() ≥ 5°C, CC() = Fast-Charging Current
CC() = Maintenance
Charging Current, RSOC() < Fully Charged Cleared %
Fast charge FC = 1
∆T/∆t or Current Taper
termination
DISCHARGING = 1 or termination
TCA = 1
condition is no longer valid.

V() ≤ EDV2
or
Fully discharged FD = 1 RSOC() > 20%
RM() < FCC() * Battery
Low%

V() ≤ EDV0 TDA = 1 V() > EDV0


VCELL1, 2, 3 or 4 < Cell
Overdischarged TDA = 1, CVUV = 1 VCELL1, 2, 3, or 4 ≥ Cell Under Voltage
Under Voltage
RM() = 0 TDA = 1 RM() > 0
Low capacity RM() < RCA() RCA = 1 RM() ≥ RCA()
Low run-time ATTE() < RTA() RTA = 1 ATTE() ≥ RTA()

Note: C() = Current(), CV() = ChargingVoltage(), CC() = ChargingCurrent(), V() = Voltage(), T() = Tempera-
ture(), TCA = TERMINATE_CHARGE_ALARM, OTA = OVER_TEMPERATURE_ALARM,
OCA = OVER_CHARGED_ALARM, TDA = TERMINATE_DISCHARGE_ALARM, FC =
FULLY_CHARGED,
FD = FULLY_DISCHARGED, RSOC() = RelativeStateOfCharge(). RM() = RemainingCapacity(),
RCA = REMAINING_CAPACITY_ALARM, RTA = REMAINING_TIME_ALARM,
ATTE() = AverageTimeToEmpty(), RTA() = RemainingTimeAlarm(), RCA() = RemainingCapacityAlarm(),
FCC() = FullChargeCapacity.

12
bq2060A

Table 7A. Display Mode Table 7B. Display Mode

Condition 5 LED Display Option Condition 4 LED Display Option


Relative or Relative or
Absolute LED1 LED2 LED3 LED4 LED5 Absolute LED1 LED2 LED3 LED4
StateOfCharge() StateOfCharge()
EDV0 = 1 OFF OFF OFF OFF OFF EDV0 = 1 OFF OFF OFF OFF
<20% ON OFF OFF OFF OFF <25% ON OFF OFF OFF
≥20%, <40% ON ON OFF OFF OFF ≥25%, <50% ON ON OFF OFF
≥40%, <60% ON ON ON OFF OFF ≥50%, <75% ON ON ON OFF
≥60%, <80% ON ON ON ON OFF ≥75% ON ON ON ON
≥80% ON ON ON ON ON

The CVUV status flag is set if any VCELL voltage < Cell partial reset leaves MaxError, RELEARN_FLAG, and
Undervoltage threshold. When CVUV = 1, the DVC pin RM unchanged. The bq2060A delays reading the
i s pu l l e d l o w unl e s s D I S C H A R G I NG b it in EEPROM for 700ms after all resets to allow settling
BatteryStatus() is set or Temperature() is not set. time for VCC.
Cell Undervoltage and Cell Overvoltage limits may be
programmed in the upper and lower nibbles of EE 0x4a. Communication
Safety Overtemperature threshold may be programmed
in EE 0x09, and Miscellaneous Options is programmed The bq2060A includes two types of communication
in EE 0x08. ports: SMBus and HDQ16. The SMBus interface is a
2-wire bidirectional protocol using the SMBC (clock) and
Low-Power Storage Mode SMBD (data) pins. The HDQ16 interface is a 1-wire
bidirectional protocol using the HDQ16 pin. All three
The bq2060A enters low-power mode 5– 8s after receiv- communication lines are isolated from VCC and may be
ing the Enable Low-Power command. In this mode the pulled-up higher than VCC. Also, the bq2060A will not
bq2060A consumes less than 10µA. A rising edge on pull these lines low if VCC to the part is zero . HDQ16
SMBC, SMBD, or HDQ16 restores the bq2060A to the should be pulled down with a 100KΩ resistor if not
full operating mode. The bq2060A does not perform any used.
gas gauge functions during low-power storage mode.
The communication ports allow a host controller, an
Device Reset SMBus compatible device, or other processor to access
the memory registers of the bq2060A. In this way a sys-
The bq2060A can be reset when power is applied or by tem can efficiently monitor and manage the battery.
commands over the HDQ16 or SMBus. Upon reset, the
bq2060A initializes its internal registers with the infor- SMBus
mation contained in the configuration EEPROM. The
following command sequence initiates a full bq2060A re- The SMBus interface is a command-based protocol. A
set: processor acting as the bus master initiates communica-
tion to the bq2060A by generating a START condition. A
Write 0xff5a to address 0x4f START condition consists of a high-to-low transition of
the SMBD line while the SMBC is high. The processor
Write 0x0000 to address 0x7d then sends the bq2060A device address of 0001011 (bits
Write 0x0080 to address 0x7d 7–1) plus a R/W bit (bit 0) followed by an SMBus com-
mand code. The R/W bit and the command code instruct
A partial reset of the bq2060A occurs if step 1 is omitted the bq2060A to either store the forthcoming data to a
and all check-byte values previously loaded into RAM register specified by the SMBus command code or out-
are still correct. All initial RAM values are read from put the data from the specified register. The processor
EEPROM for both full and partial resets. A full reset completes the access with a STOP condition. A STOP
initializes MaxError = 100%, sets RELEARN_FLAG (bit condition consists of a low-to-high transition of the
7) = 1 in Battery Mode, and initializes RM from EE SMBD line while the SMBC is high. With SMBus, the
0x2c–2d (should be zero for rechargeable batteries). A most significant bit of a data byte is transmitted first.

13
bq2060A

In some instances, the bq2060A acts as the bus master.


= X8 + X2 + X1 + 1. The PEC calculation includes all
This occurs when the bq2060A broadcasts charging re-
bytes in the transmission, including address, command,
quirements and alarm conditions to device addresses and data. The PEC calculation does not include AC-
0x12 (SBS Smart Charger) and 0x10 (SBS Host Control- KNOWLEDGE, NOT ACKNOWLEDGE, START, STOP,
ler.) and Repeated START bits.
SMBus Protocol For example, the host requests RemainingCapacity()
from the bq2060A. This includes the host following the
The bq2060A supports the following SMBus protocols: Read Word protocol. The bq2060A calculates the PEC
based on the following 5 bytes of data, assuming the re-
n Read Word maining capacity of the battery is 1001mAh.
n Write Word n Battery Address with R/W = 0: 0x16
n Read Block n Command Code for RemainingCapacity(): 0x0f
A processor acting as the bus master uses the three pro- n Battery Address with R/W = 1: 0x17
tocols to communicate with the bq2060A. The bq2060A n RemainingCapacity(): 0x03e9
acting as the bus master uses the Write Word protocol.
For 0x160f17e903, the bq2060A transmits a PEC of 0xe8
The SMBD and SMBC pins are open drain and require to the host.
external pullup resistors.
PEC Enable in Master Mode
SMBus Packet Error Checking
PEC for master mode broadcasts to the charger, host, or
The bq2060A supports Packet Error Checking as a mech- both can be enabled/disabled with the combination of
anism to confirm proper communication between it and the bits HPE and CPE in Control Mode.
another SMBus device. Packet Error Checking requires
that both the transmitter and receiver calculate a Packet SMBus On and Off State
Error Code (PEC) for each communication message. The
The bq2060A detects whether the SMBus enters the Off
device that supplies the last byte in the communication
State” by monitoring the SMBC and SMBD lines. When
message appends the PEC to the message. The receiver
both signals are continually low for at least 2.5s, the
compares the transmitted PEC to its PEC result to deter-
bq2060A detects the Off State. When the SMBC and
mine if there is a communication error.
SMBD lines go high, the bq2060A detects the On State
PEC Protocol and can begin communication within 1ms. One-MΩ
pulldown resistors on SMBC and SMBD are recom-
The bq2060A can receive or transmit data with or with- mended for reliable Off State detection.
out PEC. Figure 4 shows the communication protocol
for the Read Word, Write Word, and Read Block mes- HDQ16
sages without PEC. Figure 5 includes PEC. The HDQ16 interface is a command-based protocol. (See
In the Write Word protocol, the bq2060A receives the Figure 6.) A processor sends the command code to the
PEC after the last byte of data from the host. If the host bq2060A. The 8-bit command code consists of two fields,
does not support PEC, the last byte of data is followed the 7-bit HDQ16 command code (bits 0–6) and the 1-bit
by a STOP condition. After receipt of the PEC, the R/W field. The R/W field directs the bq2060A either to
bq2060A compares the value to its calculation. If the n Store the next 16 bits of data to a specified register or
PEC is correct, the bq2060A responds with an AC-
KNOWLEDGE. If it is not correct, the bq2060A re- n Output 16 bits of data from the specified register
sponds with a NOT ACKNOWLEDGE and sets an error With HDQ16, the least significant bit of a data byte
code. (command) or word (data) is transmitted first.
In the Read Word and Block Read, the host generates an A bit transmission consists of three distinct sections. The
ACKNOWLEDGE after the last byte of data sent by the first section starts the transmission by either the host or
bq2060A. The bq2060A then sends the PEC and the the bq2060A taking the HDQ16 pin to a logic-low state
host acting as a master-receiver generates a NOT AC- for a period tSTRH;B . The next section is the actual
KNOWLEDGE and a STOP condition. data-transmission, where the data bit is valid by the
time, tDSU;B after the negative edge used to start commu-
PEC Calculation nication. The data bit is held for a period tDH;DV to allow
the host processor or bq2060A to sample the data bit.
The basis of the PEC calculation is an 8-bit Cyclic Re-
dundancy Check (CRC-8) based on the polynomial C(X)

14
bq2060A

Figure 4. SMBus Communication Protocol without PEC

Figure 5. SMBus Communication Protocol with PEC

15
bq2060A

The final section is used to stop the transmission by re-


turning the HDQ16 pin to a logic-high state by at least LEDs must be off before entering the low-power storage
the time tSSU;B after the negative edge used to start mode as the display state remains unchanged.
communication. The final logic-high state should be un- The bq2060A clears the ManufacturerAccess() command
til a period tCYCH;B to allow time to ensure that the bit within 900ms of acknowledging the Enable Low-Power
transmission was stopped properly. Storage command. The VFC Calibration command may
If a communication error occurs (e.g., tCYCB > 250µs), the be sent 900–5000ms after SMBus acknowledgment of
host sends the bq2060A a BREAK to reinitiate the serial the Enable Low-Power Storage command. In this case,
interface. The bq2060A detects a BREAK when the the bq2060A delays entering storage mode until the cali-
HDQ16 pin is in a logic-low state for a time t B or bration process completes and the bq2060A stores the
greater. The HDQ16 pin is then returned to its normal new calibration values in EEPROM.
ready-high logic state for a time tBR. The bq2060A is
0x062b SEAL: Instructs the bq2060A to restrict access
then ready to receive a command from the host proces-
to those functions listed in Table 3. The bq2060A com-
sor.
pletes the seal function and clears ManufacturerAccess()
The HDQ16 pin is open drain and requires an external within 900ms of acknowledging the command.
pullup resistor.
0x064d Charge Synchronization: Instructs the
Command Codes bq2060A to update RM to a percentage of FCC as
defined in Fast Charge Termination %. The bq2060A
The SMBus Command Codes are in ( ), the HDQ16 in [ ]. updates RM and clears ManufacturerAccess() within
Temperature(), Voltage(), Current(), and AverageCurrent(), 900ms of acknowledging the command.
performance specifications are at regulated VCC (VRO)
and a temperature of 0–70°C. 0x0653 Enable VFC Calibration: Instructs the un-
sealed bq2060A to begin VFC calibration. With this
ManufacturerAccess() (0x00); [0x00–0x01] command the bq2060A deselects the SR1 and SR2 inputs
and calibrates for IC offset only. It is best to avoid
Description: charge or discharge currents through the sense resistor
This function provides writable command codes to con- during this calibration process.
trol the bq2060A during normal operation and pack
manufacture. These commands can be ignored if sent 0x067e Alternate VFC Calibration: Instructs the
within one second after a device reset. The following list unsealed bq2060A to begin VFC calibration. With this
of commands are available. command, the bq2060A does not deselect the SR1 and
SR2 inputs and does calibrate for IC and PCB offset.
0x0618 Enable Low-Power Storage Mode: Activates During this procedure no charge or discharge cur-
the low-power storage mode. The bq2060A enters the rents
storage mode after a 5–8s delay. The bq2060A accepts
other commands to ManufacturerAccess() during the During VFC calibration, the bq2060A disables the LED
delay before entering low-power storage mode. The display and accepts only the Stop VFC Calibration and

Figure 6. HDQ16 Communication Example

16
bq2060A

the SEAL commands to ManufacturerAccess(). The bration command. This delays the low-power
bq2060A disregards all other commands. SMBus storage mode until after VFC calibration comple-
communication should be kept to a minimum during tion.
VFC calibration to reduce the noise level and allow a
more accurate calibration. 5. Issue the SEAL Command subsequent to the VFC
Calibration command. The bq2060A must receive
Once started, the VFC calibration procedure completes the SEAL Command before VFC calibration com-
automatically. When complete, the bq2060A saves the pletes. The bq2060A resets the OCE bit in Pack
calibration values in EEPROM. The calibration nor- Status when calibration begins and sets the bit
mally takes about 8 to 10 minutes. The calibration time when calibration successfully completes.
is inversely proportional to the bq2060A VFC (and PCB)
offset error. The bq2060A caps the calibration time at After VFC calibration completes automatically, the
one hour in the event of calibrating zero offset error. The bq2060A saves the VFC offset cancellation values in
VFC calibration can be done as the last step in a battery EEPROM and enters the low-power storage mode in
pack test procedure since the calibration can complete about 20s. In addition, the bq2060A is sealed, allowing
automatically after removal from a test setup. access as defined in Table 3 only.

The bq2060A clears ManufacturerAccess() within 900ms Purpose:


and starts calibration within 3.2s of acknowledging the The ManufacturerAccess() function provides the system
command. host access to bq2060A functions that are not defined by
the SBD.
0x0660 Stop VFC Calibration: Instructs the bq2060A
to abort a VFC calibration procedure. If aborted, the SMBus Protocol: Read or Write Word
bq2060A disables offset correction. The bq2060A stops Input/Output: Word
calibration within 20ms of acknowledging the command.
RemainingCapacityAlarm() (0x01); [0x01]
0x0606 Program EEPROM: Instructs the unsealed
bq2060A to connect the SMBus to the EEPROM I2C bus. Description:
The bq2060A applies power to the EEPROM within Sets or gets the low-capacity threshold value. Whenever
900ms of acknowledging the command. After issuing the the RemainingCapacity() falls below the low capacity
program EEPROM command, the bq2060A monitoring value, the bq2060A sends AlarmWarning() messages to
functions are disabled until the I2C bus is disconnected. the SMBus Host with the REMAINING_CAPAC-
The bq2060A disconnects the I2C bus when it detects that ITY_ALARM bit set. A low-capacity value of 0 disables
the Battery Address 0x16 is sent over the SMBus. The this alarm. The bq2060A initially sets the low-capacity
Battery Address 0x16 to disconnect the I2C bus should value to Remaining Capacity Alarm value programmed
not be sent until 10ms after the last write to the in EE 0x04 - 0x05. The low-capacity value remains un-
EEPROM. c h a n g ed u n t il a lt er ed b y t h e R em a in in g -
CapacityAlarm() function. The low-capacity value may
Example: The following sequence of actions is an exam- be expressed in either current (mA) or power (10mWh)
ple of how to use the ManufacturerAccess() commands depending on the setting of the BatteryMode()’s CAPAC-
in an efficient manner to take a battery pack that has ITY_MODE bit.
completed all testing and calibration except for VFC cal- Purpose:
ibration and to make it ready for shipment in the
The RemainingCapacityAlarm() function can be used by
SEALED state and in low-power storage mode:
systems that know how much power they require to
1. Complete testing and calibration with desired final save their operating state. It enables those systems to
values stored in EEPROM. This process includes more finely control the point at which they transition
setting the SEAL bit in Pack Configuration. into suspend or hibernate state. The low-capacity value
Sending a reset command to the bq2060A during can be read to verify the value in use by the bq2060’s
test ensures that RAM values correspond to the fi-
low capacity alarm.
nal EEPROM values
SMBus Protocol: Read or Write Word
2. If the initial value of RemainingCapacity() must be
non-zero, the desired value may be written to Com- Input/Output: Unsigned integer—value below which
mand 0x26 with the pack unsealed. A reset sent af- Low Capacity messages are sent.
ter this step resets RM to zero.
3. Issue the Enable Low-Power Storage Mode com-
mand.
4. Within 900–1600ms after sending the Enable
Low-Power command, issue the Enable VFC Cali-

17
bq2060A

Battery Modes n Whether all broadcasts to the Smart Battery Charger


CAPACITY_MODE CAPACITY_MODE and Host are disabled
bit = 0 bit = 1 The defined request condition is the battery requesting
Units mAh @ C/5 10mWh @ P/5 a conditioning cycle (RELEARN_FLAG).
Range 0–65,535mAh 0–65,535 10mWh Purpose:
Granularity Not applicable The CAPACITY_MODE bit allows power management
Accuracy See RemainingCapacity() systems to best match their electrical characteristics
with those reported by the battery. For example, a
switching power supply represents a constant power
RemainingTimeAlarm() (0x02); [0x02] load, whereas a linear supply is better represented by a
Description: constant current model. The CHARGER_MODE bit al-
lows a SMBus Host or Smart Battery Charger to over-
Sets or gets the remaining time alarm value. Whenever the
ride the Smart Battery’s desired charging parameters by
AverageTimeToEmpty() falls below the remaining time
d is a b lin g t h e b q 2 0 6 0 ’s b r oa d c a s t s . T h e RE-
value, the bq2060A sends AlarmWarning() messages to the LEARN_FLAG bit allows the bq2060A to request a con-
SMBus Host with the REMAINING_TIME_ALARM bit set. ditioning cycle.
A remaining time value of 0 effectively disables this alarm.
The bq2060A initially sets the remaining time value to the SMBus Protocol: Read or Write Word
Remaining Time Alarm value programmed in EE 0x02 -
Input/Output:
0x03. The remaining time value remains unchanged until
altered by the RemainingTimeAlarm() function. Unsigned integer —bit mapped— see below.
Purpose: Units: not applicable
The RemainingTimeAlarm() function can be used by sys-
Range: 0–1
tems that want to adjust when the remaining time
alarm warning is sent. The remaining time value can be Granularity: not applicable
read to verify the value in use by the bq2060’s
Accuracy: not applicable
RemainingTimeAlarm().
The BatteryMode() word is divided into two halves, the
SMBus Protocol: Read or Write Word most significant bit (bits 8–15), which is read/write and
Input/Output: the least significant bit (bits 0–7), which is read only.
The bq2060A forces bits 0–6 to zero and prohibits writes
Unsigned integer—the point below which remain- to bit 7.
ing time messages are sent.
Table 8 summarizes the meanings of the individual bits
Units: minutes in the BatteryMode() word and specifies the default val-
Range: 0 to 65,535 minutes ues, where applicable, are noted.

Granularity: Not applicable INTERNAL_CHARGE_CONTROLLER bit is not


used by the bq2060A.
Accuracy: see AverageTimeToEmpty()
PRIMARY_BATTERY_SUPPORT bit is not used by
BatteryMode() (0x03); [0x03] the bq2060A.
Description: RELEARN_FLAG bit set indicates that the bq2060A is
This function selects the various battery operational requesting a capacity relearn cycle for the battery. The
modes and reports the battery’s mode and requests. bq2060A sets the RELEARN_FLAG under any of three
conditions: full reset, detection of 20 cycle counts with-
Defined modes include out an FCC update, or a midrange voltage correction.
n Whether the battery’s capacity information is The bq2060A clears this flag after a learning cycle has
specified in mAh or 10mWh (CAPACITY_MODE bit) been completed.

n Whether the ChargingCurrent() and ChargingVoltage() CHARGE_CONTROLLER_ENABLED bit is not used


values are broadcast to the Smart Battery Charger by the bq2060A. The bq2060A forces this bit to zero.
when the bq2060A detects the battery requires charging
PRIMARY_BATTERY bit is not used by the bq2060A.
(CHARGER_MODE bit)
The bq2060A forces this bit to zero.

18
bq2060A

Table 8. Battery Mode Bits and Values

Battery Mode() Bits Bits Used Format Allowable Values


INTERNAL_CHARGE_CONTROLLER 0 Read only bit flag
PRIMARY_BATTERY_SUPPORT 1 Read only bit flag
Reserved 2–6
0—Battery OK
RELEARN_FLAG 7 Read only bit flag
1—Relearn cycle requested
CHARGE_CONTROLLER_ENABLED 8 R/W bit flag
PRIMARY_BATTERY 9 R/W bit flag
Reserved 10–12
0—Enable alarm broadcast (default)
ALARM_MODE 13 R/W bit flag
1—Disable alarm broadcast
0—Enable charging broadcast
CHARGER_MODE 14 R/W bit flag (default)
1—Disable charging broadcast
0—Report in mA or mAh (default)
CAPACITY_MODE 15 R/W bit flag
1—Report in 10mW or 10mWh

ALARM_MODE bit is set to disable the bq2060’s ability Charger. When set, the bq2060A does NOT transmit
to master the SMBus and send AlarmWarning() messages ChargingCurrent() and ChargingVoltage() values to the
to the SMBus Host and the Smart Battery Charger. When Smart Battery Charger. When cleared, the bq2060A
set, the bq2060A does NOT master the SMBus, and transmits the ChargingCurrent() and ChargingVoltage()
AlarmWarning() messages are NOT sent to the SMBus v a lu es t o t h e S m a r t B a t t er y C h a r g er . T h e
Host and the Smart Battery Charger for a period of no CHARGER_MODE bit defaults to a cleared state within
more than 65s and no less than 45s. When cleared 130ms after the bq2060A detects the SMBus Off-State.
(default), the Smart Battery sends the AlarmWarning()
messages to the SMBus Host and the Smart Battery CAPACITY_MODE bit indicates if capacity informa-
Charger any time an alarm condition is detected. tion is reported in mA/mAh or 10mW/10mWh. When
set, the bq2060A reports capacity information in
n The bq2060A polls the ALARM_MODE bit at least 10mW/10mWh as appropriate. When cleared, the
every 150ms. Whenever the ALARM_MODE bit is set, bq2060A reports capacity information in mA/mAh as ap-
the bq2060A resets the bit and starts or restarts a 55s propriate. The CAPACITY_MODE bit defaults to a
(nominal) timer. After the timer expires, the bq2060A cleared state within 130ms after the bq2060A detects
automatically enables alarm broadcasts to ensure that the SMBus Off-State.
the accidental deactivation of broadcasts does not
persist. To prevent the bq2060A from becoming a Note 1: The following functions are changed to accept or
master on the SMBus, an SMBus host must therefore return values in mA/mAh or 10mW/10mWh depending
continually set this bit at least once per 50s to keep on the CAPACITY_MODE bit:
the bq2060A from broadcasting alarms. n RemainingCapacityAlarm()
n The ALARM_MODE bit defaults to a cleared state n AtRate()
within 130ms after the bq2060A detects the SMBus
Off-State. n RemainingCapacity()
n The condition of the ALARM-MODE bit does NOT n FullChargeCapacity()
affect the operation or state of the CHARGER_MODE
bit which is used to prevent broadcasts of n DesignCapacity()
ChargingCurrent() and ChargingVoltage() to the Note 2: The following functions are calculated on the
Smart Battery Charger. basis of capacity and may be calculated differently de-
CHARGER_MODE bit enables or disables the bq2060’s pending on the CAPACITY_MODE bit:
t ra n smi s s i o n of C har g i ng C ur r e n t ( ) and
ChargingVoltage() messages to the Smart Battery

19
bq2060A

n AtRateOK() SMBus Protocol: Read or Write Word


n AtRateTimeToEmpty() Input/Output: Signed integer—charge or discharge;
the AtRate() value is positive for charge, negative for
n AtRateTimeToFull()
discharge, and zero for neither (default).
n RunTimeToEmpty()
n AverageTimeToEmpty() Battery Mode
CAPACITY_MODE CAPACITY_MODE
n AverageTimeToFull()
bit = 0 bit = 1
n Remaining Time Alarm() Units mA 10mW
n BatteryStatus() Charge
1–32,767mA 1–32,768 10mW
Range
The bq2060A updates the non-AtRate related register Discharge
values within 3s of changing the state of the CAPAC- -1– -32,768mA -1– -32,768 10mW
Range
ITY_MODE bit. The AtRate() values will be updated af-
ter the next AtRate value is written to the bq2060A (or Granularity 1 Unit
after the next 20s scheduled refresh calculation). Accuracy NA

AtRate() (0x04); [0x04]


AtRateTimeToFull() (0x05);[0x05]
Description:
The AtRate() function is the first half of a two-function Description:
call-set used to set the AtRate value used in calculations Returns the predicted remaining time to fully charge
made by the AtRateTimeToFull(), AtRateTime- the battery at the AtRate( ) value (mA).
ToEmpty(), and AtRateOK() functions. The AtRate
value may be expressed in either current (mA) or power Purpose:
(10mW) depending on the setting of the BatteryMode()’s T h e A t R a t eTim eToF u ll( ) f u n c t ion is p a r t of a
CAPACITY_MODE bit. two-function call-set used to determine the predicted
remaining charge time at the AtRate value in mA. The
Purpose:
bq2060A updates AtRateTimeToFull() within 1.3s after
Since the AtRate() function is the first half of a
two-function call-set, it is followed by the second func- the SMBus Host sets the AtRate value. If read before
tion of the call-set that calculates and returns a value this delay, the command is No Acknowledged and the er-
based on the AtRate value and the battery’s present ror code in BatteryStatus is set to not ready. The
state. A delay of up to 1.3s is required after writing bq2060A automatically updates AtRateTimeToFull()
AtRate() before the bq2060A can acknowledge the re- based on the AtRate() value every 20s.
quested AtRate function.
SMBus Protocol: Read Word
n When the AtRate() value is positive, the AtRate-
TimeToFull() function returns the predicted time to Output:
full-charge at the AtRate value of charge.
Unsigned integer—predicted time in minutes to
n When the AtRate() value is negative, the fully charge the battery.
AtRateTimeToEmpty() function returns the predicted
operating time at the AtRate value of discharge. Units: minutes
n When the AtRate() value is negative, the AtRateOK()
Range: 0 to 65,534 min
function returns a Boolean value that predicts the
battery’s ability to supply the AtRate value of
Granularity: 2 min or better
additional discharge energy (current or power) for 10
seconds. Accuracy: ±MaxError() *
The default value for AtRate() is zero. Writing FullChargeCapacity()/|AtRate()|
AtRate() values over the HDQ16 serial port does NOT
Invalid Data Indication: 65,535 indicates the bat-
trigger a re-calculation of AtRateTimeToFull(),
tery is not being charged.
AtRateTimeToEmpty(), and AtRateOK() functions.
It is recommended that AtRate() requests should be lim-
ited to one request every 4s.

20
bq2060A

AtRateTimeToEmpty() (0x06); [0x06] Range: TRUE, FALSE

Description: Granularity: not applicable


Returns the predicted remaining operating time if the
Accuracy: not applicable
battery is discharged at the AtRate() value.
Purpose: Temperature() (0x08); [0x08]
The AtRateTimeToEmpty() function is part of a Description:
two-function call-set used to determine the remaining Returns the temperature (K) measured by the bq2060A.
operating time at the AtRate()value. The bq2060A up-
dates AtRateTimeToEmpty() within 1.3s after the Purpose:
SMBus Host sets the AtRate() value. If read before this The Temperature() function provides accurate cell tem-
delay, the command is No Acknowledged, and the error peratures for use by battery chargers and thermal man-
code in BatteryStatus is set to not ready. The bq2060A agement systems. A battery charger can use the tem-
automatically updates AtRateTimeToEmpty() based on perature as a safety check. Thermal management sys-
the AtRate() value every 20s. tems may use the temperature because the battery is
SMBus Protocol: Read Word one of the largest thermal sources in a system.

Output: SMBus Protocol: Read Word

Unsigned integer — estimated operating time left. Output:

Units: minutes U n s ig n ed in t eg er — c ell t em p er a t u r e in


tenth-degree Kelvin increments.
Range: 0 to 65,534 min
Units: 0.1°K
Granularity: 2 min or better Range: 0 to +6553.5°K {real range}
Accuracy: -0, +MaxError() * Granularity: 0.1°K
FullChargeCapacity/|AtRate()|
Accuracy: ±1.5°K (from ideal 103AT thermistor
Invalid Data Indication: 65,535 indicates the bat- performance, after calibration)
tery is not being discharged.
Voltage() (0x09); [0x09]
AtRateOK() (0x07); [0x07]
Description:
Description: Returns the cell-pack voltage (mV).
Returns a Boolean value that indicates whether or not
the battery can deliver the AtRate( )value of additional Purpose:
energy for 10 seconds (Boolean). If the AtRate value is The Voltage() function provides power management sys-
zero or positive, the AtRateOK() function ALWAYS re- tems with an accurate battery terminal voltage. Power
turn-true. management systems can use this voltage, along with
battery current information, to characterize devices they
Purpose:
control. This ability helps enable intelligent, adaptive
The AtRateOK() function is part of a two-function
call-set used by power management systems to deter- power-management systems.
mine if the battery can safely supply enough energy for SMBus Protocol: Read Word
an additional load. The bq2060A updates AtRateOK()
within 1.3s after the SMBus Host sets the AtRate( ) Output:
value. If read before this delay, the command is No Ac-
knowledged, and the error code in BatteryStatus is set Unsigned integer—battery terminal
to not ready. The bq2060A automatically updates voltage in mV.
AtRateOK() based on the At Rate() value every 20s.
Units: mV
SMBus Protocol: Read Word
Range: 0 to 20,000 mV
Output:
Granularity: 1mV
Boolean—indicates if the battery can
supply the additional energy requested. Accuracy: ±0.65% (after calibration)

Units: Boolean

21
bq2060A

Current() (0x0a); [0x0a]


the Relative StateOfCharge() is more likely between 50
Description: and 60%. The bq2060A sets MaxError() to 100% on a
Returns the current being supplied (or accepted) full reset. The bq2060A sets MaxError() to 2% on com-
through the battery’s terminals (mA). pletion of a learning cycle, unless the bq2060A limits
the learning cycle to the +512/-256mAh maximum ad-
Purpose: justment values. If the learning cycle is limited, the
The Current() function provides a snapshot for the bq2060A sets MaxError() to 8% unless MaxError() was
power management system of the current flowing into or already below 8%. In this case MaxError() does not
out of the battery. This information is of particular use change. The bq2060A increments MaxError() by 1% af-
in power-management systems because they can charac- ter four increments of CycleCount() without a learning
terize individual devices and tune their operation to ac- cycle.
tual system power behavior.
If voltage-based corrections are applied to the coulomb
SMBus Protocol: Read Word counter, MaxError() is set to 25%.
Output: Purpose:
Signed integer—charge/discharge rate in mA incre- The MaxError() function has real value in two ways:
ments—positive for charge, negative for discharge. first, to give the user a confidence level about the state
of charge and second, to give the power management
Units: mA system information about how aggressive it should be,
particularly as the battery nears the end of its life.
Range: (± 250mV/RS) mA
SMBus Protocol: Read Word
Granularity: 0.038mV/RS (integer value)
Output:
Accuracy: ±1mV/RS (after calibration)
Unsigned integer—percent uncertainty for selected
AverageCurrent() (0x0b); [0x0b] information.
Description:
Units: %
Returns a value that approximates a one-minute rolling
average of the current being supplied (or accepted) Range: 2 to 100%
t h ro u g h the b a tte r y ’s te r m i nal s ( m A ) . The
AverageCurrent() function will return meaningful val- Granularity: 1%
ues during the battery’s first minute of operation.
Accuracy: not applicable
Purpose:
The AverageCurrent() function provides the average cur- RelativeStateOfCharge() (0x0d); [0x0d]
rent flowing into or out of the battery for the power
management system. Description:
Returns the predicted remaining battery capacity ex-
SMBus Protocol: Read Word pressed as a percentage of FullChargeCapacity() (%).

Output: Purpose:
The RelativeStateOfCharge() function is used to esti-
Signed integer—charge/discharge rate in mA incre- mate the amount of charge remaining in the battery rel-
ments—positive for charge, negative for discharge. ative to the last learned capacity.

Units: mA SMBus Protocol: Read Word

Range: (± 250mV/RS) mA Output:

Granularity: 0.038mV/RS (integer value) Unsigned integer—percent of remaining capacity.

Accuracy: ±1mV/RS (after calibration) Units: %

MaxError() (0x0c); [0x0c] Range: 0 to 100%

Description: Granularity: 1%
Returns the expected margin of error (%) in the state of
charge calculation. For example, when MaxError() re- Accuracy: -0, +MaxError()
turns 10% and RelativeStateOfCharge() returns 50%,

22
bq2060A

AbsoluteStateOfCharge()(0x0e); [0x0e] FullChargeCapacity() (0x10); [0x10]


Description: Description:
Returns the predicted remaining battery capacity ex- Returns the predicted pack capacity when it is fully
pressed as a percentage of DesignCapacity() (%). Note charged. The FullChargeCapacity() value is expressed
that AbsoluteStateOfCharge() can return values greater in either current (mAh at a C/5 discharge rate) or power
than 100%. (10mWh at a P/5 discharge rate) depending on the set-
ting of the BatteryMode()’s CAPACITY_MODE bit.
Purpose:
The AbsoluteStateOfCharge() function is used to esti- Purpose:
mate the amount of charge remaining in the battery rel- The FullChargeCapacity() function provides the user
ative to the nominal or DesignCapacity(). with a means of understanding the tank size of their
battery. This information, along with information about
SMBus Protocol: Read Word the original capacity of the battery, can be presented to
Output: the user as an indication of battery wear.
SMBus Protocol: Read Word
Unsigned integer—percent of remaining capacity.
Output:
Units: %
Unsigned integer—estimated full-charge capacity
Range: 0 to 100+% in mAh or 10mWh.
Granularity: 1%
Battery Mode
Accuracy: -0, +MaxError()
CAPACITY_MODE CAPACITY_MODE
RemainingCapacity() (0x0f); [0x0f] bit = 0 bit = 1
Units mAh 10mWh
Description:
Returns the predicted charge or energy remaining in the Range 0–65,535mAh 0–65,535 10mWh
battery. The RemainingCapacity() value is expressed in Granularity mAh 10mWh
either charge (mAh at a C/5 discharge rate) or energy Accuracy -0, +MaxError() ∗ FullChargeCapacity()
(10mWh at a P/5 discharge rate) depending on the set-
ting of the BatteryMode()’s CAPACITY_MODE bit.
RunTimeToEmpty() (0x11); [0x11]
Purpose:
The RemainingCapacity() function returns the battery’s Description:
remaining capacity. This information is a numeric indica- Returns the predicted remaining battery life at the pres-
tion of remaining charge or energy given by the Absolute en t r a t e of d is c h a r g e ( m in u t es ) . The
or Relative StateOfCharge() functions and may be in a RunTimeToEmpty() value is calculated based on either
better form for use by power management systems. current or power depending on the setting of the
BatteryMode()’s CAPACITY_MODE bit.
SMBus Protocol: Read Word
Purpose:
Output: The RunTimeToEmpty() provides the power management
system with information about the relative gain or loss in
Unsigned integer—remaining charge in mAh or
10mWh. remaining battery life in response to a change in power
policy. This information is NOT the same as the
AverageTimeToEmpty(), which is not suitable to deter-
Battery Mode mine the effects that result from a change in power policy.
CAPACITY_MODE CAPACITY_MODE
bit = 0 bit = 1 SMBus Protocol: Read Word
Units mAh 10mWh Output:
Range 0–65,535mAh 0–65,535 10mWh Unsigned integer—minutes of operation left.
Granularity mAh 10mWh
Units: minutes
Accuracy -0, +MaxError() ∗ FullChargeCapacity()
Range: 0 to 65,534 min
Granularity: 2 min or better

23
bq2060A

Accuracy: -0, +MaxError() ∗ FullChargeCapacity() ChargingCurrent() (0x14); [0x14]


/ Current()
Description: Returns the desired charging rate in mA.
Invalid Data Indication: 65,535 indicates battery is
not being discharged. Purpose: The ChargingCurrent() function sets the
m a x im u m c h a r g e c u r r en t of t h e b a t t er y. T h e
AverageTimeToEmpty() (0x12); [0x12] ChargingCurrent() value should be used in combination
with the ChargingVoltage() value to set the charger’s op-
Description: Returns a one-minute rolling average of
erating point. Together, these functions permit the
the predicted remaining battery life (minutes). The
AverageTimeToEmpty() value is calculated based on ei- bq2060A to dynamically control the charging profile
ther current or power depending on the setting of the (current/voltage) of the battery. The bq2060A can effec-
BatteryMode()’s CAPACITY_MODE bit. tively turn off a charger by returning a value of 0 for
this function. The charger may be operated as a con-
Purpose: stant-voltage source above its maximum regulated cur-
The AverageTimeToEmpty() displays state-of-charge in- rent range by returning a ChargingCurrent() value of
formation in a more useful way. It averages the instan- 65,535.
taneous estimations so the remaining time does not ap-
pear to jump around. SMBus Protocol: Read Word

SMBus Protocol: Read Word Output:

Output: Unsigned integer—maximum charger output cur-


rent in mA.
Unsigned integer — minutes of operation left.
Units: mA
Units: minutes
Range: 0 to 65,535mA
Range: 0 to 65,534 min
Granularity: 1mA
Granularity: 2 min or better
Accuracy: not applicable
Accuracy: -0, +MaxError() ∗ FullChargeCapacity()
/ AverageCurrent() Invalid Data Indication: 65,535 indicates that a
charger should operate as a voltage source outside
Invalid Data Indication: 65,535 indicates battery is its maximum regulated current range.
not being discharged.
ChargingVoltage() (0x15); [0x15]
AverageTimeToFull() (0x13); [0x13]
Description: Returns the desired charging voltage in
Description: Returns a one-minute rolling average of
mV.
the predicted remaining time until the battery reaches
full charge (minutes). Purpose: The ChargingVoltage() function sets the max-
Purpose: The AverageTimeToFull() function can be im u m c h a r g e v olt a g e of t h e b a t t er y. T h e
used by the SMBus Host’s power management system to ChargingVoltage() value should be used in combination
aid in its policy. It may also be used to find out how long with the ChargingCurrent() value to set the charger’s
the system must be left on to achieve full charge. operating point. Together, these functions permit the
bq2060A to dynamically control the charging profile
SMBus Protocol: Read Word (current/voltage) of the battery. The charger may be op-
Output: erated as a constant-current source above its maximum
r eg u la t ed v olt a g e r a n g e b y r et u r n in g a
Unsigned integer —remaining time in minutes. ChargingVoltage() value of 65,535.

Units: minutes SMBus Protocol: Write Word

Range: 0 to 65,534 minutes Output:

Granularity: 2 minutes or better Unsigned integer—charger output voltage in mV.

Accuracy: MaxError() ∗ FullChargeCapacity() / Units: mV


AverageCurrent()
Range: 0 to 65,535mV
Invalid Data Indication: 65,535 indicates the bat-
tery is not being charged. Granularity: 1mV

24
bq2060A

Accuracy: not applicable Alarm Bits


Invalid Data Indication: 65,535 indicates that the OVER_CHARGED_ALARM bit is set whenever the
charger should operate as a current source outside bq2060A detects that the battery is being charged be-
its maximum regulated voltage range. yond the Maximum Overcharge limit. This bit is cleared
when the bq2060A detects that the battery is no longer
BatteryStatus()(0x16); [0x16] being charged (i.e., the bq2060A detects discharge activ-
ity or no activity for the digital filter timeout periods.
Description: Returns the bq2060’s status word (flags). The digital filter timeout period (seconds) equates to 10
Some of the BatteryStatus() flags (REMAINING_CA- time the value shared in Digital Filter EE0x52.)
PACITY_ALARM and REMAINING_TIME_ALARM) TERMINATE_CHARGE_ALARM bit is set when the
are calculated based on either current or power depend- bq2060A detects that one or more of the battery’s charg-
ing on the setting of the BatteryMode()’s CAPAC- ing parameters are out of range (e.g., its voltage, cur-
ITY_MODE bit. This is important because use of the rent, or temperature is too high) or when the bq2060A
wrong calculation mode may result in an inaccurate detects a primary charge termination. This bit is
alarm. cleared when the parameter falls back into the allow-
able range, the termination condition ceases, or when
Purpose: The BatteryStatus() function is used by the the bq2060A detects that the battery is no longer being
power-management system to get alarm and status bits, charged.
as well as error codes from the bq2060A. This is basi-
cally the same information broadcast to both the SMBus OVER_TEMP_ALARM bit is set when the bq2060A de-
H o st a n d t he S m ar t B at te r y C har ger b y t h e tects that the internal battery temperature is greater
than or equal to the MaxT limit. This bit is cleared
A l a rmWar ni ng ( ) f unc ti o n e x c e p t t h a t t h e
when the internal temperature falls back into the ac-
AlarmWarning() function sets the Error Code bits all ceptable range.
high before sending the data.
TERMINATE_DISCHARGE_ALARM bit is set when
SMBus Protocol: Read Word the bq2060A detects Voltage() ≤ EDV0, the CVUV bit in
Pack Status is set (Li-Ion cell voltage has dropped below
Output: the limit programmed in Cell Under / Over Voltage), or
Unsigned integer—Status Register with alarm con- RemainingCapacity() = 0. The bit is cleared when Volt-
ditions bit mapped as follows: a g e( ) > E D V 0 or C V U V b it is c lea r ed , a n d
RemainingCapacity() > 0.

Alarm Bits REMAINING_CAPACITY_ALARM bit is set when the


0x8000 OVER_CHARGED_ALARM bq2060A detects that RemainingCapacity() is less than
0x4000 TERMINATE_CHARGE_ALARM that set by the RemainingCapacityAlarm() function.
This bit is cleared when either the value set by the
0x2000 reserved RemainingCapacityAlarm() function is lower than
0x1000 OVER_TEMP_ALARM RemainingCapacity() or when the RemainingCapacity()
0x0800 TERMINATE_DISCHARGE_ALARM is increased by charging.
0x0400 reserved
0x0200 REMAINING_CAPACITY_ALARM REMAINING_TIME_ALARM bit is set when the
bq2060A detects that the estimated remaining time at
0x0100 REMAINING_TIME_ALARM
the present discharge rate is less than that set by the
Status Bits RemainingTimeAlarm() function. This bit is cleared when
0x0080 INITIALIZED either the value set by the RemainingTimeAlarm() func-
0x0040 DISCHARGING tion is lower than the AverageTimeToEmpty() or when the
0x0020 FULLY_CHARGED AverageTimeToEmpty() is increased by charging.
0x0010 FULLY_DISCHARGED
Error Codes Status Bits
0x0007 Unknown Error INITIALIZED bit is set when the bq2060A is has de-
0x0006 BadSize tected a valid load of EEPROM. It is cleared when the
0x0005 Overflow/Underflow bq2060A detects an improper EEPROM load.
0x0004 AccessDenied DISCHARGING bit is set when the bq2060A deter-
0x0003 UnsupportedCommand mines that the battery is not being charged. This bit is
0x0002 ReservedCommand cleared when the bq2060A detects that the battery is be-
0x0001 Busy ing charged.
0x0000 OK

25
bq2060A

FULLY_CHARGED bit is set when the bq2060A de- Granularity: 1 cycle


tects a primary charge termination or an overcharged
condition. It is cleared when RelativeStateOfCharge() ≤ Accuracy: absolute count
the programmed Fully Charged Clear % in EE 0x4c.
DesignCapacity() (0x18); [0x18]
FULLY_DISCHARGED bit is set when Voltage() ≤
EDV2 threshold, or RemainingCapacity() < Full Charge Description: Returns the theoretical or nominal capac-
Capacity * BatteryLow%. This bit is cleared when the ity of a new pack. The DesignCapacity() value is ex-
Relative StateOfCharge() is ≥ 20%. pressed in either current (mAh at a C/5 discharge rate)
or power, (10mWh at a P/5 discharge rate) depending on
Error Codes Description the setting of the BatteryMode()’s CAPACITY_MODE
The bq2060A processed the function bit.
OK
code without detecting any errors. Purpose: The DesignCapacity() function is used by the
The bq2060A is unable to process the SMBus Host’s power management in conjunction with
Busy
function code at this time. FullChargeCapacity() to determine battery wear. The
The bq2060A detected an attempt to power management system may present this informa-
read or write to a function code tion to the user and also adjust its power policy as a re-
reserved by this version of the sult.
Reserved
specification. The 2060 detected an
attempt to access an unsupported SMBus Protocol: Read Word
optional manufacturer function code.
Output:
The bq2060A does not support this
Unsupported function code which is defined in this Unsigned integer—battery capacity in mAh or
version of the specification. 10mWh.
The bq2060A detected an attempt to
AccessDenied
write to a read-only function code. Battery Mode
The bq2060A detected a data overflow CAPACITY_MODE CAPACITY_MODE
Over/Underflow
or underflow. bit = 0 bit = 1
The bq2060A detected an attempt to Units mAh 10mWh
BadSize write to a function code with an Range 0–65,535mAh 0–65,535 10mWh
incorrect data block. Granularity Not applicable
The bq2060A detected an Accuracy Not applicable
UnknownError
unidentifiable error.
DesignVoltage() (0x19); [0x19]
CycleCount()(0x17); [0x17]
Description: Returns the theoretical voltage of a new
Description: Returns the number of cycles the battery pack (mV). The bq2060A sets DesignVoltage() to the
has experienced. The mAh value of each count is deter- value programmed in Design Voltage EE0x12–0x13.
mined by programming the Cycle Count Threshold value
in EE 0x3c–0x3d. The bq2060A saves the cycle count Purpose: The DesignVoltage() function can be used to
value to Cycle Count EE 0x0e–0x0f after an update to give additional information about a particular Smart
CycleCount(). Battery’s expected terminal voltage.

Purpose: The CycleCount() function provides a means SMBus Protocol: Read Word
to determine the battery’s wear. It may be used to give
Output:
advanced warning that the battery is nearing its end of
life. Unsigned integer—the battery’s designed terminal
SMBus Protocol: Read Word voltage in mV

Output: Units: mV

Unsigned integer—count of total charge removed Range: 0 to 65,535 mV


from the battery over its life. Granularity: not applicable
Units: cycle Accuracy: not applicable
Range: 0 to 65,534 cycles 65,535 indicates battery
has experienced 65,535 or more cycles.

26
bq2060A

SpecificationInfo() (0x1a); [0x1a] Field Bits Used Format Allowable Values


5-bit binary 0–31 (corresponds to
Description: Returns the version number of the Smart Day 0...4
value date)
Battery specification the battery pack supports, as well 4-bit binary 1–12 (corresponds to
as voltage and current scaling information in a packed Month 5...8
value month number)
unsigned integer. Power scaling is the product of the 7-bit binary 0–127 (corresponds to
voltage scaling times the current scaling. The Year 9...15
value year biased by 1980)
SpecificationInfo is packed in the following fashion:
(SpecID_H ∗ 0x10 + SpecID_L) + (VScale + IPScale∗
SerialNumber() (0x1c); [0x1c]
0x10) ∗ 0x100.
Description: This function is used to return a serial
The bq2060A VScale (voltage scaling) and IPScale (cur- number. This number, when combined with the
rent scaling) should always be set to zero. The bq2060A ManufacturerName(), the DeviceName(), and the
sets SpecificationInfo() to the value programmed in ManufactureDate(), uniquely identifies the battery (un-
Specification Information EE 0x14–0x15. signed int). The bq2060A sets SerialNumber() to the
value programmed in Serial Number EE 0x18–0x19.
Purpose: The SpecificationInfo() function is used by
the SMBus Host’s power management system to deter- Purpose: The SerialNumber() function can be used to
mine what information the Smart Battery can provide. identify a particular battery. This may be important in
systems that are powered by multiple batteries where
SMBus Protocol: Read Word the system can log information about each battery that
it encounters.
Output:
SMBus Protocol: Read Word
Unsigned integer—packed specification number
and scaling information. Output:
Unsigned integer
Bits
Field Used Format Allowable Values ManufacturerName() (0x20); [0x20-0x25]
4-bit binary
SpecID_L 0...3 0–15 Description: This function returns a character array
value
4-bit binary containing the battery’s manufacturer’s name. For ex-
SpecID_H 4...7 0–15 ample, MyBattCo would identify the Smart Battery’s
value
4-bit binary 0 (multiplies voltage m a n u f a c t u r er a s M y B a t t C o. T h e b q 2 0 6 0 A s e t s
VScale 8...11 ManufacturerName() to the value programmed in Man-
value by 10^ VScale)
4-bit binary 0 (multiplies current ufacturer Name EE 0x20–0x2a.
IPScale 12...15
value by 10 ^ IPScale)
Purpose: The ManufacturerName() function returns
the name of the Smart Battery’s manufacturer. The
ManufactureDate() (0x1b); [0x1b] manufacturer’s name can be displayed by the SMBus
Host’s power management system display as both an
Description: This function returns the date the cell identifier and as an advertisement for the manufac-
pack was manufactured in a packed integer. The date is turer. The name is also useful as part of the informa-
packed in the following fashion: (year-1980) ∗ 512 + tion required to uniquely identify a battery.
month ∗ 32 + day. The bq2060A sets ManufactureDate()
to the value programmed in Manufacture Date EE SMBus Protocol: Read Block
0x16–0x17. Output:

Purpose: The ManufactureDate() provides the system String—character string with maximum length of
with information that can be used to uniquely identify a 11 characters (11+length byte).
particular battery pack when used in conjunction with
SerialNumber(). DeviceName() (0x21); [0x28-0x2b]
Description: This function returns a character string
SMBus Protocol: Read Word that contains the battery’s name. For example, a
Output: DeviceName() of BQ2060A would indicate that the
battery is a model BQ2060A. The bq2060A sets
Unsigned integer—packed date of manufacture. DeviceName() to the value programmed in Device Name
EE 0x30–0x37.

27
bq2060A

Purpose: The DeviceName() function returns the bat-


tery’s name for identification purposes. Output:

SMBus Protocol: Read Block Block data—data that reflects EEPROM program-
ming as assigned by the manufacturer with maxi-
Output: mum length of 7 characters (7+length byte).
String—character string with maximum length of 7
characters (7+length byte). Pack Status and Pack Configuration (0x2f);
[0x2f]
DeviceChemistry() (0x22); [0x30-0x32]
This function returns the Pack Status and Pack Config-
Description: This function returns a character string uration registers. The Pack Status register contains a
that contains the battery’s chemistry. For example, if number of status bits relating to bq2060A operation.
the DeviceChemistry() function returns NiMH, the The Pack Status register is the least significant byte of
battery pack would contain nickel metal hydride cells. the word. The Pack Configuration register is the most
The bq2060A sets DeviceChemistry() to the value significant byte of the word. The byte reflects how the
programmed in Device Chemistry EE 0x40–0x44. bq2060A is configured as defined by the value pro-
Purpose: The DeviceChemistry() function gives cell grammed in Pack Configuration in EE 0x3f.
chemistry information for use by charging systems. The The Pack Status Register consists of the following bits:
bq2060A does not use DeviceChemisty() values for inter-
nal charge control or fuel gauging.
b7 b6 b5 b4 b3 b2 b1 b0
SMBus Protocol: Read Block OCE EDV2 EINT VDQ COK DOK CVOV CVUV
Output:
OCE
String—character string with maximum length of 4
characters (4+length byte). The OCE bit indicates that offset cancellation is en-
Note: The following is a partial list of chemistries and abled. The bq2060A sets this bit after VFC offset cali-
their expected abbreviations. These abbreviations are bration is complete.
NOT case sensitive.
0 Offset calibration is not enabled

Lead acid PbAc 1 Offset calibration is enabled


Lithium ion LION EDV2
Nickel cadmium NiCd
The EDV2 bit indicates that Voltage() is less than the
Nickel metal hydride NiMH EDV2 threshold.
Nickel zinc NiZn
0 Voltage() > EDV2 threshold (discharging)
Rechargeable alkaline-manganese RAM
Zinc air ZnAr 1 Voltage() ≤ EDV2 threshold
EINT
ManufacturerData() (0x23); [0x38–0x3a]
The EINT bit indicates that the VFC has detected a
Description: This function allows access to the manu- charge or discharge pulse.
facturer data contained in the battery (data). The
bq2060A stores seven critical operating parameters in 0 No charge/discharge activity detected
this data area.
1 Charge/discharge activity detected.
Purpose: The ManufacturerData() function may be
used to access the manufacturer’s data area. The data VDQ
fields of this command reflect the programming of five The VDQ bit indicates if the present discharge cycle is
critical EEPROM locations and can be used to facilitate valid for an FCC update.
evaluation bq2060A under various programming sets.
The ManufacturerData() function returns the following 0 Discharge cycle is not valid
information in order: Control Mode, Digital Filter,
Self-Discharge Rate, Battery Low %, Near Full, and the 1 Discharge cycle is valid
pending EDV threshold voltage (low byte and high byte.)
SMBus Protocol: Read Block

28
bq2060A

COK
EEPROM Programming
The COK bit indicates the status of the CFC pin of the
bq2060A. The following sections describes the function of each
EEPROM location and how the data is to be stored.
0 CFC pin is low
1 CFC pin is high Fundamental Parameters
DOK Sense Resistor Value
The DOK bit indicates the status of the DFC pin of the
bq2060A. Two factors are used to scale the current related mea-
surements. The 16-bit ADC Sense Resistor Gain value
0 DFC pin is low in EE 0x68–0x69 scales Current() to mA. Adjusting
ADC Sense Resistor Gain from its nominal value pro-
1 DFC pin is high
vides a method to calibrate the current readings for sys-
CVOV tem errors and the sense resistor value (RS) . The nomi-
nal value is set by
The CVOV bit indicates that a secondary Li-Ion protec-
tion limit has been exceeded. It is set if any individual 625 (4)
cell exceeds the programmed high voltage limit, if the ADC Sense Resistor Gain=
(Rs)
pack voltage exceeds the overvoltage threshold, or if an
over temperature condition occurs. The bit is not latched
and merely reflects the present overvoltage status. The 16-bit VFC Sense Resistor Gain in EE 0x6a–0x6b
scales each VFC interrupt to mAh. VFC Sense Resistor
0 No secondary protection limits exceeded Gain is based on the resistance of the series sense resis-
1 A secondary protection limit exceeded tor. The following formula computes a nominal or start-
ing value for VFC Sense Resistor Gain from the sense
CVUV resistor value.
The CVUV bit indicates if any individual cell falls below 409.6 (5)
the programmed low-voltage limit. The bit applies to VFC Sense Resistor Gain=
lithium batteries only. The bit is not latched and merely (Rs)
reflects the present undervoltage status.
Sense resistor values are limited to the range of 0.00916
0 All series cells are above the low-voltage limit to 0.100Ω.
1 A series cell is below the low voltage limit
Digital Filter
VCELL4–VCELL1 (0x3c–0x3f); [0x3c–0x3f]
The digital filter threshold, VDF (µV), is set by the
These functions return the calculated voltages in mV at value stored in Digital Filter EE 0x52.
the VCELL4 through VCELL1 inputs. 2250
Digital Filter = (6)
VDF
EEPROM
Cell Characteristics
General Battery Pack Capacity and Voltage
The bq2060A accesses the external EEPROM during a Pack capacity in mAh units is stored in Pack Capacity
full reset and when storing historical data. During an EE 0x3a–0x3b. In mAh mode, the bq2060A copies Pack
EEPROM access, the VOUT pin becomes active and the Capacity to DesignCapacity(). In mWh mode, the
bq2060A uses the ESCL and ESDA pins to communicate bq2060A multiplies Pack Capacity by Design Voltage EE
with the EEPROM. The EEPROM stores basic configu-
0x12–0x13 to calculate DesignCapacity() scaled to
ration information for use by the bq2060A. The
10mWh. Design Voltage is stored in mV.
EEPROM must be programmed correctly for proper
bq2060A operation. The initial value for Last Measured Discharge in mAh is
stored in EE 0x38–0x39. Last Measured Discharge is
Memory Map modified over the course of pack usage to reflect cell
aging under the particular use conditions. The bq2060A
Table 9 shows the memory map for the EEPROM. It updates Last Measured Discharge in mAh after a
also contains example data for a 10 series NiMH and a capacity learning cycle. The bq2060A uses the
3s3p Li-Ion battery pack with a 0.05Ω sense resistor. L a s t M e a s u r e d D i s c h a r g e v a lu e t o c a lc u la t e
FullChargeCapacity() in mAh or 10mWh mode.

29
bq2060A

Table 9. EEPROM Memory Map


EEPROM NiMH Data Li-Ion Data
Address Name Chemistry Example MSB LSB Example MSB LSB
0x00 0x01 Check Byte 1 Li-Ion, Nickel 15487 3c 7f 15487 3c 7f
0x02 0x03 Remaining Time Alarm Li-Ion, Nickel 10 minutes 00 0a 10 minutes 00 0a
0x04 0x05 Remaining Capacity Alarm Li-Ion, Nickel 350mAh 01 5e 400mAh 01 90
EDV A0 Impedance Age
0x06 Li-Ion, Nickel 0 - 00 0 - 00
Factor
EDV TC Cold Impedance
0x07 - 0 - 00 3 - 03
Factor
0x08 Misc Options - 0 - 00 0 - 00
0x09 Safety Overtemperature - 0 - 00 0 - 00
0x0a 0x0b Charging Voltage Li-Ion, Nickel 18000mV 46 50 12600mV 31 38
0x0c 0x0d Reserved - 128 00 80 128 00 80
0x0e 0x0f Cycle Count Li-Ion, Nickel 0 00 00 0 00 00
0x10 0x11 Reserved - 0 00 00 0 00 00
0x12 0x13 Design Voltage Li-Ion, Nickel 12000mV 2e e0 10800mV 2a 30
0x14 0x15 Specification Information Li-Ion, Nickel v1.1/PEC 00 31 v1.1/PEC 00 31
0x16 0x17 Manufacture Date Li-Ion, Nickel 2/25/99=9817 26 59 2/25/99=9817 26 59
0x18 0x19 Serial Number Li-Ion, Nickel 1 00 01 1 00 01
0x1a 0x1b Fast-Charging Current Li-Ion, Nickel 4000mA 0f a0 3000mA 0b b8
Maintenance Charging
0x1c 0x1d Li-Ion, Nickel 200mA 00 c8 0mA 00 00
Current
0x1e 0x1f Pre-Charge Current Li-Ion, Nickel 800mA 03 20 100mA 00 64
0x20 Manufacturer Name Length Li-Ion, Nickel 9 - 09 9 - 09
0x21 Character 1 Li-Ion, Nickel B - 42 B - 42
0x22 Character 2 Li-Ion, Nickel E - 45 E - 45
0x23 Character 3 Li-Ion, Nickel N - 4e N - 4e
0x24 Character 4 Li-Ion, Nickel C - 43 C - 43
0x25 Character 5 Li-Ion, Nickel H - 48 H - 48
0x26 Character 6 Li-Ion, Nickel M - 4d M - 4d
0x27 Character 7 Li-Ion, Nickel A - 41 A - 41
0x28 Character 8 Li-Ion, Nickel R - 52 R - 52
0x29 Character 9 Li-Ion, Nickel Q - 51 Q - 51
0x2a Character 10 Li-Ion, Nickel 0 - 00 0 - 00
0x2b Light Discharge Current Li-Ion, Nickel 0 - 00 0 - 00
0x2c 0x2d Reserved - 0 00 00 0 00 00
0x2e 0x2f Maximum Overcharge Li-Ion, Nickel 200mAh ff 38 256mAh ff 00
0x30 Device Name Length Li-Ion, Nickel 7 - 07 7 - 07
0x31 Character 1 Li-Ion, Nickel B - 42 B - 42
0x32 Character 2 Li-Ion, Nickel Q - 51 Q - 51
0x33 Character 3 Li-Ion, Nickel 2 - 32 2 - 32
0x34 Character 4 Li-Ion, Nickel 0 - 30 0 - 30
(Continued on next page)
Note: Reserved locations must be set as shown. Locations marked with an * are calibration values that can be
adjusted for maximum accuracy. For these locations the table shows the appropriate default or initial

30
bq2060A

Table 9. EEPROM Memory Map (Continued)


EEPROM NiMH Data Li-Ion Data
Address Name Chemistry Example MSB LSB Example MSB LSB
0x35 Character 5 Li-Ion, Nickel 6 - 36 6 - 36
0x36 Character 6 Li-Ion, Nickel 0 - 30 0 - 30
0x37 Character 7 Li-Ion, Nickel A - 41 A - 41
0x38 0x39 Last Measured Discharge Li-Ion, Nickel 4000mAh 0f a0 4050mAh 0f d2
0x3a 0x3b Pack Capacity Li-Ion, Nickel 4000mAh 0f a0 4050mAh 0f d2
0x3c 0x3d Cycle Count Threshold Li-Ion, Nickel 500mAh fe 0c 3240mAh f3 58
0x3e Reserved - 0 - 00 0 - 00
0x3f Pack Configuration Li-Ion, Nickel 232 - e8 246 - f6
0x40 Device Chemistry Length Li-Ion, Nickel 4 - 04 4 - 04
0x41 Character 1 Li-Ion, Nickel N - 4e L - 4c
0x42 Character 2 Li-Ion, Nickel I - 49 I - 49
0x43 Character 3 Li-Ion, Nickel M - 4d O - 4f
0x44 Character 4 Li-Ion, Nickel H - 48 N - 4e
0x45 MaxT DeltaT Li-Ion, Nickel 50C, 3.0 - c7 50C, 4.6 - cf
0x46 0x47 Overload Current Li-Ion, Nickel 6000mA 17 70 6000mA 17 70
0x48 Overvoltage Margin Li-Ion, Nickel 0 - 00 800mV - 32
0x49 Overcurrent Margin Li-Ion, Nickel 512mA - 20 512mA - 20
Reserved Nickel 0 - 00 - - -
0x4a
Cell Under/Over Voltage Li-Ion - - - 118 - 76
0x4b Fast Charge Termination % Li-Ion, Nickel 96% - a0 100% - 9c
0x4c Fully Charged Clear % Li-Ion, Nickel 90% - a6 95% - a1
0x4d Charge Efficiency Li-Ion, Nickel 97% - el 100% - ff
Current Taper Threshold Li-Ion - - - 200mA - 12
0x4e
DeltaT Time Nickel 180s - 07 - - -
Holdoff Time Nickel 240s - 04 - - -
0x4f
Current Taper Qual Voltage Li-Ion - - - 128mV - 40
0x50 Manufacturers Data Length Li-Ion, Nickel 7 - 07 7 - 07
0x51 Control Mode Li-Ion, Nickel 4 04 4 04
0x52 Digital Filter Li-Ion, Nickel 50µV - 2d 50µV - 2d
0x53 Self-Discharge Rate Li-Ion, Nickel 1% - cb 0.21% - 05
0x54 Battery Low % Li-Ion, Nickel 7% - 12 7% - 12
0x55 Near Full Li-Ion, Nickel 200mAh - 64 200mAh - 64
0x56 0x57 Reserved - 0 - 00 0 - 00
0x58 0x59 Reserved - 0 - 00 0 - 00
0x5a 0x5b Reserved - 0 - 00 0 - 00

(Continued on next page)


Note: Reserved locations must be set as shown. Locations marked with an * are calibration values that can be
adjusted for maximum accuracy. For these locations the table shows the appropriate default or initial
setting.

31
bq2060A

Table 9. EEPROM Memory Map (Continued)


EEPROM NiMH Data Li-Ion Data
Address Description Chemistry Example MSB LSB Example MSB LSB
0x5c 0x5d Reserved - 0 00 00 0 00 00
0x5e 0x5f VFC Offset* Li-Ion, Nickel 0 00 00 0 00 00
0x60 VFC Offset* Li-Ion, Nickel 0 - 00 0 - 00
0x61 Temperature Offset* Li-Ion, Nickel 0 - 00 0 - 00
0x62 ADC Offset* Li-Ion, Nickel 0 - 00 0 - 00
Cell 2 Calibration Factor* Li-Ion - - - 0 - 00
0x63 Efficiency Temperature
Nickel 0.25% - 20 - - -
Compensation
Cell 3 Calibration Factor* Li-Ion - - - 0 - 00
0x64 Efficiency Drop Off
Nickel 96% - a0 - - -
Percentage
Cell 4 Calibration Factor* Li-Ion - - - 0 - 00
0x65
Efficiency Reduction Rate Nickel 1% - 50 - - -
0x66 0x67 ADC Voltage Gain* Li-Ion, Nickel 16 : 1 4e 20 16 : 1 4e 20
0x68 0x69 ADC Sense Resistor Gain* Li-Ion, Nickel 0.05Ω 30 d4 0.05Ω 30 d4
0x6a 0x6b VFC Sense Resistor Gain* Li-Ion, Nickel 0.05Ω 20 00 0.05Ω 20 00
0x6c 0x6d VOC 25% Li-Ion, Nickel 11500mV d3 14 10550mV d6 ca
0x6e 0x6f VOC 50% Li-Ion, Nickel 12500mV cf 2c 10750mV d6 02
0x70 0x71 VOC 75% Li-Ion, Nickel 13500mV cb 44 11200mV d4 40
0x72 0x73 EDVF/EDV0 Li-Ion, Nickel 9500mV 25 1c 10265mV 28 19
0x74 0x75 EMF/ EDV1 Li-Ion, Nickel 10000mV 27 10 11550 2d 1e
0x76 0x77 EDV T0 Factor Li-Ion, Nickel 0 00 00 4475 11 7b
C1 = 0
0x78 0x79 EDV C1/C0 Factor/EDV2 Li-Ion, Nickel 10500mV 29 04 00 eb
C0 = 235
0x7a 0x7b EDV R0 Factor Li-Ion, Nickel 0 00 00 5350 14 e6
0x7c 0x7d EDV R1 Factor Li-Ion, Nickel 0 - 00 250 00 fa
0x7e 0x7f Check Byte 2 Li-Ion, Nickel 42330 a5 5a 42330 a5 5a

Note: Reserved locations must be set as shown. Locations marked with an * are calibration values that can be adjusted
for maximum accuracy. For these locations the table shows the appropriate default or initial setting.

32
bq2060A

EDV Thresholds and Near Full Percentage Residual Capacity Factor C1 =RESIDUAL% * 2.56

The bq2060A uses three pack voltage thresholds to pro- RESIDUAL % is the desired battery capacity remaining
vide voltage-based warnings of low battery capacity. at EDV0 (RM = 0).
The bq2060A uses the values stored in EEPROM for the
n T is the current temperature in °K
EDV0, EDV1, and EDV2 values or calculates the three
thresholds from a base value and the temperature, ca-
R0 ∗ FTZ represents the resistance of the battery as a
pacity, and rate adjustment factors stored in EEPROM.
function of temperature and capacity.
If EDV compensation is disabled then EDV0, EDV1,
andEDV2 are stored directly in mV in EE 0x72–0x73,
FTZ = f ( R1 , T0, T, C + C1, TC) (11)
EE 0x74–0x75, and EE 0x78–0x79, respectively.
For capacity correction at EDV2, Battery Low % EE n R0 is the first order rate dependency factor stored in
0 x 5 4 ca n be s e t at a d e s i r e d s ta te - of - c h a r g e, EDV R0 Factor EE 0x7a–0x7b.
STATEOFCHARGE%, in the range of 5 to 20%. Typical
values for STATEOFCHARGE% are 7–12% representing n T is the current temperature; C is the battery
7 –12% capacity. capacity relating to EDV0, EDV1, and EDV2; and C1
is the desired residual battery capacity remaining at
Battery Low % = STATEOFCHARGE% ∗ 2.56 (7) EDV0 (RM = 0).
The bq2060A updates FCC if a qualified discharge oc- n R1 adjusts the variation of impedance with battery
curs from a near-full threshold to EDV2. The desired capacity. R1 is programmed in EDV R1 Rate Factor
near-full threshold window, NFW (mAh), is programmed EE 0x7c–0x7d.
in Near Full in EE 0x55.
NFW (8) n T0 adjusts the variation of impedance with battery
Near Full = temperature. T0 is programmed in EDV T0 Rate
2
Factor EE 0x76–0x77.
EDV Discharge Rate and Temperature Com- n TC adjusts the variation of impedance for cold
pensation temperature (T < 23°C). TC is programmed in EDV
TC EE 0x07.
If EDV compensation is enabled, the bq2060A calculates
battery voltage to determine EDV0, EDV1, and EDV2 FCY is the factor that adjusts for changing cell imped-
thresholds as a function of battery capacity, tempera- ance as the battery pack is cycled:
ture, and discharge load. (See Figures 7 and 8.) The gen-
eral equation for EDV0, EDV1, and EDV2 calculation is FCY = f(A0, CycleCount()) (12)

(9) where A0 is the EDV aging factor that is stored in EDV


A0 Factor EE 0x06. It should be set to 0 for most appli-
EDV0,1,2 = EMF ∗ FBL - |ILOAD| ∗ R0 ∗ FTZ ∗ FCY cations.
where Typical values for the EDV compensation factors for a
n EMF is a no-load battery voltage that is higher than Li-Ion 3s3p 18650 pack are
the highest EDV threshold that is computed. EMF is EMF = 11550
programmed in mV in EMF/EDV1 EE 0x74–0x75.
T0 = 4475
n ILOAD is the current discharge load.
C0 = 235
FBL is the factor that adjusts the EDV voltage for bat-
C1 = 0
tery capacity and temperature to match the no-load
characteristics of the battery. R0 = 5350

FBL = f ( C0, C + C1, T ) (10) R1 = 250


A0 = 0
where C (0%, 3%, or Battery Low % for EDV0, EDV1,
and EDV2, respectively) and C0 are the capacity related TC = 3
EDV adjustment factors. C0 is programmed in the
The graphs in Figures 7 and 8 show the calculated
lower 11 bits of EDV C0 Factor/EDV2 EE 0x78–79.
EDV0, EDV1, and EDV2 thresholds versus capacity us-
The Residual Capacity Factor is stored in the upper 5 ing the typical compensation values for different
bits of EE 0x78–0x79. temperatures and loads for a Li-Ion 3s3p 18650 pack.
The compensation values vary widely for different cell

33
bq2060A

types and manufacturers and must be matched exactly Charge Efficiency = 10 ∗ (EFF% - 74.5) (15)
to the unique characteristics for optimal performance.
where
Overload Current Threshold 74.5 ≤ EFF% ≤ 100
The Overload Current threshold is a 16-bit value stored ERR% is encoded in Efficiency Reduction Rate EE 0x65
in EE 0x46-0x47 in mA units. according to the following equation:
Midrange Capacity Corrections ERR% (16)
Efficiency Reduction Rate =
0.0125
Three voltage-based thresholds, VOC25 EE 0x6c–0x6d,
VOC50 EE 0x6e–0x6f, and VOC75 EE 0x70–0x71, are where
u se d t o t e s t t he ac c ur a c y o f t he R M b a s ed on
open-circuit pack voltages. These thresholds are stored 0 ≤ ERR% ≤ 3.19
in the EEPROM in 2’s complement of voltage in mV. The Efficiency Drop Off Percentage is stored in 2’s com-
The values represent the open-circuit battery voltage at plement of percent.
which the battery capacity should correspond to the as-
sociated state of charge for each threshold. The bq2060A also adjusts the efficiency factors for tem-
perature. TEFF% defines the percent efficiency reduc-
Self-Discharge Rate tion per degree C over 25°C. TEFF% is encoded in Effi-
ciency Temperature Compensation EE 0x63 according to
The nominal self-discharge rate, %PERDAY (% per day), the following equation
is programmed in an 8-bit value Self-Discharge Rate EE
0x53 by the following relation: (17)
TEFF% *1.6
Efficiency Temperature Compensation =
æ 52.73 ö 0.0125
(13)
Self - Discharge Rate = 256 -ç ÷
where
è %PERDAY ø
0 ≤ TEFF% ≤1.99
Light Load Current
The bq2060A applies all four charge-compensation fac-
The amount of light load current in mA, ILEAK, used tors when the CHEM bit in Pack Configuration is not
for compensation is stored in Light Discharge Current in set denoting a nickel pack.
EE 0x2b as follows:
(18)
ILEAK * 1024 (14)
Light Discharge Current = Effective Charge Efficiency Reduction (nickel only)
45
= ERR%[RSOC() – EFF%] + TEFF%[T(°C) – 25]
ILEAK is between 0.044 and 11.2mA.
where
Charge Efficiency
RSOC() ≥ EFF% and T ≥ 25°C
The bq2060A uses four charge-efficiency factors to com-
pensate for charge acceptance. These factors are coded If CHEM is set denoting a Li-Ion pack, the bq2060A ap-
in Charge Efficiency, Efficiency Reduction Rate, Effi- plies only the value coded in High Charge Efficiency and
ciency Drop Off Percentage, and Efficiency Temperature makes no other adjustments for charge acceptance.
Compensation.
The bq2060A applies the efficiency factor, EFF%, when
Charge Limits and Termination
RelativeStateOfCharge() is less than the value coded in Techniques
Efficiency Drop Off Percentage EE 0x64. When
RelativeStateOfCharge() is greater than or equal to the Charging Voltage
value coded in Efficiency Drop Off Percentage, EFF%
and ERR% determine the charge efficiency rate. ERR% The 16-bit value, Charging Voltage EE 0x0a-0x0b pro-
defines the percent efficiency reduction per percentage grams the ChargingVoltage() value broadcast to a Smart
point of RelativeStateOfCharge() over Efficiency Drop Charger. It is also sets the base value for determining
Off Percentage. EFF% is encoded in High Charge overvoltage conditions during charging and voltage com-
Efficiency EE 0x4d according to the following equation: pliance during a constant-voltage charging methodology.
It is stored in mV.

34
bq2060A

Battery Low %= 7%, Load = 500mA Battery Low % =7%, Temperature = 35 C


11500 11500

11000 11000
EDV2
EDV2
10500
10500 EDV1
EDV1 10000

Voltage (mV)
Voltage (mV)

10000
9500
9500
9000
9000 35C/500mA
8500
45C/500mA 35C/1A
8500 8000 35C/2A
20C/500mA
8000 7500
EDV0
7500 7000
10 9 8 7 6 5 4 3 2 1 0 10 9 8 7 6 5 4 3 2 1 0
% Capacity % Capacity

Figure 7. EDV Calculations vs. Capacity Figure 8. EDV Calculations vs. Capacity
for Various Temperatures for Various Loads

Overvoltage Fast Charging Current, Maintenance Charging Current,


and Pre-Charge Current are stored in mA.
The 8-bit value, Overvoltage Margin EE 0x48, sets the
limit over ChargingVoltage() that is to be considered as Charge Suspension
an overvoltage charge-suspension condition. The volt-
age in mV above the ChargingVoltage(), VOVM, that During charge, the bq2060A compares the current to the
should trigger a charge suspend is encoded in ChargingCurrent() plus the value IOIM. If the pack is
Overvoltage Margin as follows: charged at a current above the ChargingCurrent() plus
IOIM, the bq2060A sets ChargingCurrent() to zero to
VOVM (19) stop charging. IOIM is programmed in the EEPROM
Overvoltage Margin=
16 value, Overcurrent Margin, encoded as follows:
VOVM is between 0 and 4080mV. IOIM (20)
Overcurrent Margin=
16
Charging Current
Overcurrent Margin EE 0x49 may be used to program
ChargingCurrent() values are either broadcast to a IOIM values of 0 to 4080mA in 16mA steps.
Level 2 Smart Battery Charger or read from the
bq2060A by a Level 3 Smart Battery Charger. The The desired temperature threshold for charge suspen-
bq2060A sets the value of ChargingCurrent(), depending sion, MAXTEMP, may be programmed between 45°C
on the charge requirements and charge conditions of the and 69°C in 1.6°C steps. Charge-suspension tempera-
pack. ture is increased by 16° above the programmed value of
bit 5 in Miscellaneous Option EE 0x08 is set. MaxT
When fast charge is allowed, the bq2060A sets DeltaT EE 0x45 (most significant nibble) is stored in a
ChargingCurrent() to the rate programmed in Fast 4-bit value as shown:
Charging Current EE 0x1a-0x1b.
é 69 - MAXTEMP ù (21)
When fast charge terminates, the bq2060A sets MaxT =ê ú
ë 1.6 û
ChargingCurrent() to zero and then to the Maintenance
Charging Current EE 0x1c-0x1d when the termination The bq2060A suspends fast charge when fast charge
condition ceases. continues past full by the amount programmed in Maxi-
When Voltage() is less than EDV0, the bq2060A sets mum Overcharge EE 0x2e-0x2f. Maximum Overcharge
ChargingCurrent() to Pre-charge Current EE 0x1e-0x1f. is programmed in 2s complement form of charge in
Typically this rate is larger than the maintenance rate mAh.
to charge a deeply depleted pack up to the point where it
may be fast charged.

35
bq2060A

FULLY_CHARGED Bit Clear Threshold Hold-off Hold-off Hold-off Hold-off


Time Time (s) Time Time (s)
The bq2060A clears the FULLY_CHARGED bit in 00 320 08 160
BatteryStatus() when RelativeStateOfCharge() reaches
the value, Fully Charged Clear % EE 0x4c. Fully 01 300 09 140
Charged Clear % is an 8-bit value and is stored as a 2’s 02 280 0a 120
complement of percent. 03 260 0b 100
04 240 0c 80
Fast Charge Termination Percentage 05 220 0d 60
The bq2060A sets RM to a percentage of FCC on charge 06 200 0e 40
termination if the CSYNC bit is set in the Pack Configu-
07 180 0f 20
ration register. The percentage of FCC is stored in Fast
Charge Termination % in EE 0x4b. The value is stored
in 2’s complement of percent. Current Taper Termination Characteristics
Cycle Count Threshold Two factors in the EEPROM set the current taper termi-
nation for Li-Ion battery packs. The two coded locations
Cycle Count Threshold 0x3c–0x3d sets the number of are Current Taper Qual Voltage EE 0x4f and Current
mAh that must be removed from the battery to incre- Taper Threshold EE 0x4e. Current taper termination oc-
ment CycleCount(). Cycle Count Threshold is a 16-bit curs during charging when the pack voltage is above the
value stored in 2’s complement of charge in mAh. charging voltage minus CELLV (mV) and the charging
current is below the threshold coded in Current Taper
∆T/Dt Rate Programming Threshold for at least 80s.
The ∆T portion of the ∆T/∆t rate is programmed in
DeltaT, the low nibble of MaxT DeltaT EE 0x45 (least CELLV (23)
Current Taper Qual Voltage =
significant nibble). The ∆t portion is programmed in 2
DeltaT Time EE 0x4e. RS* i
Current Taper Threshold = (24)
[DeltaT * 2 + 16] / 10 é ° Cù (22) 0.5625
∆T/∆t =
[320 - DeltaT Time* 20]ê ë sú û
where i = the desired current termination threshold in
DeltaT D(°C) DeltaT_Time mA, and RS = VFC sense resistor in ohms.
t (s)
0 1.6 00 320
1 1.8 01 300 Pack Options
2 2.0 02 280
3 2.2 03 260 Pack Configuration
4 2.4 04 240 Pack Configuration EE 0x3f contains bit-programmable
5 2.6 05 220 features.
6 2.8 06 200
7 3.0 07 180 b7 b6 b5 b4 b3 b2 b1 b0
8 3.2 08 160 DMODE SEAL CSYNC CEDV VCOR CHEM LCC1 LCC0
9 3.4 09 140
a 3.6 0a 120
DMODE
b 3.8 0b 100
c 4.0 0c 80 The DMODE bit determines whether the LED outputs
d 4.2 0d 60 will indicate AbsoluteStateOfCharge() or
e 4.4 0e 40 RelativeStateOfCharge()
f 4.6 0f 20 0 LEDs reflect AbsoluteStateOfCharge()

DT/Dt Hold-off Timer Programming 1 LEDs reflect RelativeStateOfCharge()

The hold-off timer is programmed in the lower nibble of


Holdoff Time EE 0x4f. The hold-off time is 320s minus
20 times the Holdoff Time value.

36
bq2060A

SEAL LCC0 and LCC1


The SEAL bit determines the SMBus access state of the The LCC0 and LCC1 bits configure the cell voltage in-
bq2060A on reset puts (VCELL1–4).
0 SMBus commands (0x00–0xff) are accessible for No. of Series Cell Voltage
both read and write. Cells LCC1 LCC0 Inputs
1 SMBus read access is limited to commands NA 00 VCELL4 = Cell Stack
(0x05–0x1c) and (0x20–0x23). SMBus read/write VCELL1 = Cell 1
access is limited to commands (0x00–0x04), (0x2f), 2 01
VCELL2 = Cell 2
and (0x3c–0x3f).
VCELL1 = Cell 1
CSYNC 3 10 VCELL2 = Cell 2
VCELL3 = Cell 3
In usual operation of the bq2060A, the CSYNC bit is set VCELL1 = Cell 1
so that the coulomb counter is adjusted when a fast VCELL2 = Cell 2
charge termination is detected. In some applications, es- 4 11
VCELL3 = Cell 3
pecially those where an externally controlled charger is VCELL4 = Cell 4
used, it may be desirable NOT to adjust the coulomb
counter. In these cases the CSYNC bit should be cleared.
For Li-Ion packs with individual measurements, LCC0
0 The bq2060A does not alter RM at the time of a and LCC1 define the number of series elements and
valid charge termination. their voltage measurement inputs. In each case (2, 3, or
1 The bq2060A updates RM with a programmed per- 4), the bq2060A uses the highest numbered cell voltage
centage of FCC at a valid charge termination. input to measure the pack voltage measurement as re-
turned with Voltage(). For nickel chemistries or Li-Ion
CEDV without single-cell measurements, LCC0 and LCC1
must be set to 00. VCELL4 is the pack voltage input for
The CEDV bit determines whether the bq2060A imple- this programming.
ments automatic EDV compensation to calculate the
EDV0, EDV1 and EDV2 thresholds base on rate, tem-
perature, and capacity. If reset, the bq2060A uses the
Remaining Time and Capacity Alarms
fixed values programmed in EEPROM for EDV0, EDV1 Remaining Time Alarm in EE 0x02–0x03 and Re-
and EDV2. If set the bq2060A calculates EDV0, EDV1 maining Capacity Alarm in 0x04–0x05set the alarm
and EDV2. thresholds used in the SMBus command codes 0x01 and
0 EDV compensation disabled 0x02, respectively. Remaining Time Alarm is stored in
minutes and Remaining Capacity Alarm in mAh.
1 EDV compensation enabled
Secondary Protection Limits for Li-Ion
VCOR
The VCOR bit enables the midrange voltage correction The cell undervoltage (VUV) and overvoltage (VOV) limits
algorithm. When set, the bq2060A compares the pack are programmed in Cell Undervoltage/Over Voltage EE
voltage to RM and may adjust RM according to the val- 0x4a according to the equations:
ues programmed in VOC25, VOC50, and VOC75. VOV - 4096 (25)
Cell Undervoltage/Overvoltage (lower) =
0 Midrange corrections disabled 32

1 Midrange corrections enabled VUV - 2048 (26)


Cell Undervoltage/Overvoltage (upper) =
64
CHEM
The CHEM bit configures the bq2060A for nickel packs
(NiCd or NiMH) or Li-Ion packs. When set the bq2060A
employs the configuration parameters in EEPROM des-
ignated for Li-Ion. When not set, the bq2060A employs
the configuration parameters designated for nickel.
0 The bq2060A uses nickel configuration parameters.
1 The bq2060A uses Li-Ion configuration parameters.

37
bq2060A

Cell Under/Over Cell Under/Over HIT


Voltage VUV Voltage VOV
(upper nibble) (mV) (lower nibble) (mV) The HIT bit controls the available temperature range
0 2048 0 4096 for maximum temperature.
1 2112 1 4128 0 Maximum temperature set in normal 45–85°C
2 2176 2 4160 range
3 2240 3 4192 1 Maximum temperature set in elevated 61–85°C
4 2304 4 4224 range
5 2368 5 4256
Cycle Count Initialization
6 2432 6 4288
7 2496 7 4320 Cycle Count EE 0x0e–0x0f stores the initial value for
8 2560 8 4352 the CycleCount() function. It should be programmed to
0x0000.
9 2624 9 4384
a 2688 a 4416 Control Modes
b 2752 b 4448
Control Mode EE0x51 contains additional bit program-
c 2816 c 4480
mable features.
d 2880 d 4512
e 2944 e 4544
b7 b6 b5 b4 b3 b2 b1 b0
f 3008 f 4576
NDF - HPE CPE LED SC - SM
S afety O ve r t e m p e r a t ur e E E 0 x 0 9 s et s S a f et y
Overtemperature Threshold (SOT) level for the CFC pin. NDF
It can be programmed for a threshold of 69° to 85°C.
This range is increased by 16° if Miscellaneous Options The NDF bit disables the digital filter during discharge
bit 5 = 1. if the SMBC and SMBD lines are high.

SafetyOvertemperature = (94.5 - SOT ) * 10 0 Digital filter enabled all the time


if Miscellaneous Options bit 5 = 0. 1 Digital filter disabled if SMBC and SMBD are high
SafetyOvertemperature = (110.5 - SOT ) * 10
HPE
if Miscellaneous Options bit 5 = 1.
The HPE bit enables/disables PEC transmissions to the
Miscellaneous Options Smart Battery host for master mode alarm messages.
M iscella ne o us O p t i o ns E E 0 x 0 8 c on t a in s 0 No PEC byte on alarm warning to host
bit-programmable options. Bits 0–4 should be pro-
grammed to zero. 1 PEC byte on alarm warning to host

b7 b6 b5 b4 b3 b2 b1 b0 CPE
NE1 SOT HIT 0 0 0 0 0 The CPE bit enables/disables PEC transmissions to the
Smart Battery Charger for master mode alarm mes-
sages.
NE1
0 No PEC byte on broadcasts to charger
The NE1 bit disables the EDV1 threshold.
0 EDV1 enabled 1 PEC byte on broadcasts to charger

1 EDV1 disabled LED


SOT The LED bit configures the bq2060A for 4 or 5 LED indi-
cation
The SOT bit controls override of the CFC pin for Safety
Overtemperature threshold. 0 Selects the 5 LED indication mode
0 CFC control with overvoltage, maximum tempera-
ture, and safety overtemperature. 1 Selects the 4 LED indication mode

1 CFC control; only with safety overtemperature.

38
bq2060A

SC The bq2060A compute the node voltages as follows:

The SC bit enables learning cycle optimization for a (27)


Smart Charger or independent charge é VCELL1*32768 ù é ADC Voltage Gain ù
Vn1=ê + ADC Offsetú*ê ú
0 Learning cycle optimized for independent charger ë 1250 ûë 65536 û

1 Learning cycle optimized for Smart Charger (28)


é VCELL2*32768 ù
SM Vn2=ê + ADC Offsetú*
ë 1250 û
The SM bit enables/disables master mode broadcasts by é ADC Voltage Gain + 8* (Cell 2 CalibrationFactor) ù
the bq2060A ê ú
ë 65536 û
0 Broadcasts to host and charger enabled
(29)
1 Broadcasts to host and charger disabled
é VCELL3*32768 ù
Vn3=ê + ADC Offsetú *
I f t h e S M bi t i s s e t , m o d i f i c a ti o ns t o b it s in ë 1250 û
BatteryMode() will not re-enable broadcasts.
[ ADC Voltage Gain + 8* (Cell 3 CalibrationFactor) ]*

Measurement Calibration é 2 ù
ê
ë 65536ú
û
ADC (30)
To describe how the bq2060A calculates reported battery é VCELL4*32768 ù
and individual cell voltages, the following abbreviations Vn4=ê + ADC Offsetú*
ë 1250 û
and designations are used:
[ ADC Voltage Gain + 8* (Cell 4 CalibrationFactor)]*
VCELL 1–4 = voltages at the input pins of the
bq2060A é 2 ù
ê
ë ú
65536û
VCELL1–4 = reported cell voltages
Note: With LCC1-LCC0 = 00, Cell 4 Calibration
Vnl–4 = voltages at the different series nodes in the
Factor = 0.
battery
ADC Offset adjusts the ADC reading for voltage and cur-
Voltage() = reported battery voltage
rent measurements. ADC Offset is a signed 8-bit value
Vsr = voltage across the sense resistor that cancels offset present in the circuit with no poten-
tial or current flow. ADC Offset is typically set between
The reported voltages measurements, Voltage() and -20 and 20.
VCELL1–4, may be calibrated by adjusting five 8- or
16-bit registers in EEPROM: ADC Offset in EE0x62, The bq2060A uses the computed node voltages to calcu-
ADC Voltage Gain in EE 0x66–0x67, Cell 2 Calibration late the reported voltages. It does not compute reported
Factor in EE 0x63, Cell 3 Calibration Factor in EE 0x64, cell voltages greater than the selected number of nodes.
and Cell 4 Calibration Factor in EE 0x65. If no individual cell voltages are to be measured,
LCC1–LCC0 should be set to 00 and the top of the bat-
The bq2060A first computes the node voltages Vnl, Vn2, tery stack should be connected to a voltage divider to
Vn3, and Vn4. The node voltages are inputs to the volt- the VCELL4 input.
age dividers to the VCELL1 through VCELL4 input pins
of the bq2060A. The bq2060A computes node voltages to The bq2060A computes the reported voltages as follows:
calculate the five reported voltages by the bq2060A:
Voltage() = Vn4 (LCC1–LCC0 = 11 or 00) - Vsr
Voltage(), VCELL1, VCELL2, VCELL3, and VCELL4.
Voltage() = Vn3 (LCC1–LCC0 = 10) - Vsr
An ADC Voltage Gain factor of 20,000 is the nominal
value when using the recommended cell-voltage division Voltage() = Vn2 (LCC1–LCC0 = 01) - Vsr
ratios of 16:1 on the VCELL4 and VCELL3 inputs and
8:1 on the VCELL2 and VCELL1 inputs. The bq2060A VCELL4 = Vn4 - Vn3
subtracts the voltage across the sense resistor from the
VCELL3 = Vn3 - Vn2
measurements so that the reported voltages reflect the
cell-stack voltages only. VCELL2 = Vn2 - Vn1
VCELL1 = Vn1 - Vsr

39
bq2060A

Current Constants and String Data


The bq2060A scales Current() to mA units by the 16-bit
value ADC Sense Resistor Gain in EE 0x68–0x69.
EEPROM Constants
Adjusting ADC Sense Resistor Gain from its nominal Check/Byte 1 EE 0x00–0x01 and Check Byte 2 EE
value provides a method to calibrate the current read- 0x7e–0x7f must be programmed to 0x3c7f and 0xa55a,
ings for variances in the ADC gain, internal voltage ref- respectively.
erence, and sense resistor value. The bq2060A calculates
Current() by Specification Information
(31) Specification Information EE 0x14–0x15 stores the de-
fault value for the SpecificationInfo() function. It is
Current() = stored in EEPROM in the same format as the data re-
[(ADC Reading + ADC Offset)* ADC Sense Resistor Gain] turned by the SepcificationInfo().
16,384 Manufacture Date
Manufacture Date EE 0x16–0x17 stores the default
The nominal value for ADC Sense Resistor Gain is given value for the ManufactureDate() function. It is stored in
by equation (6). EEPROM in the same format as the data returned by
the ManufactureDate().
VFC
Serial Number
To calibrate the coulomb counting measurement for VFC Serial Number EE 0x18–0x19 stores the default value
gain errors and sense resistor tolerance, the value of for the SerialNumber() function. It is stored in
VFC Sense Resistor Gain EE 0x6a-0x6b may be adjusted EEPROM in the same format as the data returned by
from its nominal value. the SerialNumber().
The nominal value of VFC Sense Resistor Gain is given
by equation (5). Manufacturer Name Data
The bq2060A VFC circuit can introduce a signal opposite Manufacturer Name Length EE 0x20 stores the length
in sign from that of the inherent device and circuit offset of t h e d es ir ed s t r in g t h a t is r et u r n ed b y t h e
to cancel this error. The offset calibration routine is ini- ManufacturerName() function. Locations EE 0x21–0x2a
tiated with commands to ManufacturerAccess(). store the characters for ManufacturerName() in ASCII
code.Device Name Data
The bq2060A calculates the offset with the calibration
routine and stores the calibration value using the least Device Name Length EE 0x30 stores the length of the
21 bits of VFC Offset in EE 0x5e–0x60. desired string that is returned by the DeviceName()
function. Locations EE 0x31–0x37 store the characters
The least 20 bits store the offset calibration value for DeviceName() in ASCII code.
(OCV). The sign of the offset calibration value is positive
if the 21st bit is 0. Device Chemistry Data
0.6V (32) Device Chemistry Length EE 0x40 stores the length of
OCV =
VFCuOffset19 – 0 t h e d es ir ed s t r in g t h a t is r et u r n ed b y t h e
DeviceChemistry() function. Locations EE 0x41–0x44
Temperature store the characters for DeviceChemistry() in ASCII
The bq2060A uses Temperature Offset in EE 0x61 to cali- code.
brate the Temperature() function for offset. The required
offset adjustment, TOFF (C), sets Temperature Offset ac- Manufacturers Data Length
cording to the equation Manufacturers Data Length EE 0x50 stores the length
Temperature Offset = TOFF * 10 (33) of the desired number of bytes that is returned by the
ManufacturersData() function. It should be set to 7.
where
-12.8 ≤ TOFF ≤12.7

40
bq2060A

Absolute Maximum Ratings


Symbol Parameter Minimum Maximum Unit Notes
VCC—Supply voltage Relative to VSS -0.3 +6.0 V
VIN–All other pins Relative to VSS -0.3 +6.0 V
Operating
TOPR -20 +70 °C Commercial
temperature
Note: Permanent device damage may occur if Absolute Maximum Ratings are exceeded. Functional operation
should be limited to the Recommended DC Operating Conditions detailed in this data sheet. Exposure to
conditions beyond the operational limits for extended periods of time may affect device reliability.

DC Electrical Characteristics (VCC = 2.7–3.7V, TOPR = -20–70°C, Unless Otherwise Noted)


Symbol Parameter Conditions Minimum Typical Maximum Unit

VCC Supply voltage 2.7 3.3 3.7 V


ICC Operating current VOUT inactive 180 235 µA
ISLP Low-power storage mode current 1.5V < VCC < 3.7V 5 10 µA
ILVOUT VOUT leakage current VOUT inactive -0.2 0.2 µA
VOUT active,
IVOUT VOUT source current -5.0 mA
VOUT = VCC - 0.6V
Output voltage low: LED1–LED5, CFC,
IOLS = 5mA 0.4 V
VOLS DFC
Output voltage low: THON, CVON IOLS = 5mA 0.36 V
VIL Input voltage low DISP -0.3 0.8 V
VIH Input voltage high DISP 2.0 VCC + 0.3 V
Output voltage low SMBC, SMBD,
VOL IOL = 1.0mA 0.4 V
HDQ16, ESCL, ESDA
Input voltage low SMBC, SMBD,
VILS -0.3 0.8 V
HDQ16, ESCL, ESDA
Input voltage high SMBC, SMBD,
VIHS 1.7 6.0 V
HDQ16, ESCL, ESDA
Input voltage range VCELL1–4, TS,
VAI VSS - 0.3 1.25 V
SRC
IRB RBI data-retention input current VRBI > 3.0V, VCC < 2.0V 10 50 nA
VRBI RBI data-retention voltage 1.3 V
ZAI1 Input impedance: SR1, SR2 0–1.25V 10 MΩ
ZAI2 Input impedance: VCELL1–4, TS, SRC 0–1.25V 5 MΩ
Note: ZAI specifications are reference numbers based on process data.

41
bq2060A

VFC Characteristics (VCC = 3.1–3.5V, TOPR = 0–70°C Unless Otherwise Noted))


Symbol Parameter Conditions Minimum Typical Maximum Unit
VSR Input voltage range, VSR2 VSR = VSR2 – VSR1 –0.25 +0.25 V
and VSR1
VSR2 = VSR1, autocorrection
VSROS VSR input offset –250 –50 250 µV
disabled
VSRCOS Calibrated offset –16 +16 µV
Supply voltage gain
RMVCO VCC = 3.3V 0.8 1.2 %/V
coefficient (see Note)
Slope for TOPR = –20 to 70°C –0.09 +0.09 %/°C
Temperature gain Total Deviation TOPR = –20 to 70°C –1.6 0.1 %
RMTCO
coefficient (see note) Slope for TOPR = –0 to 50°C –0.05 +0.05 %/°C
Total Deviation TOPR = –0 to 50°C –0.6 0.1 %
Integral nonlinearity
INL TOPR = 0–50C 0.21 %
error
Note: RMTCO total deviation is from the nominal gain at 25°C.

REG Characteristics (TOPR = -20–70°C)


Symbol Parameter Conditions Minimum Typical Maximum Unit
JFET: Rds(on) < 150Ω
VRO REG controlled output voltage 3.1 3.3 3.5 V
Vgs (off) < –3.0V @ 10µA
IREG REG output current 1.0 µA

42
bq2060A

SMBus AC Specifications (VCC = 2.7–3.7V, TOPR = -20–70°C, Unless Otherwise Noted)


Symbol Parameter Conditions Min. Typ. Max. Unit
FSMB SMBus operating frequency Slave mode, SMBC 50% duty cycle 10 100 kHz
Master mode, no clock low slave
FMAS SMBus master clock frequency 51.2 kHz
extend
Bus free time between start and
TBUF 4.7 µs
stop
THD:STA Hold time after (repeated) start 4.0 µs
TSU:STA Repeated start setup time 4.7 µs
TSU:STO Stop setup time 4.0 µs
Receive mode 0 ns
THD:DAT Data hold time
Transmit mode 300 ns
TSU:DAT Data setup time 250 ns
TTIMEOUT Error signal/detect See Note 1 25 35 ms
TLOW Clock low period 4.7 µs
THIGH Clock high period See Note 2 4.0 50 µs
Cumulative clock low slave
TLOW:SEXT See Note 3 25 ms
extend time
Cumulative clock low master
TLOW:MEXT See Note 4 10 ms
extend time
Notes: 1. The bq2060A will time out when any clock low exceeds TTIMEOUT.
2. THIGH Max. is minimum bus idle time. SMBC = SMBD = 1 for t > 50µs will cause reset of any
transaction involving bq2060A that is in progress.
3. TLOW:SEXT is the cumulative time a slave device is allowed to extend the clock cycles in one message
from initial start to the stop. The bq2060A typically extends the clock only 20µs as a slave in the read
byte or write byte protocol.
4. TLOW:MEXT is the cumulative time a master device is allowed to extend the clock cycles in one mes-
sage from initial start to the stop. The bq2060A typically extends the clock only 20µs as a master in
the read byte or write byte protocol.

HDQ16 AC Specifications (VCC = 2.7–3.7V, TOPR = -20–70 C, Unless Otherwise Noted)


Symbol Parameter Conditions Min. Typ. Max. Unit
tCYCH Cycle time, host to bq2060A (write) 190 - - µs
tCYCB Cycle time, bq2060A to host (read) 190 205 250 µs
Start hold time, host to bq2060A
tSTRH 5 - - ns
(write)
tSTRB Start hold time, bq2060A to host (read) 32 - - µs
tDSU Data setup time - - 50 µs
tDSUB Data setup time - - 50 µs
tDH Data hold time 100 - - µs
tDV Data valid time 80 - - µs
tSSU Stop setup time - - 145 µs
tSSUB Stop setup time - - 145 µs
tRSPS Response time, bq2060A to host 190 - 320 µs
tB Break time 190 - - µs
tBR Break recovery time 40 - - µs

43
bq2060A

SMBus Timing Data

HDQ16 Break Timing

tB tBR

TD201803.eps

HDQ16 Host to bq2060A

Write "1"

Write "0"
tSTRH
tDSU
tDH
tSSU
tCYCH

HDQ16 bq2060A to Host


Read "1"

Read "0"

tSTRB
tDSUB
tDV
tSSUB
tCYCB

TD201805.eps

44
bq2060A

Ordering Information
bq2060A-E619 DBQ
Tape and Reel
blank = tubes
R = tape and reel

Package Option:
DBQ = 28-pin SSOP

Device:
bq2060A SBS v1.1-Compliant Gas Gauge IC

45
IMPORTANT NOTICE
Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to dis-
continue any product or service without notice, and advise customers to obtain the latest version of rele-
vant information to verify, before placing orders, that information being relied on is current and complete.
All products are sold subject to the terms and conditions of sale supplied at the time of order acknowl-
edgement, including those pertaining to warranty, patent infringement, and limitation of liability.

TI warrants performance of its semiconductor products to the specifications applicable at the time of
sale in accordance with TI’s standard warranty. Testing and other quality control techniques are utilized
to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each de-
vice is not necessarily performed, except those mandated by government requirements.

CERTAIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS MAY INVOLVE POTENTIAL


RISKS OF DEATH, PERSONAL INJURY, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE
(“CRITICAL APPLICATIONS”). TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, AUTHO-
RIZED, OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT DEVICES OR SYSTEMS
OR OTHER CRITICAL APPLICATIONS. INCLUSION OF TI PRODUCTS IN SUCH APPLICATIONS IS
UNDERSTOOD TO BE FULLY AT THE CUSTOMER’S RISK.

In order to minimize risks associated with the customer’s applications, adequate design and operating
safeguards must be provided by the customer to minimize inherent or procedural hazards.

TI assumes no liability for applications assistance or customer product design. TI does not warrant or
represent that any license, either express or implied, is granted under any patent right, copyright, mask
work right, or other intellectual property right of TI covering or relating to any combination, machine, or
process in which such semiconductor products or services might be or are used. TI’s publication of in-
formation regarding any third party’s products or services does not constitute TI’s approval, warranty or
endorsement thereof.

Copyright © 2002, Texas Instruments Incorporated

46

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy