TI bq27500YZGT-V130

bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
System-Side Impedance Track Fuel Gauge
Check for Samples: bq27500-V130
1 INTRODUCTION
1.1
FEATURES
1.2
• Battery Fuel Gauge for 1-Series Li-Ion
Applications
• Resides on System Main Board
– Works With Embedded or Removable
Battery Packs
• Uses PACK+, PACK–, and T Battery Terminals
• Microcontroller Peripheral Provides:
– Accurate Battery Fuel Gauging
– Internal Temperature Sensor for System
Temperature Reporting
– Battery Low Interrupt Warning
– Battery Insertion Indicator
– 96 Bytes of Non-Volatile Scratch-Pad FLASH
• Battery Fuel Gauge Based on Patented
Impedance Track™ Technology
– Models the Battery Discharge Curve for
Accurate Time-to-Empty Predictions
– Automatically Adjusts for Battery Aging,
Battery Self-Discharge, and
Temperature/Rate Inefficiencies
– Low-Value Sense Resistor (10 mΩ or Less)
• I2C™ Interface for Connection to System
Microcontroller Port
• 12-Pin 2,5-mm × 4-mm SON Package
•
•
•
•
•
1234
APPLICATIONS
Smart Phones
PDAs
Digital Still and Video Cameras
Handheld Terminals
MP3 or Multimedia Players
1.3
DESCRIPTION
The Texas Instruments bq27500 system-side Li-Ion
battery fuel gauge is a microcontroller peripheral that
provides fuel gauging for single-cell Li-Ion battery
packs.
The
device
requires
little
system
microcontroller firmware development. The bq27500
resides on the system main board and manages an
embedded battery (non-removable) or a removable
battery pack.
The bq27500 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 gauging with the bq27500 requires only
PACK+ (P+), PACK– (P–), and Thermistor (T)
connections to a removable battery pack or
embedded battery.
TYPICAL APPLICATION
Host System
LDO
Single-Cell Li-Ion
Battery Pack
Battery
Low
Warning
Power
Management
Controller
Voltage
Sense
Temp
Sense
2
I C
PACK+
Protection
IC
T
bq27500
Battery
Good
PACK–
FETs
CHG
DSG
Current
Sense
1
2
3
4
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 data sheet.
Impedance Track, bqEASY are trademarks of Texas Instruments.
I2C is a trademark of NXP B.V.
All other trademarks are the property of their respective owners.
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 © 2009, Texas Instruments Incorporated
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
These devices have limited built-in ESD protection. The leads should be shorted together or the device placed in conductive foam
during storage or handling to prevent electrostatic damage to the MOS gates.
1
2
3
.........................................
..........................................
1.2
APPLICATIONS ......................................
1.3
DESCRIPTION .......................................
DEVICE INFORMATION ................................
2.1
AVAILABLE OPTIONS ...............................
2.2
DISSIPATION RATINGS ............................
2.3
DEVICE INFORMATION .............................
ELECTRICAL SPECIFICATIONS .....................
3.1
ABSOLUTE MAXIMUM RATINGS ..................
3.2
RECOMMENDED OPERATING CONDITIONS .....
3.3
POWER-ON RESET .................................
5.3
1
FEATURES
4.3
1
1
3
5
3
5
5.4
5
5.5
5.6
5
6
INTERNAL TEMPERATURE SENSOR
CHARACTERISTICS ................................ 6
.................
3.5
HIGH-FREQUENCY OSCILLATOR
3.6
3.7
LOW-FREQUENCY OSCILLATOR .................. 6
INTEGRATING ADC (COULOMB COUNTER)
CHARACTERISTICS ................................ 6
ADC (TEMPERATURE AND CELL
MEASUREMENT) CHARACTERISTICS ............ 7
3.8
3.9
3.10
6
DATA FLASH MEMORY CHARACTERISTICS ..... 7
I2C-COMPATIBLE INTERFACE COMMUNICATION
TIMING CHARACTERISTICS ....................... 7
............................. 9
DATA COMMANDS ................................ 10
DATA FLASH INTERFACE ........................ 17
6
7
GENERAL DESCRIPTION
4.1
4.2
2
3
1
1.1
3.4
4
3
......
4.4
ACCESS MODES ..................................
4.5
SEALING/UNSEALING DATA FLASH .............
4.6
DATA FLASH SUMMARY ..........................
FUNCTIONAL DESCRIPTION ........................
5.1
FUEL GAUGING ...................................
5.2
Impedance Track VARIABLES .....................
INTRODUCTION
8
MANUFACTURER INFORMATION BLOCKS
18
18
19
19
21
21
22
DETAILED DESCRIPTION OF DEDICATED PINS
......................................................
TEMPERATURE MEASUREMENT ................
OVERTEMPERATURE INDICATION ..............
24
26
27
CHARGING AND CHARGE-TERMINATION
INDICATION ........................................ 27
...................................
................................
5.9
AUTOCALIBRATION ...............................
APPLICATION-SPECIFIC INFORMATION .........
5.7
POWER MODES
28
5.8
POWER CONTROL
31
6.1
BATTERY PROFILE STORAGE AND SELECTION
6.2
APPLICATION-SPECIFIC FLOW AND CONTROL
......................................................
......................................................
31
32
32
32
COMMUNICATIONS
7.1
I2C INTERFACE
7.2
I2C TIME OUT
7.3
I2C COMMAND WAITING TIME
REFERENCE SCHEMATICS
8.1
SCHEMATIC
Contents
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
2 DEVICE INFORMATION
2.1
AVAILABLE OPTIONS
PART NUMBER
FIRMWARE
VERSION (1)
PACKAGE (2)
TA
COMMUNICATION FORMAT
1.30
12-pin, 2,5-mm × 4-mm SON
–40°C to 85°C
I2C
bq27500DRZR-V130
bq27500DRZT-V130
bq27500YZGR-V130
1.30
bq27500YZGT-V130
(1)
(2)
2.2
(1)
250
3000
I2C
–40°C to 85°C
250
DISSIPATION RATINGS
PACKAGE
TA ≤ 40°C
POWER RATING
DERATING FACTOR
TA > 40°C
RθJA
12-pin DRZ (1)
482 mW
5.67 mW/°C
176°C/W
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.
THERMAL RESISTANCE (1)
12-pin CSP
2.3
3000
Ordering the device with the latest firmware version is recommended. To check the firmware revision and Errata list see SLUZ015
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.
PACKAGE
(1)
(2)
CSP-12
TAPE and REEL
QUANTITY
RθJA = 89°C/W
(2)
DERATING FACTOR (1)
ABOVE TA = 25°C
POWER RATING
TA = 25°C
RθJA = 35°C/W
1.1 mW/°C
(2)
12 mW/°C
Measured with high-K board.
Maximum power dissipation is a function of TJ(max), RθJA, and TA. The maximum allowable power dissipation at any allowable ambient
temperature is PD = (TJ(max) – TA)/RθJA.
DEVICE INFORMATION
DRZ PACKAGE
(TOP VIEW)
BAT_LOW
1
12
BAT_GD
BI/TOUT
2
11
SCL
TS
3
10
SDA
bq27500
BAT
4
9
NC
VCC
5
8
SRN
VSS
6
7
SRP
CSP PACKAGE
(TOP VIEW)
CSP PACKAGE
(BOTTOM VIEW)
A3
B3
C3
D3
D3
C3
B3
A3
A2
B2
C2
D2
D2
C2
B2
A2
A1
B1
C1
D1
D1
C1
B1
A1
DEVICE INFORMATION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
3
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
Table 2-1. PIN FUNCTIONS
PIN
NAME
NO.
TYPE (1)
DESCRIPTION
DRZ
CSP
BAT
4
C2
I
Cell-voltage measurement input. ADC input. Decouple with 0.1-μF capacitor.
BAT_GD
12
B2
O
Battery-good indicator. Active-low by default, though polarity can be
configured through the [BATG_POL] of Operation Configuration.
Open-drain (OD) output
BAT_LOW
1
C1
O
Battery-low output indicator. Pin function controlled by Operation
Configuration Register and commands. Active-high by default, though polarity
can be configured through the [BATL_POL] in Operation Configuration.
Push-pull output
BI/TOUT
2
C3
I/O
Battery-insertion detection input. Power pin for pack thermistor network.
Thermistor multiplexer control pin. Open-drain (OD) I/O. Use with pullup
resistor > 1 MΩ (1.8 MΩ typical).
NC
9
A2
–
No connection
SCL
11
B3
I
Slave I2C serial communications clock input line for communication with
system (master). Open-drain (OD) I/O. Use with 10-kΩ pullup resistor
(typical).
SDA
10
A3
I/O
Slave I2C serial communications data line for communication with system
(master). Open-drain (OD) I/O. Use with 10-kΩ pullup resistor (typical).
SRN
8
B1
IA
Analog input pin connected to the internal coulomb counter where SRN is
nearest the system VSS connection. Connect to 5-mΩ to 20-mΩ sense
resistor.
SRP
7
A1
IA
Analog input pin connected to the internal coulomb counter, where SRP is
nearest the PACK– connection. Connect to 5-mΩ to 20-mΩ sense resistor.
TS
3
D3
IA
Pack thermistor voltage sense (requires the use of NTC 103AT-type
thermistor). ADC input
VCC
5
D2
P
Processor power input. Decouple with 0.1-μF capacitor, minimum.
VSS
6
D1
P
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).
(1)
4
I = Digital input, O = Digital output, I/O = Digital input/output, IA = Analog input, P = Power connection
DEVICE INFORMATION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
3 ELECTRICAL SPECIFICATIONS
3.1
ABSOLUTE MAXIMUM RATINGS
over operating free-air temperature range (unless otherwise noted) (1)
PARAMETER
VCC
Supply voltage range
VIOD
Open-drain I/O pins (SDA, SDL, BAT_GD)
VBAT
BAT input pin
VI
Input voltage range to all other pins (BI/TOUT, TS, SRP, SRN, NC)
Human-body model (HBM), BAT pin
ESD
VALUE
UNIT
–0.3 to 2.75
V
–0.3 to 6
V
–0.3 to 6
V
–0.3 to VCC + 0.3
V
1.5
Human-body model (HBM), all other pins
kV
2
TA
Operating free-air temperature range
–40 to 85
°C
TF
Functional temperature range
–40 to 100
°C
Tstg
Storage temperature range
–65 to 150
°C
(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 = –40°C to 85°C; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)
PARAMETER
VCC
TEST CONDITIONS
Supply voltage
MIN
TYP
MAX
2.4
2.5
2.6
UNIT
V
ICC
Normal operating-mode current
Fuel gauge in NORMAL mode.
ILOAD > Sleep Current
ISLP+
Sleep+ operating-mode current
Fuel gauge in SLEEP+ mode.
ILOAD < Sleep Current
58
μA
ISLP
Low-power storage-mode current
Fuel gauge in SLEEP mode.
ILOAD < Sleep Current
19
μA
IHIB
Hibernate operating-mode current
Fuel gauge in HIBERNATE mode.
ILOAD < Hibernate Current
4
μA
VOL
Output voltage, low (SDA, BAT_LOW,
BI/TOUT)
IOL = 3 mA
VOH(PP)
Output voltage, high (BAT_LOW, BI/TOUT)
IOH = –1 mA
VCC – 0.5
V
Output voltage, high (SDA, SCL, BAT_GD)
External pullup resistor connected to
VCC
VCC – 0.5
V
VOH(OD)
VIL
Input voltage (OD), low (SDA, SCL)
Input voltage, low (BI/TOUT)
BAT INSERT CHECK MODE active
Input voltage (OD), high (SDA, SCL)
VIH
Input voltage, high (BI/TOUT)
BAT INSERT CHECK MODE active
114
μA
0.4
–0.3
0.6
–0.3
0.6
1.2
6
1.2
VCC +
0.3
35
V
V
V
CIN
Input capacitance (SDA, SCL, BI/TOUT)
pF
VA1
Input voltage range (TS)
VSS – 0.125
2
V
VA2
Input voltage range (BAT)
VSS – 0.125
5
V
VA3
Input voltage range (SRP, SRN)
VSS – 0.125
0.125
V
Ilkg
Input leakage current (I/O pins)
tPUCD
Power-up communication delay
0.3
250
ELECTRICAL SPECIFICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
μA
ms
5
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
3.3
www.ti.com
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
VIT+
Positive-going battery voltage input at VCC
VHYS
Hysteresis voltage
3.4
MIN
TYP
MAX
2.09
2.2
2.31
UNIT
V
45
115
185
mV
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
GTEMP
3.5
TEST CONDITIONS
MIN
TYP
Temperature-sensor voltage gain
MAX
UNIT
–2
mV/°C
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
fOSC
TEST CONDITIONS
MIN
Operating frequency
TA = 0°C to 60°C
Frequency error (1)
fEIO
(1)
(2)
(3)
MAX
(2)
UNIT
MHz
–2% 0.38%
2%
TA = –20°C to 70°C
–3% 0.38%
3%
TA = –40°C to 85°C
–4.5% 0.38%
4.5%
2.5
5
Start-up time (3)
tSXO
TYP
2.097
ms
The frequency error is measured from 2.097 MHz.
The frequency drift is included and measured from the trimmed frequency at VCC = 2.5 V, TA = 25°C.
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.6
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
fLOSC
MIN
Operating frequency
fLEIO
Frequency error (1)
tLSXO
Start-up time (3)
(1)
(2)
(3)
TEST CONDITIONS
(2)
TYP
MAX
UNIT
32.768
kHz
TA = 0°C to 60°C
–1.5%
0.25%
1.5%
TA = –20°C to 70°C
–2.5%
0.25%
2.5%
TA = –40°C to 85°C
–4%
0.25%
4%
μs
500
The frequency drift is included and measured from the trimmed frequency at VCC = 2.5 V, TA = 25°C.
The frequency error is measured from 32.768 kHz.
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
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
TEST CONDITIONS
VSR
Input voltage range (VSR = V(SRN) – V(SRP))
tSR_CONV
Conversion time
Input offset
INL
Integral nonlinearity error
ZIN(SR)
Effective input resistance (1)
Ilkg(SR)
Input leakage current (1)
(1)
6
TYP
–0.125
Single conversion
Resolution
VOS(SR)
MIN
MAX
UNIT
0.125
V
1
14
s
15
bits
μV
10
±0.007 ±0.034
2.5
% FSR
MΩ
0.3
μA
Specified by design. Not tested in production.
ELECTRICAL SPECIFICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
3.8
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
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
VIN(ADC)
Input voltage range
tADC_CONV
Conversion time
TEST CONDITIONS
MIN
Resolution
MAX
Input offset
ZADC1
Effective input resistance (TS, NC) (1)
ZADC2
Effective input resistance (BAT) (1)
Ilkg(ADC)
Input leakage current (1)
UNIT
1
14
VOS(ADC)
(1)
TYP
–0.2
V
125
ms
15
bits
1
bq27500 not measuring cell voltage
mV
8
MΩ
8
MΩ
bq27500 measuring cell voltage
100
kΩ
μA
0.3
Specified by design. Not tested in production.
3.9
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
TEST CONDITIONS
Data retention (1)
tON
Flash-programming write cycles (1)
TYP
MAX
Word programming time
ICCPROG
Flash-write supply current (1)
UNIT
10
Years
20,000
Cycles
(1)
tWORDPROG
(1)
MIN
5
2
ms
10
mA
Specified by design. Not production tested
3.10
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)
MAX
UNIT
tr
SCL/SDA rise time
PARAMETER
TEST CONDITIONS
MIN
TYP
300
ns
tf
SCL/SDA fall time
300
ns
tw(H)
SCL pulse duration (high)
600
ns
tw(L)
SCL pulse duration (low)
1.3
μs
tsu(STA)
Setup for repeated start
600
ns
td(STA)
Start to first falling edge of SCL
600
ns
tsu(DAT)
Data setup time
100
ns
th(DAT)
Data hold time
0
ns
tsu(STOP)
Setup time for stop
t(BUF)
Bus free time between stop and start
fSCL
Clock frequency
600
ns
66
μs
400
ELECTRICAL SPECIFICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
kHz
7
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
Figure 3-1. I2C-Compatible Interface Timing Diagrams
8
ELECTRICAL SPECIFICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
4 GENERAL DESCRIPTION
The bq27500 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 control and
status registers, as well as its data flash locations. Commands are sent from system to gauge using the
bq27500 I2C serial communications engine, and can be executed during application development, pack
manufacture, or end-equipment operation.
Cell information is stored in the bq27500 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 use of the bq27500 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 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 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 measures charge/discharge activity by monitoring the voltage across a small-value series
sense resistor (5 mΩ to 20 mΩ, typ.) located between the system VSS and the battery PACK– terminal.
When a cell is attached to the bq27500, cell impedance is computed, based on cell current, cell
open-circuit voltage (OCV), and cell voltage under loading conditions.
The bq27500 external temperature sensing is optimized with the use of a high accuracy negative
temperature coefficient (NTC) thermistor with R25 = 10.0 kΩ ± 1% and B25/85 = 3435 K ± 1% (such as
Semitec NTC 103AT). The bq27500 can also be configured to use its internal temperature sensor. When
an external thermistor is used, an 18.2-kΩ pullup resistor between the BI/TOUT and TS pins is also
required. The bq27500 uses temperature to monitor the battery-pack environment, which is used for fuel
gauging and cell protection functionality.
To minimize power consumption, the bq27500 has different power modes: NORMAL, SLEEP+, SLEEP,
HIBERNATE, and BAT INSERT CHECK. The bq27500 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.
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
9
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
4.1
www.ti.com
DATA COMMANDS
4.1.1
STANDARD DATA COMMANDS
The bq27500 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.
Table 4-1. Standard Commands
COMMAND CODE
UNITS
SEALED ACCESS
Control( )
NAME
CNTL
0x00 / 0x01
N/A
R/W
AtRate( )
AR
0x02 / 0x03
mA
R/W
AtRateTimeToEmpty( )
ARTTE
0x04 / 0x05
Minutes
R
Temperature( )
TEMP
0x06 / 0x07
0.1 K
R
Voltage( )
VOLT
0x08 / 0x09
mV
R
Flags( )
FLAGS
0x0a / 0x0b
N/A
R
NominalAvailableCapacity( )
NAC
0x0c / 0x0d
mAh
R
FullAvailableCapacity( )
FAC
0x0e / 0x0f
mAh
R
RemainingCapacity( )
RM
0x10 / 0x11
mAh
R
FullChargeCapacity( )
FCC
0x12 / 0x13
mAh
R
AI
0x14 / 0x15
mA
R
TimeToEmpty( )
TTE
0x16 / 0x17
Minutes
R
TimeToFull( )
TTF
0x18 / 0x19
Minutes
R
SI
0x1a / 0x1b
mA
R
STTE
0x1c / 0x1d
Minutes
R
AverageCurrent( )
StandbyCurrent( )
StandbyTimeToEmpty( )
MaxLoadCurrent( )
MaxLoadTimeToEmpty( )
AvailableEnergy( )
AveragePower( )
MLI
0x1e / 0x1f
mA
R
MLTTE
0x20 / 0x21
Minutes
R
AE
0x22 / 0x23
mWh
R
AP
0x24 / 0x25
mW
R
TimeToEmptyAtConstantPower( )
TTECP
0x26 / 0x27
Minutes
R
Reserved
RSVD
0x28 / 0x29
N/A
R
CC
0x2a / 0x2b
Counts
R
SOC
0x2c / 0x2d
%
R
CycleCount( )
StateOfCharge( )
10
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
4.1.1.1
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
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 during normal operation and additional features when the bq27500 is in different
access modes, as described in Table 4-2.
Table 4-2. Control( ) Subcommands
CNTL
DATA
SEALED
ACCESS
CONTROL_STATUS
0x0000
Yes
Reports the status of DF checksum, hibernate, IT, etc.
DEVICE_TYPE
0x0001
Yes
Reports the device type (e.g., "bq27500")
FW_VERSION
0x0002
Yes
Reports the firmware version of the device type
DF_CHECKSUM
0x0004
No
Enables a data flash checksum to be generated and
reports on a read
RESET_DATA
0x0005
Yes
Returns reset data
Reserved
0x0006
No
Not to be used
PREV_MACWRITE
0x0007
Yes
Returns previous MAC command code
CHEM_ID
0x0008
Yes
Reports the chemical identifier of the Impedance Track
configuration
BATL_ENABLE
0x000d
Yes
Enables the BAT_LOW pin function for SOC1 and voltage
detection when [BATL_CTL] bit is 0
BATL_DISABLE
0x000e
Yes
Forces the BAT_LOW pin to low when [BATL_CTL] bit is 0
SET_HIBERNATE
0x0011
Yes
Forces CONTROL_STATUS [HIBERNATE] to 1
CLEAR_HIBERNATE
0x0012
Yes
Forces CONTROL_STATUS [HIBERNATE] to 0
SET_SLEEP+
0x0013
Yes
Forces CONTROL_STATUS [SNOOZE] to 1
CLEAR_SLEEP+
0x0014
Yes
Forces CONTROL_STATUS [SNOOZE] to 0
SEALED
0x0020
No
Places the bq27500 in SEALED access mode
IT_ENABLE
0x0021
No
Enables the Impedance Track algorithm
CAL_MODE
0x0040
No
Places the bq27500 in calibration mode
RESET
0x0041
No
Forces a full reset of the bq27500
CNTL FUNCTION
DESCRIPTION
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
HIBERNATE
bit5
SS
SNOOZE
bit4
CSV
SLEEP
bit3
CCA
LDMD
bit2
BCA
RUP_DIS
bit1
–
VOK
bit0
–
QEN
FAS = Status bit indicating the bq27500 is in FULL ACCESS SEALED state. Active when set
SS = Status bit indicating the bq27500 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 coulomb counter calibration routine is active. Active when set. The first CCA routine takes place
approximately 1 minute after the initialization.
BCA = Status bit indicating the bq27500 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
SNOOZE = Status bit indicating the bq27500 SLEEP+ mode is enabled. True when set
SLEEP = Status bit indicating the bq27500 is in SLEEP mode. True when set
LDMD = Status bit indicating the bq27500 Impedance Track algorithm is using constant-power mode. True when set. Default is 0
(constant-current mode).
RUP_DIS = Status bit indicating the bq27500 Ra table updates are disabled. Updates disabled when set
VOK = Status bit indicating the bq27500 voltages are okay for Qmax. True when set
QEN = Status bit indicating the bq27500 Qmax updates are enabled. True when set
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
11
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
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
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.5 RESET_DATA: 0x0005
Instructs the fuel gauge to return the reset data to addresses 0x00/0x01.
4.1.1.1.6 PREV_MACWRITE: 0x0007
Instructs the fuel gauge to return the previous command written to addresses 0x00/0x01. Note: This
subcommand is only supported for previous subcommand codes 0x0000 through 0x0009. For
subcommand codes greater than 0x0009, a value of 0x0007 is returned.
4.1.1.1.7 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.8 BATL_ENABLE: 0x000d
Instructs the fuel gauge to enable the BAT_LOW pin function for SOC1 and voltage detection when the
[BATL_CTL] bit is 0. See BAT_LOW Pin, Section 5.3.3.
4.1.1.1.9 BATL_DISABLE: 0x000e
Instructs the fuel gauge to force the BAT_LOW pin to low when the [BATL_CTL] bit is 0. See BAT_LOW
Pin, Section 5.3.3.
4.1.1.1.10 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.11 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.
4.1.1.1.12 ENABLE SLEEP+ MODE: 0x0013
Instructs the fuel gauge to set the CONTROL_STATUS [SNOOZE] bit to 1. This enables the SLEEP+
mode. The gauge enters SLEEP+ power mode after the transition conditions are met.
4.1.1.1.13 DISABLE SLEEP+ MODE: 0x0014
Instructs the fuel gauge to set the CONTROL_STATUS [SNOOZE] bit to 0. This disables the SLEEP+
mode. The gauge exits from the SLEEP+ power mode after the [SNOOZE] bit is cleared.
12
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
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 Update
Status 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 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.17 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 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 AtRateTimeToEmpty( ) 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-only 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-only function returns an unsigned integer value of the temperature in units of 0.1 K measured by
the fuel gauge.
4.1.1.5
Voltage( ): 0x08/0x09
This read-only function returns an unsigned integer value of the measured cell-pack voltage in mV with a
range of 0 to 5,000 mV.
4.1.1.6
Flags( ): 0x0a/0x0b
This read-only function returns the contents of the fuel-gauge status register, depicting the present
operating status.
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
13
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
Table 4-4. Flags Bit Definitions
High byte
Low byte
bit7
OTC
–
bit6
OTD
–
bit5
–
OCV_GD
bit4
–
WAIT_ID
bit3
CHG_INH
BAT_DET
bit2
XCHG
SOC1
bit1
FC
SOCF
bit0
CHG
DSG
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 (RMFCC = 1; Set FC_Set% = -1% when RMFCC = 0) . 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 (less than C/20 load) battery capacity
remaining. Units are mAh.
4.1.1.8
FullAvailableCapacity( ): 0x0e/0x0f
This read-only command pair returns the uncompensated (less than C/20 load) capacity of the battery
when fully charged. Units are mAh. 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.
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. 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.
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 Current, and after spending several seconds in standby, reports the
measured standby current.
14
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
The register value is updated every 1 second when the measured current is above the Deadband in
Table 4-7 and is less than or equal to 2 × Initial Standby Current. The first and last values that meet this
criterion is not averaged in, because they may not be stable values. To approximate a 1-minute time
constant, each new StandbyCurrent( ) value is computed by taking approximately 93% of the weight of the
last standby current and approximately 7% of the present measured average current.
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-only function returns a signed integer value of the average power during battery charging and
discharging. It is negative during discharge and positive during charge. 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%.
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
15
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
4.1.2
www.ti.com
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.
Table 4-5. Extended Data Commands
COMMAND
CODE
NAME
UNITS
SEALED
ACCESS (1) (2)
UNSEALED
ACCESS (1)
R
Reserved
RSVD
0x34...0x3b
N/A
R
DesignCapacity( )
DCAP
0x3c / 0x3d
mAh
R
R
DataFlashClass( ) (2)
DFCLS
0x3e
N/A
N/A
R/W
DataFlashBlock( ) (2)
DFBLK
0x3f
N/A
R/W
R/W
DFD
0x40…0x5f
N/A
R
R/W
BlockDataCheckSum( )
DFDCKS
0x60
N/A
R/W
R/W
BlockDataControl( )
DFDCNTL
0x61
N/A
N/A
R/W
DNAMELEN
0x62
N/A
R
R
DNAME
0x63...0x69
N/A
R
R
APPSTAT
0x6a
N/A
R
R
RSVD
0x6b...0x7f
N/A
R
R
BlockData( )
DeviceNameLength( )
DeviceName( )
ApplicationStatus( )
Reserved
(1)
(2)
SEALED and UNSEALED states are entered via commands to CNTL 0x00/0x01.
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( ): 0x40…0x5f
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.
16
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
4.1.2.5
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
BlockDataChecksum( ): 0x60
UNSEALED Access: This byte contains the checksum on the 32 bytes of block data read from 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.
4.1.2.6
BlockDataControl( ): 0x61
UNSEALED Access: This command is used to control the 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 Device Name.
4.1.2.8
DeviceName( ): 0x63…0x69
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 Application Status data flash location. See
Table 6-1 for specific bit definitions.
4.1.2.10 Reserved — 0x6b–0x7f
4.2
4.2.1
DATA FLASH INTERFACE
ACCESSING THE DATA FLASH
The bq27500 data flash is a non-volatile memory that contains bq27500 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 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 is either in UNSEALED or SEALED modes.
Most data flash locations, however, are only accessible in UNSEALED mode by use of the bq27500
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( ) (0x40…0x5f), 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).
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
17
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
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.
None of the data written to memory are bounded by the bq27500– 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 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 mode.
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 = 57 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 information in the bq27500 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 0x40…0x5f 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 provides three security modes (FULL ACCESS, UNSEALED, and SEALED) that control
data flash access permissions, according to Table 4-6. Data Flash refers to those data flash locations,
specified in Table 4-7, that are accessible to the user. Manufacture Information refers to the three 32-byte
blocks.
Table 4-6. Data Flash Access
18
Security Mode
Data Flash
Manufacture Information
FULL ACCESS
R/W
R
UNSEALED
R/W
R
SEALED
None
R
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
Although FULL ACCESS and UNSEALED modes appear identical, only FULL ACCESS allows the
bq27500 to write access-mode transition keys.
4.5
SEALING/UNSEALING DATA FLASH
The bq27500 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 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.
When in SEALED mode, the CONTROL_STATUS [SS] bit is set, but when the unseal keys are correctly
received by the bq27500, 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 keys is Key
1 followed by Key 0. The order of the bytes entered through the Control( ) command is the reverse of
what is read from the part. For example, if the Key 1 and Key 0 of the Unseal Key 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
Class
Subclass
ID
Subclass
Offset
Data
Type
Min
Value
Max
Value
Default
Value
Units
Configuration
2
Safety
0
Configuration
2
Safety
2
OT Chg
I2
0
1200
550
0.1°C
OT Chg Time
U1
0
60
2
Configuration
2
Safety
s
3
OT Chg Recovery
I2
0
1200
500
0.1°C
Configuration
2
Configuration
2
Safety
5
OT Dsg
I2
0
1200
600
0.1°C
Safety
7
OT Dsg Time
U1
0
60
2
Configuration
s
2
Safety
8
OT Dsg Recovery
I2
0
1200
550
0.1°C
Configuration
32
Charge Inhibit
Config
0
Charge Inhibit Temp Low
I2
–400
1200
0
0.1°C
Configuration
32
Charge Inhibit
Config
2
Charge Inhibit Temp High
I2
–400
1200
450
0.1°C
Configuration
32
Charge Inhibit
Config
4
Temp Hys
I2
0
100
50
0.1°C
Configuration
34
Charge
2
Charging Voltage
I2
0
20,000
4200
mV
Configuration
34
Charge
4
Delta Temp
I2
0
500
50
0.1°C
Configuration
34
Charge
6
Suspend Low Temp
I2
–400
1200
–50
0.1°C
Configuration
34
Charge
8
Suspend High Temp
I2
–400
1200
550
0.1°C
Configuration
36
Charge
Termination
0
Taper Current
I2
0
1000
100
mA
Configuration
36
Charge
Termination
2
Minimum Taper Charge
I2
0
1000
25
0.01mAh
Configuration
36
Charge
Termination
4
Taper Voltage
I2
0
1000
100
mV
Configuration
36
Charge
Termination
6
Current Taper Window
U1
0
60
40
s
Configuration
36
Charge
Termination
9
FC Set %
I1
–1
100
100
%
Configuration
36
Charge
Termination
10
FC Clear %
I1
–1
100
98
%
Name
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
19
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
Table 4-7. Data Flash Summary (continued)
20
Class
Subclass
ID
Subclass
Offset
Min
Value
Max
Value
Default
Value
Units
Configuration
48
Data
4
Initial Standby Current
Configuration
48
Data
5
Initial Max Load Current
I1
–128
I2
–32,767
0
–10
mA
0
–500
Configuration
48
Data
7
CC Threshold
I2
mA
100
32,767
900
mAh
Configuration
48
Data
10
Design Capacity
I2
0
65,535
1000
mAh
Configuration
48
Data
12
Device Name
S8
x
x
bq27500
–
Configuration
Configuration
49
Discharge
49
Discharge
0
SOC1 Set Threshold
U1
0
255
150
mAh
1
SOC1 Clear Threshold
U1
0
255
175
Configuration
49
mAh
Discharge
2
SOCF Set Threshold
U1
0
255
75
Configuration
mAh
49
Discharge
3
SOCF Clear Threshold
U1
0
255
100
mAh
System Data
57
Manufacturer
Info
0–31
Block A [0–31]
H1
0x00
0xff
0x00
–
System Data
57
Manufacturer
Info
32–63
Block B [0–31]
H1
0x00
0xff
0x00
–
System Data
57
Manufacturer
Info
64–95
Block C [0–31]
H1
0x00
0xff
0x00
–
Configuration
64
Registers
0
Operation Configuration
H2
0x0000
0xffff
0x0979
–
Configuration
64
Registers
8
Batt Insert Delay
U2
0
65,535
0
ms
Configuration
64
Registers
10
Sleep Insert Delay
U1
0
255
0
s
Configuration
68
Power
0
Flash Update OK Voltage
I2
0
4200
2800
mV
Configuration
68
Power
7
Sleep Current
I2
0
100
10
mA
Configuration
68
Power
16
Hibernate Current
U2
0
700
8
mA
Configuration
68
Power
18
Hibernate Voltage
U2
2400
3000
2550
mV
Configuration
68
Power
20
BAT_LOW Enable Voltage
U2
2800
4000
3400
mV
Fuel Gauging
80
IT Cfg
0
Load Select
U1
0
255
1
–
Fuel Gauging
80
IT Cfg
1
Load Mode
U1
0
255
0
–
Fuel Gauging
80
IT Cfg
48
Terminate Voltage
I2
–32,768
32,767
3000
mV
Fuel Gauging
80
IT Cfg
53
User Rate-mA
I2
0
9000
0
mA
Fuel Gauging
80
IT Cfg
55
User Rate-mW
I2
0
14,000
0
mW
Fuel Gauging
80
IT Cfg
57
Reserve Cap-mAh
I2
0
9000
0
mAh
Fuel Gauging
80
IT Cfg
59
Reserve Cap-mWh
I2
0
14,000
0
mWh
Fuel Gauging
81
Current
Thresholds
0
Dsg Current Threshold
I2
0
2000
60
mA
Fuel Gauging
81
Current
Thresholds
2
Chg Current Threshold
I2
0
2000
75
mA
Fuel Gauging
81
Current
Thresholds
4
Quit Current
I2
0
1000
40
mA
Fuel Gauging
81
Current
Thresholds
6
Dsg Relax Time
U2
0
8191
60
s
Fuel Gauging
81
Current
Thresholds
8
Chg Relax Time
U1
0
255
60
s
Fuel Gauging
81
Current
Thresholds
9
Quit Relax Time
U1
0
63
1
s
Fuel Gauging
81
Current
Thresholds
10
Transient Factor Charge
U1
0
255
128
–
Fuel Gauging
81
Current
Thresholds
11
Transient Factor Discharge
U1
0
255
128
–
Fuel Gauging
81
Current
Thresholds
12
Max IR Correct
U2
0
1000
400
mV
Fuel Gauging
82
State
0
IT Enable
H1
0x00
0xff
0x00
–
Fuel Gauging
82
State
1
Application Status
H1
0x00
0xff
0x00
–
Fuel Gauging
82
State
2
Qmax Cell 0
I2
0
32,767
1000
mAh
Fuel Gauging
82
State
4
Cycle Count 0
U2
0
65,535
0
–
Name
Data
Type
GENERAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
Table 4-7. Data Flash Summary (continued)
Class
Subclass
ID
Subclass
Offset
Data
Type
Min
Value
Fuel Gauging
82
State
6
Fuel Gauging
82
State
7
Update Status 0
H1
0x00
0x03
0x00
–
Qmax Cell 1
I2
0
32767
1000
mAh
Fuel Gauging
82
State
Fuel Gauging
82
State
9
Cycle Count 1
U2
0
65,535
0
–
11
Update Status 1
H1
0x00
0x03
0x00
Fuel Gauging
82
State
–
16
Avg I Last Run
I2
–32,768
32,767
–299
mA
Fuel Gauging
82
State
18
Avg P Last Run
I2
–32,768
32,767
–1131
mAh
Default Ra
Tables
87
Def0 Ra
0–18
Default Ra
Tables
88
Def1 Ra
0–18
Ra Tables
91
Pack0 Ra
0–18
Ra Tables
92
Pack1 Ra
0–18
Ra Tables
93
Pack0 Rax
0–18
Ra Tables
94
Pack1 Rax
0–18
Calibration
104
Data
0
F4 (2)
0.1
47
10 (3)
mΩ
(2)
4.7
188
10 (3)
mΩ
mV
Name
Max
Value
Default
Value
Units
See Note (1)
See Note (1)
CC Gain
Calibration
104
Data
4
CC Delta
Calibration
104
Data
8
CC Offset
I2
–2.4
2.4
–0.123 (3)
Calibration
104
Data
10
Board Offset
I1
–128
127
0
mV
Calibration
104
Data
11
Int Temp Offset
I1
–128
127
0
0.1°C
Calibration
104
Data
12
Ext Temp Offset
I1
–128
127
0
0.1°C
Calibration
104
Data
13
Pack V Offset
I1
–128
127
0
0.1°C
Calibration
107
Current
1
Deadband
U1
0
255
5
mA
Security
112
Codes
0
Unseal Key 0
H2
0x0000
0xffff
0x3672
–
Security
112
Codes
2
Unseal Key 1
H2
0x0000
0xffff
0x0414
–
Security
112
Codes
4
Full-Access Key 0
H2
0x0000
0xffff
0xffff
–
Security
112
Codes
6
Full-Access Key 1
H2
0x0000
0xffff
0xffff
–
(1)
(2)
(3)
F4
Encoded battery profile information created by bqEASY™ software.
Not IEEE floating point
Display as the value EVSW displayed. Data Flash value is different.
5 FUNCTIONAL DESCRIPTION
5.1
FUEL GAUGING
The bq27500 measures the cell voltage, temperature, and current to determine battery SOC. The
bq27500 monitors charge and discharge activity by sensing the voltage across a small-value resistor (5
mΩ to 20 mΩ typ.) 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
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 (less than C/20)
versions of RemainingCapacity( ) and FullChargeCapacity( ), respectively.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
21
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
The bq27500 has two flags accessed by the Flags( ) function that warn when the SOC of a battery 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 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 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.
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 Section 5.2.2). 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
Load Select Value
0
1(default)
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.
Present average discharge current: This is the average discharge current from the beginning of this discharge cycle
until the present time.
2
Average current: based on AverageCurrent( )
3
Current: based on a low-pass-filtered version of AverageCurrent( ) (τ = 14 s)
4
Design capacity / 5: C Rate based on Design Capacity / 5 or a C/5 rate in mA.
5
AtRate (mA): Use whatever current is in AtRate( )
6
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 options shown in Table 5-2 are available.
Table 5-2. Constant-Power Model Used When Load Mode = 1
Load Select Value
Power Model Used
0
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.
1(default)
22
Present average discharge power: This is the average discharge power from the beginning of this discharge cycle
until present time.
2
Average current × voltage: based on the AverageCurrent( ) and Voltage( ).
3
Current × voltage: based on a low-pass-filtered version of AverageCurrent( ) (τ = 14 s) and Voltage( )
4
Design energy / 5: C Rate based on Design Energy / 5 or a C/5 rate in mA.
5
AtRate (10 mW): Use whatever value is in AtRate( ).
6
User_Rate-10mW: Use the value in User_Rate-10mW. This mode provides a completely user-configurable method.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
5.2.3
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
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 to determine if actual discharge
current is flowing into or out of the cell. The default for this register is in Table 4-7, 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.
5.2.6
Chg Current Threshold
This register is used as a threshold by many functions in the bq27500 to determine if actual charge
current is flowing into or out of the cell. The default for this register is in Table 4-7, 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
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 in Table 4-7 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 5 minutes in relaxation mode, the bq27500 attempts to take accurate OCV readings. An
additional requirement of dV/dt < 4 μV/s is required for the bq27500 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 and that the current 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 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.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
23
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
5.2.9
www.ti.com
Update Status 0 and Update Status 1
Bit 0 (0x01) of the Update Status n registers indicates that the bq27500 has learned new Qmax
parameters and is accurate. The remaining bits are reserved. Bits 0 is a status flag set by the bq27500.
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.
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 when required.
5.2.11 Avg P Last Run
The bq27500 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 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 when required.
5.2.12 Delta Voltage
The bq27500 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 Batt Insert Delay, Sleep Insert Delay
The Batt Insert Delay setting delays the bq27500 detection process after battery insertion. Sleep Insert
Delay specifies the delay before the gauge enters SLEEP mode after battery insertion. For proper
operation, set Sleep Insert Delay greater than Batt Insert Delay. For example, with Batt Insert Delay =
10 s (10,000 ms) and Sleep Insert Delay = 15 s, the bq27500 does not enter SLEEP mode before
5 seconds after the battery detection.
5.2.14 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
5.3.1
DETAILED DESCRIPTION OF DEDICATED PINS
The Operation Configuration Register
Some bq27500 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.
24
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
Table 5-3. Operation Configuration Bit Definition
Operation
Configuration
High byte
Low byte
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RESCAP
GNDSEL
BATG_OVR
IDSELEN
I2C_NACK
SLEEP
PFC_CFG1
RMFCC
PFC_CFG0
BATL_POL
IWAKE
BATG_POL
RSNS1
BATL_CTL
RSNS0
TEMPS
RESCAP = No-load rate of compensation is applied to the reserve capacity calculation. True when set. Default is 0.
BATG_OVR = BAT_GD override bit. If the gauge enters Hibernate only due to the cell voltage, the BAT_GD does not negate. True when
set. Default is 0. If both current and voltage are below the Hibernation thresholds, the voltage condition check above takes precedence
over the current condition check.
I2C_NACK = The I2C engine NACKs the commands during the flash updates when set. The I2C engine clock-stretches if the bit is
clear. Default is 0.
PFC_CFG1/PFC_CFG0 = Pin function code (PFC) mode selection: PFC 0, 1, 2, or 3 selected by 0/0, 0/1, 1/0, or 1/1, 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.
GNDSEL = The ADC ground select control. The VSS pin (pin 6) is selected as ground reference when the bit is clear. Pin 7 is selected
when the bit is set. Default is 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.
BATL_CTL= BAT_LOW pin function control. If BATL_CTL is set, the BAT_LOW pin state depends on the SOC1 and BATL_POL. If
BATL_CTL is clear, the BAT_LOW pin state is controlled by commands, SOC1 and battery voltage. Default is 1.
TEMPS = Selects external thermistor for Temperature( ) measurements. True when set. Default is 1.
5.3.2
Pin Function Code Descriptions
The bq27500 has four 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 measures battery temperature under discharge and relaxation
conditions. The charger does not receive any information from the bq27500 about the temperature
readings, and therefore operates open-loop with respect to battery temperature. When PFC = 0, the
BAT_GD pin is in a high-impedance state.
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.
When the PFC is set to 2, the battery thermistor can be shared between the fuel gauge and the charger.
The charger has full use of the thermistor during battery charging. The fuel gauge uses the thermistor
exclusively during discharge and battery relaxation. When PFC = 2, the BAT_GD pin is in a
high-impedance state.
When PFC = 3, the BAT_GD pin state relation to [CHG_INH], [XCHG] is exactly same as the setting for
PFC = 1 except that the BAT_GD pin is negated if the [FC] bit is set, and BAT_GD is asserted if the [FC]
bit is clear.
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 behavior
and polarity of the BAT_LOW pin are configured, respectively, by the [BATL_CTL] and [BATL_POL] bits
of the Operation Configuration register.
When the [BATL_CTL] bit is set, signaling on the BAT_LOW pin follows the [SOC1] bit in the Flags( )
register when the battery voltage is lower than BAT_LOW Enable Voltage. If the battery voltage is higher
than BAT_LOW Enable Voltage, the BAT_LOW pin is negated and the [SOC1] bit has no control of the
BAT_LOW pin.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
25
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
When the [BATL_CTL] bit is clear, signaling on the BAT_LOW pin is controlled by various factors. If the
[BAT_DET] is clear, the BAT_LOW pin is always inactive. If the [BAT_DET] bit is set and the
BATL_ENABLE subcommand is issued, the BAT_LOW pin is asserted provided the [SOC1] bit is already
set or the battery voltage has already reached the Terminate Voltage before issuing the BATL_ENABLE
subcommand. If the [BAT_DET] bit is set and the BATL_DISABLE subcommand is issued, the BAT_LOW
pin is set inactive.
5.3.4
Power Path Control With the BAT_GD Pin
The bq27500 must operate in conjunction with other electronics in a system appliance, such as chargers
or other ICs and application circuits that draw appreciable power. After a battery is inserted into the
system, there should be no charging or discharging current higher than C/20, 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 negated from the default setting. Once an OCV reading has be made, the BAT_GD pin is asserted,
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.
When PFC is equal to 1 or 3, the BAT_GD pin is also used to disable battery charging as described in
Section 5.3.2.
5.3.5
Battery Detection Using the BI/TOUT Pin
During power-up or hibernate activities, or any other activity where the bq27500 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-MΩ pullup 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 reads a thermistor voltage that is near 2.5 V.
5.4
TEMPERATURE MEASUREMENT
The bq27500 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 present battery
temperature by calling the Temperature( ) function (see Section 4.1.1, Standard Data Commands, for
specific information).
The bq27500 external temperature sensing is optimized with the use of a high-accuracy negative
temperature coefficient (NTC) thermistor with R25 = 10.0 kΩ ± 1% and B25/85 = 3435 K ± 1% (such as
Semitec NTC 103AT). The bq27500 can also be configured to use its internal temperature sensor. When
an external thermistor is used, an 18.2-kΩ pullup resistor between the BI/TOUT and TS pins is also
required. Additional circuit information for connecting this thermistor to the bq27500 is shown in Section 8,
Reference Schematic.
26
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
5.5
5.5.1
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
OVERTEMPERATURE INDICATION
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. When Temperature( )
falls to OT Chg Recovery, the [OTC] of Flags( ) is reset.
If OT Chg Time = 0, then the feature is completely disabled.
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. When Temperature( )
falls to OT Dsg Recovery, the [OTD] bit of Flags( ) is reset.
If OT Dsg Time = 0, then feature is completely disabled.
5.6
5.6.1
CHARGING AND CHARGE-TERMINATION INDICATION
Detecting Charge Termination
For proper bq27500 operation, the cell charging voltage must be specified by the user. The default value
for this variable is Charging Voltage = 4200 mV.
The bq27500 detects charge termination when (1) during two 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 and Suspend
When PFC = 1, the bq27500 can indicate when battery temperature has fallen below or risen above
predefined thresholds (Suspend Temp Low and Suspend 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]. In this mode, the [XCHG] bit is set to indicate this condition. The [XCHG] bit is cleared once
the battery temperature returns to the range [Charge Inhibit Temp Low + Temp Hys, Charge Inhibit
Temp High – Temp Hys]. The BAT_GD pin is negated once the [XCHG] bit is set.
The charging should not start when the temperature is below Charge Inhibit Temp Low or above Charge
Inhibit Temp High. The BAT_GD pin is negated once the temperature reaches Charge Inhibit Temp
Low or the Charge Inhibit Temp High AND the charge current is lower than the CHG Current Threshold.
However, the charging can continue and the BAT_GD remains asserted if the charging starts inside the
window [Charge Inhibit Temp Low, Charge Inhibit Temp High] AND the charge current is higher than
the CHG Current Threshold until the temperature is either below Suspend Low Temp or above Suspend
High Temp. Therefore, the window [Charge Inhibit Temp Low, Charge Inhibit Temp High] must be
inside the window of [Suspend Temp Low, Suspend Temp High]. The [XCHG] bit is set and the
BAT_GD pin is negated.
When PFC = 3, the bq27500 performs exactly the same as the case for PFC = 1 with one different point.
BAT_GD is decoupled from the [FC] bit for PFC = 1, whereas the BAT_GD pin is negated when the [FC]
bit is set if PFC = 3.
When PFC = 0 or 2, the bq27500 must be queried by the system in order to determine the battery
temperature. At that time, the bq27500 samples the temperature. This saves battery energy when
operating from battery, as periodic temperature updates are avoided during charging mode.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
27
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
5.7
www.ti.com
POWER MODES
The bq27500 has different power modes: NORMAL, SLEEP, HIBERNATE, and BAT INSERT CHECK. In
NORMAL mode, the bq27500 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, used by the bq27500 when no battery is inserted into the system.
The relationship between these modes is shown in Figure 5-1.
5.7.1
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 (and system), yet no battery has been detected. When battery insertion is detected, a series
of initialization activities begins, which includes: OCV measurement, asserting the BAT_GD pin, and
selecting the appropriate battery profiles. The initialization time is less than 2 seconds.
Some commands issued by a system processor can be processed while the bq27500 is halted in this
mode. The gauge wakes up to process the command, then returns to the halted state awaiting battery
insertion.
28
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
POR
Exit From HIBERNATE
Battery Removed
BAT INSERT CHECK
Exit From HIBERNATE
Communication Activity
AND Comm address is for bq27500
Check for battery insertion
from HALT state .
No gauging
bq27500 clears Control Status
[HIBERNATE] = 0
Recommend Host also set Control
Status [HIBERNATE] = 0
Flags [BAT_DET] = 0
Entry to NORMAL
Exit From NORMAL
Flags [BAT_DET] = 1
Flags [BAT_DET] = 0
Exit From SLEEP
NORMAL
Flags [BAT_DET] = 0
Fuel gauging and data
updated every 1s
HIBERNATE
Wakeup From HIBERNATE
Communication Activity
AND
Comm address is NOT for bq27500
Disable all bq 27500
subcircuits except GPIO .
Negate /BAT _GD
Exit From SLEEP
| AverageCurrent( ) | > Sleep Current
OR
Current is Detected above IWAKE
Entry to SLEEP+
Operation Configuration[SLEEP] = 1
AND
Control Status[SNOOZE] = 1
AND
| AverageCurrent( ) | ≤ Sleep Current
Entry to SLEEP
Operation Configuration[SLEEP] = 1
AND
| AverageCurrent( ) | ≤ Sleep Current
AND
Control Status[SNOOZE] = 0
Exit From SLEEP+
Any communication to the gauge
OR
| AverageCurrent( ) | > Sleep Current
OR
Current is Detected above IWAKE
SLEEP+
Fuel gauging and data
updated every 20 seconds
Both LFO and HFO are ON
Exit From WAIT_HIBERNATE
Cell relaxed
AND
| AverageCurrent() | < Hibernate
Current
WAIT_HIBERNATE
Entry to SLEEP+
Control Status[SNOOZE] = 0
SLEEP
OR
Cell relaxed
AND
VCELL < Hibernate Voltage
Entry to SLEEP+
Control Status[SNOOZE] = 1
Fuel gauging and data
updated every 20 seconds
/BAT _GD unchanged
Exit From WAIT_HIBERNATE
Host must set Control Status
[HIBERNATE ] = 0
AND
VCELL > Hibernate Voltage
System Shutdown
Fuel gauging and data
updated every 20 seconds
(LFO ON and HFO OFF )
Exit From SLEEP
(Host has set Control Status
[HIBERNATE] = 1
OR
VCELL < Hibernate Voltage
System Sleep
Figure 5-1. Power Mode Diagram
5.7.2
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.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
29
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
5.7.3
www.ti.com
SLEEP+ MODE
Compared to the SLEEP mode, SLEEP+ mode has the high-frequency oscillator in operation. The
communication delay could be eliminated. The SLEEP+ is entered automatically if the feature is enabled
(Operation Configuration [SNOOZE] = 1) and AverageCurrent( ) is below the programmable level Sleep
Current.
During SLEEP+ mode, the bq27500 periodically takes data measurements and updates its data set.
However, a majority of its time is spent in an idle condition. The bq27500 exits SLEEP+ if any entry
condition is broken, specifically when (1) any communication activity with the gauge occurs, (2)
AverageCurrent( ) rises above Sleep Current, or (3) a current in excess of IWAKE through RSENSE is
detected.
5.7.4
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 performs a Coulomb Counter autocalibration to
minimize offset if the timing condition required by the algorithm is met.
During SLEEP mode, the bq27500 periodically takes data measurements and updates its data set.
However, a majority of its time is spent in an idle condition.
The bq27500 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
SCL line low. This delay is necessary to process host communication correctly, because the fuel gauge
processor is mostly halted while in SLEEP mode.
5.7.5
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 mode.
The fuel gauge can enter HIBERNATE due to either low cell voltage or low load current.
• HIBERNATE due to the cell voltage. When the cell voltage drops below the Hibernate Voltage and a
valid OCV measurement has been taken, the fuel gauge enters HIBERNATE mode. The [HIBERNATE]
bit of the CONTROL register has no impact for the fuel gauge to enter the HIBERNATE mode.
• HIBERNATE due to the load current. If the load current drops to a certain level, the fuel gauge should
also enter low-power mode. When the fuel gauge enters the HIBERNATE mode due to the load
current, the [HIBERNATE] bit of the CONTROL_STATUS register must be set. 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 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.
During the HIBERNATE mode, the BAT_GD is negated (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 after it has gone into HIBERNATE mode.
After waking, the gauge can proceed with the initialization of the battery information (OCV, profile
selection, etc.)
30
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
5.8
5.8.1
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
POWER CONTROL
RESET FUNCTIONS
When the bq27500 detects that the [RESET] bit of Control( ) has been set, it increments the
corresponding counter. This information is accessible by issuing the command Control( ) function with the
RESET_DATA subcommand.
5.8.2
WAKE-UP COMPARATOR
The wake-up comparator is used to indicate a change in cell current while the bq27500 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)
(1)
(2)
5.8.3
RSNS1
RSNS0
IWAKE
Vth (SRP – SRN) (2)
0
0
0
Disabled
0
0
1
Disabled
0
1
0
1.0 mV or –1.0 mV
0
1
1
2.2 mV or –2.2 mV
1
0
0
2.2 mV or –2.2 mV
1
0
1
4.6 mV or –4.6 mV
1
1
0
4.6 mV or –4.6 mV
1
1
1
9.8 mV or –9.8 mV
The actual resistance value vs. the setting of the sense resistor is not important, just the actual voltage
threshold when calculating the configuration. The voltage thresholds are typical values under room
temperature.
The Vth threshold voltages are approximate values only as they are established by analog
comparators.
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 VCC voltage does not fall below its minimum of 2.4 V during Flash write operations.
5.9
AUTOCALIBRATION
The bq27500 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 Coulomb Counter begins on entry to SLEEP mode when the timing condition
required by the algorithm is met, 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.
FUNCTIONAL DESCRIPTION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
31
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
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, 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. However, 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 maintains two other profiles, PACK0 and PACK1. 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 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 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
Configuration
Byte
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
—
—
—
—
—
—
—
LU_ PROF
LU_PROF = Last profile used by fuel gauge. Pack0 last used when cleared. Pack1 last used when set. Default is 0.
6.2
6.2.1
APPLICATION-SPECIFIC FLOW AND CONTROL
Simple Battery
The bq27500 supports only one type of battery profile. This profile is stored in both the Def0 and Def1
profiles. The Defn and Packn profiles are the same on the first gauge start-up. 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 after battery detection (see Section 6.1.2.1, First OCV and Impedance
Measurement). The bq27500 chooses the profile which is closest to the measured impedance, starting
32
APPLICATION-SPECIFIC INFORMATION
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
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.
7 COMMUNICATIONS
I2C INTERFACE
7.1
The bq27500 supports the standard I2C read, incremental read, quick read, 1-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 is, therefore, 0xAA or 0xAB for write or read, respectively.
Host generated
S
ADDR[6:0]
0 A
bq27500/1 generated
CMD [7:0]
A
DATA [7:0]
A P
S
ADDR[6:0]
(a) 1-byte write
S
ADDR[6:0]
0 A
1 A
DATA [7:0]
N P
(b) quick read
CMD [7:0]
A Sr
ADDR[6:0]
1 A
DATA [7:0]
N P
(c) 1- byte read
S
ADDR[6:0]
0 A
CMD [7:0]
A Sr
ADDR[6:0]
1 A
DATA [7:0]
A ...
DATA [7:0]
N P
(d) incremental read
S
ADDR[6:0]
0 A
CMD[7:0]
A
DATA [7:0]
A
DATA [7:0]
A
...
A P
(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, increments whenever data is acknowledged by the
bq27500 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 2-byte commands that require 2 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):
7.2
I2C TIME OUT
The I2C engine releases both SDA and SCL if the I2C bus is held low for about 2 seconds. If the bq27500
was holding the lines, releasing them frees the master to drive the lines. If an external condition is holding
either of the lines low, the I2C engine enters the low-power sleep mode.
7.3
I2C COMMAND WAITING TIME
To make sure the correct results of a command with the 400-kHz I2C operation, a proper waiting time
should be added between issuing the command and reading results. For subcommands, the following
diagram shows the waiting time required between issuing the subcommand and reading the results, with
COMMUNICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
33
bq27500-V130
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
www.ti.com
the exception of checksum and OCV commands. A 100-ms waiting time is required between the
checksum command and reading the result. For read-write standard commands, a minimum of 2 seconds
is required to get the result updated. For read-only standard commands, there is no waiting time required,
but the host should not issue all standard commands more than two times per second. Otherwise, the
gauge could result in a reset issue due to the expiration of the watchdog timer.
If the Operation Configuration [I2C_NACK] bit is not set, the I2C clock stretch could happen in a typical
application. A maximum 80-ms clock stretch could be observed during the flash updates.
S
ADDR[6:0]
0 A
CMD[7:0]
A
DATA [7:0]
S
ADDR[6:0]
0 A
CMD[7:0]
A Sr
ADDR[6:0]
A
1 A
DATA [7:0]
DATA [7:0]
A P
A
66ms
DATA [7:0]
N P
DATA [7:0]
A
66ms
Waiting time between control subcommand and reading results
S
ADDR[6:0]
DATA [7:0]
0 A
A
CMD [7:0]
DATA [7:0]
A Sr
N P
ADDR[6:0]
1 A
DATA [7:0]
A
66ms
Waiting time between continuous reading results
34
COMMUNICATIONS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
bq27500-V130
www.ti.com
SLUS914A – OCTOBER 2009 – REVISED DECEMBER 2009
8 REFERENCE SCHEMATICS
8.1
SCHEMATIC
REFERENCE SCHEMATICS
Copyright © 2009, Texas Instruments Incorporated
Submit Documentation Feedback
Product Folder Link(s): bq27500-V130
35
PACKAGE OPTION ADDENDUM
www.ti.com
22-Dec-2009
PACKAGING INFORMATION
Orderable Device
Status (1)
Package
Type
Package
Drawing
Pins Package Eco Plan (2)
Qty
BQ27500DRZR-V130
ACTIVE
SON
DRZ
12
3000 Green (RoHS &
no Sb/Br)
CU NIPDAU
Level-2-260C-1 YEAR
BQ27500DRZT-V130
ACTIVE
SON
DRZ
12
250
CU NIPDAU
Level-2-260C-1 YEAR
BQ27500YZGR-V130
ACTIVE
DSBGA
YZG
12
3000 Green (RoHS &
no Sb/Br)
SNAGCU
Level-1-260C-UNLIM
BQ27500YZGT-V130
ACTIVE
DSBGA
YZG
12
250
SNAGCU
Level-1-260C-UNLIM
Green (RoHS &
no Sb/Br)
Green (RoHS &
no Sb/Br)
Lead/Ball Finish
MSL Peak Temp (3)
(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
PACKAGE MATERIALS INFORMATION
www.ti.com
26-Apr-2012
TAPE AND REEL INFORMATION
*All dimensions are nominal
Device
BQ27500DRZR-V130
Package Package Pins
Type Drawing
SON
DRZ
12
SPQ
Reel
Reel
A0
Diameter Width (mm)
(mm) W1 (mm)
3000
330.0
12.4
2.8
B0
(mm)
K0
(mm)
P1
(mm)
W
Pin1
(mm) Quadrant
4.3
1.2
4.0
12.0
Q2
BQ27500DRZT-V130
SON
DRZ
12
250
330.0
12.4
2.8
4.3
1.2
4.0
12.0
Q2
BQ27500YZGR-V130
DSBGA
YZG
12
3000
180.0
8.4
2.1
2.57
0.81
4.0
8.0
Q1
BQ27500YZGT-V130
DSBGA
YZG
12
250
180.0
8.4
2.1
2.57
0.81
4.0
8.0
Q1
Pack Materials-Page 1
PACKAGE MATERIALS INFORMATION
www.ti.com
26-Apr-2012
*All dimensions are nominal
Device
Package Type
Package Drawing
Pins
SPQ
Length (mm)
Width (mm)
Height (mm)
BQ27500DRZR-V130
SON
DRZ
12
3000
338.1
338.1
20.6
BQ27500DRZT-V130
SON
DRZ
12
250
338.1
338.1
20.6
BQ27500YZGR-V130
DSBGA
YZG
12
3000
210.0
185.0
35.0
BQ27500YZGT-V130
DSBGA
YZG
12
250
210.0
185.0
35.0
Pack Materials-Page 2
X: Max = 2.48 mm, Min = 2.379 mm
Y: Max = 2.006 mm, Min =1.906 mm
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, enhancements, improvements and other
changes to its semiconductor products and services per JESD46C and to discontinue any product or service per JESD48B. Buyers should
obtain the latest relevant information before placing orders and should verify that such information is current and complete. All
semiconductor products (also referred to herein as “components”) are sold subject to TI’s terms and conditions of sale supplied at the time
of order acknowledgment.
TI warrants performance of its components to the specifications applicable at the time of sale, in accordance with the warranty in TI’s terms
and conditions of sale of semiconductor products. Testing and other quality control techniques are used to the extent TI deems necessary
to support this warranty. Except where mandated by applicable law, testing of all parameters of each component is not necessarily
performed.
TI assumes no liability for applications assistance or the design of Buyers’ products. Buyers are responsible for their products and
applications using TI components. To minimize the risks associated with Buyers’ products and applications, Buyers should provide
adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or
other intellectual property right relating to any combination, machine, or process in which TI components or services are used. Information
published by TI regarding third-party products or services does not constitute a license 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 significant portions 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. TI is not responsible or liable for such altered
documentation. Information of third parties may be subject to additional restrictions.
Resale of TI components or services with statements different from or beyond the parameters stated by TI for that component or service
voids all express and any implied warranties for the associated TI component or service and is an unfair and deceptive business practice.
TI is not responsible or liable for any such statements.
Buyer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements
concerning its products, and any use of TI components in its applications, notwithstanding any applications-related information or support
that may be provided by TI. Buyer represents and agrees that it has all the necessary expertise to create and implement safeguards which
anticipate dangerous consequences of failures, monitor failures and their consequences, lessen the likelihood of failures that might cause
harm and take appropriate remedial actions. Buyer will fully indemnify TI and its representatives against any damages arising out of the use
of any TI components in safety-critical applications.
In some cases, TI components may be promoted specifically to facilitate safety-related applications. With such components, TI’s goal is to
help enable customers to design and create their own end-product solutions that meet applicable functional safety standards and
requirements. Nonetheless, such components are subject to these terms.
No TI components are authorized for use in FDA Class III (or similar life-critical medical equipment) unless authorized officers of the parties
have executed a special agreement specifically governing such use.
Only those TI components which TI has specifically designated as military grade or “enhanced plastic” are designed and intended for use in
military/aerospace applications or environments. Buyer acknowledges and agrees that any military or aerospace use of TI components
which have not been so designated is solely at the Buyer's risk, and that Buyer is solely responsible for compliance with all legal and
regulatory requirements in connection with such use.
TI has specifically designated certain components which meet ISO/TS16949 requirements, mainly for automotive use. Components which
have not been so designated are neither designed nor intended for automotive use; and TI will not be responsible for any failure of such
components to meet such requirements.
Products
Applications
Audio
www.ti.com/audio
Automotive and Transportation www.ti.com/automotive
Amplifiers
amplifier.ti.com
Communications and Telecom www.ti.com/communications
Data Converters
dataconverter.ti.com
Computers and Peripherals
www.ti.com/computers
DLP® Products
www.dlp.com
Consumer Electronics
www.ti.com/consumer-apps
DSP
dsp.ti.com
Energy and Lighting
www.ti.com/energy
Clocks and Timers
www.ti.com/clocks
Industrial
www.ti.com/industrial
Interface
interface.ti.com
Medical
www.ti.com/medical
Logic
logic.ti.com
Security
www.ti.com/security
Power Mgmt
power.ti.com
Space, Avionics and Defense
www.ti.com/space-avionics-defense
Microcontrollers
microcontroller.ti.com
Video and Imaging
www.ti.com/video
RFID
www.ti-rfid.com
OMAP Mobile Processors
www.ti.com/omap
TI E2E Community
e2e.ti.com
Wireless Connectivity
www.ti.com/wirelessconnectivity
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2012, Texas Instruments Incorporated