BQ27500_08 [TI]

System-Side Impedance Track⑩ Fuel Gauge; 系统端Impedance Track ™电量计
BQ27500_08
型号: BQ27500_08
厂家: TEXAS INSTRUMENTS    TEXAS INSTRUMENTS
描述:

System-Side Impedance Track⑩ Fuel Gauge
系统端Impedance Track ™电量计

仪表
文件: 总39页 (文件大小:813K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
1 INTRODUCTION  
1.1 FEATURES  
1.2 APPLICATIONS  
Battery Fuel Gauge for 1-Series Li-Ion  
Applications  
Smartphones  
PDAs  
Resides on System Main Board  
Digital Still and Video Cameras  
Handheld Terminals  
MP3 or Multimedia Players  
Works With Embedded or Removable  
Battery Packs  
Two Varieties  
bq27500: Uses PACK+, PACK–, and T  
Battery Terminals  
1.3 DESCRIPTION  
bq27501: Works With Battery ID Resistor in  
Battery Pack  
The Texas Instruments bq27500/01 system-side  
Li-Ion battery fuel gauge is  
peripheral that provides fuel gauging for single-cell  
Li-Ion battery packs. The device requires little system  
microcontroller  
bq27500/01 resides on the system main board, and  
manages an embedded battery (non-removable) or a  
removable battery pack.  
a
microcontroller  
Microcontroller Peripheral Provides:  
Accurate Battery Fuel Gauging  
Internal Temperature Sensor for System  
Temperature Reporting  
firmware  
development.  
The  
Battery Low Interrupt Warning  
Battery Insertion Indicator  
Battery ID Detection  
96 Bytes of Non-Volatile Scratch-Pad  
FLASH  
The bq27500/01 uses the patented Impedance  
Track™ algorithm for fuel gauging, and provides  
information such as remaining battery capacity  
(mAh), state-of-charge (%), run-time to empty (min.),  
battery voltage (mV), and temperature (°C).  
Battery Fuel Gauge Based on Patented  
Impedance Track™ Technology  
Models the Battery Discharge Curve for  
Accurate Time-to-Empty Predictions  
Battery fuel gauging with the bq27500 requires only  
PACK+ (P+), PACK– (P–), and Thermistor (T)  
connections to  
embedded battery. The bq27501 works with  
identification resistors in battery packs to gauge  
batteries of different fundamental chemistries and/or  
significantly different rated capacities.  
Automatically Adjusts for Battery Aging,  
Battery Self-Discharge, and  
a
removable battery pack or  
Temperature/Rate Inefficiencies  
Low-Value Sense Resistor (10 mor Less)  
I2C™ Interface for Connection to System  
Microcontroller Port  
12-Pin 2,5-mm × 4-mm SON Package  
TYPICAL APPLICATION  
Host System  
LDO  
Single-Cell Li-Ion  
Battery Pack  
Voltage  
Sense  
PACK+  
RID  
Battery  
Low  
Warning  
RID  
Sense*  
Protection  
IC  
Temp  
Sense  
Power  
Management  
Controller  
I2C  
T
bq27500/1  
CHG  
DSG  
Battery  
Good  
FETs  
PACK–  
Current  
Sense  
*bq27501 Only  
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas  
Instruments semiconductor products and disclaimers thereto appears at the end of this document.  
Impedance Track is a trademark of Texas Instruments.  
I2C is a trademark of Philips Electronics.  
PRODUCTION DATA information is current as of publication date.  
Products conform to specifications per the terms of the Texas  
Instruments standard warranty. Production processing does not  
necessarily include testing of all parameters.  
Copyright © 2007–2008, Texas Instruments Incorporated  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
Contents  
INTRODUCTION .......................................... 1  
1
2
3
4.1 DATA COMMANDS .................................. 9  
4.2 DATA FLASH INTERFACE ......................... 16  
1.1 FEATURES ........................................... 1  
1.2 APPLICATIONS ...................................... 1  
1.3 DESCRIPTION ....................................... 1  
DEVICE INFORMATION................................. 3  
2.1 AVAILABLE OPTIONS ............................... 3  
2.2 PIN DIAGRAMS ...................................... 3  
2.3 TERMINAL FUNCTIONS............................. 3  
ELECTRICAL SPECIFICATIONS ...................... 4  
3.1 ABSOLUTE MAXIMUM RATINGS ................... 4  
4.3  
MANUFACTURER INFORMATION BLOCKS ...... 17  
4.4 ACCESS MODES ................................... 17  
4.5 SEALING/UNSEALING DATA FLASH.............. 17  
4.6 DATA FLASH SUMMARY........................... 18  
FUNCTIONAL DESCRIPTION ........................ 20  
5.1 FUEL GAUGING .................................... 20  
5.2 IMPEDANCE TRACK™ VARIABLES............... 20  
5
5.3  
DETAILED DESCRIPTION OF DEDICATED PINS. 23  
3.2  
RECOMMENDED OPERATING CONDITIONS...... 4  
5.4 TEMPERATURE MEASUREMENT................. 26  
5.5 OVERTEMPERATURE INDICATION............... 26  
3.3 DISSIPATION RATINGS ............................. 5  
3.4 POWER-ON RESET.................................. 5  
5.6  
CHARGING AND CHARGE-TERMINATION  
INDICATION......................................... 26  
3.5  
INTERNAL TEMPERATURE SENSOR  
CHARACTERISTICS ................................. 5  
5.7 POWER MODES.................................... 27  
5.8 POWER CONTROL................................. 29  
5.9 AUTOCALIBRATION................................ 30  
APPLICATION-SPECIFIC INFORMATION.......... 31  
3.6 HIGH-FREQUENCY OSCILLATOR .................. 5  
3.7 LOW-FREQUENCY OSCILLATOR .................. 5  
3.8  
INTEGRATING ADC (COULOMB COUNTER)  
CHARACTERISTICS ................................. 6  
ADC (TEMPERATURE AND CELL  
6
6.1  
BATTERY PROFILE STORAGE AND SELECTION 31  
3.9  
6.2  
APPLICATION-SPECIFIC FLOW AND CONTROL. 31  
MEASUREMENT) CHARACTERISTICS............. 6  
7
8
COMMUNICATIONS  
3.10 DATA FLASH MEMORY CHARACTERISTICS ...... 6  
............................................................. 33  
3.11 I2C-COMPATIBLE INTERFACE COMMUNICATION  
TIMING CHARACTERISTICS ........................ 6  
GENERAL DESCRIPTION .............................. 8  
7.1 I2C INTERFACE..................................... 33  
REFERENCE SCHEMATICS .......................... 34  
8.1 SCHEMATIC ........................................ 34  
4
2
Contents  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
2 DEVICE INFORMATION  
2.1 AVAILABLE OPTIONS  
TAPE and  
REEL  
QUANTITY  
FIRMWARE  
PART NUMBER  
COMMUNICATION  
PACKAGE(2)  
TA  
VERSION(1)  
FORMAT  
bq27500DRZR  
V1.06  
3000  
250  
bq27500DRZT  
bq27500DRZR-V100  
V1.08  
3000  
250  
12-pin, 2,5-mm × 4-mm  
–40°C to 85°C  
I2C  
SON  
bq27500DRZT-V100  
bq27501DRZR  
V1.08  
3000  
250  
bq27501DRZT  
(1) Ordering the device with the latest firmware version is recommended. To check the fiirmware revision and Errata list see SLUZ015  
(2) For the most current package and ordering information, see the Package Option Addendum at the end of this document, or see the TI  
website at www.ti.com.  
2.2 PIN DIAGRAMS  
12  
11  
10  
9
1
2
3
4
5
6
BAT_GD  
SCL  
BAT_LOW  
BI/TOUT  
TS  
12 BAT_GD  
BAT_LOW  
BI/TOUT  
TS  
1
2
3
4
5
6
SCL  
11  
SDA  
SDA  
NC  
10  
9
bq27501  
bq27500  
RID  
BAT  
BAT  
SRN  
SRP  
8
SRN  
SRP  
8
VCC  
VSS  
VCC  
VSS  
7
7
2.3 TERMINAL FUNCTIONS  
TERMINAL  
TYPE(1)  
DESCRIPTION  
Cell-voltage measurement input. ADC input  
bq27500 bq27501  
NAME  
BAT  
PIN NO.  
PIN NO.  
4
4
I
Battery-good indicator. Active-low by default, though polarity can be configured through  
the [BATG_POL] of Operation Configuration. Open-drain output  
BAT_GD  
BAT_LOW  
BI/TOUT  
12  
1
12  
1
O
Battery-low output indicator. Active-high by default, though polarity can be configured  
through the [BATL_POL] in Operation Configuration. Push-pull output  
O
Battery-insertion detection input. Power pin for pack thermistor network. Thermistor  
multiplexer control pin. Open-drain I/O. Use with pullup resistor > 1 M(1.8 Mtypical).  
2
2
I/O  
NC  
9
9
I
No connection (bq27500)  
RID  
Resistor ID input (bq27501). Analog input with current sourcing capabilities  
Slave I2C serial communications clock input line for communication with system (master).  
Open-drain I/O. Use with 10-kpullup resistor (typical).  
Slave I2C serial communications data line for communication with system (master).  
Open-drain I/O. Use with 10-kpullup resistor (typical).  
SCL  
SDA  
SRN  
SRP  
11  
10  
8
11  
10  
8
I
I/O  
IA  
IA  
Analog input pin connected to the internal coulomb counter where SRN is nearest the  
System VSS connection. Connect to 5-mto 20-msense resistor.  
Analog input pin connected to the internal coulomb counter, where SRP is nearest the  
PACK– connection. Connect to 5-mto 20-msense resistor.  
7
7
TS  
3
5
3
5
IA  
P
Pack thermistor voltage sense (use 103AT-type thermistor). ADC input  
VCC  
Processor power input. Decouple with 0.1-µF capacitor, minimum.  
Device ground. Electrically connected to the IC exposed thermal pad (do not use thermal  
pad as primary ground. Connect thermal pad to Vss via a PCB trace).  
VSS  
6
6
P
(1) I = Digital input, O = Digital output, I/O = Digital input/output, IA = Analog input, P = Power connection  
Submit Documentation Feedback  
DEVICE INFORMATION  
3
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
3 ELECTRICAL SPECIFICATIONS  
3.1 ABSOLUTE MAXIMUM RATINGS  
over operating free-air temperature range (unless otherwise noted)(1)  
PARAMETER  
VALUE  
–0.3 to 2.75  
–0.3 to 6  
UNIT  
V
VCC  
VIOD  
VBAT  
VI  
Supply voltage range  
Open-drain I/O pins (BI/TOUT, SDA, SDL, BAT_GD)  
BAT input pin  
V
–0.3 to 6  
Input voltage range to all other pins (TS, SRP, SRN, RID [bq27501 only], NC  
[bq27500 only])  
–0.3 to VCC + 0.3  
V
Human-body model (HBM), BAT pin  
Human-body model (HBM), all other pins  
Operating free-air temperature range  
Functional temperature range  
1.5  
ESD  
kV  
2
TA  
–40 to 85  
–40 to 100  
–65 to 150  
°C  
°C  
°C  
TF  
Tstg  
Storage temperature range  
(1) Stresses beyond those listed under "absolute maximum ratings" may cause permanent damage to the device. These are stress ratings  
only, and functional operation of the device at these or any other conditions beyond those indicated under "recommended operating  
conditions" is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.  
3.2 RECOMMENDED OPERATING CONDITIONS  
TA = 25°C, VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
Supply voltage  
TEST CONDITIONS  
MIN  
TYP  
MAX UNIT  
VCC  
ICC  
2.4  
2.5  
2.6  
0.4  
V
Fuel gauge in NORMAL mode.  
ILOAD > Sleep Current  
Normal operating-mode current  
Low-power storage-mode current  
Hibernate operating-mode current  
100  
15  
1
µA  
Fuel gauge in SLEEP mode.  
ILOAD < Sleep Current  
ISLP  
µA  
Fuel gauge in HIBERNATE mode.  
ILOAD < Hibernate Current  
IHIB  
VOL  
VOH(PP)  
VOH(OD)  
µA  
Output voltage, low (SDA, BAT_LOW,  
BI/TOUT)  
IOL = 0.5 mA  
V
Output voltage, high (BAT_LOW)  
IOH = –1 mA  
VCC – 0.5  
VCC – 0.5  
V
V
External pullup resistor connected to  
VCC  
Output voltage, high (SDA, SCL, BI/TOUT)  
Input voltage, low (SDA, SCL)  
Input voltage, low (BI/TOUT)  
–0.3  
–0.3  
1.2  
0.6  
0.6  
6
VIL  
BAT INSERT CHECK MODE active  
BAT INSERT CHECK MODE active  
V
Input voltage, high (SDA, SCL)  
Input voltage, high (BI/TOUT)  
VIH(OD)  
1.2  
6
CIN  
Input capacitance (SDA, SCL, BI/TOUT)  
Input voltage range (TS, RID [bq27501 only])  
Input voltage range (BAT)  
35  
pF  
V
VA1  
VA2  
VA3  
tPUCD  
VSS – 0.125  
VSS – 0.125  
VSS – 0.125  
2
5
V
Input voltage range (SRP, SRN)  
Power-up communication delay  
0.125  
V
250  
ms  
4
ELECTRICAL SPECIFICATIONS  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
3.3 DISSIPATION RATINGS  
T
A 40°C  
DERATING FACTOR  
RθJA  
PACKAGE  
POWER RATING  
TA > 40°C  
12-pin DRZ(1)  
482 mW  
5.67 mW/°C  
176°C/W  
(1) This data is based on using a four-layer JEDEC high-K board with the exposed die pad connected to a Cu pad on the board. The board  
pad is connected to the ground plane by a 2- × 2-via matrix.  
3.4 POWER-ON RESET  
TA = –40°C to 85°C, typical values at TA = 25°C and VBAT = 3.6 V (unless otherwise noted)  
PARAMETER  
TEST CONDITIONS  
MIN  
2.09  
45  
TYP  
2.2  
MAX  
2.31  
185  
UNIT  
V
VIT+  
Positive-going battery voltage input at VCC  
Hysteresis voltage  
VHYS  
115  
mV  
3.5 INTERNAL TEMPERATURE SENSOR CHARACTERISTICS  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
TEST CONDITIONS  
MIN TYP  
MAX  
UNIT  
GTEMP  
Temperature sensor voltage gain  
–2  
mV/°C  
3.6 HIGH-FREQUENCY OSCILLATOR  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
TEST CONDITIONS  
MIN  
TYP  
MAX  
UNIT  
fOSC  
Operating frequency  
2.097  
MHz  
TA = 0°C to 60°C  
–2% 0.38%  
–3% 0.38%  
2%  
3%  
fEIO  
Frequency error(1) (2)  
Start-up time(3)  
TA = –20°C to 70°C  
TA = –40°C to 85°C  
–4.5% 0.38% 4.5%  
2.5  
tSXO  
5
ms  
(1) The frequency error is measured from 2.097 MHz.  
(2) The frequency drift is included and measured from the trimmed frequency at VCC = 2.5 V, TA = 25°C.  
(3) The start-up time is defined as the time it takes for the oscillator output frequency to be within ±3% of typical oscillator frequency.  
3.7 LOW-FREQUENCY OSCILLATOR  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
TEST CONDITIONS  
MIN  
TYP  
32.768  
0.25%  
0.25%  
0.25%  
MAX UNIT  
kHz  
fLOSC  
Operating frequency  
TA = 0°C to 60°C  
–1.5%  
–2.5%  
–4%  
1.5%  
fLEIO  
Frequency error(1) (2)  
Start-up time(3)  
TA = –20°C to 70°C  
TA = –40°C to 85°C  
2.5%  
4%  
tLSXO  
500  
µs  
(1) The frequency drift is included and measured from the trimmed frequency at VCC = 2.5 V, TA = 25°C.  
(2) The frequency error is measured from 32.768 kHz.  
(3) The start-up time is defined as the time it takes for the oscillator output frequency to be within ±3% of typical oscillator frequency.  
Submit Documentation Feedback  
ELECTRICAL SPECIFICATIONS  
5
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
3.8 INTEGRATING ADC (COULOMB COUNTER) CHARACTERISTICS  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
Input voltage range (VSR = V(SRN) – V(SRP)  
Conversion time  
TEST CONDITIONS  
MIN  
TYP  
MAX  
UNIT  
V
VSR  
)
–0.125  
0.125  
tSR_CONV  
Single conversion  
1
s
Resolution  
14  
15  
bits  
µV  
VSR_OS  
INL  
Input offset  
10  
Integral nonlinearity error  
Effective input resistance(1)  
Input leakage current(1)  
±0.007 ±0.034  
% FSR  
MΩ  
µA  
ZSR_IN  
ISR_LKG  
2.5  
0.3  
(1) Specified by design. Not tested in production.  
3.9 ADC (TEMPERATURE AND CELL MEASUREMENT) CHARACTERISTICS  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
Input voltage range  
Conversion time  
Resolution  
TEST CONDITIONS  
MIN  
TYP  
MAX  
1
UNIT  
V
VADC_IN  
–0.2  
tADC_CONV  
125  
15  
ms  
14  
bits  
mV  
VADC_OS  
ZADC1  
Input offset  
1
Effective input resistance (TS, RID  
[bq27501 only])(1)  
8
8
MΩ  
bq27500/1 not measuring cell voltage  
bq27500/1 measuging cell voltage  
MΩ  
kΩ  
µA  
ZADC2  
Effective input resistance (BAT)(1)  
Input leakage current(1)  
100  
IADC_LKG  
0.3  
(1) Specified by design. Not tested in production.  
3.10 DATA FLASH MEMORY CHARACTERISTICS  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
Data retention(1)  
Flash-programming write cycles(1)  
Word programming time(1)  
Flash-write supply current(1)  
TEST CONDITIONS  
MIN  
10  
TYP  
MAX  
UNIT  
Years  
Cycles  
ms  
tON  
20,000  
tWORDPROG  
ICCPROG  
2
5
10  
mA  
(1) Specified by design. Not production tested  
3.11 I2C-COMPATIBLE INTERFACE COMMUNICATION TIMING CHARACTERISTICS  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
SCL/SDA rise time  
TEST CONDITIONS  
MIN TYP  
MAX  
1
UNIT  
µs  
tr  
tf  
SCL/SDA fall time  
300  
ns  
tw(H)  
tw(L)  
tsu(STA)  
td(STA)  
tsu(DAT)  
SCL pulse duration (high)  
SCL pulse duration (low)  
Setup for repeated start  
Start to first falling edge of SCL  
Data setup time  
4
4.7  
4.7  
4
µs  
µs  
µs  
µs  
250  
ns  
6
ELECTRICAL SPECIFICATIONS  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
I2C-COMPATIBLE INTERFACE COMMUNICATION TIMING CHARACTERISTICS (continued)  
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)  
PARAMETER  
TEST CONDITIONS  
Receive mode  
Transmit mode  
MIN TYP  
MAX  
UNIT  
0
300  
4
th(DAT)  
Data hold time  
ns  
tsu(STOP)  
t(BUF)  
Setup time for stop  
µs  
µs  
kHz  
s
Bus free time between stop and start  
Clock frequency  
4.7  
10  
fSCL  
100  
tBUSERR  
Bus error time-out  
17.3  
21.2  
Figure 3-1. I2C-Compatible Interface Timing Diagrams  
Submit Documentation Feedback  
ELECTRICAL SPECIFICATIONS  
7
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
4 GENERAL DESCRIPTION  
The bq27500/1 accurately predicts the battery capacity and other operational characteristics of a single  
Li-based rechargeable cell. It can be interrogated by a system processor to provide cell information, such  
as state-of-charge (SOC), time-to-empty (TTE) and time-to-full (TTF).  
Information is accessed through a series of commands, called Standard Commands. Further capabilities  
are provided by the additional Extended Commands set. Both sets of commands, indicated by the general  
format Command( ), are used to read and write information contained within the bq27500/1 control and  
status registers, as well as its data flash locations. Commands are sent from system to gauge using the  
bq27500/1 I2C serial communications engine, and can be executed during application development, pack  
manufacture, or end-equipment operation.  
Cell information is stored in the bq27500/1 in non-volatile flash memory. Many of these data flash  
locations are accessible during application development. They cannot be accessed directly during  
end-equipment operation. Access to these locations is achieved by either use of the bq27500/1  
companion evaluation software, through individual commands, or through a sequence of data-flash-access  
commands. To access a desired data flash location, the correct data flash subclass and offset must be  
known.  
The bq27500/1 provides 96 bytes of user-programmable data flash memory, partitioned into three 32-byte  
blocks: Manufacturer Info Block A, Manufacturer Info Block B, and Manufacturer Info Block C. This  
data space is accessed through a data flash interface. For specifics on accessing the data flash, see  
Section 4.3, Manufacturer Information Blocks.  
The key to the high-accuracy fuel gauging prediction of the bq27500/1 is Texas Instruments' proprietary  
Impedance Track™ algorithm. This algorithm uses cell measurements, characteristics, and properties to  
create state-of-charge predictions that can achieve less than 1% error across a wide variety of operating  
conditions and over the lifetime of the battery.  
The bq27500/1 measures charge/discharge activity by monitoring the voltage across a small-value series  
sense resistor (5 mto 20 m, typ.) located between the system Vss and the battery PACK– terminal.  
When a cell is attached to the bq27500/1, cell impedance is computed, based on cell current, cell  
open-circuit voltage (OCV), and cell voltage under loading conditions.  
The bq27500/1 must use an NTC thermistor Semitec 103AT for temperature measurement, or can also  
be configured to use its internal temperature sensor. The bq27500/1 uses temperature to monitor the  
battery-pack environment, which is used for fuel gauging and cell protection functionality.  
To minimize power consumption, the bq27500/1 has several power modes: NORMAL, SLEEP,  
HIBERNATE, and BAT INSERT CHECK. The bq27500/1 passes automatically between these modes,  
depending upon the occurrence of specific events, though a system processor can initiate some of these  
modes directly. More details can be found in Section 5.7, Power Modes.  
NOTE  
FORMATTING CONVENTIONS IN THIS DOCUMENT:  
Commands: italics with parentheses and no breaking spaces, e.g., RemainingCapacity( ).  
Data flash: italics, bold, and breaking spaces, e.g., Design Capacity  
Register bits and flags: brackets and italics, e.g., [TDA]  
Data flash bits: brackets, italics and bold, e.g., [LED1]  
Modes and states: ALL CAPITALS, e.g., UNSEALED mode.  
8
GENERAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
4.1 DATA COMMANDS  
4.1.1 STANDARD DATA COMMANDS  
The bq27500/1 uses a series of 2-byte standard commands to enable system reading and writing of  
battery information. Each standard command has an associated command-code pair, as indicated in  
Table 4-1. Because each command consists of two bytes of data, two consecutive I2C transmissions must  
be executed both to initiate the command function, and to read or write the corresponding two bytes of  
data. Additional options for transferring data, such as spooling, are described in Section 7, I2C Interface.  
Standard commands are accessible in NORMAL operation. Read/write permissions depend on the active  
access mode, SEALED or UNSEALED (for details on the SEALED and UNSEALED states, see  
Section 4.4, Access Modes).  
Table 4-1. Standard Commands  
NAME  
COMMAND CODE  
0x00 / 0x01  
0x02 / 0x03  
0x04 / 0x05  
0x06 / 0x07  
0x08 / 0x09  
0x0a / 0x0b  
0x0c / 0x0d  
0x0e / 0x0f  
0x10 / 0x11  
0x12 / 0x13  
0x14 / 0x15  
0x16 / 0x17  
0x18 / 0x19  
0x1a / 0x1b  
0x1c / 0x1d  
0x1e / 0x1f  
0x20 / 0x21  
0x22 / 0x23  
0x24 / 0x25  
0x26 / 0x27  
0x28 / 0x29  
0x2a / 0x2b  
0x2c / 0x2d  
UNITS  
N/A  
SEALED ACCESS  
UNSEALED ACCESS  
Control( )  
AtRate( )  
CNTL  
AR  
R/W  
R/W  
R
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
mA  
AtRateTimeToEmpty( )  
Temperature( )  
ARTTE  
TEMP  
VOLT  
FLAGS  
NAC  
FAC  
RM  
Minutes  
0.1 K  
mV  
R
Voltage( )  
R
Flags( )  
N/A  
R
NominalAvailableCapacity( )  
FullAvailableCapacity( )  
RemainingCapacity( )  
FullChargeCapacity( )  
AverageCurrent( )  
TimeToEmpty( )  
mAh  
R
mAh  
R
mAh  
R
FCC  
AI  
mAh  
R
mA  
R
TTE  
Minutes  
Minutes  
mA  
R
TimeToFull( )  
TTF  
R
StandbyCurrent( )  
StandbyTimeToEmpty( )  
MaxLoadCurrent( )  
MaxLoadTimeToEmpty( )  
AvailableEnergy( )  
AveragePower( )  
SI  
R
STTE  
MLI  
Minutes  
mA  
R
R
MLTTE  
AE  
Minutes  
mWh  
mW  
R
R
AP  
R
TimeToEmptyAtConstantPower( )  
Reserved  
TTECP  
RSVD  
CC  
Minutes  
N/A  
R
R
CycleCount( )  
Counts  
%
R
StateOfCharge( )  
SOC  
R
Submit Documentation Feedback  
GENERAL DESCRIPTION  
9
 
 
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
4.1.1.1 Control( ): 0x00/0x01  
Issuing a Control( ) command requires a subsequent 2-byte subcommand. These additional bytes specify  
the particular control function desired. The Control( ) command allows the system to control specific  
features of the bq27500/1 during normal operation and additional features when the bq27500/1 is in  
different access modes, as described in Table 4-2.  
Table 4-2. Control( ) Subcommands  
CNTL  
DATA  
SEALED  
ACCESS  
CNTL FUNCTION  
CONTROL_STATUS  
DESCRIPTION  
0x0000  
0x0001  
0x0002  
0x0003  
Yes  
Yes  
Yes  
Yes  
Reports the status of DF checksum, hibernate, IT, etc.  
Reports the device type (eg: "bq27500")  
DEVICE_TYPE  
FW_VERSION  
HW_VERSION  
Reports the firmware version on the device type  
Reports the hardware version of the device type  
Enables a data flash checksum to be generated and  
reports on a read  
DF_CHECKSUM  
0x0004  
No  
RESET_DATA  
Reserved  
0x0005  
0x0006  
0x0007  
Yes  
No  
Returns reset data  
Not to be used  
PREV_MACWRITE  
Yes  
Returns previous MAC command code  
Reports the chemical identifier of the Impedance Track™  
configuration  
CHEM_ID  
0x0008  
Yes  
BOARD_OFFSET  
CC_INT_OFFSET  
WRITE_OFFSET  
SET_HIBERNATE  
CLEAR_HIBERNATE  
SEALED  
0x0009  
0x000a  
0x000b  
0x0011  
0x0012  
0x0020  
0x0021  
0x0022  
0x0040  
0x0041  
No  
No  
No  
Yes  
Yes  
No  
No  
No  
No  
No  
Forces the device to measure and store the board offset  
Forces the device to measure the internal CC offset  
Forces the device to store the internal CC offset  
Forces CONTROL_STATUS [HIBERNATE] to 1  
Forces CONTROL_STATUS [HIBERNATE] to 0  
Places the bq27500/1 in SEALED access mode  
Enables the Impedance Track™ algorithm  
Reports the instruction flash checksum  
IT_ENABLE  
IF_CHECKSUM  
CAL_MODE  
Places the bq27500/1 in calibration mode  
RESET  
Forces a full reset of the bq27500/1  
4.1.1.1.1 CONTROL_STATUS: 0x0000  
Instructs the fuel gauge to return status information to control addresses 0x00/0x01. The status word  
includes the following information.  
Table 4-3. CONTROL_STATUS Bit Definitions  
Flags( )  
High byte  
Low byte  
bit7  
bit6  
FAS  
bit5  
SS  
bit4  
CSV  
bit3  
CCA  
bit2  
BCA  
bit1  
bit0  
HIBERNATE  
SLEEP  
LDMD  
RUP_DIS  
VOK  
QEN  
FAS = Status bit indicating the bq27500/1 is in FULL ACCESS SEALED state. Active when set.  
SS = Status bit indicating the bq27500/1 is in SEALED state. Active when set.  
CSV = Status bit indicating a valid data flash checksum has been generated. Active when set.  
CCA = Status bit indicating the bq27500/1 coulomb counter calibration routine is active. Active when set.  
BCA = Status bit indicating the bq27500/1 board calibration routine is active. Active when set.  
HIBERNATE = Status bit indicating a request for entry into HIBERNATE from SLEEP mode. True when set. Default is 0.  
SLEEP = Status bit indicating the bq27500/1 is in SLEEP mode. True when set.  
LDMD = Status bit indicating the bq27500/1 Impedance Track™ algorithm is using constant-power mode. True when set. Default is 0  
(constant-current mode).  
RUP_DIS = Status bit indicating the bq27500/1 Ra table updates are disabled. Updates disabled when set.  
VOK = Status bit indicating the bq27500/1 voltages are okay for Qmax. True when set.  
QEN = Status bit indicating the bq27500/1 Qmax updates enabled. True when set.  
10  
GENERAL DESCRIPTION  
Submit Documentation Feedback  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
4.1.1.1.2 DEVICE_TYPE: 0x0001  
Instructs the fuel gauge to return the device type to addresses 0x00/0x01.  
4.1.1.1.3 FW_VERSION: 0x0002  
Instructs the fuel gauge to return the firmware version to addresses 0x00/0x01.  
4.1.1.1.4 HW_VERSION: 0x0003  
Instructs the fuel gauge to return the hardware version to addresses 0x00/0x01.  
4.1.1.1.5 DF_CHECKSUM: 0x0004  
Instructs the fuel gauge to compute the checksum of the data flash memory. Once the checksum has  
been calculated and stored, CONTROL_STATUS [CVS] is set. The checksum value is written and  
returned to addresses 0x00/0x01 (UNSEALED mode only). The checksum is not calculated in SEALED  
mode; however, the checksum value can still be read.  
4.1.1.1.6 RESET_DATA: 0x0005  
Instructs the fuel gauge to return the reset data to addresses 0x00/0x01, with the low byte (0x00) being  
the number of full resets and the high byte (0x01) the number of partial resets.  
4.1.1.1.7 PREV_MACWRITE: 0x0007  
Instructs the fuel gauge to return the previous command written to addresses 0x00/0x01.  
4.1.1.1.8 CHEM_ID: 0x0008  
Instructs the fuel gauge to return the chemical identifier for the Impedance Track™ configuration to  
addresses 0x00/0x01.  
4.1.1.1.9 BOARD_OFFSET: 0x0009  
Instructs the fuel gauge to compute the coulomb counter offset with internal short and then without internal  
short applied across the SR inputs. The difference between the two measurements is the board offset.  
After a delay of approximately 32 seconds, this offset value is returned to addresses 0x00/0x01 and  
written to data flash. The coulomb counter offset is also written to data flash. The CONROL STATUS  
[BCA] is also set. The user must prevent any charge or discharge current from flowing during the process.  
This function is only available when the fuel gauge is UNSEALED. When SEALED, this command only  
reads back the board-offset value stored in data flash.  
4.1.1.1.10 CC_INT_OFFSET: 0x000A  
Instructs the fuel gauge to compute the coulomb counter offset with internal short applied across the SR  
inputs. The offset value is returned to addresses 0x00/0x01 after a delay of approximately 16 seconds.  
This function is only available when the fuel gauge is UNSEALED. When SEALED, this command only  
reads back the CC_INT_OFFSET value stored in data flash.  
4.1.1.1.11 WRITE_OFFSET: 0x000B  
Control data of 0x000b causes the fuel gauge to write the coulomb counter offset to data flash.  
4.1.1.1.12 SET_HIBERNATE: 0x0011  
Instructs the fuel gauge to force the CONTROL_STATUS [HIBERNATE] bit to 1. This allows the gauge to  
enter the HIBERNATE power mode after the transition to SLEEP power state is detected. The  
[HIBERNATE] bit is automatically cleared upon exiting from HIBERNATE mode.  
4.1.1.1.13 CLEAR_HIBERNATE: 0x0012  
Instructs the fuel gauge to force the CONTROL_STATUS [HIBERNATE] bit to 0. This prevents the gauge  
from entering the HIBERNATE power mode after the transition to the SLEEP power state is detected. It  
can also be used to force the gauge out of HIBERNATE mode.  
Submit Documentation Feedback  
GENERAL DESCRIPTION  
11  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
4.1.1.1.14 SEALED: 0x0020  
Instructs the fuel gauge to transition from the UNSEALED state to the SEALED state. The fuel gauge must  
always be set to the SEALED state for use in end equipment.  
4.1.1.1.15 IT_ENABLE: 0x0021  
This command forces the fuel gauge to begin the Impedance Track™ algorithm, sets the active  
UpdateStatus n location to 0x01 and causes the [VOK] and [QEN] flags to be set in the  
CONTROL_STATUS register. [VOK] is cleared if the voltages are not suitable for a Qmax update. Once  
set, [QEN] cannot be cleared. This command is only available when the fuel gauge is UNSEALED.  
4.1.1.1.16 IF_CHECKSUM: 0x0022  
This command instructs the fuel gauge to compute the instruction flash checksum. In UNSEALED mode,  
the checksum value is returned to addresses 0x00/0x01. The checksum is not calculated in SEALED  
mode; however, the checksum value can still be read.  
4.1.1.1.17 CAL_MODE: 0x0040  
This command instructs the fuel gauge to enter calibration mode. This command is only available when  
the fuel gauge is UNSEALED.  
4.1.1.1.18 RESET: 0x0041  
This command instructs the fuel gauge to perform a full reset. This command is only available when the  
fuel gauge is UNSEALED.  
4.1.1.2 AtRate( ): 0x02/0x03  
The AtRate( ) read-/write-word function is the first half of a two-function command set used to set the  
AtRate value used in calculations made by the AtRateTimeToEmpty( ) function. The AtRate( ) units are in  
mA.  
The AtRate( ) value is a signed integer, with negative values interpreted as a discharge current value. The  
AtRateTimeToEmpty( ) function returns the predicted operating time at the AtRate value of discharge. The  
default value for AtRate( ) is zero and forces AtRate( ) to return 65,535. Both the AtRate( ) and  
AtRateTimeToEmpty( ) commands must only be used in NORMAL mode.  
4.1.1.3 AtRateTimeToEmpty( ): 0x04/0x05  
This read-word function returns an unsigned integer value of the predicted remaining operating time if the  
battery is discharged at the AtRate( ) value in minutes with a range of 0 to 65,534. A value of 65,535  
indicates AtRate( ) = 0. The fuel gauge updates AtRateTimeToEmpty( ) within 1 s after the system sets the  
AtRate( ) value. The fuel gauge automatically updates AtRateTimeToEmpty( ) based on the AtRate( )  
value every 1 s. Both the AtRate( ) and AtRateTimeToEmpty( ) commands must only be used in NORMAL  
mode.  
4.1.1.4 Temperature( ): 0x06/0x07  
This read-word function returns an unsigned integer value of the temperature in units of 0.1 K measured  
by the fuel gauge and has a range of 0 to 6,553.5 K.  
4.1.1.5 Voltage( ): 0x08/0x09  
This read-word function returns an unsigned integer value of the measured cell-pack voltage in mV with a  
range of 0 to 6,000 mV.  
4.1.1.6 Flags( ): 0x0a/0x0b  
This read-word function returns the contents of the fuel-gauge status register, depicting the current  
operating status.  
12  
GENERAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
Table 4-4. Flags Bit Definitions  
bit7  
OTC  
bit6  
OTD  
bit5  
bit4  
bit3  
bit2  
bit1  
FC  
bit0  
CHG  
DSG  
High byte  
Low byte  
CHG_INH  
BAT_DET  
XCHG  
SOC1  
OCV_GD  
WAIT_ID  
SOCF  
OTC = Overtemperature in charge condition is detected. True when set.  
OTD = Overtemperature in discharge condition is detected. True when set.  
CHG_INH = Charge inhibit: unable to begin charging (temperature outside the range [Charge Inhibit Temp Low, Charge Inhibit Temp  
High]). True when set.  
XCHG = Charge suspend alert (temperature outside the range [Suspend Temp Low, Suspend Temp High]). True when set.  
FC = Fully charged. Set when charge termination condition is met. True when set.  
CHG = (Fast) charging allowed. True when set.  
OCV_GD = Good OCV measurement taken. True when set.  
WAIT_ID = Waiting to identify inserted battery. True when set.  
BAT_DET = Battery detected. True when set.  
SOC1 = State-of-charge threshold 1 (SOC1 Set Threshold) reached. True when set.  
SOCF = State-of-charge threshold final (SOCF Set Threshold) reached. True when set.  
DSG = Discharging detected. True when set.  
4.1.1.7 NominalAvailableCapacity( ): 0x0c/0x0d  
This read-only command pair returns the uncompensated (no or light load) battery capacity remaining.  
Units are mAh per LSB.  
4.1.1.8 FullAvailableCapacity( ): 0x0e/0x0f  
This read-only command pair returns the uncompensated (no or light load) capacity of the battery when  
fully charged. Units are mAh per LSB. FullAvailableCapacity( ) is updated at regular intervals, as specified  
by the IT algorithm.  
4.1.1.9 RemainingCapacity( ): 0x10/0x11  
This read-only command pair returns the compensated battery capacity remaining. Units are mAh per  
LSB.  
4.1.1.10 FullChargeCapacity( ): 0x12/13  
This read-only command pair returns the compensated capacity of the battery when fully charged. Units  
are mAh per LSB. FullChargeCapacity( ) is updated at regular intervals, as specified by the IT algorithm.  
4.1.1.11 AverageCurrent( ): 0x14/0x15  
This read-only command pair returns a signed integer value that is the average current flow through the  
sense resistor. It is updated every 1 second. Units are mA per LSB.  
4.1.1.12 TimeToEmpty( ): 0x16/0x17  
This read-only function returns an unsigned integer value of the predicted remaining battery life at the  
present rate of discharge, in minutes. A value of 65,535 indicates battery is not being discharged.  
4.1.1.13 TimeToFull( ): 0x18/0x19  
This read-only function returns an unsigned integer value of predicted remaining time until the battery  
reaches full charge, in minutes, based upon AverageCurrent( ). The computation accounts for the taper  
current time extension from the linear TTF computation based on a fixed AverageCurrent( ) rate of charge  
accumulation. A value of 65,535 indicates the battery is not being charged.  
4.1.1.14 StandbyCurrent( ): 0x1a/0x1b  
This read-only function returns a signed integer value of the measured standby current through the sense  
resistor. The StandbyCurrent( ) is an adaptive measurement. Initially it reports the standby current  
programmed in Initial Standby, and after spending several seconds in standby, reports the measured  
standby current.  
Submit Documentation Feedback  
GENERAL DESCRIPTION  
13  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
The register value is updated every 1 second when the measured current is above the Deadband (3-mA  
default) and is less than or equal to 2 × Initial Standby. The first and last values that meet this criteria are  
not averaged in, because they may not be stable values. To approximate a 1-minute time constant, each  
new StandbyCurrent( ) value is computed as follows:  
StandbyCurrent( )NEW = (239/256) × StandbyCurrent( )OLD + (17/256) × AverageCurrent( ).  
4.1.1.15 StandbyTimeToEmpty( ): 0x1c/0x1d  
This read-only function returns an unsigned integer value of the predicted remaining battery life at the  
standby rate of discharge, in minutes. The computation uses Nominal Available Capacity (NAC), the  
uncompensated remaining capacity, for this computation. A value of 65,535 indicates battery is not being  
discharged.  
4.1.1.16 MaxLoadCurrent( ): 0x1e/0x1f  
This read-only function returns a signed integer value, in units of mA, of the maximum load conditions.  
The MaxLoadCurrent( ) is an adaptive measurement which is initially reported as the maximum load  
current programmed in Initial Max Load Current. If the measured current is ever greater than Initial Max  
Load Current, then MaxLoadCurrent( ) updates to the new current. MaxLoadCurrent( ) is reduced to the  
average of the previous value and Initial Max Load Current whenever the battery is charged to full after  
a previous discharge to an SOC less than 50%. This prevents the reported value from maintaining an  
unusually high value.  
4.1.1.17 MaxLoadTimeToEmpty( ): 0x20/0x21  
This read-only function returns an unsigned integer value of the predicted remaining battery life at the  
maximum load current discharge rate, in minutes. A value of 65,535 indicates that the battery is not being  
discharged.  
4.1.1.18 AvailableEnergy( ): 0x22/0x23  
This read-only function returns an unsigned integer value of the predicted charge or energy remaining in  
the battery. The value is reported in units of mWh.  
4.1.1.19 AveragePower( ): 0x24/0x25  
This read-word function returns an signed integer value of the average power during battery charging and  
discharging. A value of 0 indicates that the battery is not being discharged. The value is reported in units  
of mW.  
4.1.1.20 TimeToEmptyAtConstantPower( ): 0x26/0x27  
This read-only function returns an unsigned integer value of the predicted remaining operating time if the  
battery is discharged at the AveragePower( ) value in minutes. A value of 65,535 indicates  
AveragePower( ) = 0. The fuel gauge automatically updates TimeToEmptyatContantPower( ) based on the  
AveragePower( ) value every 1 s.  
4.1.1.21 CycleCount( ): 0x2a/0x2b  
This read-only function returns an unsigned integer value of the number of cycles the battery has  
experienced with a range of 0 to 65,535. One cycle occurs when accumulated discharge CC Threshold.  
4.1.1.22 StateOfCharge( ): 0x2c/0x2d  
This read-only function returns an unsigned integer value of the predicted remaining battery capacity  
expressed as a percentage of FullChargeCapacity( ), with a range of 0 to 100%.  
4.1.2 EXTENDED DATA COMMANDS  
Extended commands offer additional functionality beyond the standard set of commands. They are used in  
the same manner; however, unlike standard commands, extended commands are not limited to 2-byte  
words. The number of commands bytes for a given extended command ranges in size from single to  
multiple bytes, as specified in Table 4-5. For details on the SEALED and UNSEALED states, see  
Section 4.4, Access Modes.  
14  
GENERAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
Table 4-5. Extended Data Commands  
COMMAND  
CODE  
SEALED  
UNSEALED  
NAME  
UNITS  
ACCESS(1) (2)  
ACCESS(1) (2)  
Reserved  
RSVD  
DCAP  
0x34...0x3b  
0x3c / 0x3d  
0x3e  
N/A  
mAh  
N/A  
N/A  
N/A  
N/A  
N/A  
N/A  
N/A  
N/A  
N/A  
R
R
R
R
DesignCapacity( )  
DataFlashClass( ) (2)  
DataFlashBlock( ) (2)  
BlockData( )  
DFCLS  
N/A  
R/W  
R
R/W  
R/W  
R/W  
R/W  
R/W  
R
DFBLK  
0x3f  
DFD  
0x400x5f  
0x60  
BlockDataCheckSum( )  
BlockDataControl( )  
DeviceNameLength( )  
DeviceName( )  
DFDCKS  
DFDCNTL  
DNAMELEN  
DNAME  
APPSTAT  
RSVD  
R/W  
N/A  
R
0x61  
0x62  
0x63...0x69  
0x6a  
R
R
ApplicationStatus( )  
Reserved  
R
R
0x6b...0x7f  
R
R
(1) SEALED and UNSEALED states are entered via commands to CNTL 0x00/0x01.  
(2) In sealed mode, data flash CANNOT be accessed through commands 0x3e and 0x3f.  
4.1.2.1 DesignCapacity( ): 0x3c/0x3d  
SEALED and UNSEALED Access: This command returns the theoretical or nominal capacity of a new  
pack. The value is stored in Design Capacity and is expressed in mAh. This is intended to be the  
theoretical or nominal capacity of a new pack, but has no bearing on the operation of the fuel gauge  
functionality.  
4.1.2.2 DataFlashClass( ): 0x3e  
UNSEALED Access: This command sets the data flash class to be accessed. The class to be accessed  
must be entered in hexadecimal.  
SEALED Access: This command is not available in SEALED mode.  
4.1.2.3 DataFlashBlock( ): 0x3f  
UNSEALED Access: This command sets the data flash block to be accessed. When 0x00 is written to  
BlockDataControl( ), DataFlashBlock( ) holds the block number of the data flash to be read or written.  
Example: writing a 0x00 to DataFlashBlock( ) specifies access to the first 32-byte block, a 0x01 specifies  
access to the second 32-byte block, and so on.  
SEALED Access: This command directs which data flash block is accessed by the BlockData( ) command.  
Writing a 0x00 to DataFlashBlock( ) specifies that the BlockData( ) command transfers authentication data.  
Issuing a 0x01, 0x02, or 0x03 instructs the BlockData( ) command to transfer Manufacturer Info Block A,  
B, or C, respectively.  
4.1.2.4 BlockData( ): 0x400x5f  
This command range is the 32-byte data block used to access Manufacturer Info Block A, B, or C.  
UNSEALED access is read/write. SEALED access is read only.  
4.1.2.5 BlockDataChecksum( ): 0x60  
UNSEALED Access: This byte contains the checksum on the 32 bytes of block data read or written to  
data flash. The least-significant byte of the sum of the data bytes written must be complemented  
([255 – x], for x the least-significant byte) before being written to 0x60.  
SEALED Access: This byte contains the checksum for the 32 bytes of block data written to Manufacturer  
Info Block A, B, or C. The least-significant byte of the sum of the data bytes written must be  
complemented ([255 – x], for x the least-significant byte) before being written to 0x60.  
Submit Documentation Feedback  
GENERAL DESCRIPTION  
15  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
4.1.2.6 BlockDataControl( ): 0x61  
UNSEALED Access: This command is used to control data flash access mode. Writing 0x00 to this  
command enables BlockData( ) to access general data flash. Writing a 0x01 to this command enables  
SEALED mode operation of DataFlashBlock( ).  
SEALED Access: This command is not available in SEALED mode.  
4.1.2.7 DeviceNameLength( ): 0x62  
UNSEALED and SEALED Access: This byte contains the length of the Device Name.  
4.1.2.8 DeviceName( ): 0x630x69  
UNSEALED and SEALED Access: This block contains the device name that is programmed in Device  
Name.  
4.1.2.9 ApplicationStatus( ): 0x6a  
This byte function allows the system to read the bq27500/1 Application Status data flash location. See  
Table 6-1 for specific bit definitions.  
4.1.2.10 Reserved — 0x6b–0x7f  
4.2 DATA FLASH INTERFACE  
4.2.1 ACCESSING THE DATA FLASH  
The bq27500/1 data flash is a non-volatile memory that contains bq27500/1 initialization, default, cell  
status, calibration, configuration, and user information. The data flash can be accessed in several different  
ways, depending on what mode the bq27500/1 is operating in and what data is being accessed.  
Commonly accessed data flash memory locations, frequently read by a system, are conveniently  
accessed through specific instructions, already described in Section 4.1, DATA COMMANDS. These  
commands are available when the bq27500/1 is either in UNSEALED or SEALED modes.  
Most data flash locations, however, are only accessible in UNSEALED mode by use of the bq27500/1  
evaluation software or by data flash block transfers. These locations must be optimized and/or fixed during  
the development and manufacture processes. They become part of a golden image file and can then be  
written to multiple battery packs. Once established, the values generally remain unchanged during  
end-equipment operation.  
To access data flash locations individually, the block containing the desired data flash location(s) must be  
transferred to the command register locations, where the information can be read to the system or  
changed directly. This is accomplished by sending the setup command BlockDataControl( ) (0x61) with  
data 0x00. Up to 32 bytes of data can be read directly from the BlockData( ) (0x400x5f), externally  
altered, then rewritten to the BlockData( ) command space. Alternatively, specific locations can be read,  
altered, and rewritten if their corresponding offsets are used to index into the BlockData( ) command  
space. Finally, the data residing in the command space is transferred to data flash, once the correct  
checksum for the whole block is written to BlockDataChecksum( ) (0x60).  
Occasionally, a data flash CLASS is larger than the 32-byte block size. In this case, the DataFlashBlock( )  
command is used to designate in which 32-byte block the desired information resides. The correct  
command address is then given by 0x40 + offset modulo 32. For example, to access Terminate Voltage  
in the Fuel Gauging class, DataFlashClass( ) is issued 80 (0x50) to set the class. Because the offset is 48,  
it must reside in the second 32-byte block. Hence, DataFlashBlock( ) is issued 0x01 to set the block offset,  
and the offset used to index into the BlockData( ) memory area is 0x40 + 48 modulo 32 = 0x40 + 16 =  
0x40 + 0x10 = 0x50.  
Reading and writing subclass data are block operations up to 32 bytes in length. If during a write the data  
length exceeds the maximum block size, then the data is ignored.  
16  
GENERAL DESCRIPTION  
Submit Documentation Feedback  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
None of the data written to memory are bounded by the bq27500/1– the values are not rejected by the  
fuel gauge. Writing an incorrect value may result in hardware failure due to firmware program  
interpretation of the invalid data. The written data is persistent, so a power-on reset does resolve the fault.  
4.3 MANUFACTURER INFORMATION BLOCKS  
The bq27500/1 contains 96 bytes of user programmable data flash storage: Manufacturer Info Block A,  
Manufacturer Info Block B, Manufacturer Info Block C. The method for accessing these memory  
locations is slightly different, depending on whether the device is in UNSEALED or SEALED modes.  
When in UNSEALED mode and when and 0x00 has been written to BlockDataControl( ), accessing the  
manufacturer information blocks is identical to accessing general data flash locations. First, a  
DataFlashClass( ) command is used to set the subclass, then a DataFlashBlock( ) command sets the  
offset for the first data flash address within the subclass. The BlockData( ) command codes contain the  
referenced data flash data. When writing the data flash, a checksum is expected to be received by  
BlockDataChecksum( ). Only when the checksum is received and verified is the data actually written to  
data flash.  
As an example, the data flash location for Manufacturer Info Block B is defined as having a Subclass =  
58 and an Offset = 32 through 63 (32 byte block). The specification of Class = System Data is not needed  
to address Manufacturer Info Block B, but is used instead for grouping purposes when viewing data  
flash info in the bq27500/1 evaluation software.  
When in SEALED mode or when 0x01 BlockDataControl( ) does not contain 0x00, data flash is no longer  
available in the manner used in UNSEALED mode. Rather than issuing subclass information, a  
designated manufacturer information block is selected with the DataFlashBlock( ) command. Issuing a  
0x01, 0x02, or 0x03 with this command causes the corresponding information block (A, B, or C,  
respectively) to be transferred to the command space 0x400x5f for editing or reading by the system.  
Upon successful writing of checksum information to BlockDataChecksum( ), the modified block is returned  
to data flash. Note: Manufacturer Info Block A is read-only when in SEALED mode.  
4.4 ACCESS MODES  
The bq27500/1 provides three security modes (FULL ACCESS, UNSEALED, and SEALED) that control  
data flash access permissions, according to Table 4-6. Public Access refers to those data flash locations,  
specified in Table 4-7, that are accessible to the user. Private Access refers to reserved data flash  
locations used by the bq27500/1 system. Care should be taken to avoid writing to Private data flash  
locations when performing block writes in FULL ACCESS mode, by following the procedure outlined in  
Section 4.2.1, ACCESSING THE DATA FLASH.  
Table 4-6. Data Flash Access  
Security Mode  
FULL ACCESS  
UNSEALED  
SEALED  
DF – Public Access  
DF – Private Access  
R/W  
R/W  
R
R/W  
R/W  
N/A  
Although FULL ACCESS and UNSEALED modes appear identical, only FULL ACCESS allows the  
bq27500/1 to write access-mode transition keys.  
4.5 SEALING/UNSEALING DATA FLASH  
The bq27500/1 implements a key-access scheme to transition between SEALED, UNSEALED, and  
FULL-ACCESS modes. Each transition requires that a unique set of two keys be sent to the bq27500/1  
via the Control( ) control command. The keys must be sent consecutively, with no other data being written  
to the Control( ) register between them. Note that to avoid conflict, the keys must be different from the  
codes presented in the CNTL DATA column of Table 4-2 Control( ) subcommands.  
Submit Documentation Feedback  
GENERAL DESCRIPTION  
17  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
When in SEALED mode, the CONTROL_STATUS [SS] bit is set, but when the unseal keys are correctly  
received by the bq27500/1, the [SS] bit is cleared. When the full-access keys are correctly received, then  
the CONTROL_STATUS [FAS] bit is cleared.  
Both the sets of keys for each level are 2 bytes each in length and are stored in data flash. The unseal  
key (stored at Unseal Key 0 and Unseal Key 1) and the full-access key (stored at Full-Access Key 0  
and Full-Access Key 1) can only be updated when in FULL-ACCESS mode. The order of the bytes  
entered through the Control( ) command is the reverse of what is read from the part. For example, if the  
first and second words of the Unseal Key 0 read returns 0x1234 and 0x5678, then the Control( ) should  
supply 0x3412 and 0x7856 to unseal the part.  
4.6 DATA FLASH SUMMARY  
Table 4-7 summarizes the data flash locations available to the user, including their default, minimum, and  
maximum values.  
Table 4-7. Data Flash Summary  
Subclass  
ID  
Data  
Type  
Min  
Value  
Max  
Value  
Default  
Value  
Class  
Subclass  
Offset  
Name  
Units  
Configuration  
Configuration  
Configuration  
Configuration  
Configuration  
Configuration  
2
2
2
2
2
2
Safety  
Safety  
Safety  
Safety  
Safety  
Safety  
0
2
3
5
7
8
OT Chg  
I2  
U1  
I2  
0
0
0
0
0
0
1200  
60  
550  
2
0.1°C  
s
OT Chg Time  
OT Chg Recovery  
OT Dsg  
1200  
1200  
60  
500  
600  
2
0.1°C  
0.1°C  
s
I2  
OT Dsg Time  
OT Dsg Recovery  
U1  
I2  
1200  
550  
0.1°C  
Charge Inhibit  
Config  
Configuration  
Configuration  
Configuration  
32  
32  
32  
0
2
4
Charge Inhibit Temp Low  
Charge Inhibit Temp High  
Temp Hys  
I2  
I2  
I2  
–400  
–400  
0
1200  
1200  
100  
0
0.1°C  
0.1°C  
0.1°C  
Charge Inhibit  
Config  
450  
50  
Charge Inhibit  
Config  
Configuration  
Configuration  
Configuration  
Configuration  
34  
34  
34  
34  
Charge  
Charge  
Charge  
Charge  
2
4
6
8
Charging Voltage  
I2  
I2  
I2  
I2  
0
20,000  
500  
4200  
50  
mV  
Delta Temperature  
0
0.1°C  
0.1°C  
0.1°C  
Suspend Temperature Low  
Suspend Temperature High  
–400  
–400  
1200  
1200  
-50  
550  
Charge  
Termination  
Configuration  
Configuration  
Configuration  
Configuration  
36  
36  
36  
36  
2
4
6
8
Taper Current  
I2  
I2  
0
0
0
0
1000  
1000  
1000  
60  
100  
25  
mA  
mAh  
mV  
s
Charge  
Termination  
Minimum Taper Charge  
Taper Voltage  
Charge  
Termination  
I2  
100  
40  
Charge  
Termination  
Current Taper Window  
U1  
Configuration  
Configuration  
Configuration  
Configuration  
48  
48  
48  
48  
Data  
Data  
Data  
Data  
4
5
Initial Standby Current  
Initial Max Load Current  
CC Threshold  
I1  
I2  
I2  
I2  
–128  
–32,767  
100  
0
–10  
–500  
900  
mA  
mA  
0
7
32,767  
65,535  
mAh  
mAh  
10  
Design Capacity  
0
1000  
bq27500  
or  
Configuration  
48  
Data  
12  
Device Name  
S8  
x
x
bq27501  
Configuration  
Configuration  
Configuration  
Configuration  
49  
49  
49  
49  
Discharge  
Discharge  
Discharge  
Discharge  
0
1
2
3
SOC1 Set Threshold  
SOC1 Clear Threshold  
SOCF Set Threshold  
SOCF Clear Threshold  
U1  
U1  
U1  
U1  
0
0
0
0
255  
255  
255  
255  
150  
175  
75  
mAh  
mAh  
mAh  
mAh  
100  
Manufacturer  
Info  
System Data  
57  
0–31  
Block A [0–31]  
H1  
0x00  
0xff  
0x00  
18  
GENERAL DESCRIPTION  
Submit Documentation Feedback  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
Table 4-7. Data Flash Summary (continued)  
Subclass  
ID  
Data  
Type  
Min  
Value  
Max  
Value  
Default  
Value  
Class  
Subclass  
Offset  
32–63  
64–95  
Name  
Units  
Manufacturer  
Info  
System Data  
57  
57  
Block B [0–31]  
H1  
H1  
0x00  
0x00  
0xff  
0xff  
0x00  
0x00  
Manufacturer  
Info  
System Data  
Block C [0–31]  
Configuration  
Configuration  
Configuration  
Configuration  
64  
64  
64  
64  
Registers  
Registers  
Registers  
Registers  
0
2
4
6
Operation Configuration  
Pack 0 Voltage(1)  
Pack 1 Voltage(1)  
H2  
U2  
U2  
U1  
0x0000  
0xffff  
4200  
4200  
100  
0x0979  
1070  
110  
0
0
0
mV  
mV  
%
Pack V% Range(1)  
50  
Configuration  
Configuration  
Configuration  
Configuration  
68  
68  
68  
68  
Power  
Power  
Power  
Power  
0
7
Flash Update OK Voltage  
Sleep Current  
I2  
I2  
0
0
4200  
100  
2800  
10  
mV  
mA  
mA  
mV  
16  
18  
Hibernate Current  
Hibernate Voltage  
U2  
U2  
0
700  
8
2400  
3000  
2550  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
80  
80  
80  
80  
80  
80  
80  
IT Cfg  
IT Cfg  
IT Cfg  
IT Cfg  
IT Cfg  
IT Cfg  
IT Cfg  
0
Load Select  
U1  
U1  
I2  
0
255  
255  
1
1
Load Mode  
0
0
48  
53  
55  
57  
59  
Terminate Voltage  
User Rate-mA  
–32,768  
32,767  
9000  
3000  
mV  
I2  
0
0
0
0
0
0
0
0
mA  
User Rate-10mW  
Reserve Cap-mAh  
Reserve Cap-10mWh  
I2  
14,000  
9000  
10mW  
mAh  
10mWh  
I2  
I2  
14,000  
Current  
Thresholds  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
81  
81  
81  
81  
81  
81  
0
2
4
6
8
9
Dsg Current Threshold  
Chg Current Threshold  
Quit Current  
I2  
I2  
0
0
0
0
0
0
2000  
2000  
1000  
8191  
255  
60  
75  
mA  
mA  
mA  
s
Current  
Thresholds  
Current  
Thresholds  
I2  
40  
Current  
Thresholds  
Dsg Relax Time  
U2  
U1  
U1  
1800  
60  
Current  
Thresholds  
Chg Relax Time  
Quit Relax Time  
s
Current  
Thresholds  
63  
1
s
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
Fuel Gauging  
82  
82  
82  
82  
82  
82  
82  
82  
82  
82  
State  
State  
State  
State  
State  
State  
State  
State  
State  
State  
0
1
IT Enable  
H1  
H1  
I2  
0x00  
0x00  
0
0xff  
0x00  
0x00  
1000  
0
Application Status  
Qmax 0  
0xff  
2
32,767  
65,535  
0x03  
mAh  
4
Cycle Count 0  
Update Status 0  
Qmax 1  
U2  
H1  
I2  
0
6
0x00  
0
0x00  
1000  
0
7
32767  
65,535  
0x03  
mAh  
9
Cycle Count 1  
Update Status 1  
Avg I Last Run  
Avg P Last Run  
U2  
H1  
I2  
0
11  
16  
18  
0x00  
–32,768  
–32,768  
0x00  
–299  
–1131  
32,767  
32,767  
mA  
mAh  
I2  
Default Ra  
Tables  
87  
88  
Def0 Ra  
Def1 Ra  
0–18  
0–18  
See Note(2)  
Default Ra  
Tables  
Ra Tables  
Ra Tables  
Ra Tables  
Ra Tables  
91  
92  
93  
94  
Pack0 Ra  
Pack1 Ra  
Pack0 Rax  
Pack1 Rax  
0–18  
0–18  
0–18  
0–18  
See Note(2)  
(1) bq27501 only.  
(2) Encoded battery profile information created by bqEASY software.  
Submit Documentation Feedback  
GENERAL DESCRIPTION  
19  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
Table 4-7. Data Flash Summary (continued)  
Subclass  
ID  
Data  
Type  
Min  
Value  
Max  
Value  
Default  
Value  
Class  
Subclass  
Offset  
Name  
Units  
Calibration  
Calibration  
Calibration  
Calibration  
Calibration  
Calibration  
Calibration  
104  
104  
104  
104  
104  
104  
104  
Data  
Data  
Data  
Data  
Data  
Data  
Data  
0
CC Gain  
F4  
F4  
I2  
0.1  
29,826  
–32,768  
–128  
4
1,193,046  
32,767  
127  
0.47095  
4
CC Delta  
559,538.8  
8
CC Offset  
Board Offset  
–1667  
mV  
10  
11  
12  
13  
I1  
0
0
0
0
mV  
Int Temp Offset  
Ext Temp Offset  
Pack V Offset  
I1  
–128  
127  
0.1°C  
0.1°C  
0.1°C  
I1  
–128  
127  
I1  
–128  
127  
Calibration  
107  
Current  
1
Deadband  
U1  
0
255  
5
mA  
Security  
Security  
Security  
Security  
112  
112  
112  
112  
Codes  
Codes  
Codes  
Codes  
0
2
4
6
Unseal Key 0  
H2  
H2  
H2  
H2  
0x0000  
0x0000  
0x0000  
0x0000  
0xffff  
0xffff  
0xffff  
0xffff  
0x3672  
0x0414  
0xffff  
Unseal Key 1  
Full-Access Key 0  
Full-Access Key 1  
0xffff  
5 FUNCTIONAL DESCRIPTION  
5.1 FUEL GAUGING  
The bq27500/1 measures the cell voltage, temperature, and current to determine battery SOC. The  
bq27500/1 monitors charge and discharge activity by sensing the voltage across a small-value resistor (5  
mto 20 mtyp.) between the SRP and SRN pins and in series with the cell. By integrating charge  
passing through a battery, the battery’s SOC is adjusted during battery charge or discharge.  
The total battery capacity is found by comparing states of charge before and after applying the load with  
the amount of charge passed. When an application load is applied, the impedance of the cell is measured  
by comparing the OCV obtained from a predefined function for present SOC with the measured voltage  
under load. Measurements of OCV and charge integration determine chemical state of charge and  
chemical capacity (Qmax). The initial Qmax values are taken from a cell manufacturers' data sheet  
multiplied by the number of parallel cells. It is also used for the value in Design Capacity. The bq27500/1  
acquires and updates the battery-impedance profile during normal battery usage. It uses this profile, along  
with SOC and the Qmax value, to determine FullChargeCapacity( ) and StateOfCharge( ), specifically for  
the present load and temperature. FullChargeCapacity( ) is reported as capacity available from a fully  
charged battery under the present load and temperature until Voltage( ) reaches the Term Voltage.  
NominalAvailableCapacity( ) and FullAvailableCapacity( ) are the uncompensated (no- or light- load)  
versions of RemainingCapacity( ) and FullChargeCapacity( ) respectively.  
The bq27500/1 has two flags accessed by the Flags( ) function that warn when a battery's SOC has fallen  
to critical levels. When RemainingCapacity( ) falls below the first capacity threshold, specified in SOC1  
Set Threshold, the [SOC1] (State of Charge Initial) flag is set. The flag is cleared once  
RemainingCapacity( ) rises above SOC1 Clear Threshold. The bq27500/1's BAT_LOW pin automatically  
reflects the status of the [SOC1] flag. All units are in mAh.  
When RemainingCapacity( ) falls below the second capacity threshold, SOCF Set Threshold, the [SOCF]  
(State of Charge Final) flag is set, serving as a final discharge warning. Set SOCF Set Threshold = 0 to  
deactivate the feature. Similarly, when RemainingCapacity( ) rises above SOCF Clear Threshold and the  
[SOCF] flag has already been set, the [SOCF] flag is cleared. All units are in mAh.  
5.2 IMPEDANCE TRACK™ VARIABLES  
The bq27500/1 has several data flash variables that permit the user to customize the Impedance Track™  
algorithm for optimized performance. These variables are dependent upon the power characteristics of the  
application as well as the cell itself.  
20  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
5.2.1 Load Mode  
Load Mode is used to select either the constant-current or constant-power model for the Impedance  
Track™ algorithm as used in Load Select (see Load Select). When Load Mode is 0, the Constant  
Current model is used (default). When 1, the Constant Power model is used. The [LDMD] bit of  
CONTROL_STATUS reflects the status of Load Mode.  
5.2.2 Load Select  
Load Select defines the type of power or current model to be used to compute load-compensated  
capacity in the Impedance Track™ algorithm. If Load Mode = 0 (Constant-Current) then the options  
presented in Table 5-1 are available.  
Table 5-1. Constant-Current Model Used When Load Mode = 0  
LoadSelect Value  
Current Model Used  
Average discharge current from previous cycle: There is an internal register that records the average discharge  
current through each entire discharge cycle. The previous average is stored in this register.  
0
Present average discharge current: This is the average discharge current from the beginning of this discharge cycle  
until present time.  
1(default)  
2
3
4
5
6
Average current: based on AverageCurrent( )  
Current: based off of a low-pass-filtered version of AverageCurrent( ) (τ =14 s)  
Design capacity / 5: C Rate based off of Design Capacity /5 or a C/5 rate in mA.  
AtRate (mA): Use whatever current is in AtRate( )  
User_Rate-mA: Use the value in User_Rate-mA. This mode provides a completely user-configurable method.  
If Load Mode = 1 (Constant Power) then the following options shown in Table 5-2 are available.  
Table 5-2. Constant-Power Model Used When Load Mode = 1  
LoadSelect Value  
Power Model Used  
Average discharge power from previous cycle: There is an internal register that records the average discharge power  
through each entire discharge cycle. The previous average is stored in this register.  
0
Present average discharge power: This is the average discharge power from the beginning of this discharge cycle  
until present time.  
1(default)  
2
3
4
5
6
Average current × voltage: based off the AverageCurrent( ) and Voltage( ).  
Current × voltage: based off of a low-pass-filtered version of AverageCurrent( ) (τ=14 s) and Voltage( )  
Design energy / 5: C Rate based off of Design Energy /5 or a C/5 rate in mA.  
AtRate (10 mW): Use whatever value is in AtRate( ).  
User_Rate-10mW: Use the value in User_Rate-10mW. This mode provides a completely user-configurable method.  
5.2.3 Reserve Cap-mAh  
Reserve Cap-mAh determines how much actual remaining capacity exists after reaching  
0
RemainingCapacity( ), before Terminate Voltage is reached. A no-load rate of compensation is applied  
to this reserve.  
5.2.4 Reserve Cap-mWh  
Reserve Cap-mWh determines how much actual remaining capacity exists after reaching  
0
AvailableEnergy( ), before Terminate Voltage is reached. A no-load rate of compensation is applied to  
this reserve capacity.  
5.2.5 Dsg Current Threshold  
This register is used as a threshold by many functions in the bq27500/1 to determine if actual discharge  
current is flowing into or out of the cell. The default for this register is 100 mA, which should be sufficient  
for most applications. This threshold should be set low enough to be below any normal application load  
current but high enough to prevent noise or drift from affecting the measurement.  
Submit Documentation Feedback  
FUNCTIONAL DESCRIPTION  
21  
 
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
5.2.6 Chg Current Threshold  
This register is used as a threshold by many functions in the bq27500/1 to determine if actual charge  
current is flowing into or out of the cell. The default for this register is 50 mA, which should be sufficient for  
most applications. This threshold should be set low enough to be below any normal charge current but  
high enough to prevent noise or drift from affecting the measurement.  
5.2.7 Quit Current, DSG Relax Time, CHG Relax Time, and Quit Relax Time  
The Quit Current is used as part of the Impedance Track™ algorithm to determine when the bq27500/1  
enters relaxation mode from a current-flowing mode in either the charge direction or the discharge  
direction. The value of Quit Current is set to a default value of 10 mA and should be above the standby  
current of the system.  
Either of the following criteria must be met to enter relaxation mode:  
| AverageCurrent( ) | < | Quit Current | for Dsg Relax Time  
| AverageCurrent( ) | < | Quit Current | for Chg Relax Time  
After about 30 minutes in relaxation mode, the bq27500/1 attempts to take accurate OCV readings. An  
additional requirement of dV/dt < 4 µV/s is required for the bq27500/1 to perform Qmax updates. These  
updates are used in the Impedance Track™ algorithms. It is critical that the battery voltage be relaxed  
during OCV readings to and that the current is not be higher than C/20 when attempting to go into  
relaxation mode.  
Quit Relax Time specifies the minimum time required for AverageCurrent( ) to remain above the  
QuitCurrent threshold before exiting relaxation mode.  
5.2.8 Qmax 0 and Qmax 1  
Generically called Qmax, these dynamic variables contain the respective maximum chemical capacity of  
the active cell profiles, and are determined by comparing states of charge before and after applying the  
load with the amount of charge passed. They also correspond to capacity at a very low rate of discharge,  
such as the C/20 rate. For high accuracy, this value is periodically updated by the bq27500/1 during  
operation. Based on the battery cell capacity information, the initial value of chemical capacity should be  
entered in the Qmax n field for each default cell profile. The Impedance Track™ algorithm updates these  
values and maintains them the associated actual cell profiles.  
5.2.9 Update Status 0 and Update Status 1  
Bit 0 (0x01) of the Update Status n registers indicates that the bq27500/1 has learned new Qmax  
parameters and is accurate. The remaining bits are reserved. Bits 0 is user-configurable; however, it is  
also a status flag that can be set by the bq27500/1. Bit 0 should not be modified except when creating a  
golden image file as explained in the application note Preparing Optimized Default Flash Constants for  
specific Battery Types (SLUA334). Bit 0 is updated as needed by the bq27500/1.  
5.2.10 Avg I Last Run  
The bq27500 logs the current averaged from the beginning to the end of each discharge cycle. It stores  
this average current from the previous discharge cycle in this register. This register should not be  
modified. It is only updated by the bq27500/1 when required.  
5.2.11 Avg P Last Run  
The bq27500/1 logs the power averaged from the beginning to the end of each discharge cycle. It stores  
this average power from the previous discharge cycle in this register. To get a correct average power  
reading the bq27500/1 continuously multiplies instantaneous current times Voltage( ) to get power. It then  
logs this data to derive the average power. This register should not be modified. It is only updated by the  
bq27500/1 when required.  
22  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
5.2.12 Delta Voltage  
The bq27500/1 stores the maximum difference of Voltage( ) during short load spikes and normal load, so  
the Impedance Track™ algorithm can calculate remaining capacity for pulsed loads. It is not  
recommended to change this value.  
5.2.13 Default Ra and Ra Tables  
These tables contain encoded data and, with the exception of the Default Ra Tables, are automatically  
updated during device operation. No user changes should be made except for reading/writing the values  
from a pre-learned pack (part of the process for creating golden image files).  
5.3 DETAILED DESCRIPTION OF DEDICATED PINS  
5.3.1 The Operation Configuration Register  
Some bq27500/1 pins are configured via the Operation Configuration data flash register, as indicated in  
Table 5-3. This register is programmed/read via the methods described in Section 4.2.1, Accessing the  
Data Flash. The register is located at subclass = 64, offset = 0.  
Table 5-3. Operation Configuration Bit Definition  
Operation  
Cfg  
bit7  
bit6  
bit5  
bit4  
bit3  
bit2  
bit1  
bit0  
High byte  
Low byte  
RESCAP  
PFC_CFG1  
RMFCC  
PFC_CFG0  
BATL_POL  
IWAKE  
RSNS1  
RSNS0  
TEMPS  
IDSELEN  
SLEEP  
BATG_POL  
RESCAP = No-load rate of compensation is applied to the reserve capacity calculation. True when set. Default is 0.  
PFC_CFG1/PFC_CFG0 = Pin function code (PFC) mode selection: PFC 0, 1, or 2 selected by 0/0, 0/1, or 1/0, respectively.  
Default is PFC 1 (0/1).  
IWAKE/RSNS1/RSNS0 = These bits configure the current wake function (see Table 5-4). Default is 0/0/1.  
IDSELEN = Enables cell profile selection feature. True when set. Default is 1.  
SLEEP = The fuel gauge can enter sleep, if operating conditions allow. True when set. Default is 1.  
RMFCC = RM is updated with the value from FCC, on valid charge termination. True when set. Default is 1.  
BATL_POL = BAT_LOW pin is active-high. True when set. Default is 1.  
BATG_POL = BAT_GD pin is active-low. True when cleared. Default is 0.  
TEMPS = Selects external thermistor for Temperature( ) measurements. True when set. Default is 1.  
5.3.2 Pin Function Code Descriptions  
The bq27500/1 has three possible pin-function variations that can be selected in accordance with the  
circuit architecture of the end application. Each variation has been assigned a pin function code, or PFC.  
When the PFC is set to 0, only the bq27500/1 measures battery temperature under discharge and  
relaxation conditions. The charger does not receive any information from the bq27500/1 about the  
temperature readings, and therefore operates open-loop with respect to battery temperature.  
A PFC of 1 is like a PFC of 0, except temperature is also monitored during battery charging. If charging  
temperature falls outside of the preset range defined in data flash, a charger can be disabled via the  
BAT_GD pin until cell temperature recovers. See Section 5.6.2, Charge Inhibit, for additional details.  
Finally when the PFC is set to 2, the battery thermistor can be shared between the fuel gauge and the  
charger. The charger has full usage of the thermistor during battery charging. The fuel gauge uses the  
thermistor exclusively during discharge and battery relaxation.  
The PFC is specified in Operation Configuration [PFC_CFG1, PFC_CFG0]. The default is PFC = 1.  
5.3.3 BAT_LOW Pin  
The BAT_LOW pin provides a system processor with an electrical indicator of battery status. The signaling  
on the BAT_LOW pin follows the status of the [SOC1] bit in the Flags( ) register. Note that the polarity of  
the BAT_LOW pin can be inverted via the [BATL_POL] bit of Operation Configuration.  
Submit Documentation Feedback  
FUNCTIONAL DESCRIPTION  
23  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
5.3.4 Power Path Control With the BAT_GD Pin  
The bq27500/1 must operate in conjunction with other electronics in a system appliance, such as chargers  
and other ICs and subcircuits that draw appreciable power. After a battery is inserted into the system, this  
electronics must be disabled, so that an accurate OCV can be read. The OCV is used for helping  
determine which battery profile to use, as it constitutes part of the battery impedance measurement.  
When a battery is inserted into a system, the Impedance Track™ algorithm requires that no charging of  
the battery takes place and that any discharge is limited to less than C/20—these conditions are sufficient  
for the fuel gauge to take an accurate OCV reading. To disable these functions, the BAT_GD pin is merely  
set high (floating output pulled high). Once an OCV reading has be made, the BAT_GD pin is pulled low,  
thereby enabling battery charging and regular discharge of the battery. The Operation Configuration  
[BATG_POL] bit can be used to set the polarity of the battery good signal, should the default configuration  
need to be changed.  
The flowchart of Figure 5-1 details how the BAT_GD pin functions in the context of battery insertion and  
removal, as well as NORMAL vs SLEEP modes.  
In PFC 1, the BAT_GD pin is also used to disable battery charging when the bq27500/1 reads battery  
temperatures outside the range defined by [Charge Inhibit Temp Low, Charge Inhibit Temp High]. The  
BAT_GD line is returned to low once temperature falls within the range [Charge Inhibit Temp Low +  
Temp Hys, Charge Inhibit Temp High – Temp Hys].  
5.3.5 Battery Detection Using the BI/TOUT Pin  
During power-up or hibernate activities, or any other activity where the bq27500/1 must determine whether  
a battery is connected or not, the fuel gauge applies a test for battery presence. First, the BI/TOUT pin is  
put into high-Z status. The weak 1.8-Mpullup resistor keeps the pin high while no battery is present.  
When a battery is inserted (or is already inserted) into the system device, the BI/TOUT pin is pulled low.  
This state is detected by the fuel gauge, which polls this pin every second when the gauge has power. A  
battery disconnected status is assumed when the bq27500/1 reads a thermistor voltage that is near 2.5 V.  
24  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
Start  
bq27500 POR  
No  
Batt  
detected?  
Yes  
Init  
(BAT_GD  
disabled, OCV  
taken, BAT_GD  
enabled.)  
No  
Battery volt  
sufficient  
to FG?  
Yes  
NORMAL  
SLEEP  
Batt present  
IT Operations  
(dsg, chg, rlx)  
ICC  
>
Yes  
Istandby -OR-  
Tr > 30min?  
Yes  
No  
Bad batt  
detected?  
No  
Batt  
removed?  
No  
Yes  
Yes  
Batt  
removed?  
No batt present  
-OR- bad batt  
(BAT_GD  
No  
disabled)  
Forced  
SLEEP  
mode?  
Yes  
No  
Yes  
Batt  
detected?  
Bad batt  
detected?  
No  
Yes  
No  
Yes  
AC or USB  
present?  
No  
End  
Figure 5-1. BAT_GD Pin Operation, Based Upon Battery Presence and bq27500 Operating Mode  
Submit Documentation Feedback  
FUNCTIONAL DESCRIPTION  
25  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
5.4 TEMPERATURE MEASUREMENT  
The bq27500/1 measures battery temperature via its TS input, in order to supply battery temperature  
status information to the fuel gauging algorithm and charger-control sections of the gauge. Alternatively, it  
can also measure internal temperature via its on-chip temperature sensor, but only if the [TEMPS] bit of  
the Operation Configuration register is cleared.  
Regardless of which sensor is used for measurement, a system processor can request the current battery  
temperature by calling the Temperature( ) function (see Section 4.1.1, Standard Data Commands, for  
specific information).  
The recommended thermistor circuit uses an external 103AT-type thermistor. Additional circuit information  
for connecting this thermistor to the bq27500/1 is shown in Section 8, Reference Schematic.  
5.5 OVERTEMPERATURE INDICATION  
5.5.1 Overtemperature: Charge  
If during charging, Temperature( ) reaches the threshold of OT Chg for a period of OT Chg Time and  
AverageCurrent( ) > Chg Current Threshold, then the [OTC] bit of Flags( ) is set.  
If OT Chg Time = 0, then the feature is completely disabled. When Temperature( ) falls to OT Chg  
Recovery, the [OTC] of Flags( ) is reset.  
5.5.2 Overtemperature: Discharge  
If during discharging, Temperature( ) reaches the threshold of OT Dsg for a period of OT Dsg Time, and  
AverageCurrent( ) –Dsg Current Threshold, then the [OTD] bit of Flags( ) is set.  
If OT Dsg Time = 0, then feature is completely disabled. When Temperature( ) falls to OT Dsg Recovery,  
the [OTD] bit of Flags( ) is reset.  
5.6 CHARGING AND CHARGE-TERMINATION INDICATION  
5.6.1 Detecting Charge Termination  
For proper bq27500/1 operation, the cell charging voltage must be specified by the user. The default value  
for this variable is Charging Voltage = 4200 mV.  
The bq27500/1 detects charge termination when (1) during 2 consecutive periods of Current Taper  
Window, the AverageCurrent( ) is < Taper Current, (2) during the same periods, the accumulated  
change in capacity > 0.25 mAh /Current Taper Window, and (3) Voltage( ) > Charging Voltage – Taper  
Voltage. When this occurs, the [CHG] bit of Flags( ) is cleared. Also, if the [RMFCC] bit of Operation  
Configuration is set, then RemainingCapacity( ) is set equal to FullChargeCapacity( ).  
5.6.2 Charge Inhibit  
When PFC = 1, the bq27500/1 can indicate when battery temperature has fallen below or risen above  
predefined thresholds (Charge Inhibit Temp Low and Charge Inhibit Temp High, respectively). In this  
mode, the BAT_GD line is made high to indicate this condition then returned to its low state, once battery  
temperature returns to the range [Charge Inhibit Temp Low + Temp Hys, Charge Inhibit Temp High –  
Temp Hys].  
When PFC = 0 or 2, the bq27500/1 must be queried by the system in order to determine the battery  
temperature. At that time, the bq27500/1 samples the temperature. This saves battery energy when  
operating from battery, as periodic temperature updates are avoided during charging mode.  
26  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
5.7 POWER MODES  
The bq27500/1 has four power modes: NORMAL, SLEEP, HIBERNATE, and BAT INSERT CHECK. In  
NORMAL mode, the bq27500/1 is fully powered and can execute any allowable task. In SLEEP mode, the  
fuel gauge exists in a reduced-power state, periodically taking measurements and performing calculations.  
In HIBERNATE mode, the fuel gauge is in its lowest power state, but can be woken up by communication  
activity or certain I/O activity. Finally, the BAT INSERT CHECK mode is a powered-up, but low-power  
halted state, where the bq27500/1 resides when no battery is inserted into the system.  
The relationship between these modes is shown in Figure 5-2.  
5.7.1 NORMAL MODE  
The fuel gauge is in NORMAL mode when not in any other power mode. During this mode,  
AverageCurrent( ), Voltage( ) and Temperature( ) measurements are taken, and the interface data set is  
updated. Decisions to change states are also made. This mode is exited by activating a different power  
mode.  
Because the gauge consumes the most power in NORMAL mode, the Impedance Track™ algorithm  
minimizes the time the fuel gauge remains in this mode.  
5.7.2 SLEEP MODE  
SLEEP mode is entered automatically if the feature is enabled (Operation Configuration [SLEEP] = 1)  
and AverageCurrent( ) is below the programmable level Sleep Current. Once entry into SLEEP mode has  
been qualified, but prior to entering it, the bq27500/1 performs an ADC autocalibration to minimize offset.  
During SLEEP mode, the bq27500/1 periodically takes data measurements and updates its data set.  
However, a majority of its time is spent in an idle condition.  
The bq27500/1 exits SLEEP if any entry condition is broken, specifically when (1) AverageCurrent( ) rises  
above Sleep Current, or (2) a current in excess of IWAKE through RSENSE is detected.  
In the event that a battery is removed from the system while a charger is present (and powering the  
gauge), Impedance Track™ updates are not necessary. Hence, the fuel gauge enters a state that checks  
for battery insertion and does not continue executing the Impedance Track™ algorithm.  
While in SLEEP mode, the fuel gauge can suspend serial communications as much as 4ms by holding the  
SDA pin low. This delay is necessary correctly process host communication, since the fuel gauge  
processor is mostly halted while in SLEEP mode.  
5.7.3 BAT-INSERT-CHECK MODE  
This mode is a halted-CPU state that occurs when an adapter or other power source is present to power  
the bq27500/1 (and system), yet no battery has been detected. When battery insertion is detected, a  
series of initialization activities begins, which includes: OCV measurement, setting the BAT_GD pin, and  
selecting the appropriate battery profiles.  
Some commands issued by a system processor can be processed while the bq27500/1 is halted in this  
mode. The gauge wakes up to process the command, then returns to the halted state awaiting battery  
insertion.  
Submit Documentation Feedback  
FUNCTIONAL DESCRIPTION  
27  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
POR  
Exit From HIBERNATE  
Battery Removed  
Exit From HIBERNATE  
Communication Activity  
AND Comm address is for  
bq27500/1  
BAT INSERT CHECK  
Check for battery insertion  
from HALT state.  
No gauging  
bq27500/1 clears Control Status  
[HIBERNATE] = 0  
Flags [BAT_DET] = 0  
Recommend Host also set Control  
Status [HIBERNATE] = 0  
Entry to NORMAL  
Flags [BAT_DET] = 1  
Exit From NORMAL  
Flags [BAT_DET] = 0  
NORMAL  
Fuel gauging and data  
updated every1s  
HIBERNATE  
Wakeup From HIBERNATE  
Communication Activity  
AND  
Comm address is NOT for  
Exit From SLEEP  
Flags [BAT_DET] = 0  
Disable all bq27500/1  
bq27500/1  
subcircuits except GPIO  
.
Negate BAT_GD  
Entry to SLEEP  
Operation Configuration [SLEEP] = 1  
AND  
| AverageCurrent( )| Sleep Current  
Exit From SLEEP  
| AverageCurrent( )| > Sleep Current  
OR  
Current is Detected above IWAKE  
Exit From WAIT_HIBERNATE  
Cell relaxed  
WAIT_HIBERNATE  
AND  
| AverageCurrent() | < Hibernate  
Exit From WAIT_HIBERNATE  
OR  
SLEEP  
Host must set Control Status  
[HIBERNATE] = 0  
AND  
Cell relaxed  
AND  
Fuel gauging and data  
updatedevery 20 seconds  
BAT_GD unchanged  
Fuel gauging and data  
updated every 20 seconds  
VCELL < Hibernate Voltage  
VCELL > Hibernate Voltage  
System Shutdown  
Exit From SLEEP  
(Host has set Control Status  
[HIBERNATE] = 1  
OR  
VCELL < Hibernate Voltage  
Figure 5-2. Power Mode Diagram  
5.7.4 HIBERNATE MODE  
HIBERNATE mode should be used when the system equipment needs to enter a low-power state, and  
minimal gauge power consumption is required. This mode is ideal when a system equipment is set to its  
own HIBERNATE, SHUTDOWN, or OFF modes.  
Before the fuel gauge can enter the HIBERNATE mode, the system must set the [HIBERNATE] bit of the  
CONTROL_STATUS register. The gauge waits to enter HIBERNATE mode until it has taken a valid OCV  
measurement and the magnitude of the average cell current has fallen below Hibernate Current. The  
gauge can also enter HIBERNATE mode if the cell voltage falls below Hibernate Voltage, and a valid  
OCV measurement has been taken. The gauge remains in HIBERNATE mode until the system issues a  
direct I2C command to the gauge or a POR occurs. I2C communication that is not directed to the gauge  
does not wake the gauge.  
28  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
It is important that BAT_GD be set to disable status (no battery charging/discharging). This prevents a  
charger application from inadvertently charging the battery before an OCV reading can be taken. It is the  
system’s responsibility to wake the bq27500/1 after it has gone into HIBERNATE mode. After waking, the  
gauge can proceed with the initialization of the battery information (OCV, profile selection, etc.)  
5.8 POWER CONTROL  
5.8.1 RESET FUNCTIONS  
When the bq27500/1 detects software reset ([RESET] bit of Control( ) initiated), it determines the type of  
reset and increments the corresponding counter. This information is accessible by issuing the command  
Control( ) function with the RESET_DATA subcommand.  
As shown in Figure 5-3, if a partial reset was detected, a RAM checksum is generated and compared  
against the previously stored checksum. If the checksum values do not match, the RAM is reinitialized (a  
Full Reset). The stored checksum is updated every time RAM is altered.  
DEVICE RESET  
Generate Active  
RAM checksum  
value  
NO  
Stored  
checksum  
Re-initialize all  
RAM  
Do the Checksum  
Values Match?  
YES  
NORMAL  
OPERATION  
Active RAM  
changed ?  
NO  
YES  
Store  
checksum  
Generate New  
checksum value  
Figure 5-3. Partial Reset Flow Diagram  
Submit Documentation Feedback  
FUNCTIONAL DESCRIPTION  
29  
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
5.8.2 WAKE-UP COMPARATOR  
The wake up comparator is used to indicate a change in cell current while the bq27500/1 is in either  
SLEEP or HIBERNATE mode. Operation Configuration uses bits [RSNS1–RSNS0] to set the sense  
resistor selection. Operation Configuration also uses the [IWAKE] bit to select one of two possible  
voltage threshold ranges for the given sense resistor selection. An internal interrupt is generated when the  
threshold is reached in either the charge or discharge direction. Setting both [RSNS1] and [RSNS0] to 0  
disables this feature.  
Table 5-4. IWAKE Threshold Settings(1)  
RSNS1  
RSNS0  
IWAKE  
Vth(SRP–SRN)  
Disabled  
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Disabled  
1.0 mV or –1.0 mV  
2.2 mV or –2.2 mV  
2.2 mV or –2.2 mV  
4.6 mV or –4.6 mV  
4.6 mV or –4.6 mV  
9.8 mV or –9.8 mV  
(1) The actual resistance value vs. the setting of the sense resistor is not important, just the actual voltage  
threshold when calculating the configuration.  
5.8.3 FLASH UPDATES  
Data Flash can only be updated if Voltage( ) Flash Update OK Voltage. Flash programming current can  
cause an increase in LDO dropout. The value of Flash Update OK Voltage should be selected such that  
the bq27500/1 VCC voltage does not fall below its minimum of 2.4 V during Flash write operations.  
5.9 AUTOCALIBRATION  
The bq27500/1 provides an autocalibration feature that measures the voltage offset error across SRP and  
SRN as operating conditions change. It subtracts the resulting offset error from normal sense resistor  
voltage, VSR, for maximum measurement accuracy.  
Autocalibration of the ADC begins on entry to SLEEP mode, except if Temperature( ) is 5°C or  
Temperature( ) 45°C.  
The fuel gauge also performs a single offset when (1) the condition of AverageCurrent( ) 100 mA and (2)  
{voltage change since last offset calibration 256 mV} or {temperature change since last offset calibration  
is greater than 8°C for 60 s}.  
Capacity and current measurements continue at the last measured rate during the offset calibration when  
these measurements cannot be performed. If the battery voltage drops more than 32 mV during the offset  
calibration, the load current has likely increased considerably; hence, the offset calibration is aborted.  
30  
FUNCTIONAL DESCRIPTION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
6 APPLICATION-SPECIFIC INFORMATION  
6.1 BATTERY PROFILE STORAGE AND SELECTION  
6.1.1 Common Profile Aspects  
When a battery pack is removed from host equipment that implements the bq27500/01, the fuel gauge  
maintains some of the battery information in case the battery is re-inserted. This way, the Impedance  
Track™ algorithm has a means of recovering battery-status information, thereby maintaining good  
state-of-charge (SOC) estimates.  
Two default battery profiles are available to store battery information. They are used to provide the  
Impedance Track™ algorithm with the default information on two possible battery types expected to be  
used with the end-equipment. These default profiles can be used to support batteries of different  
chemistry, same chemistry but different capacities, or same chemistry but different models. Default  
profiles are programmed by the end-equipment manufacturer. Note that in the case of bq27500, only one  
of the default profiles can be selected, and this selection cannot be changed during end-equipment  
operation.  
In addition to the default profiles, the bq27500/01 maintains two abbreviated profiles. These tables hold  
dynamic battery data, and keep track of the status for up to two of the most recent batteries used. In most  
cases, the bq27500/01 can manage the information on two removable battery packs.  
6.1.2 Activities Upon Pack Insertion  
6.1.2.1 First OCV and Impedance Measurement  
At power up, the BAT_GD pin is inactive, so that the host cannot obtain power from the battery (this  
depends on the actual implementation). In this state, the battery is put in an open-circuit condition. Next,  
the bq27500/1 measures its first open-circuit voltage (OCV) via the BAT pin. From the OCV(SOC) table,  
the SOC of the inserted battery is found. Then the BAT_GD pin is made active, and the impedance of the  
inserted battery is calculated from the measured voltage and the load current: Z(SOC) = [OCV(SOC) – V]  
/ I. This impedance is compared with the impedance of the dynamic profiles, Packn, and the default  
profiles, Defn, for the same SOC (the letter n depicts either a 0 or 1).  
6.1.3 Reading Application Status  
The Application Status data flash location contains cell profile status information, and can be read using  
the ApplicationStatus( ) extended command (0x6a). The bit configuration of this function/location is shown  
in Table 6-1.  
Table 6-1. ApplicationStatus( ) Bit Definitions.  
Application  
bit7  
bit6  
bit5  
bit4  
bit3  
bit2  
bit1  
bit0  
Configuration  
Byte  
UNSUPBAT LU_ PROF  
UNSUPBAT = Flag indicating inserted battery is not supported in the current cell profiles. bq27501 only. True when set. Default is 0.  
LU_PROF = Last profile used by fuel gauge. Pack0 last used when cleared. Pack1 last used when set. Default is 0.  
6.2 APPLICATION-SPECIFIC FLOW AND CONTROL  
6.2.1 Simple Battery (bq27500 Only)  
The bq27500 supports only one type of battery profile. This profile is stored in both the Def0 and Def1  
profiles. When a battery pack is inserted for the first time, the default profile is copied into the Packn  
profiles. Then the Impedance Track™ algorithm begins fuel gauging, regularly updating Packn as the  
battery is used.  
When an existing pack is removed from the bq27500 and a different (or same) pack is inserted, cell  
impedance is measured immediately after battery detection (see Section 6.1.2.1, First OCV and  
Submit Documentation Feedback  
APPLICATION-SPECIFIC INFORMATION  
31  
 
 
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
Impedance Measurement). The bq27500 chooses the profile which is closest to the measured impedance,  
starting with the Packn profiles. That is, if the measured impedance matches Pack0, then the Pack0  
profile is used. If the measured impedance matches Pack1, then the Pack1 profile is used. If the  
measured impedance does not match the impedance stored in either Pack0 or Pack1, the battery pack is  
deemed new (none of the previously used packs). The Def0/Def1 profile is copied into either the Pack0 or  
Pack1 profile, overwriting the oldest Packn profile used.  
6.2.2 Battery With Resistor ID (bq27501 Only)  
The bq27501 can manage the information of up to two battery packs. For a given pack connected to the  
fuel gauge, the identity of the battery is determined by a combination of (1) reading the pack ID resistor,  
(2) measuring the impedance of the currently connected pack, and (3) remembering which pack  
characteristics were most recently used by the gauge.  
A battery-pack ID resistor should connect to the RID pin of the fuel gauge. Either A-or B-resistor  
values should be used to indicate the battery type. If a battery connection is detected, then bq27501  
measures the voltage developed at RID. If the voltage is Pack 0 Voltage, then it is identified as battery  
pack with A resistor and the bq27501 uses the Pack0 profile. If the voltage measured is Pack 1 Voltage,  
then it is identified as battery pack with B resistor and the bq27501 uses Pack1 profile.  
The measurement window around each threshold is specified by Pack V% Range, which indicates the  
positive or negative deviation around each level. Choosing RID values of 500 and 8 kfor A and B,  
respectively, correspond to Pack 0 Voltage and Pack 1 Voltage threshold levels of 110 mV and 1070  
mV, respectively.  
If the bq27501 measures a voltage other than Pack 0 Voltage or Pack 1 Voltage, then it sets  
Application Configuration [UNSUPBAT] to 1, alerting the host system that the inserted battery is not  
supported. The fuel gauge also writes the measured voltage into Pack 2 Voltage for this unsupported  
battery. The host system can use this information to download the default profile for this battery if one  
exists. The host system should unseal the gauge, then download the new battery profile into the older  
Defn profile. The last-used profile is indicated by the Application Configuration [LU_PROF] bit.  
Overwriting the older default profile allows the bq27501 to retain information stored regarding the most  
recently used battery. After the new default profile is downloaded, the bq27501 sets Application  
Configuration [EN_SENC] to 0.  
6.2.2.1 Profile Selection  
When a battery pack is inserted to the host for the first time, both the Packn profiles are empty. The  
bq27501 copies the Def0 profile into Pack0 profile if the voltage measured on the RID pin is Pack 0  
Voltage. The Impedance Track™ algorithm then begins fuel gauging, updating the Pack0 profile as the  
battery is used. Similarly, it copies the Def1 profile into Pack1 profile if the voltage measured on the RID  
pin is Pack 1 Voltage, and the Impedance Track™ algorithm then begins fuel gauging, updating the  
Pack1 profile as the battery is used.  
Assuming the bq27501 has copied the Def0 profile into Pack0 for the first pack used in the system, if the  
pack is replaced with a second pack having the same resistor ID as the first, cell impedance is measured  
after pack detection as explained in Section 6.1.2.1, First OCV and Impedance Measurement. This  
impedance is compared with the Pack0 and Def0 profiles. If it matches the Pack0 impedance, then the  
Pack0 profile is used (this situation indicates the last pack used was re-inserted). If not, a new pack is  
assumed, so the bq27501 copies the Def0 profile into the empty Pack1 profile, and Pack1 is made the  
active profile. This feature helps support accurate fuel gauging for two batteries with the same resistor ID.  
The logic behind this profile selection process is also applied to the case where the first pack inserted  
causes the bq27501 to copy the Def1 profile into Pack1.  
If both the cell profiles are no longer empty (indicating two different battery packs have been used in the  
system) and a battery is inserted, the bq27501 chooses the correct Packn profile to re-write. This decision  
is based on the resistor ID, the impedance of the inserted battery, and the fact that the last-used battery  
profile should not be overwritten.  
32  
APPLICATION-SPECIFIC INFORMATION  
Submit Documentation Feedback  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
www.ti.com  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
7 COMMUNICATIONS  
7.1 I2C INTERFACE  
The 27500/1 supports the standard I2C read, incremental read, quick read, one byte write, and  
incremental write functions. The 7 bit device address (ADDR) is the most significant 7 bits of the hex  
address and is fixed as 1010101. The 8-bit device address will therefore be 0xAA or 0xAB for write or  
read, respectively.  
Host generated  
bq27500/1 generated  
DATA [7:0]  
S
ADDR[6:0]  
0
CMD[7:0]  
P
S
ADDR[6:0]  
A
DATA [7:0]  
(b) quick read  
DATA [7:0]  
N
(a) 1-byte write  
S
ADDR[6:0]  
0
CMD[7:0]  
Sr  
ADDR[6:0]  
1
A
N
(c) 1- byte read  
S
ADDR[6:0]  
0
CMD[7:0]  
Sr  
ADDR[6:0]  
1
A
DATA [7:0]  
A
. . .  
DATA [7:0]  
A . . . A P  
N
(d) incremental read  
S
ADDR[6:0]  
CMD[7:0]  
DATA [7:0]  
DATA [7:0]  
(e) incremental write  
(S = Start, Sr = Repeated Start, A = Acknowledge, N = No Acknowledge , and P = Stop).  
The “quick read” returns data at the address indicated by the address pointer. The address pointer, a  
register internal to the I2C communication engine, will increment whenever data is acknowledged by the  
bq27500/1 or the I2C master. “Quick writes” function in the same manner and are a convenient means of  
sending multiple bytes to consecutive command locations (such as two-byte commands that require two  
bytes of data)  
The following command sequences are not supported:  
Attempt to write a read-only address (NACK after data sent by master):  
Attempt to read an address above 0x6B (NACK command):  
The I2C engine will release both SDA and SCL if the I2C bus is held low for t(BUSERR). If the bq27500/1 was  
holding the lines, releasing them will free the master to drive the lines. If an external condition is holding  
either of the lines low, the I2C engine will enter the low power sleep mode.  
Submit Documentation Feedback  
COMMUNICATIONS  
33  
bq27500  
bq27501  
System-Side Impedance Track™ Fuel Gauge  
SLUS785DSEPTEMBER 2007REVISED APRIL 2008  
www.ti.com  
8 REFERENCE SCHEMATICS  
8.1 SCHEMATIC  
34  
REFERENCE SCHEMATICS  
Submit Documentation Feedback  
PACKAGE OPTION ADDENDUM  
www.ti.com  
30-Jul-2008  
PACKAGING INFORMATION  
Orderable Device  
BQ27500DRZR  
Status (1)  
Package Package  
Pins Package Eco Plan (2) Lead/Ball Finish MSL Peak Temp (3)  
Qty  
Type  
Drawing  
NRND  
SON  
DRZ  
12  
12  
12  
12  
12  
3000 Green (RoHS & CU NIPDAU Level-2-260C-1 YEAR  
no Sb/Br)  
BQ27500DRZR-V100  
BQ27500DRZT  
ACTIVE  
NRND  
SON  
SON  
SON  
SON  
DRZ  
DRZ  
DRZ  
DRZ  
3000 Green (RoHS & CU NIPDAU Level-2-260C-1 YEAR  
no Sb/Br)  
250 Green (RoHS & CU NIPDAU Level-2-260C-1 YEAR  
no Sb/Br)  
BQ27500DRZT-V100  
BQ27501DRZR  
ACTIVE  
PREVIEW  
250 Green (RoHS & CU NIPDAU Level-2-260C-1 YEAR  
no Sb/Br)  
3000  
TBD  
Call TI  
Call TI  
(1) The marketing status values are defined as follows:  
ACTIVE: Product device recommended for new designs.  
LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect.  
NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in  
a new design.  
PREVIEW: Device has been announced but is not in production. Samples may or may not be available.  
OBSOLETE: TI has discontinued the production of the device.  
(2)  
Eco Plan - The planned eco-friendly classification: Pb-Free (RoHS), Pb-Free (RoHS Exempt), or Green (RoHS & no Sb/Br) - please check  
http://www.ti.com/productcontent for the latest availability information and additional product content details.  
TBD: The Pb-Free/Green conversion plan has not been defined.  
Pb-Free (RoHS): TI's terms "Lead-Free" or "Pb-Free" mean semiconductor products that are compatible with the current RoHS requirements  
for all 6 substances, including the requirement that lead not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered  
at high temperatures, TI Pb-Free products are suitable for use in specified lead-free processes.  
Pb-Free (RoHS Exempt): This component has a RoHS exemption for either 1) lead-based flip-chip solder bumps used between the die and  
package, or 2) lead-based die adhesive used between the die and leadframe. The component is otherwise considered Pb-Free (RoHS  
compatible) as defined above.  
Green (RoHS & no Sb/Br): TI defines "Green" to mean Pb-Free (RoHS compatible), and free of Bromine (Br) and Antimony (Sb) based flame  
retardants (Br or Sb do not exceed 0.1% by weight in homogeneous material)  
(3)  
MSL, Peak Temp. -- The Moisture Sensitivity Level rating according to the JEDEC industry standard classifications, and peak solder  
temperature.  
Important Information and Disclaimer:The information provided on this page represents TI's knowledge and belief as of the date that it is  
provided. TI bases its knowledge and belief on information provided by third parties, and makes no representation or warranty as to the  
accuracy of such information. Efforts are underway to better integrate information from third parties. TI has taken and continues to take  
reasonable steps to provide representative and accurate information but may not have conducted destructive testing or chemical analysis on  
incoming materials and chemicals. TI and TI suppliers consider certain information to be proprietary, and thus CAS numbers and other limited  
information may not be available for release.  
In no event shall TI's liability arising out of such information exceed the total purchase price of the TI part(s) at issue in this document sold by TI  
to Customer on an annual basis.  
Addendum-Page 1  
IMPORTANT NOTICE  
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements,  
and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should  
obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are  
sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.  
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard  
warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where  
mandated by government requirements, testing of all parameters of each product is not necessarily performed.  
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and  
applications using TI components. To minimize the risks associated with customer products and applications, customers should provide  
adequate design and operating safeguards.  
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right,  
or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information  
published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a  
warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual  
property of the third party, or a license from TI under the patents or other intellectual property of TI.  
Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied  
by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive  
business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional  
restrictions.  
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all  
express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not  
responsible or liable for any such statements.  
TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably  
be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing  
such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and  
acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products  
and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be  
provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in  
such safety-critical applications.  
TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are  
specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military  
specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at  
the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use.  
TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are  
designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated  
products in automotive applications, TI will not be responsible for any failure to meet such requirements.  
Following are URLs where you can obtain information on other Texas Instruments products and application solutions:  
Products  
Applications  
Audio  
Automotive  
Broadband  
Digital Control  
Medical  
Amplifiers  
Data Converters  
DSP  
Clocks and Timers  
Interface  
amplifier.ti.com  
dataconverter.ti.com  
dsp.ti.com  
www.ti.com/clocks  
interface.ti.com  
logic.ti.com  
www.ti.com/audio  
www.ti.com/automotive  
www.ti.com/broadband  
www.ti.com/digitalcontrol  
www.ti.com/medical  
www.ti.com/military  
Logic  
Military  
Power Mgmt  
Microcontrollers  
RFID  
power.ti.com  
microcontroller.ti.com  
www.ti-rfid.com  
Optical Networking  
Security  
Telephony  
Video & Imaging  
Wireless  
www.ti.com/opticalnetwork  
www.ti.com/security  
www.ti.com/telephony  
www.ti.com/video  
RF/IF and ZigBee® Solutions www.ti.com/lprf  
www.ti.com/wireless  
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265  
Copyright © 2008, Texas Instruments Incorporated  

相关型号:

SI9130DB

5- and 3.3-V Step-Down Synchronous Converters

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135LG-T1

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135LG-T1-E3

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135_11

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9136_11

Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130CG-T1-E3

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130LG-T1-E3

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130_11

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137DB

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137LG

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9122E

500-kHz Half-Bridge DC/DC Controller with Integrated Secondary Synchronous Rectification Drivers

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY