TI BQ27350PWR

bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
1 INTRODUCTION
1.1 FEATURES
1.2
•
•
•
•
•
•
•
•
•
•
•
•
•
Comprehensive Battery Fuel Gauge for Single
Cell and 1-Series Li-Ion Applications
Secure Battery Authentication Using
SHA-1/HMAC Encryption
Calculates and Reports
– Remaining Battery Capacity
– Battery Voltage and Temperature
– Charge and Discharge Current
– Four Time-to-Empty Predictions
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 (10mΩ or Less)
96-Bytes Non-Volatile Scratch Pad Data
Memory
I2C Communications Interface to the Host
20-Pin TSSOP Package
APPLICATIONS
POS Terminals
Industrial Data Collection
Smartphones
PDAs
Digital Cameras
Handheld Terminals
1.3
DESCRIPTION
The Texas Instruments’ bq27350 is a battery fuel
gauge with secure authentication support for single
cell Li-Ion battery packs. Designed for battery pack
integration, the
device
requires little
host
microcontroller firmware support for implementation.
The system host processor communicates with the
bq27350 over an I2C interface to obtain remaining
battery capacity, system run-time predictions, and
other critical battery information.
The bq27350 uses the patented Impedance Track™
algorithm for its fuel gauging. The gauge provides
information such as state-of-charge (%), run-time to
empty (min.), charge time to full (min.), battery
voltage (V), and pack temperature (°C).
The bq27350 also features both integrated and
external
support
for
secure
battery
pack
authentication, using the SHA-1/HMAC authentication
algorithm.
TYPICAL IMPLEMENTATION
PACK+
SCLK
SDATA
Single-Cell
Protector
bq27350
Impedance Track™
SHA-1/HMAC
Authentication and
Manufacturing
Data Storage
LDO
bq26100
SHA-1/HMAC
Authentication
(optional)
*
PACK*Optional Thermistor
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas
Instruments semiconductor products and disclaimers thereto appears at the end of this document.
Impedance Track is a trademark of Texas Instruments.
PRODUCTION DATA information is current as of publication date.
Products conform to specifications per the terms of the Texas
Instruments standard warranty. Production processing does not
necessarily include testing of all parameters.
Copyright © 2007, Texas Instruments Incorporated
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
Contents
1
INTRODUCTION .......................................... 1
4.1
DATA COMMANDS
1.1
FEATURES ........................................... 1
4.2
EXTENDED DATA COMMANDS ................... 13
1.2
APPLICATIONS ...................................... 1
.......................................
DEVICE INFORMATION .................................
2.1
AVAILABLE OPTIONS ...............................
2.2
PIN DIAGRAM ........................................
2.3
TERMINAL FUNCTIONS .............................
ELECTRICAL SPECIFICATIONS ......................
3.1
ABSOLUTE MAXIMUM RATINGS ...................
3.2
RECOMMENDED OPERATING CONDITIONS ......
3.3
POWER-ON RESET..................................
3.4
TEMPERATURE SENSOR CHARACTERISTICS ...
3.5
LOW FREQUENCY OSCILLATOR...................
3.6
HIGH FREQUENCY OSCILLATOR ..................
1.3
2
3
3.7
3.8
3.9
4
2
DESCRIPTION
..................................
8
4.3
DATA FLASH INTERFACE ......................... 16
1
4.4
MANUFACTURER INFORMATION BLOCKS
3
4.5
ACCESS MODES ................................... 17
3
4.6
SEALING/UNSEALING DATA FLASH ACCESS
3
4.7
DATA FLASH SUMMARY........................... 17
3
5
FUNCTIONAL DESCRIPTION
......
...
........................
16
17
19
4
5.1
FUEL GAUGING .................................... 19
4
5.2
IMPEDANCE TRACK VARIABLES ................. 20
4
5.3
TEMPERATURE MEASUREMENT ................. 21
4
5.4
5.5
OVER-TEMPERATURE INDICATION .............. 22
CHARGING AND CHARGE TERMINATION
INDICATION......................................... 22
5
5.6
POWER MODES .................................... 22
INTEGRATING ADC (COULOMB COUNTER)
CHARACTERISTICS ................................. 5
ADC (TEMPERATURE AND CELL VOLTAGE)
CHARACTERISTICS ................................. 5
I2C-COMPATIBLE INTERFACE TIMING
CHARACTERISTICS ................................. 5
5.7
POWER CONTROL ................................. 24
5.8
AUTOCALIBRATION ................................ 25
4
5
GENERAL DESCRIPTION .............................. 7
Contents
6
7
COMMUNICATIONS .................................... 25
6.1
I2C INTERFACE ..................................... 26
6.2
AUTHENTICATION
.................................
27
REFERENCE SCHEMATIC ............................ 27
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
2 DEVICE INFORMATION
2.1 AVAILABLE OPTIONS
(1)
TA
PACKAGE
TSSOP (PW) (1)
–40°C to 85°C
bq27350PW
For the most current package and ordering information, see the Package Option Addendum at the end of this document, or see the TI
website at www.ti.com.
2.2 PIN DIAGRAM
SE
VEN
TS
NC
PAUTH
AUTH
TOUT
SDATA
NC
SCLK
CELL+
CELLVCC
VSS
MRST
SRN
SRP
NC
NC
NC
bq27350
2.3 TERMINAL FUNCTIONS
TERMINAL
NAME
NO.
I/O (1)
DESCRIPTION
SE
1
I/O
System enable. Open-drain output for controlling LDO enable (active low).
VEN
2
O
Voltage divider enable
TS
3
IA
Thermistor measurement input if external thermistor selected
PAUTH
5
P
Positive supply line for powering optional bq26100
AUTH
6
IO
Signal line for communicating with optional bq26100
TOUT
7
OA
Thermistor power output
SDATA
8
I/O
I2C Interface bidirectional data line (open-drain)
SCLK
10
I/O
I2C Interface clock line (open-drain)
SRP
14
IA
Analog input pin connected to the internal coulomb-counter where SRP is connected to the CELLside of the sense resistor
SRN
15
IA
Analog input pin connected to the internal coulomb-counter where SRN is connected to the side of
the sense resistor nearest PACK–
MRST
16
I
Master reset of the bq27350
VSS
17
P
Power ground of the IC
VCC
18
P
Power supply of the IC
CELL–
19
IA
Negative node of differential cell measurement Input
CELL+
20
IA
Positive node of differential cell measurement Input
4, 9, 11,
12, 13
NA
Pins electrically connected internally, and should be left floating for normal operation.
NC
(1)
I/O = Digital Input/Output, IA = Analog Input, OA = Analog Output, P = Power Connection
Submit Documentation Feedback
DEVICE INFORMATION
3
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
3 ELECTRICAL SPECIFICATIONS
3.1 ABSOLUTE MAXIMUM RATINGS
over operating free-air temperature range (unless otherwise noted) (1)
PARAMETER
VCC
Supply voltage range
V(IOD)
Open-drain I/O pins
VI
Input voltage range to all other pins
TA
Tstg
(1)
VALUE
UNIT
–0.3 to 2.75
V
– 0.3 to 6
V
–0.3 to VCC + 0.3
V
Operating free-air temperature range
–40 to 85
°C
Storage temperature range
–65 to 150
°C
Stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. These are stress ratings
only, and functional operation of the device at these or any other conditions beyond those indicated under recommended operating
conditions is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
3.2
RECOMMENDED OPERATING CONDITIONS
TA = 25°C, VCC = 2.5 V (unless otherwise noted)
PARAMETER
TEST CONDITIONS
MIN
TYP
MAX
2.5
2.6
2.4
UNIT
VCC
Supply Voltage
ICC
Normal operating mode current (1)
No flash programming
150
µA
I(SLP)
Low-power storage mode current (2)
Sleep mode
7.4
µA
Hibernate mode
1.5
current (3)
I(HIBERNATE)
Hibernate operating mode
VOL
Output voltage low (SDA, VEN)
IOL = 0.5 mA
VOH
Output high voltage (SDA)
IOH = –1 mA
VIL
Input voltage low (SDA, SCL)
VIH
Input voltage high (SDA, SCL)
CIN
Input capacitance
V(AI1)
Input voltage range (CELL+, CELL–, TS)
V(AI2)
Input voltage range (SRP, SRN)
(1)
(2)
(3)
V
µA
0.4
VCC–0.5
V
V
–0.3
0.8
2
6
V
5
pF
VSS–0.3
1
V
VSS–0.20
0.20
V
Load current > sleep current threshold during half of operation. Load current < sleep current threshold during other half.
Low-frequency oscillator, I/O support, and IWAKE comparator circuits on.
I/O support and IWAKE comparator circuits on.
3.3
POWER-ON RESET
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)
MIN
TYP
MAX
VIT–
Negative-going input voltage (VCC)
PARAMETER
1.7
1.8
1.9
V
VHYS
Power-on reset hysteresis
50
125
200
mV
3.4
TEST CONDITIONS
UNIT
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
4
Temperature sensor voltage gain
ELECTRICAL SPECIFICATIONS
TEST CONDITIONS
MIN
TYP
–2.0
MAX
UNIT
mV/°C
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
3.5
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
f(LOSC)
f(LEIO)
Frequency error
t(LSXO)
Start-up time (3)
(1)
(2)
(3)
TEST CONDITIONS
MIN
Operating frequency
(1) (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%
0.25%
4.0%
µs
500
The frequency drift is included and measured from the trimmed frequency at VCC = 2.5V, TA = 25°C.
The frequency error is measured from 32.768 kHz.
The startup time is defined as the time it takes for the oscillator output frequency to be ±3%.
3.6
HIGH FREQUENCY OSCILLATOR
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)
PARAMETER
f(OSC)
f(EIO)
Frequency error
t(SXO)
Start-up time (3)
(1)
(2)
(3)
TEST CONDITIONS
MIN
Operating frequency
(1) (2)
TYP
MAX
4.194
UNIT
MHz
TA = 0°C to 60°C
–2.0%
0.25%
2.0%
TA = –20°C to 70°C
–3.0%
0.25%
3.0%
TA = –40°C to 85°C
–4.5%
0.25%
4.5%
2.5
5
ms
The frequency error is measured from 4.194 MHz.
The frequency drift is included and measured from the trimmed frequency at VCC = 2.5V, TA = 25°C.
The startup time is defined as the time it takes for the oscillator output frequency to be ±3%.
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
V(SR)
Input voltage range, V(SRN) and V(SRP)
TEST CONDITIONS
V(SR) = V(SRN) – V(SRP)
MIN
TYP
–0.20
Input offset
INL
Integral nonlinearity error
ZADC_IN
Effective input resistance
3.8
UNIT
0.20
Resolution
V(SROS)
MAX
V
16
After Auto-Calibration
bits
µV
10
±0.007
±0.034
% FSR
2.5
MΩ
ADC (TEMPERATURE AND CELL VOLTAGE) 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
Input voltage range
MIN
TYP
–0.2
Effective resolution
V
31.5
ms
15
bits
14
Effective input resistance
UNIT
1
Conversion time
3.9
MAX
8
MΩ
I2C-COMPATIBLE INTERFACE TIMING CHARACTERISTICS
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)
PARAMETER
tr
SCL/SDA rise time
tf
SCL/SDA fall time
tw(H)
SCL pulse width (high)
Submit Documentation Feedback
TEST CONDITIONS
MIN
TYP
MAX
UNIT
1
300
4
ELECTRICAL SPECIFICATIONS
µs
ns
µs
5
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
I2C-COMPATIBLE INTERFACE TIMING CHARACTERISTICS (continued)
TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted)
PARAMETER
TEST CONDITIONS
MIN
TYP
MAX
UNIT
tw(L)
SCL pulse width (low)
4.7
µs
tsu(STA)
Setup for repeated start
4.7
µs
td(STA)
Start to first falling edge of SCL
4
µs
tsu(DAT)
Data setup time
250
ns
th(DAT)
Data hold time
tsu(STOP)
Setup time for stop
t(BUF)
Bus free time between stop and start
f(SCL)
Clock frequency
t(BUSERR)
Bus error timeout
Receive mode
0
Transmit mode
300
ns
µs
4
µs
4.7
17.3
100
kHz
21.2
s
Figure 3-1. I2C-Compatible Interface Timing Diagrams
6
ELECTRICAL SPECIFICATIONS
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
4 GENERAL DESCRIPTION
The bq27350 accurately predicts the battery capacity and other operational characteristics of a single
Li-based rechargeable cell. It can be interrogated by a host 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 bq27350’s control and
status registers, as well as its data flash locations. Commands are sent from host to gauge using the
bq27350’s I2C engine, and can be executed during application development, pack manufacture, or
end-equipment operation.
Cell information is stored inside the bq27350 in non-volatile flash memory. Many of these data flash
locations are accessible during application development and pack manufacture. They cannot, generally,
be accessed directly during end-equipment operation. Access to these locations is achieved by either use
of the bq27350’s 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 bq27350 provides 96 bytes of user-programmable data flash memory, partitioned into 3 32-byte
blocks: Manufacturer Info A,Manufacturer Info B, and Manufacturer Info C. This data space is
accessed through a data flash interface. For specifics on accessing the data flash, refer to the section
entitled DATA FLASH INTERFACE.
The key to the bq27350’s high-accuracy gas gauging prediction is Texas Instrument’s proprietary
Impedance Track™ algorithm. This algorithm combines cell measurements, characteristics, and properties
to create state-of-charge predictions that can achieve better than 1% accuracy across a wide variety of
operating conditions.
The bq27350 measures charge/discharge activity by monitoring the voltage across a small-value series
sense resistor (5 mΩ to 20 mΩ typical) between the cell negative terminal and the low-side protection
FETs. When an application’s load is applied, cell impedance is measured by comparing its Open Circuit
Voltage (OCV) with its measured voltage under loading conditions.
The bq27350 can use an external NTC thermistor (default is Semitec 103AT) for temperature
measurement, or can also be configured to use its internal temperature sensor. The bq27350 uses
temperature to monitor the battery-pack environment, which is used for fuel gauging and cell protection
functionality.
To minimize power consumption, the bq27350 has several power modes: NORMAL, SLEEP,
HIBERNATE, and SHUTDOWN. The bq27350 passes automatically between these modes, depending
upon the occurrence of specific events, though a host processor can initiate some of these modes directly.
More details can be found in the section entitled POWER MODES.
A battery-pack-authentication feature is also implemented on the bq27350. A scratch pad area is used to
both receive challenge information from a host and export SHA-1/HMAC encrypted responses. The
bq27350 can perform the encryption directly, or can act as a pass-through to a bq26100 stand-alone
authentication IC. Specifics can be found in the section entitled AUTHENTICATION.
NOTE
FORMATTING CONVENTIONS:
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 only, e.g. [TDA]
Modes and states: ALL CAPITALS, e.g. UNSEALED mode.
Submit Documentation Feedback
GENERAL DESCRIPTION
7
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
4.1 DATA COMMANDS
4.1.1
STANDARD DATA COMMANDS
The bq27350 uses a series of 2-byte standard commands to enable host reading and writing of battery
information. Each standard command has an associated command-code pair, as indicated in Table 4-1.
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 I2C INTERFACE. Standard commands are accessible in NORMAL operation.
Read/write permissions depend on the active access mode.
Table 4-1. Standard Commands
COMMAND
CODE
UNITS
SEALED
ACCESS
UNSEALED
ACCESS
CNTL
0x00 / 0x01
N/A
R/W
R/W
NAME
Control( )
AtRate( )
AR
0x02 / 0x03
mA
R/W
R/W
AtRateTimeToEmpty( )
ARTTE
0x04 / 0x05
Minutes
R
R
Temperature( )
TEMP
0x06 / 0x07
0.1°K
R
R
Voltage( )
VOLT
0x08 / 0x09
mV
R
R
Flags( )
FLAGS
0x0a / 0x0b
N/A
R
R
NominalAvailableCapacity( )
NAC
0x0c / 0x0d
mAh
R
R
FullAvailableCapacity( )
FAC
0x0e / 0x0f
mAh
R
R
RemainingCapacity( )
RM
0x10 / 0x11
mAh
R
R
FullChargeCapacity( )
FCC
0x12 / 0x13
mAh
R
R
AI
0x14 / 0x15
mA
R
R
TimeToEmpty( )
TTE
0x16 / 0x17
Minutes
R
R
TimeToFull( )
TTF
0x18 / 0x19
Minutes
R
R
SI
0x1a / 0x1b
mA
R
R
STTE
0x1c / 0x1d
Minutes
R
R
AverageCurrent( )
StandbyCurrent( )
StandbyTimeToEmpty( )
MaxLoadCurrent( )
MaxLoadTimeToEmpty( )
AvailableEnergy( )
AveragePower( )
MLI
0x1e / 0x1f
mA
R
R
MLTTE
0x20 / 0x21
Minutes
R
R
AE
0x22 / 0x23
10mWhr
R
R
AP
0x24 / 0x25
10mW
R
R
TTEatConstantPower( )
TTECP
0x26 / 0x27
Minutes
R
R
Reserved
RSVD
0x28 / 0x29
N/A
R
R
CC
0x2a / 0x2b
Counts
R
R
SOC
0x2c / 0x2d
%
R
R
CycleCount( )
StateOfCharge( )
8
GENERAL DESCRIPTION
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
4.1.1.1 Control( ): 0x00/0x01
Issuing a Control( ) command requires a subsequent two-byte sub-command (little endian format:
least-significant byte written to lowest address location). These additional bytes specify the particular
control function desired. The Control( ) command allows the host to control specific features of the
bq27350 during normal operation and additional features when the bq27350 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 (eg: "bq27350")
FW VERSION
0x0002
Yes
Reports the firmware version on the device type
HW VERSION
0x0003
Yes
Reports the hardware version of the device type
DFCHECKSUM
0x0004
No
Enables a DF checksum to be generated and reports on a read
RESET DATA
0x0005
No
Returns reset data
Reserved
0x0006
No
Not to be used
PREV_MACWRITE
0x0007
No
Returns previous MAC command code
CHEMID
0x0008
Yes
Reports the chemical identifier of the ImpedanceTrack™
configuration
BOARD OFFSET
0x0009
No
Forces the device Board Offset to be measured and stored
CC INT OFFSET
0x000b
No
Forces the device to measure and store the internal CC offset
SET HIBERNATE
0x0011
Yes
Forces DF:Pack Configuration [HIBERNATE] to 1
CLEAR HIBERNATE
0x0012
Yes
Forces DF:Pack Configuration [HIBERNATE] to 0
SEALED
0x0020
No
Places the bq27350 in SEALED access mode
IT ENABLE
0x0021
No
Enables the ImpedanceTrack™ algorithm
IFCHECKSUM
0x0022
No
Reports the instruction flash checksum
CALMODE
0x0040
No
Places the bq27350 in calibration mode
RESET
0x0041
No
Forces a full reset of the bq27350
CNTL FUNCTION
DESCRIPTION
CONTROL STATUS: 0x0000
Instructs the gas gauge to return status information to Control addresses 0x00/0x01. The status
word should include the following information.
Table 4-3. CONTROL STATUS Flags
Flags( )
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
High Byte
–
FAS
SS
CSV
CCA
BCA
–
–
Low Byte
–
–
–
–
LDMD
RUP_DIS
VOK
QEN
FAS = Full access sealed (Sealed = 1)
CSV = Indicates a valid DF checksum has been generated
BCA = Board calibration active
RUP_DIS = Indicates Ra table updates disabled
QEN = QMAX updates enabled if set
SS = Sealed state (Sealed = 1)
CCA = Coulomb counter calibration active
LDMD = Indicates Z-track alg, using const. power mode
VOK = Indicates voltages are OK for QMAX update if set
DEVICE TYPE: 0x0001
Instructs the gas gauge to return the device type to addresses 0x00/0x01.
FW_VERSION: 0x0002
Instructs the gas gauge to return the firmware version to addresses 0x00/0x01.
Submit Documentation Feedback
GENERAL DESCRIPTION
9
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
HW_VERSION: 0x0003
Instructs the gas gauge to return the hardware version to addresses 0x00/0x01.
DF CHECKSUM: 0x0004
Instructs the gas gauge to compute the checksum of the data flash memory. The checksum value
is written and returned to addresses 0x00/0x01 (UNSEALED mode only). The checksum will not be
calculated in SEALED mode; however, the checksum value can still be read.
RESET_DATA: 0x0005
Instructs the gas gauge to return the reset data to addresses 0x00/0x01, with the low-byte being
the number of partial resets and the high-byte the number of full resets.
PREV_MACWRITE: 0x0007
Instructs the gas gauge to return the previous command written to addresses 0x00/0x01.
CHEM ID: 0x0008
Instructs the gas gauge to return the chemical identifier for the ImpedanceTrack™ configuration to
addresses 0x00/0x01.
BOARD_OFFSET: 0x0009
Instructs the gas gauge to compute the coulomb counter offset with internal short and without
internal short applied across the SR inputs. The difference between the two measurements is the
Board Offset. The Board Offset shall be written to data flash and should also be returned to
addresses 0x00/0x01. User will need to prevent any charge or discharge current from flowing
during the process. This function is only available when the gas gauge is UNSEALED. When
SEALED, this command will only read back the Board Offset value stored in data flash.
CC_INT_OFFSET: 0x000B
Instructs the gas gauge to compute the coulomb counter offset with internal short applied across
the SR inputs. The offset value shall be written to Data Flash and should also be returned to
addresses 0x00/0x01. This function is only available when the gas gauge is UNSEALED. When
SEALED, this command will only read back the CC_INT_OFFSET value stored in data flash.
SET_HIBERNATE: 0x0011
Instructs the gas gauge to force Pack Configuration’s [HIBERNATE] bit to 1. This will allow the
gauge to enter the HIBERNATE power mode after the transition to SLEEP power state is detected.
CLEAR_HIBERNATE: 0x0012
Instructs the gas gauge to force Pack Configuration’s [HIBERNATE] bit to 0. This will prevent the
gauge from entering the HIBERNATE power mode after the transition to SLEEP power state is
detected.
SEALED: 0x0020
Instructs the gas gauge to transition from UNSEALED state to SEALED state. The gas gauge
should always be set to SEALED state for use in customer’s end equipment.
IT ENABLE: 0x0021
This command forces the gas gauge to begin the Impedance Track™ algorithm, sets
UpdateStatus to 0x04 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 gas gauge is UNSEALED.
IF CHECKSUM: 0x0022
This command instructs the gas gauge to compute the instruction flash checksum. In UNSEALED
mode, the checksum value is returned to addresses 0x00/0x01. The checksum will not be
calculated in SEALED mode; however, the checksum value can still be read.
10
GENERAL DESCRIPTION
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
CAL MODE: 0x0040
This command instructs the gas gauge to enter calibration mode. This command is only available
when the gas gauge is UNSEALED.
RESET : 0x0041
This command instructs the gas gauge to perform a full reset. This command is only available
when the gas gauge is UNSEALED.
4.1.1.2 AtRate( ): 0x02/0x03
The AtRate( ) read-/write-word function is the first half of a two-function call-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 and both positive and negative values will be 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 will force AtRate( ) to return 65535.
4.1.1.3 AtRateTimeToEmpty( ): 0x04/0x05
This read-word function returns an unsigned integer value of the predicted remaining operating time if the
battery is discharged at the AtRate( ) value in minutes with a range of 0 to 65534. A value of 65535
indicates AtRate( ) = 0. The gas gauge updates AtRateTimeToEmpty( ) within 1s after the host sets the
AtRate( ) value. The gas gauge automatically updates AtRateTimeToEmpty( ) based on the AtRate( )
value every 1s.
4.1.1.4 Temperature( ): 0x06/0x07
This read-word function returns an unsigned integer value of the temperature in units of 0.1°K measured
by the gas gauge and has a range of 0 to 6553.5°K. The source of the measured temperature is
configured by the [TEMPS] bit in Pack Configuration register (see EXTENDED COMMANDS).
Table 4-4. Temperature Sensor Selection
TEMPS
Temperature( ) source
0
Internal Temperature Sensor
1
TS Input (default)
4.1.1.5 Voltage( ): 0x08/0x09
This read-word function returns an unsigned integer value of the measured cell-pack voltage in mV with a
range of 0 to 6000mV.
4.1.1.6 Flags( ): 0x0a/0x0b
This read-word function returns the contents of the gas-gauge status register, depicting current operation
status.
Submit Documentation Feedback
GENERAL DESCRIPTION
11
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
Table 4-5. Flags Bit Definitions
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
High Byte
OTC
OTD
–
Low Byte
CC_OFF
–
–
–
–
XCHG
CHG_INH
CHG
–
FC
RCA
TDA
DSG
OTC = Over-Temperature in Charge condition is detected
CC_OFF = Coulomb Counter Offset measurement is being performed
OTD = Over-Temperature in Discharge condition is detected
FC = Fully Charged, set when Charge termination condition is met
RCA = Remaining Capacity Alert
XCHG = Charge Suspend Alert (temp outside the range –5°C to 55°C)
CHG_INH = Charge Inhibit: unable to begin charging (temp outside the range 0°C to 45°C)
TDA = Terminate Discharge Alert
CHG = (Fast)charging allowed
DSG = Discharging detected
4.1.1.7 NominalAvailableCapacity( ): 0x0c/0x0d
This read-only command pair returns the uncompensated (no or light load) battery capacity remaining.
Units are 1mAh per bit.
4.1.1.8 FullAvailableCapacity( ): 0x0e/0x0f
This read-only command pair returns the uncompensated (no or light load) capacity of the battery when
fully charged. Units are 1mAh per bit. 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 1mAh per bit.
4.1.1.10 FullChargeCapacity( ): 0x12/13
This read-only command pair returns the compensated capacity of the battery when fully charged. Units
are 1mAh per bit. 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 1mA per bit.
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 65535 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 should account for the
taper current time extension from the linear TTF computation based on a fixed AverageCurrent( ) rate of
charge accumulation. A value of 65535 indicates the battery is not being charged.
4.1.1.14 StandbyCurrent( ): 0x1a/0x1b
This read-only function returns a signed integer value of the measured standby current through the sense
resistor. The StandbyCurrent( ) is an adaptive measurement. Initially it reports the standby current
programmed in Initial Standby, and after spending some time in standby, reports the measured standby
current.
The register value is updated every 1 second when the measured current is above the Deadband (3mA
default) and is less than or equal to 2 x Initial Standby. The first and last values that meet this criteria
should not be averaged in, since they may not be stable values. To approximate a 1 minute time constant,
each new StandbyCurrent( ) value is computed as follows:
StandbyCurrent( )NEW = (239/256) × StandbyCurrent( )OLD + (17/256) × AverageCurrent( ).
12
GENERAL DESCRIPTION
Submit Documentation Feedback
www.ti.com
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
SLUS754 – MARCH 2007
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 should use Nominal Available Capacity (NAC), the
uncompensated remaining capacity, for this computation. A value of 65535 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 it reports 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 65535 indicates that the battery is not being
discharged.
4.1.1.18 AvailableEnergy( ): 0x22/0x23
This read-only function returns an unsigned integer value of the predicted charge or energy remaining in
the battery. The value is reported in units of mWh.
4.1.1.19 AveragePower( ): 0x24/0x25
This read-word function returns an unsigned integer value of the average power of the current discharge.
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 65535 indicates
AveragePower( ) = 0. The gas gauge automatically updates TimeToEmptyatContantPower( ) based on the
AveragePower( ) value every 1s.
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 65535. One cycle occurs when accumulated discharge ≥ CC Threshold.
4.1.1.22 StateOfCharge( ): 0x2c/0x2d
This read-only function returns an unsigned integer value of the predicted remaining battery capacity
expressed as a percentage of FullChargeCapacity( ), with a range of 0 to 100%.
4.2 EXTENDED DATA COMMANDS
Extended commands offer additional functionality beyond the standard set of commands. They are used in
the same manner; however unlike standard commands, extended commands are not limited to 2-byte
words. The number of commands bytes for a given extended command ranges in size from single to
multiple bytes, as specified in Table 4-6. For details on the SEALED and UNSEALED states, refer to the
section Access Modes.
Submit Documentation Feedback
GENERAL DESCRIPTION
13
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
Table 4-6. Extended Data Commands
NAME
Reserved
COMMAND
CODE
UNITS
SEALED
ACCESS (1) (2)
UNSEALED
ACCESS (1) (2)
RSVD
0x34 / 0x39
N/A
R
R
PKCFG
0x3a / 0x3b
N/A
R
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
PackConfiguration( )
Authenticate( )/BlockData( )
AuthenticateCheckSum( )/BlockData( )
BlockData( )
BlockDataCheckSum( )
BlockDataControl( )
DeviceNameLength( )
DeviceName( )
Reserved
(1)
(2)
A/DF
0x40…0x53
N/A
R/W
R/W
ACKS/DFD
0x54
N/A
R/W
R/W
DFD
0x55…0x5f
N/A
R
R/W
DFDCKS
0x60
N/A
R/W
R/W
DFDCNTL
0x61
N/A
N/A
R/W
DNAMELEN
0x62
N/A
R
R
DNAME
0x63...0x69
N/A
R
R
RSVD
0x6a...0x7f
N/A
R
R
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.2.1
PackConfiguration( ): 0x3a/0x3b
This Read-Word function allows the host to read the configuration of selected features of the bq27350
pertaining to power modes and transitioning between them. These features must set direct by data flash
writes to location subclass = 64, offset = 0 while in UNSEALED mode. Only the HIBERNATE function can
be modified while SEALED mode with the Control( ) command.
Table 4-7. Pack Configuration Bit Definitions
Operation
Cfg
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
High Byte
RESCAP
–
BUSLOW
–
–
IWAKE
RSNS1
RSNS0
Low Byte
SHUTDOWN
HIBERNATE
SLEEP
RMFCC
–
–
–
TEMPS
RESCAP = If set, no-load rate of compensation is applied to the reserve capacity calculation
BUSLOW = If set, the Interface Bus being low becomes a requirement to enter SLEEP mode
IWAKE/RSNS1/RSNS0 = These bits configure the current wake function (ref. Table 5-3)
SHUTDOWN = If set, SE is set high before going into HIBERNATE and set low in NORMAL mode
HIBERNATE = If set and conditions are suitable for SLEEP mode, then the gas gauge enters HIBERNATE instead of SLEEP
SLEEP = If set, the gas gauge can enter SLEEP mode if operating conditions allow
RMFCC = If set, on valid charge termination RM is updated with the value from FCC
TEMPS = Selects Temperature( ) source, 0 = Internal, 1 = External
4.2.2
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.
4.2.3
DataFlashClass( ): 0x3e
UNSEALED Access: This command sets the data flash class to be accessed. The class to be accessed
should be entered in hexadecimal.
SEALED Access: This command is not available in SEALED mode.
14
GENERAL DESCRIPTION
Submit Documentation Feedback
www.ti.com
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
SLUS754 – MARCH 2007
4.2.4
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 and a 0x01
specifies access to the second 32 byte block, and so on.
SEALED Access: This command directs which data flash block will be accessed by the BlockData( )
command. Writing a 0x00 to DataFlashBlock( ) specifies the BlockData( ) command will transfer
authentication data. Issuing a 0x01, 0x02 or 0x03 instructs the BlockData( ) command to transfer
Manufacturer Info Blocks A, B, or C, respectively.
4.2.5
AuthenticateData/BlockData( ): 0x40…0x53
UNSEALED Access: This data block has two functions. It is used for the authentication challenge and
response and is part of the 32 byte data block when accessing data flash.
SEALED Access: It is used for the authentication challenge and response and is part of the 32 byte data
block when accessing Manufacturer Info Blocks A, B, or C.
4.2.6
AuthenticateChecksum/BlockData( ): 0x54
UNSEALED Access: This byte holds the authenticate checksum when writing the authentication challenge
to the bq27350 and is part of the 32 byte data block when accessing data flash.
SEALED Access: This byte holds the authenticate checksum when writing the authentication challenge to
the bq27350 and is part of the 32 byte data block when accessing Manufacturer Info Blocks A, B, or C.
4.2.7
BlockData( ): 0x55…0x5f
UNSEALED Access: This data block is the remainder of the 32 byte data block when accessing data
flash.
SEALED Access: This data block is the remainder of the 32 byte data block when accessing
Manufacturer Info Blocks A, B, or C.
4.2.8
BlockDataChecksum( ): 0x60
UNSEALED Access: This byte contains the checksum for the 32 bytes of block data read or written to
data flash.
SEALED Access:This byte contains the checksum for the 32 bytes of block data written to Manufacturer
Info Blocks B or C.
4.2.9
BlockDataControl( ): 0x61
UNSEALED Access: This command is used to control data flash access. Writing 0x00 to this command
enables BlockData( ) to access general data flash. Writing a 0x01 to this command enablesBlockData( ) to
access authentication challenge and response.
SEALED Access: This command is not available in SEALED mode.
4.2.10 DeviceNameLength( ): 0x62
UNSEALED and SEALED Access: This byte contains the length of the Device Name.
4.2.11 DeviceName( ): 0x63…0x69
UNSEALED and SEALED Access: This block contains the device name that is programmed in Device
Name.
Submit Documentation Feedback
GENERAL DESCRIPTION
15
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
4.2.12 Reserved – 0x6A – 0x7F
4.3 DATA FLASH INTERFACE
4.3.1
ACCESSING THE DATA FLASH
The bq27350 data flash is a non-volatile memory that contains bq27350 initialization, default, cell status,
calibration, configuration, and user information. The data flash can be accessed in several different ways,
depending on what mode the bq27350 is operating in and what data is being accessed.
Commonly accessed data flash memory locations, frequently read by a host, are conveniently accessed
through specific instructions, already described in the DATA COMMANDS section. These commands are
available when the bq27350 is either in UNSEALED or SEALED modes.
Most data flash locations, however, can only be accessed in UNSEALED mode by using the bq27350
evaluation software or by performing data flash block transfers. These locations should be optimized
and/or fixed during the development and manufacture processes. They become part of a golden pack 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 they can be read to the host or changed directly.
This is accomplished by sending the set-up command BlockDataControl( ) (code 0x61) with data 0x00. Up
to 32 bytes of data can be read directly from the BlockData( ) command locations 0x40…0x5f, externally
altered, then re-written to the BlockData( ) command space. Alternatively, specific locations can be read,
altered, and re-written if their corresponding offsets are used to index into the BlockData( ) command
space. Finally, data residing in the command space is transferred to data flash, once a correct checksum
for the whole block is written to BlockDataChecksum( ) (command number 0x60).
Occasionally, a data flash CLASS will be larger than the 32-byte block size. In this case, the
DataFlashBlock( ) command is used to designate which 32-byte block the desired locations reside in. The
correct command address is then given by 0x40 + offset modulo 32. For example, to access Terminate
Voltage in the Gas 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 32 bytes in length. Data can be written in shorter
block sizes, however. Blocks can be shorter than 32 bytes in length. Writing these blocks back to data
flash will not overwrite data that extends beyond the actual block length.
None of the data written to memory are bounded by the bq27350 — the values are not rejected by the gas
gauge. Writing an incorrect value may result in hardware failure due to firmware program interpretation of
the invalid data. The data written is persistent, so a Power-On-Reset does not resolve the fault.
4.4 MANUFACTURER INFORMATION BLOCKS
The bq27350 contains 96 bytes of user programmable data flash storage: Manufacturer Info Block A,
Manufacturer Info Block B, Manufacturer Info Block C. The method for accessing these memory
locations is slightly different, depending on whether the device is in UNSEALED or SEALED modes.
When in UNSEALED mode and “0x00” is written to BlockDataControl( ), accessing the Manufacturer Info
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.
16
GENERAL DESCRIPTION
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
As an example, the data flash location for Manufacturer Info Block B is defined as having a Subclass =
58 and an Offset = 32 through 63 (32 byte block). The specification of Class = "System Data" is not
needed to address Manufacturer Info Block B, but is used instead for grouping purposes when viewing
data flash info in the bq27350 evaluation software.
When in SEALED mode or “0x01” has been written to BlockDataControl( ), 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 host. 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.5 ACCESS MODES
The bq27350 provides three security modes in which control data flash access permissions according to
Table 4-8. Public Access refers to those data flash locations, specified in Table 4-9, that are accessible to
the user. Private Access refers to reserved data flash locations used by the bq27350 system. Care should
be taken to avoid writing to Private data flash locations when performing block writes in Full Access mode,
by following the procedure outlined in ACCESSING THE DATAFLASH.
Table 4-8. Data Flash Access
Security Mode
DF – Public Access
DF – Private Access
BOOTROM
N/A
N/A
FULL ACCESS
R/W
R/W
UNSEALED
R/W
R/W
SEALED
R
N/A
Although FULL ACCESS and UNSEALED modes appear identical, FULL ACCESS allows the bq27350 to
directly transition to BOOTROM mode and write access keys. The UNSEAL mode lacks these abilities.
4.6 SEALING/UNSEALING DATA FLASH ACCESS
The bq27350 implements a key-access scheme to transition between SEALED, UNSEALED, and
FULL-ACCESS modes. Each transition requires that a unique set of 2 keys be sent to the bq27350 via the
Control( ) control command (these keys are unrelated to the keys used for SHA-1/HMAC authentication).
The keys must be sent consecutively, with no other data being written to the Control( ) register in between.
Note that to avoid conflict, the keys must selected different from the codes presented in the CNTL DATA
column of Table 4-2 Control( ) subcommands.
When in SEALED mode the Control Status( )’s [SS] bit is set, but when the UNSEAL keys are correctly
received by the bq27350, the [SS] bit is cleared. When the full access keys are correctly received then the
Control Status( )[FAS] bit is cleared.
Both the sets of keys for each level are 2 bytes each in length and are stored in data flash. The UNSEAL
key (stored at Unseal Key 0 and Unseal Key 1) and the FULL-ACCESS key (stored at Full Access Key
0 and Full Access Key 1) can only be updated when in FULL-ACCESS Mode. The order of the bytes
entered through the Control( ) command is the reverse of what is read from the part. For example, if the
1st and 2nd word of Unseal Key 0 read returns 0x1234 and 0x5678, then the Control( ) should supply
0x3412 and 0x7856 to unseal the part.
4.7 DATA FLASH SUMMARY
Table 4-9 summarizes the data flash locations available to the user, including their default, minimum, and
maximum values.
Submit Documentation Feedback
GENERAL DESCRIPTION
17
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
Table 4-9. Data Flash Summary
18
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
34
Charge
2
Charging Voltage
I2
0
20000
4200
mV
Configuration
36
Charge
Termination
2
Taper Current
I2
0
1000
100
mA
Configuration
36
Charge
Termination
6
Taper Voltage
I2
0
1000
100
mV
Configuration
36
Charge
Termination
8
Current Taper Window
U1
0
60
40
s
Configuration
48
Data
0
RCA Set
I2
0
700
100
mAh
Configuration
48
Data
8
Initial Standby Current
I1
–256
0
–10
mA
Configuration
48
Data
9
Initial Max Load Current
I2
–32767
0
–1000
mA
Configuration
48
Data
17
Cycle Count
U2
0
65535
0
Count
Configuration
48
Data
19
CC Threshold
I2
100
32767
1400
mAh
Configuration
48
Data
23
Design Capacity
I2
0
65535
1500
mAh
Configuration
48
Data
39
Device Name
S8
x
x
bq27350
Configuration
49
Discharge
0
TDA Set %
I1
–1
100
6
%
Configuration
49
Discharge
1
TDA Clear %
I1
–1
100
8
%
System Data
58
Manufacturer
Info
0 – 31
Block A [0 – 31]
H1
0x00
0xff
0x00
System Data
58
Manufacturer
Info
32 – 63
Block B [0 – 31]
H1
0x00
0xff
0x00
System Data
58
Manufacturer
Info
64 – 95
Block C [0 – 31]
H1
0x00
0xff
0x00
Configuration
64
Registers
0
Pack Configuration
H2
0x0000
0xffff
0x0131
Configuration
68
Power
0
Flash Update OK Voltage
I2
2400
4200
2800
mV
Configuration
68
Power
7
Sleep Current
I2
0
100
10
mA
Gas Gauging
80
IT Cfg
0
Load Select
U1
0
255
1
Gas Gauging
80
IT Cfg
1
Load Mode
U1
0
255
0
Gas Gauging
80
IT Cfg
48
Terminate Voltage
I2
–32768
32767
3000
Gas Gauging
80
IT Cfg
63
User Rate-mA
I2
0
9000
0
mA
Gas Gauging
80
IT Cfg
65
User Rate-mW
I2
0
14000
0
10mW
Gas Gauging
80
IT Cfg
67
Reserve Cap-mAh
I2
0
9000
0
mAh
Gas Gauging
80
IT Cfg
69
Reserve Cap-mWh
I2
0
14000
0
10mWh
Gas Gauging
81
Current
Thresholds
0
Dsg Current Threshold
I2
0
2000
75
mA
Gas Gauging
81
Current
Thresholds
2
Chg Current Threshold
I2
0
2000
75
mA
Gas Gauging
81
Current
Thresholds
4
Quit Current
I2
0
1000
50
mA
Gas Gauging
81
Current
Thresholds
6
Dsg Relax Time
U2
0
8191
1800
s
Gas Gauging
81
Current
Thresholds
8
Chg Relax Time
U1
0
255
60
s
Gas Gauging
81
Current
Thresholds
9
Quit Relax Time
U1
0
63
1
s
GENERAL DESCRIPTION
Name
mV
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
Table 4-9. Data Flash Summary (continued)
Class
Subclass
ID
Subclass
Offset
Data
Type
Min
Value
Max
Value
Default
Value
Units
Gas Gauging
82
State
0
Gas Gauging
82
State
2
Qmax Cell 0
I2
0
32767
1500
mAh
Qmax Pack
I2
0
32767
1500
Gas Gauging
82
State
mAh
6
Update Status
H1
0x00
0x06
0x0
Gas Gauging
82
Gas Gauging
82
State
9
Avg I Last Run
I2
–32768
32767
–2000
mA
State
11
Avg P Last Run
I2
–32768
32767
–3022
mW
Ra Table
88
Ra Table
88
R_a0
0
Cell0 R_a flag
H2
0x0000
0x0000
0xff55
R_a0
2 – 30
Cell0 R_a [0 –14]
I2
183
183
160
Ra Table
89
R_a0x
0
Ra Table
89
R_a0x
2 – 30
xCell0 R_a flag
H2
0xffff
0xffff
0xffff
xCell0 R_a [0 –14]
I2
183
183
160
Calibration
104
Data
Calibration
104
Data
0
CC Gain
F4
0.1
4
0.9419
4
CC Delta
F4
0.1
4
Calibration
104
0.9419
Data
8
Ref Voltage
I2
0
32767
Calibration
1225
104
Data
10
CC Offset
I2
–32768
32767
–1667
Calibration
104
Data
12
Board Offset
I2
–32767
32767
0
Calibration
104
Data
14
Int Temp Offset
I1
–128
127
0
Calibration
104
Data
15
Ext1 Temp Offset
I1
–128
127
0
Calibration
107
Current
1
Deadband
U1
0
255
3
Name
2-10Ω
2-10Ω
mA
5 FUNCTIONAL DESCRIPTION
5.1 FUEL GAUGING
The bq27350 measures the cell voltage, temperature, and current to determine battery SOC. The
bq27350 monitors charge and discharge activity by sensing the voltage across a small-value resistor
(5mΩ to 20 mΩ typ.) between the SRP and SRN pins and in-series with the cell. By integrating charge
passing through the battery, the cell’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 value is 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 bq27350
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 Terminate Voltage.
NominalAvailableCapacity( ) and FullAvailableCapacity( ) are the uncompensated (no or light load)
versions of RemainingCapacity( ) and FullChargeCapacity( ) respectively.
The bq27350 has two flags accessed by the Flags( ) function that warns when the cell’s SOC has fallen to
critical levels. When RemainingCapacity( ) falls below the first capacity threshold, specified in RCA Set,
the [RCA] (“Remaining Capacity Alert”) flag is set. The flag is cleared once RemainingCapacity( ) rises
above RCA Set. All units are in mAh.
When StateOfCharge( ) falls below the second capacity threshold, TDA Set %, the [TDA] (“Terminate
Discharge Alert”) flag is set, serving as a final discharge warning. If TDA Set % = -1, the flag is inoperative
during discharge.
Similarly, when StateOfCharge( ) rises above TDA Clear % and the [TDA] flag has already been set, the
[TDA] flag will be cleared, provided TDA Set % ≠– 1. All units are in percentages.
Submit Documentation Feedback
FUNCTIONAL DESCRIPTION
19
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
5.2 IMPEDANCE TRACK VARIABLES
The bq27350 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.
Load Mode
Load Mode is used to select either the constant current or constant power model for the Impedance Track™ algorithm as used in
Load Select (see Load Select). When Load Mode is 0, the Constant Current Model is used (default). When 1, the Constant
Power Model is used.
Load Select
Load Select defines the type of power or current model to be used to compute load-compensated capacity in the Impedance
Track™ algorithm. If Load Mode = 0 (‘Constant Current’) then the options presented in Table 5-1 are available.
Table 5-1. Constant-Current Model Used When Load Mode = 0
LoadSelect Value
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 present time.
2
Average Current: based on AverageCurrent( )
3
Current: based off of a low-pass-filtered version of AverageCurrent( ) (τ =14s)
4
Design Capacity / 5: C Rate based off of 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( ). This gives a completely user configurable method.
If Load Mode = 1 (‘Constant Power’) then the following options are available:
Table 5-2. Constant-Power Model Used When Load Mode = 1
LoadSelect Value
0
1(default)
Power Model Used
Average discharge power from previous cycle: There is an internal register that records the average discharge
power through each entire discharge cycle. The previous average is stored in this register.
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 off the AverageCurrent( ) and Voltage( ).
3
Current ×Voltage: based off of a low-pass-filtered version of AverageCurrent( )(τ=14s) and Voltage( )
4
Design Energy / 5: C Rate based off of 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( ) mW. This gives a completely user configurable method.
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.
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.
20
FUNCTIONAL DESCRIPTION
Submit Documentation Feedback
www.ti.com
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
SLUS754 – MARCH 2007
Dsg Current Threshold
This register is used as a threshold by many functions in the bq27350 to determine if actual discharge current is flowing into or
out of the cell. The default for this register is 100mA 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.
Chg Current Threshold
This register is used as a threshold by many functions in the bq27350 to determine if actual charge current is flowing into or out
of the cell. The default for this register is 50mA 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.
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 bq27350 enters relaxation mode
from a current flowing mode in either the charge direction or the discharge direction. The value of Quit Current is set to a default
value of 10mA and should be above the standby current of the host system, but not exceed the C/20 rate..
Either of the following criteria must be met to enter relaxation mode:
1. | AverageCurrent( ) | < | Quit Current | for Dsg Relax Time.
2. | AverageCurrent( ) | < | Quit Current | for Chg Relax Time.
After about 30 minutes in relaxation mode, and when voltage change rate satisfies the criteria dV/dt < 4uV/sec, the bq27350
attempts to take accurate OCV readings. If state of charge (SOC) change from the previous OCV reading exceeds 37% when a
new reading is taken, the total cell capacity, Qmax, is updated. 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 is not 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.
Qmax
Qmax contains the maximum chemical capacity of a cell and is determined by comparing states of charge, before and after
applying a load, with the amount of charge that passed. It also corresponds to capacity at very low rate of discharge such as
C/20 rate. For high accuracy, this value is periodically updated by the bq27350 during operation. The initial value of Qmax
should be set to the battery cell capacity specified in its datasheet.
Update Status
There are 2 bits in this register that are important
– Bit 1 (0x02) indicates that the bq27350 has learned new Qmax parameters and is accurate.
– Bit 2 (0x04) indicates whether Impedance Track™ algorithm is enabled.
The remaining bits are reserved. Bits 1 and 2 are user-configurable; however, bit 1 is also a status flag that can be set by the
bq27350. These bits should never be modified except when creating a golden image file as explained in the application note
“Preparing Optimized Default Flash Constants for specific Battery Types” (see SLUA334.pdf). Bit 1 is updated as needed by the
bq27350 and Bit 2 is set with Control( ) command 0x0021.
Avg I Last Run
The bq27350 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 never need to be modified. It is only updated by the
bq27350 when required.
Avg P Last Run
The bq27350 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 bq27350 continuously multiplies
instantaneous current times Voltage( ) to get power. It then logs this data to derive the average power. This register should
never need to be modified. It is only updated by the bq27350 when the required.
The Ra Tables
This data is automatically updated during device operation. No user changes should be made except for reading the values from
another pre-learned pack for creating “Golden Image Files”. Profiles have format Cell0 R_a M, where M is the number indicating
state of charge to which the value corresponds.
5.3 TEMPERATURE MEASUREMENT
The bq27350 can measure temperature via the on-chip temperature sensor or via the TS input depending
on the setting of the [TEMPS] bit PackConfiguration( ). The bit is set by using the PackConfiguration( )
function, described in the section entitled EXTENDED COMMAND SUMMARY.
Temperature measurements are made by calling the Temperature( ) function (see STANDARD
COMMANDS for specific information).
Submit Documentation Feedback
FUNCTIONAL DESCRIPTION
21
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
When an external thermistor input is used, TOUT (pin 7) is used to power the thermistor and TS (pin 3) to
measure the thermistor voltage. The bq27350 then correlates the voltage to temperature assuming the
thermistor is a Semitec 103AT or similar device.
5.4 OVER-TEMPERATURE INDICATION
The bq27350 can set safety flag indications based on measure temperature both in charge and discharge
states.
Over-Temperature: Charge
If during charging, Temperature( ) exceeds 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. Note: if OT Chg Time =
0 then feature is completely disabled.
When Temperature( ) falls below OT Chg Recovery, the [OTC] of Flags( ) is reset.
Over-Temperature: Discharge
If, during discharging, Temperature( ) exceeds 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. Note: if OT Dsg Time
= 0 then feature is completely disabled.
When Temperature( ) falls below OT Dsg Recovery, the [OTD] bit of Flags( ) is reset.
5.5 CHARGING AND CHARGE TERMINATION INDICATION
For proper bq27350 operation, the cell charging voltage must be specified by the user. The default value
for this variable is Charging Voltage = 4200mV.
The bq27350 detects charge termination when (1) during 2 consecutive periods of Current Taper
Window, the AverageCurrent( ) is < Taper Current and (2) during the same periods, the accumulated
change in capacity > 0.25mAh /Taper Current Window and (3) Voltage( ) > Charging Voltage Charging Taper Voltage. When this occurs, the [FC] bit of Flags( ) is set and [CHG] bit is cleared. Also, if
the [RMFCC] bit of Pack Configuration is set, then RemainingCapacity( ) is set equal to
FullChargeCapacity( )
5.6 POWER MODES
The bq27350 has four power modes: NORMAL, SLEEP, HIBERNATE, and SHUTDOWN (in descending
order of power consumption). In NORMAL mode, the bq27350 is fully powered and can execute any
allowable task. In SLEEP mode the gas gauge exists in a reduced-power state, periodically taking
measurements and performing calculations. In HIBERNATE mode the gas gauge is in its lowest power
state, only to be woken by communications activity or an increase in the magnitude of battery current.
Finally in SHUTDOWN mode, all bq27350 circuits are turned off and power is removed from the device;
the IC can be restarted by reapplying sufficient voltage to the device.
The relationship between these modes is shown in Figure 5-1. Details are described in the sections that
follow.
22
FUNCTIONAL DESCRIPTION
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
NORMAL
Gas gauging and data
updated every1s,
Exit From HIBERNATE
Interface activity
OR
Current is Detected above I WAKE
OR
Device reset
Exit From SHUTDOWN
2s after both charger is attached
AND
Protection FETs close/are closed
ICC = Normal
Entry to SLEEP
PkCfg[SLEEP] =1
AND
| AverageCurrent( ) |≤ SleepCurrent
AND
[( If PkCfg[BUSLOW] = 1 for
t BUSLOW ≥ 5 seconds)
OR
(PkCfg[BUSLOW] = 0 )]
HIBERNATE
Gas gauging and data
updating is OFF
Exit From SLEEP
|AverageCurrent( )| > SleepCurrent
OR
Current is Detected above I WAKE
OR
Interface Activity when
PkCfg[BUSLOW] = 1
SHUTDOWN
Gas gauging and data
updating is OFF
ICC = 0
ICC = Hibernate
Entry to HIBERNATE
PkCfg[HIBERNATE] = 1
AND
Entry to SLEEP still conditions met
SLEEP
Gas gauging and data
Updating every 5 seconds
ICC = Sleep
Exit From PRE
_SHUTDOWN
Interface activity
OR
Current is Detected above I WAKE
OR
Device reset
Entry to SHUTDOWN
No Charger Present
Entry to PRE_SHUTDOWN
PkCfg [SHUTDOWN] = 1
PRE_SHUTDOWN
Gas gauging and data
updating is OFF
DSG FET Turned OFF
SE pin = High
ICC = Hibernate
Figure 5-1. Power Mode Diagram
5.6.1
NORMAL MODE
The gas 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.
5.6.2
SLEEP MODE
SLEEP mode is entered when (1) AverageCurrent( ) is below a programmable level Sleep Current and
(2) if the [BUSLOW] bit of Pack Configuration( ) is set and the data bus (both SCL and SDA low pins) is
low for 5s. [SLEEP] bit of Control Status( ) is set when the bq27350 enters SLEEP mode. Once entry to
SLEEP has been qualified, but prior to entry to sleep mode, the bq27350 performs an ADC autocalibration
to minimize offset. Entry into SLEEP mode can be disabled by setting the [SLEEP] bit of Pack
Configuration( ), where "0" = disabled and "1" = enabled. During SLEEP mode, the bq27350 periodically
wakes to take data measurements and update the data set, after which it then returns directly to SLEEP.
The bq27350 exits SLEEP if any entry condition is broken, a change in protection status occurs, or a
current in excess of IWAKE through RSENSE is detected.
Submit Documentation Feedback
FUNCTIONAL DESCRIPTION
23
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
5.6.3
HIBERNATE MODE
To enter HIBERNATE mode, the [HIBERNATE] bit of PackConfiguration( ) needs to be set when the
device enters SLEEP mode. The HIBERNATE mode is exited if (1) communication is detected, (2) a
device reset occurs, or (3) if current through RSENSE is above IWAKE. If the Pack Configuration
[HIBERNATE] bit is cleared, the bq27350 will not enter HIBERNATE mode. Upon exiting HIBERNATE
mode, the device is returned to NORMAL mode.
5.6.4
SHUTDOWN MODE
SHUTDOWN mode requires the use of an external LDO with an enable feature (active low). To enter
SHUTDOWN, the PackConfiguration( ) [SHUTDOWN] bit needs to be set when the bq27350 enters
HIBERNATE. A charger must not be present and the DSG FET of protector must be turned OFF. If the
[SHUTDOWN] bit of PackConfiguration( ) is set, the bq27350 raise its SE pin high on entry into
HIBERNATE. This action, in conjunction with the deactivation of the DSG FET (low-side protector
implementation), shuts down the LDO and, hence, the bq27350. The LDO recovers when a charger is
applied for more than 2s.
5.7 POWER CONTROL
5.7.1
RESET FUNCTIONS
When the bq27350 detects either a hardware or software reset (MRST pin driven low or the [RESET] bit
of Control( ) initiated, respectively), it determines the type of reset and increments the corresponding
counter. This information is accessible by issuing the command Control( ) function with the RESET_DATA
subcommand.
As shown in Figure 5-2 if a partial reset was detected, a RAM checksum is generated and compared
against the previously stored checksum. If the checksum values do not match, the RAM is reinitialized (a
“Full Reset”). The stored checksum is updated every time RAM is altered.
DEVICE RESET
Generate Active
RAM checksum
value
Stored
checksum
Do the Checksum
Values Match?
NO
Re-initialize all
RAM
YES
NORMAL
OPERATION
NO
Active RAM
changed ?
YES
Store
checksum
Generate New
checksum value
Figure 5-2. Partial Reset Flow Diagram
24
FUNCTIONAL DESCRIPTION
Submit Documentation Feedback
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
5.7.2
WAKE-UP COMPARATOR
The wake up comparator is used to indicate a change in cell current while the bq27350 is in either Sleep
or Hibernate modes. PackConfiguration( ) uses bits [RSNS1-RSNS0] to set the sense resistor selection.
PackConfiguration( ) 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 breached in either
charge or discharge directions. A setting of 0x00 of RSNS1..0 disables this feature.
Table 5-3. IWAKE Threshold Settings (1)
(1)
5.7.3
RSNS1
RSNS0
IWAKE
Vth(SRP-SRN)
0
0
0
Disabled
0
0
1
Disabled
0
1
0
+1.25 mV or –1.25 mV
0
1
1
+2.5 mV or –2.5 mV
1
0
0
+2.5 mV or –2.5 mV
1
0
1
+5 mV or –5 mV
1
1
0
+5 mV or –5 mV
1
1
1
+10 mV or –10 mV
The actual resistance value vs. the setting of the sense resistor is not important just the actual voltage
threshold when calculating the configuration.
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 bq27350 Vcc voltage does not fall below its minimum of 2.4V during Flash write operations. For the
TPS71525 LDO shown in the Reference Schematic, the default value of 2800mV is appropriate.
5.8 AUTOCALIBRATION
The bq27350 provides an autocalibration feature that will measure the voltage offset error across SRP
and SRN from time-to-time as operating conditions change. It subtracts the resulting offset error from
normal sense resistor voltage, Vsr, for maximum measurement accuracy.
The gas gauge performs a single offset calibration when (1) the interface lines stay low for a minimum of
Bus Low Time and (2) Vsr > Deadband.
The gas gauge also performs a single offset when (1) the condition of AverageCurrent( ) ≤ Autocal Min
Current and (2) {voltage change since last offset calibration ≥ Delta Voltage} or {temperature change
since last offset calibration is greater than Delta Temperature for ≥ Autocal Time}.
Capacity and current measurements should continue at the last measured rate during the offset calibration
when these measurements cannot be performed. If the battery voltage drops more than Cal Abort during
the offset calibration, the load current has likely increased considerably; hence, the offset calibration will
be aborted.
6 COMMUNICATIONS
The bq27350 uses I2C communications identical to the bq27200, and interfaces directly with TI-OMAP and
other standard I2C-master devices.
The bq27350 also uses an SDQ interface to communicate with security products, such as the bq26100.
The bq27350 is only acting as a format translator between I2C and SDQ.
Submit Documentation Feedback
COMMUNICATIONS
25
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
www.ti.com
SLUS754 – MARCH 2007
6.1 I2C INTERFACE
The gas gauge supports the standard I2C read, incremental read, one-byte write quick read, and
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
bq27200 generated
(a) 1-byte write
(b) quick read
(c) 1-byte read
(d) incremental read
(S = Start, Sr = Repeated Start, A = Acknowledge, N = No Acknowledge, and P = Stop).
Figure 6-1. Supported I2C Formats
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
bq27350 or the I2C master. “Quick writes” function in the same manner and are a convenient means of
sending multiple bytes to consecutive command locations (such as two-byte commands that require two
bytes of data).
Attempt to write a read-only address (NACK after data sent by master):
Attempt to read an address above 0x7F (NACK command):
Attempt at incremental writes (NACK all extra data bytes sent):
Incremental read at the maximum allowed read address:
The I2C engine releases both SDA and SCL if the I2C bus is held low for t(BUSERR). If the gas gauge 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.
26
COMMUNICATIONS
Submit Documentation Feedback
www.ti.com
bq27350
Single Cell Li-Ion Battery Manager
With Impedance Track Fuel Gauge Technology
SLUS754 – MARCH 2007
6.2 AUTHENTICATION
The bq27350 can act as a SHA-1/HMAC authentication slave, either by using its internal engine or by
using an external bq26100 (contains secure memory). In both implementations, sending a 160-bit SHA-1
challenge message to the bq27350 will cause the IC to return a 160-bit digest, based upon the challenge
message and hidden plain-text authentication keys. When this digest matches an identical one, generated
by a host or dedicated authenication master operating on the same challenge message and using the
same plain text keys, the authentication process is successful.
The
bq27350
contains
a
default
plain-text
authentication
key
of
0x0123456789ABCDEFFEDCBA987654321. If using the bq27350's internal authentication engine, the
default key can be used for development purposes, but should be changed to a secret key and the part
immediately sealed, before putting a pack into operation. If using the a bq26100 for external
authentication, the key must be changed to 16 bytes of "0x00".
6.2.1
KEY PROGRAMMING
When the bq27350's SHA-1/HMAC internal engine is used, authentication keys are stored as plain-text in
memory. A plain-text authentication key can only be written to the bq27350 while the IC is in UNSEALED
mode. Once the IC is UNSEALED, a 0x00 is written to BlockDataControl( ) to enable the authentication
data commands. Next, subclass ID and offset are specified by writing 0x70 and 0x00 to DataFlashClass( )
and DataFlashBlock( ), respectively. The bq27350 is now prepared to receive the 16-byte plain-text key,
which must begin at command location 0x4C. The key is accepted once a successful checksum has been
written to BlockDataChecksum( ), FOR THE ENTIRE 32-BYTE BLOCK (0x40 through 0x5f), NOT JUST
THE 16-BYTE KEY.
When using an external bq26100 authentication IC, authentication keys are stored within the bq26100's
secure memory. The bq26100 uses a split-key system of two 64-bit keys, instead of a single 128-bit key.
Details on programming these keys can be found in the bq26100 data sheet.
6.2.2
EXECUTING AN AUTHENTICATION QUERY
To execute an authentication query in UNSEALED mode, a host must first write 0x01 to the
BlockDataControl( ) command, to enable the authentication data commands. If in SEALED mode, 0x00
must be written to DataFlashBlock( ), instead. Next, the host writes a 20-byte authentication challenge to
the AuthenticateData( ) address locations (0x40 through 0x53). After a valid checksum for the challenge is
written to AuthenticateChecksum( ), the bq27350 uses the challenge to perform it own the SHA-1/HMAC
computation, in conjunction with its programmed keys. The resulting digest is written to
AuthenticateData( ), overwriting the pre-existing challenge. The host may then read this response and
compare it against the result created by its own parallel computation.
7 REFERENCE SCHEMATIC
The reference circuit on the next page shows an I2C communication implementation of the bq27350. D1
and associated resistors provide added protection against ESD appearing on the communication lines.
Capacitors C4/C8 and C15/C16 are also used for ESD protection and are paired together for increased
voltage handling ability and redundancy protection, should one capacitor fail in a shorted state.
Optional circuits for external authentication, using the bq26100 (U1), and external temperature
measurements (R12, R14, and C10) are also shown.
Common-mode and differential filters (R7-19 and C12-14) remove noise at input of the coulomb counter
input. U4, Q4, and associated passives form the Li+ cell protector, while U3, C5, and C9 comprise the
LDO IC and its input/output capacitors. R5 and C7 provide a delayed "power good" signal to the MRST
input.
Q3, R13, and D2 act as an LDO disable circuit (LDO is off when PACK- and SE pin are both "high").
Finally, Q1, Q2, R1, R2 and R4 form a precision voltage divider that reduces cell voltage to levels suitable
for the bq27350.
Submit Documentation Feedback
REFERENCE SCHEMATIC
27
PACKAGE OPTION ADDENDUM
www.ti.com
7-May-2007
PACKAGING INFORMATION
Orderable Device
Status (1)
Package
Type
Package
Drawing
Pins Package Eco Plan (2)
Qty
BQ27350PW
ACTIVE
TSSOP
PW
20
70
Green (RoHS &
no Sb/Br)
CU NIPDAU
Level-1-260C-UNLIM
BQ27350PWG4
ACTIVE
TSSOP
PW
20
70
Green (RoHS &
no Sb/Br)
CU NIPDAU
Level-1-260C-UNLIM
BQ27350PWR
ACTIVE
TSSOP
PW
20
2000 Green (RoHS &
no Sb/Br)
CU NIPDAU
Level-1-260C-UNLIM
BQ27350PWRG4
ACTIVE
TSSOP
PW
20
2000 Green (RoHS &
no Sb/Br)
CU NIPDAU
Level-1-260C-UNLIM
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
21-May-2007
TAPE AND REEL INFORMATION
Pack Materials-Page 1
PACKAGE MATERIALS INFORMATION
www.ti.com
Device
BQ27350PWR
21-May-2007
Package Pins
PW
20
Site
Reel
Diameter
(mm)
Reel
Width
(mm)
A0 (mm)
B0 (mm)
K0 (mm)
P1
(mm)
TAI
330
16
6.95
7.1
1.6
8
TAPE AND REEL BOX INFORMATION
Device
Package
Pins
Site
Length (mm)
Width (mm)
Height (mm)
BQ27350PWR
PW
20
TAI
346.0
346.0
33.0
Pack Materials-Page 2
W
Pin1
(mm) Quadrant
16
Q1
MECHANICAL DATA
MTSS001C – JANUARY 1995 – REVISED FEBRUARY 1999
PW (R-PDSO-G**)
PLASTIC SMALL-OUTLINE PACKAGE
14 PINS SHOWN
0,30
0,19
0,65
14
0,10 M
8
0,15 NOM
4,50
4,30
6,60
6,20
Gage Plane
0,25
1
7
0°– 8°
A
0,75
0,50
Seating Plane
0,15
0,05
1,20 MAX
PINS **
0,10
8
14
16
20
24
28
A MAX
3,10
5,10
5,10
6,60
7,90
9,80
A MIN
2,90
4,90
4,90
6,40
7,70
9,60
DIM
4040064/F 01/97
NOTES: A.
B.
C.
D.
All linear dimensions are in millimeters.
This drawing is subject to change without notice.
Body dimensions do not include mold flash or protrusion not to exceed 0,15.
Falls within JEDEC MO-153
POST OFFICE BOX 655303
• DALLAS, TEXAS 75265
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements,
improvements, and other changes to its products and services at any time and to discontinue any product or service without notice.
Customers should obtain the latest relevant information before placing orders and should verify that such information is current and
complete. All products are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s
standard warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this
warranty. Except where mandated by government requirements, testing of all parameters of each product is not necessarily
performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and
applications using TI components. To minimize the risks associated with customer products and applications, customers should
provide adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask
work right, or other TI intellectual property right relating to any combination, machine, or process in which TI products or services
are used. Information published by TI regarding third-party products or services does not constitute a license from TI to use such
products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under
the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is without alteration and is
accompanied by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an
unfair and deceptive business practice. TI is not responsible or liable for such altered documentation.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service
voids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business
practice. TI is not responsible or liable for any such statements.
TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would
reasonably be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement
specifically governing such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications
of their applications, and acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related
requirements concerning their products and any use of TI products in such safety-critical applications, notwithstanding any
applications-related information or support that may be provided by TI. Further, Buyers must fully indemnify TI and its
representatives against any damages arising out of the use of TI products in such safety-critical applications.
TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are
specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military
specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is
solely at the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in
connection with such use.
TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products
are designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any
non-designated products in automotive applications, TI will not be responsible for any failure to meet such requirements.
Following are URLs where you can obtain information on other Texas Instruments products and application solutions:
Products
Applications
Amplifiers
amplifier.ti.com
Audio
www.ti.com/audio
Data Converters
dataconverter.ti.com
Automotive
www.ti.com/automotive
DSP
dsp.ti.com
Broadband
www.ti.com/broadband
Interface
interface.ti.com
Digital Control
www.ti.com/digitalcontrol
Logic
logic.ti.com
Military
www.ti.com/military
Power Mgmt
power.ti.com
Optical Networking
www.ti.com/opticalnetwork
Microcontrollers
microcontroller.ti.com
Security
www.ti.com/security
RFID
www.ti-rfid.com
Telephony
www.ti.com/telephony
Low Power
Wireless
www.ti.com/lpw
Video & Imaging
www.ti.com/video
Wireless
www.ti.com/wireless
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2007, Texas Instruments Incorporated