bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com System-Side Impedance Track™ Fuel Gauge With Direct Battery Connection FEATURES APPLICATIONS • • • • • • 1 23 • • • • • Battery Fuel Gauge for 1-Series LiCoO2 battery Applications Easy to Configure Battery Fuel Gauging Based on Patented Impedance Track™ Technology – Models Battery Discharge Curve for Accurate State-of-Charge Report – Automatically Adjusts for Battery Aging, Battery Self-Discharge, and Temperature/Rate Inefficiencies – Low-Value Sense Resistor (5 mΩ or 20 mΩ) Resides on System Main Board – Works with Embedded or Removable Battery Packs – Integrated LDO allows devices to be powered directly from battery pack Microcontroller Peripheral Provides: – Accurate Battery Fuel Gauging – Internal Temperature Sensor for Battery Temperature Reporting – Configurable Level of State-of-Charge (SOC) Interrupts I2C™ for Connection to System Microcontroller Port Small 12-pin 2,5 mm × 4 mm SON Package Smartphones PDAs Digital Still and Video Cameras Handheld Terminals MP3 or Multimedia Players DESCRIPTION The Texas Instruments bq27410 system-side LiCoO2 battery fuel gauge is an easy to configure microcontroller peripheral that provides fuel gauging for single-cell LiCoO2 battery packs. The device requires minimal user configurations and system microcontroller firmware development for accurate fuel gauging. The bq27410 uses the patented Impedance Track™ algorithm for fuel gauging, and provides information such as remaining battery capacity (mAh), state-of-charge (%), and battery voltage (mV). Battery fuel gauging with the bq27410 requires only PACK+ (P+), PACK– (P–), for a removable battery pack or embedded battery circuit. The 12-pin SON package with dimensions of 2,5 mm × 4 mm with 0.5mm lead pitch is ideal for space constrained applications. TYPICAL APPLICATION Single Cell Li- Ion Battery Pack Voltage Sense VBAT REG 25 LDO PACK + PROTECTION IC REGIN VCC System Interface I2C To Charger bq27410 T DATA GPOUT BIN PACK - SRP SRN FETs CHG DSG Current Sense VSS 1 2 3 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 is a trademark of Texas Instruments. I2C is a trademark of Phillips Corporation. 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 © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 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. DEVICE INFORMATION AVAILABLE OPTIONS PACKAGE (1) TA COMMUNICATION FORMAT 12-pin, 2,5-mm × 4-mm SON –40°C to 85°C I2C PART NUMBER bq27410DRZR-G1 bq27410DRZT-G1 (1) TAPE and REEL QUANTITY 3000 250 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. PIN DIAGRAM BIN 1 12 GPOUT REG25 2 11 SCL REGIN 3 10 SDA bq27410-G1 BAT 4 9 NC VCC 5 8 SRN VSS 6 7 SRP PIN FUNCTIONS PIN NAME NO. TYPE (1) DESCRIPTION BIN 1 I Battery-insertion detection input. A logic high to low transition is detected as a battery insertion event. REG25 2 P 2.5 V output voltage of the internal integrated LDO. REGIN 3 P The input voltage for the internal integrated LDO. BAT 4 I Cell-voltage measurement input. ADC input. Recommend 4.8V maximum for conversion accuracy. Vcc 5 P Processor power input. Decouple with minimum 0.1µF ceramic capacitor. Vss 6 P Device ground SRP 7 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. SRN 8 IA Analog input pin connected to the internal coulomb counter where SRN is nearest the Vss connection. Connect to 5-mΩ to 20-mΩ sense resistor. NC 9 O No Connect. SDA 10 I/O Slave I2C serial communications data line for communication with system (Master). Open-drain I/O. Use with 10kΩ pull-up resistor (typical). SCL 11 I Slave I2C serial communications clock input line for communication with system (Master). Use with 10kΩ pull-up resistor (typical). GPOUT 12 O General Purpose open-drain output. May be configured as Battery Low indicator or perform SOC interrupt (SOC_INT) function. (1) 2 I/O = Digital input/output; IA = Analog input; P = Power connection. Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com ELECTRICAL SPECIFICATIONS ABSOLUTE MAXIMUM RATINGS over operating free-air temperature range (unless otherwise noted) (1) VALUE UNIT –0.3 to 2.75 V Open-drain I/O pins (SDA, SCL, GPOUT) –0.3 to 6 V BAT input pin –0.3 to 6 V –0.3 to VCC + 0.3 V VCC Supply voltage range VIOD VBAT VI Input voltage range to all other pins (BIN, SRP, SRN) ESD Human Body Model (HBM), BAT pin 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. THERMAL INFORMATION bq27410-G1 THERMAL METRIC (1) DRZ (12-PINS) θJA Junction-to-ambient thermal resistance 64.1 θJCtop Junction-to-case (top) thermal resistance 59.8 θJB Junction-to-board thermal resistance 52.7 ψJT Junction-to-top characterization parameter 0.3 ψJB Junction-to-board characterization parameter 28.3 θJCbot Junction-to-case (bottom) thermal resistance 2.4 (1) UNITS °C/W For more information about traditional and new thermal metrics, see the IC Package Thermal Metrics application report, SPRA953. RECOMMENDED OPERATING CONDITIONS AND DC 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 VREGIN Supply voltage TEST CONDITION MIN No operating restrictions TYP MAX 2.7 5.5 No FLASH writes 2.45 2.7 0.47 V µF CREG25 External REG25 capacitor CREG25 ICC Normal operating mode current Fuel gauge in NORMAL mode, ILOAD > Sleep Current ISLP Sleep operating mode current IFULLSLP Low-power operating mode current IHIB Hibernate operating mode current Fuel gauge in HIBERNATE mode. ILOAD < Hibernate Current VOL Output voltage low (Digital pins) IOL = 0.5 mA VOH(OD) Output high voltage (SDA, SCL, GPOUT) External pull-up resistor connected to Vcc VIL Input voltage low (SDA, SCL) –0.3 0.6 Input voltage low (BIN) –0.3 0.6 VIH(OD) UNIT 103 μA Fuel gauge in SLEEP mode. ILOAD < Sleep Current 60 μA Fuel gauge in FULLSLEEP mode. ILOAD < Sleep Current 18 μA 4 μA 0.4 VCC–0.5 V V Input voltage high (SDA, SCL) 1.2 6 Input voltage high (BIN) 1.2 VCC+0.3 V V VA2 Input voltage range (BAT) VSS–0.125 5 VA3 Input voltage range (SRP, SRN) VSS–0.125 0.125 V Ilkg Input leakage current (I/O pins) 0.3 µA tPUCD Power-up communication delay Copyright © 2011, Texas Instruments Incorporated 250 Submit Documentation Feedback V ms 3 bq27410-G1 SLUSAF4 – MARCH 2011 2.5 V LDO www.ti.com (1) TA = –40°C to 85°C, typical values at TA = 25°C, CREG = 0.47µF and VBAT = 3.6 V (unless otherwise noted) PARAMETER VREG25 Regulator output voltage TEST CONDITION MIN NOM MAX 2.7 V ≤ VREGIN ≤ 5.5 V, IOUT ≤ 16 mA 2.4 2.45 V ≤ VREGIN < 2.7 V (low battery), IOUT ≤ 3 mA 2.4 2.5 UNIT 2.6 V 2.7 V, IOUT ≤ 16 mA 280 mV 2.45 V, IOUT ≤ 3 mA 50 V VDO Regulator dropout voltage ΔVREGTEMP Regulator output change with temperature VREGIN = 3.6 V, IOUT = 16 mA ΔVREGLINE Line regulation 2.7 V ≤ VREGIN ≤ 5.5 V, IOUT = 16 mA, TA = 25°C 11 25 mV ΔVREGLOAD Load regulation 0.2 mA ≤ IOUT ≤ 3 mA, VREGIN = 2.45 V, TA = 25°C 34 40 mV 3 mA ≤ IOUT ≤ 16 mA, VREGIN = 2.7 V, TA = 25°C 31 250 mA ISHORT (1) (2) (2) Short circuit current limit 0.3% VREG25 = 0 V, TA = –40°C to 85°C LDO output current, IOUT, is the sum of internal and external load currents. Assured by design. Not production tested. POWER-ON RESET TA = –40°C to 85°C, typical values at TA = 25°C and VBAT = 3.6 V (unless otherwise noted) PARAMETER VIT+ Positive-going battery voltage input at VCC VHYS Power-on reset hysteresis TEST CONDITIONS MIN TYP MAX UNIT 2.09 2.20 2.31 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 TEST CONDITIONS MIN TYP MAX UNIT –2 GTEMP Temperature sensor voltage gain 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 Operating frequency fEIO Frequency error (1) tSXO Start-up time (3) (1) (2) (3) 4 TEST CONDITIONS (2) MIN TYP MAX 2.097 UNIT MHz TA = 0°C to 60°C –2.0% 0.38% 2.0% TA = –20°C to 70°C –3.0% 0.38% 3.0% TA = –40°C to 85°C –4.5% 0.38% 4.5% 2.5 5 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 startup time is defined as the time it takes for the oscillator output frequency to be ±3% of typical oscillator frequency. Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com 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 fOSC Operating frequency fEIO Frequency error (1) TEST CONDITIONS MIN TYP MAX 32.76 8 (2) 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% tLSXO Start-up time (3) (1) (2) (3) UNIT 500 μs 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 startup time is defined as the time it takes for the oscillator output frequency to be ±3% of typical oscillator frequency. 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_IN Input voltage range, V(SRN) and V(SRP) VSR = V(SRN) – V(SRP) tSR_CONV Conversion time Single conversion MIN –0.125 Input offset INL Integral nonlinearity error ZSR_IN Effective input resistance (1) ISR_LKG Input leakage current (1) UNIT 0.125 V s 14 VSR_OS MAX 1 Resolution (1) TYP 15 bits μV 10 ±0.007 ±0.034 %FSR 2.5 MΩ μA 0.3 Assured by design. Not production tested. 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 VADC_IN Input voltage range tADC_CONV Conversion time TEST CONDITIONS ZADC1 ZADC2 IADC_LKG (1) TYP –0.2 Resolution VADC_OS MIN UNIT 1 14 Input offset MAX V 125 ms 15 bits 1 Effective input resistance (TS) (1) 8 bq27410 not measuring cell voltage Effective input resistance (BAT) (1) Input leakage current mV MΩ 8 bq27410 measuring cell voltage MΩ 100 (1) kΩ μA 0.3 Assured by design. Not production tested. 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) tDR ICCPROG) (1) TYP (1) (1) UNIT Years 20,000 Cycles Word programming time (1) Flash-write supply current MAX 10 Flash programming write-cycles tWORDPROG) MIN 5 2 ms 10 mA Assured by design. Not production tested. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 5 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com 400 kHz I2C-COMPATIBLE INTERFACE COMMUNICATION TIMING CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER TEST CONDITIONS MIN TYP MAX UNIT tr SCL/SDA rise time 300 ns tf SCL/SDA fall time 300 ns tw(H) SCL pulse width (high) 600 ns tw(L) SCL pulse width (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 600 ns tBUF Bus free time between stop and start 1.3 μs fSCL Clock frequency 400 kHz 100 kHz I2C-COMPATIBLE INTERFACE COMMUNICATION TIMING CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; typical values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER tr SCL/SDA rise time tf SCL/SDA fall time tw(H) SCL pulse width (high) tw(L) TEST CONDITIONS MIN TYP MAX UNIT 1 µs 300 ns 4 µs 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 0 ns tsu(STOP) Setup time for stop 4 µs tBUF Bus free time between stop and start fSCL Clock frequency μs 4.7 100 tSU(STA) tw(H) tf tw(L) tr kHz t(BUF) SCL SDA td(STA) tsu(STOP) tf tr REPEATED START th(DAT) tsu(DAT) STOP START Figure 1. I2C-Compatible Interface Timing Diagrams 6 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com GENERAL DESCRIPTION The bq27410 accurately predicts the battery capacity and other operational characteristics of a single LiCoO2 rechargeable cell. It can be interrogated by a system processor to provide cell information, such as state-of-charge (SOC). 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 bq27410 control and status registers, as well as its data flash locations. Commands are sent from system to gauge using the bq27410’s I2C serial communications engine, and can be executed during application development, pack manufacture, or end-equipment operation. The key to the bq27410’s high-accuracy gas gauging prediction is Texas Instrument’s proprietary Impedance Track™ algorithm. This algorithm uses cell measurements, characteristics, and properties to create state-of-charge predictions that can achieve high accuracy across a wide variety of operating conditions and over the lifetime of the battery. The bq27410 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’s Vss and the battery’s PACK– terminal. When a cell is attached to the bq27410, cell impedance is computed, based on cell current, cell open-circuit voltage (OCV), and cell voltage under loading conditions. The bq27410 utilizes an integrated temperature sensor for estimating cell temperature. Alternatively, the host processor can provide temperature data for the bq27410. To minimize power consumption, the bq27410 has several power modes: INITIALIZATION, NORMAL, SLEEP, FULLSLEEP, and HIBERNATE. The bq27410 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 Power Modes. NOTE FORMATTING CONVENTIONS IN THIS DOCUMENT: Commands: italics with parentheses and no breaking spaces, 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. Copyright © 2011, Texas Instruments Incorporated e.g. Submit Documentation Feedback 7 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com DATA COMMANDS Standard Data Commands The bq27410 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 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, I2C INTERFACE. Standard commands are accessible in NORMAL operation. Read/Write permissions depend on the active access mode, SEALED or UNSEALED (for details on the SEALED and UNSEALED states, refer to Section Access Modes.) Table 1. Standard Commands COMMAND CODE UNITS SEALED ACCESS Control( ) NAME CNTL 0x00 / 0x01 N/A R/W Temperature( ) TEMP 0x02 / 0x03 0.1°K R/W Voltage( ) VOLT 0x04 / 0x05 mV R FLAGS 0x06 / 0x07 N/A R NominalAvailableCapacity( ) NAC 0x08 / 0x09 mAh R FullAvailableCapacity( ) FAC 0x0a / 0x0b mAh R RemainingCapacity( ) RM 0x0c / 0x0d mAh R FullChargeCapacity( ) FCC 0x0e / 0x0f mAh R AverageCurrent( ) AI 0x10 / 0x11 mA R StandbyCurrent( ) SI 0x12 / 0x13 mA R MaxLoadCurrent( ) MLI 0x14 / 0x15 mA R AvailableEnergy( ) AE 0x16 / 0x17 10mWhr R AveragePower( ) AP 0x18 / 0x19 10mW R StateOfCharge( ) SOC 0x1c / 0x1d % R IntTemperature( ) ITEMP 0x1e / 0x1f 0.1°K R SCH 0x20 / 0x21 % R Flags( ) StateofHealth( ) 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 bq27410 during normal operation and additional features when the bq27410 is in different access modes, as described in Table 2. Table 2. Control( ) Subcommands CNTL FUNCTION CNTL DATA SEALED ACCESS CONTROL_STATUS 0x0000 Yes Reports the status of device. DEVICE_TYPE 0x0001 Yes Reports the device type (0x0410). FW_VERSION 0x0002 Yes Reports the firmware version on the device type. HW_VERSION 0x0003 Yes Reports the hardware version of the device type. PREV_MACWRITE 0x0007 No Returns previous MAC command code. BAT_INSERT 0x000c Yes Forces the [BAT_DET] bit set when the [BIE] bit is 0. BAT_REMOVE 0x000d Yes Forces the [BAT_DET] bit clear when the [BIE] bit is 0. SET_FULLSLEEP 0x0010 Yes Set CONTROL_STATUS [FULLSLEEP] to 1. SET_HIBERNATE 0x0011 Yes Forces CONTROL_STATUS [HIBERNATE] to 1. CLEAR_HIBERNATE 0x0012 Yes Forces CONTROL_STATUS [HIBERNATE] to 0. FACTORY_RESTORE 0x0015 No Forces a Factory Restore of learned resistance and Qmax to defaults. SEALED 0x0020 No Places the bq27410 in SEALED access mode. RESET 0x0041 No Forces a full reset of the bq27410. 8 Submit Documentation Feedback DESCRIPTION Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com CONTROL_STATUS: 0x0000 Instructs the fuel gauge to return status information to control addresses 0x00/0x01. The status word includes the following information. Table 3. CONTROL_STATUS Bit Definitions bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 High Byte HIBE FAS SS RSVD CCA RSVD QMAXU RESU Low Byte INITCOMP HIBERNATE FULLSLEEP SLEEP RSVD RUP_DIS VOK RSVD HIBE = Status bit indicating that Hibernate mode has been Entered. The bit is cleared if a CLEAR_HIBERNATE subcommand is received. Active when set. FAS = Status bit indicating the bq27410 is in FULL ACCESS SEALED state. Active when set. SS = Status bit indicating the bq27410 is in the SEALED State. Active when set. CCA = QMAXU = Status bit indicating the bq27410 Coulomb Counter Auto-Calibration routine is active. The CCA routine will take place approximately 3 minutes and 45 seconds after the initialization. Active when set. Status bit indicating Qmax has Updated. True when set. This bit is cleared after power on reset or when [BAT_DET] bit is set. When this bit is cleared, it enables fast learning of battery Qmax. Status bit indicating that resistance has been updated. True when set. This bit is cleared after power on reset or when RESU = [BAT_DET] bit is set. Also this bit can only be set after Qmax is updated or QMAXU is set. When this bit is cleared, it enables fast learning of battery impedance. INITCOMP = Initialization completion bit indicating the initialization completed. True when set. HIBERNATE = Status bit indicating a request for entry into HIBERNATE from SLEEP mode has been issued. True when set. Default is 0. FULLSLEEP = Status bit indicating the BQ27410 is in FULLSLEEP mode. True when set. The state can be detected by monitoring the power used by the BQ27410 because any communication will automatically clear it. SLEEP = Status bit indicating the bq27410 is in SLEEP mode. True when set. RSVD (bit 3) = This bit reserved and may change state at any time during device operation. RUP_DIS = Status bit indicating the bq27410 Ra table updates are disabled. Updates disabled when set.. VOK = Status bit indicating cell voltages are OK for Qmax updates. True when set. RSVD = Reserved for future use. DEVICE_TYPE: 0x0001 Instructs the fuel gauge to return the device type to addresses 0x00/0x01. FW_VERSION: 0x0002 Instructs the fuel gauge to return the firmware version to addresses 0x00/0x01. HW_VERSION: 0x0003 Instructs the fuel gauge to return the hardware version to addresses 0x00/0x01. PREV_MACWRITE: 0x0007 Instructs the fuel gauge to return the previous command written to addresses 0x00/0x01. The value returned is limited to less than 0x0015. BAT_INSERT: 0X000C This subcommand forces the Flags() [BAT_DET] bit to set when the battery insertion detection is disabled via OpConfig[BIE=0]. In this case, the gauge does not detect battery insertion from the BIN pin’s logic state, but relies on the BAT_INSERT host subcommand to indicate battery presence in the system. This subcommand also starts Impedance Track™ gauging. BAT_REMOVE: 0X000D This subcommand forces the Flags() [BAT_DET] bit to clear when the battery insertion detection is disabled via OpConfig[BIE=0]. In this case, the gauge does not detect battery removal from the BIN pin’s logic state, but relies on the BAT_REMOVE host subcommand to indicate battery removal from the system. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 9 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com SET_FULLSLEEP: 0x0010 Instructs the gas gauge to set the CONTROL_STATUS [FULLSLEEP] bit to 1. This allows the gauge to enter the FULLSLEEP power mode after the transition to SLEEP power state is detected. In FULLSLEEP mode less power is consumed by disabling the high frequency oscillator circuit used by the communication engines. For I2C communications, the first I2C message will incur a 6 - 8 millisecond clock stretch while the oscillator is started and stabilized. A communication to the device in FULLSLEEP will force the device back to the SLEEP mode. 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. CLEAR_HIBERNATE: 0x0012 Instructs the fuel gauge to force the CONTROL_STATUS [HIBERNATE] and [HIBE] bit to 0. This prevents the gauge from entering the HIBERNATE power mode after the transition to SLEEP power state is detected. It can also be used to force the gauge out of HIBERNATE mode. FACTORY_RESTORE: 0X0015 Instructs the fuel gauge to reset learned resistance tables and Qmax values (default = DesignCapacity) to the default values. This command is only available when the fuel gauge is UNSEALED. SEALED: 0x0020 Instructs the fuel gauge to transition from UNSEALED state to SEALED state. The fuel gauge should always be set to SEALED state for use in end equipment. RESET : 0x0041 This command instructs the fuel gauge to perform a full reset. This command is only available when the fuel gauge is UNSEALED. Temperature( ): 0x02/0x03 This read-/write-word function returns an unsigned integer value of the temperature in units of 0.1 K measured by the fuel gauge. If [WRTEMP] bit = 1, a write command sets the temperature to be used for gauging calculations while a read command returns to temperature previously written. If [WRTEMP] bit = 0, a read command will return the internal temperature sensor value and write command will be ignored. Voltage( ): 0x04/0x05 This read-only function returns an unsigned integer value of the measured cell-pack voltage in mV with a range of 0 to 6000 mV. Flags( ): 0x06/0x07 This read-word function returns the contents of the gas-gauge status register, depicting the current operating status. Table 4. Flags Bit Definitions bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 High Byte OTC OTD RSVD RSVD CHG_INH RSVD FC CHG Low Byte OCVTAKEN RSVD RSVD RSVD BAT_DET SOC1 SOCF DSG OTC = Over-Temperature in charge condition is detected. True when set. See Over-Temperature Indication: Charge Sub-Section. OTD = Over-Temperature in discharge condition is detected. True when set. See Over-Temperature Indication: Discharge Sub-Section. CHG_INH = Charge Inhibit indicates the temperature is outside the range. True when set. See Charge Inhibit Sub-Section. FC = Full-charged condition reached. True when set. 10 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com CHG = (Fast) charging allowed. True when set. OCVTAKEN = Cleared on entry to relax mode and Set to 1 when OCV measurement is performed in relax Battery insertion detected. True when set. When OpConfig[BIE]] is set, [BAT_DET] is set by detecting a logic high to low BAT_DET = transition at BIN pin. when OpConfig[BIE]] is low, [BAT_DET] is set when host issues BAT_INSERT subcommand and clear when host issues BAT_REMOVE subcommand. SOC1 = If set, RemainingCapacity() <= SOC1 Set Threshold (default = 150mAh). The [SOC1] bit will remain set until RemainingCapacity() >= SOC1 Clear Threshold (default = 175mAh). SOCF = If set, RemainingCapacity() <= SOCF Set Threshold (default = 75mAh). The [SOCF] bit will remain set until RemainingCapacity() >= SOCF Clear Threshold (default = 100mAh). DSG = Discharging detected. True when set. NominalAvailableCapacity( ): 0x08/0x09 This read-only command pair returns the uncompensated (less than C/20 load) battery capacity remaining. Units are mAh. FullAvailableCapacity( ): 0x0a/0x0b 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. RemainingCapacity( ): 0x0c/0x0d This read-only command pair returns the compensated battery capacity remaining. Units are mAh. FullChargeCapacity( ): 0x0e/0f 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. AverageCurrent( ): 0x10/0x11 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. StandbyCurrent( ): 0x12/0x13 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 (default = -10mA), 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 ( = ±5mA) and is less than or equal to 2 x Initial Standby (default = -10mA). The first and last values that meet this criteria are not averaged in, since they may not be stable values. To approximate a 1-minute time constant, each new StandbyCurrent( ) value is computed by taking approximate 93% weight of the last standby current and approximate 7% of the current measured average current. MaxLoadCurrent( ): 0x14/0x15 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 (default = –500mA) . 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. AvailableEnergy( ): 0x16/0x17 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. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 11 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com AveragePower( ): 0x18/0x19 This read-only function returns an 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. StateOfCharge( ): 0x1c/0x1d 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%. IntTemperature( ): 0x1e/0x1f This read-/write-word function returns an unsigned integer value of the internal temperature sensor in units of 0.1 K measured by the fuel gauge. If OpConfig[WRTEMP] = 0, this command will return the same value as Temperature( ). StateofHealth( ): 0x20/0x21 0x20 SOH percentage: this read-only function returns an unsigned integer value, expressed as a percentage of the ratio of predicted FCC(25°C, SOH LoadI) over the DesignCapacity(). The FCC(25°C, SOH LoadI) is the calculated full charge capacity at 25°C and the SOH LoadI which is programmed in factory (default = –400mA). The range of the returned SOH percentage is 0x00 to 0x64, indicating 0 to 100% correspondingly. 0x21 SOH Status: this read-only function returns an unsigned integer value, indicating the status of the SOH percentage. The meanings of the returned value are: • 0x00: SOH not valid (initialization) • 0x01: Instant SOH value ready • 0x02: Initial SOH value ready – Calculation based on uncompensated Qmax – Updated at first grid point update after cell insertion • 0x03: SOH value ready – Utilize the updated Qmax update – Calculation based on compensated Qmax – Updated after complete charge and relax is complete • 0x04-0xFF: Reserved 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 command bytes for a given extended command ranges in size from single to multiple bytes, as specified in Table 5. 12 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com Table 5. Extended Commands NAME OperationConfiguration( ) DesignCapacity( ) COMMAND CODE UNITS SEALED ACCESS (1) (2) UNSEALED ACCESS (1) (2) OPCFG 0x3a / 0x3b N/A R R/W DCAP 0x3c / 0x3d mAh R R/W 0x3e N/A N/A R/W DataFlashClass( ) (2) DFCLS DataFlashBlock( ) (2) DFBLK 0x3f N/A R/W R/W DFD 0x40…0x5f N/A R R/W DFDCKS 0x60 N/A R/W R/W BlockData( ) BlockDataCheckSum( ) BlockDataControl( ) DeviceNameLength( ) DeviceName( ) Reserved (1) (2) 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 Control( ) 0x00/0x01 In sealed mode, data flash CANNOT be accessed through commands 0x3e and 0x3f. OperationConfiguration( ): 0x3a/0x3b SEALED and UNSEALED Access: This command returns the Operation Configuration register setting DesignCapacity( ): 0x3c/0x3d SEALED and UNSEALED Access: This command returns 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 and is used as an input for the algorithm to scale the normalized resistance tables. 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. 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. Issuing a 0x01 instructs the BlockData( ) command to transfer Manufacturer Info Block A. BlockData( ): 0x40…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 Block Info A. BlockDataChecksum( ): 0x60 UNSEALED Access: This byte contains the checksum on the 32 bytes of block data read or written to data flash. The least-significant byte of the sum of the data bytes written must be complemented ( [255 – x] , for x the least-significant byte) before being written to 0x60. SEALED Access: This byte contains the checksum for the 32 bytes of block data written to Manufacturer Info Block A. 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. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 13 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com BlockDataControl( ): 0x61 UNSEALED Access: This command is used to control data flash access mode. Writing 0x00 to this command enables BlockData( ) to access general data flash. Writing a 0x01 to this command enables SEALED mode operation of DataFlashBlock( ). SEALED Access: This command is not available in SEALED mode. DeviceNameLength( ): 0x62 UNSEALED and SEALED Access: This byte contains the length of the Device Name. DeviceName( ): 0x63…0x69 UNSEALED and SEALED Access: This block contains the device name that is programmed in Device Name Reserved – 0x6a – 0x7f DATA FLASH INTERFACE Accessing the Data Flash The bq27410 data flash is a non-volatile memory that contains bq27410 initialization, default, cell status, calibration, configuration, and user information. The data flash can be accessed in several different ways, depending on what mode the bq27410 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 Data Commands. These commands are available when the bq27410 is either in UNSEALED or SEALED modes. Most data flash locations, however, are only accessible in UNSEALED mode by use of the bq27410 evaluation software or by data flash block transfers. These locations should 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 they can be read to the system or changed directly. This is accomplished by sending the set-up 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). 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 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 bq27410, 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 not resolve the fault. 14 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com ACCESS MODES The bq27410 provides three security modes (FULL ACCESS, UNSEALED, and SEALED) that control data flash access permissions according to Table 6. Public Access refers Data flash to those data flash locations, specified in Table 7, that are accessible to the user. Private Access refers to reserved data flash locations used by the bq27410 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 6. Data Flash Access Security Mode Data Flash Manufacturer Info FULL ACCESS R/W R/W UNSEALED R/W R/W SEALED None R(A) Although FULL ACCESS and UNSEALED modes appear identical, only FULL ACCESS mode allows the bq27410 to write access-mode transition keys. SEALING/UNSEALING DATA FLASH The bq27410 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 bq27410 via the Control( ) control command. 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 be different from the codes presented in the CNTL DATA column of Table 2 subcommands. When in SEALED mode the [SS] bit of CONTROL_STATUS is set, but when the UNSEAL keys are correctly received by the bq27410, 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 the UnSeal Key 0 returns 0x1234 and 0x5678, then Control( ) should supply 0x3412 and 0x7856 to unseal the part. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 15 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com DATA FLASH SUMMARY Table 7 summarizes the data flash locations available to the user, including their default, minimum, and maximum values. Table 7. Data Flash Summary SubClass ID SubClass Offset Configuration 34 Charge 2 Charging Voltage I2 0 4600 4200 mV Configuration 36 Charge Termination 0 Taper Current I2 0 1000 100 mA Configuration 36 Charge Termination 4 Taper Voltage I2 0 1000 100 mV Configuration 48 Data 13 Cycle Count U2 0 65535 0 Configuration 48 Data 19 Design Capacity I2 0 32767 1340 mAh Configuration 48 Data 21 Design Energy I2 0 32767 4960 mWh Configuration 64 Registers 0 Op Config H1 0x0 0xff 0x19 (flg) Configuration 64 Registers 3 SOCI Delta U1 0 100 1 hex Configuration 68 Power 2 Sleep Current I2 0 100 10 mA Configuration 68 Power 11 Hibernate I U2 0 700 8 mA Configuration 68 Power 13 Hibernate V U2 2400 3000 2550 mV System Data 57 Manufacturer Info 0-31 Block A 0-31 H1 0x0 0xff 0x0 Gas Gauging 80 IT Cfg 45 Terminate Voltage I2 2800 3700 3000 Ra Table 91 R_a0 0 Cell0 R_a flag H2 0x0000 0xffff 0x0055 Ra Table 91 R_a0 2-31 Cell0 R_a 0-14 I2 183 183 102 Ra Table 93 R_a0x 0 xCell0 R_a flag H2 0x0000 0xffff 0x00ff Ra Table 93 R_a0x 2-31 xCell0 R_a 0-14 I2 183 183 102 Calibration 104 Data 0 CC Gain F4 1.00E-01 4.00E+01 0.4768 num (2^–10Ω) Calibration 104 Data 4 CC Delta F4 2.98E+04 1.19E+06 567744.5 68 num (2^–10Ω) Calibration 104 Data 8 CC Offset U2 0 65535 –1200 num (mV) Calibration 104 Data 10 Board Offset I1 –128 127 0 num (uV) Calibration 104 Data 11 Int Temp Offset I1 –128 127 0 num (°C) Calibration 104 Data 13 Pack V Offset I1 –128 127 0 num (mV) Security 112 Codes 0 Sealed to Unsealed H4 0x0 0xffffffff x367204 14 - Security 112 Codes 4 Unsealed to Full H4 0x0 0xffffffff 0xffffffff - Security 112 Codes 24 FactRestore Key H4 0x0 0xffffffff 0x00000 000 - Class Name Data Type Min Max Default Unit (EVSW Unit) (num) mV num num FUNCTIONAL DESCRIPTION FUEL GAUGING The bq27410 is an easy to configure fuel gauge that measures the cell voltage, temperature, and current to determine battery SOC. The bq27410 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 the 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 the Design Capacity. The bq27410 acquires and updates the 16 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 www.ti.com SLUSAF4 – MARCH 2011 battery-impedance profile during normal battery usage. It uses this profile, along with SOC and the Qmax value, to determine FullChargeCapacity( ) and StateOfCharge( ), specifically for the present load and temperature. FullChargeCapacity( ) is reported as capacity available from a fully charged battery under the present load and temperature until Voltage( ) reaches the Term Voltage. NominalAvailableCapacity( ) and FullAvailableCapacity( ) are the uncompensated (no or light load) versions of RemainingCapacity( ) and FullChargeCapacity( ) respectively. FUEL GAUGING Ra TABLE Cell0 / xCell0 R_a flag: The Ra flag indicates the validity of the table data associated with this flag and whether this particular table is enabled or disabled. The flag should be read only during normal operation. Each status has one byte and it has the following options: • 0x00: This means that the table has had a resistance update in the past, but not currently enabled for the cell. • 0xff: This means that the values in this table are default values. These table resistance values have never been updated, and is not the currently enabled value for the cell. • 0x55: This means that this table is enabled for the cell and is in use by the algorithm. Cell0/xCell0 R_a 0-14: The Ra Table class has 2 resistance tables, each with 15 values. Each of these values is unitless and is only a representation of resistance for the associated grid point. When a FACTORY_RESTORE subcommand is provided, the Ra Table is restored to default resistance to factory condition. FUEL GAUGING CONFIGURATIONS The bq27410 features easy to configure data flash to speed-up fuel gauging design. Users are required to configure Design Capacity, Termination Voltage, and Operation Configuration (see The Operation Configuration Register section for details) to achieve optimal performance. The Impedance Track™ algorithm uses these parameters with it’s built-in parameters to achieve accurate battery fuel gauging. Several built-in parameters are used in the Impedance Track™ algorithm to identify different modes of battery: • Charging : Chg Current Threshold (default = DesignCapacity /13.3 ), • Discharging: Dsg Current Threshold (default = DesignCapacity /16.7 ) • Relax: Quit Current Threshold (default = DesignCapacity /25.0 ) To achieve accurate fuel gauging, the bq27410 uses Constant Power Model for fuel gauging. This model uses the average discharge power from the beginning of the discharge cycle until present time to compute load-compensated capacity such as RemainingCapacity( ) and FullChargeCapacity( ) in the Impedance Track™ algorithm. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 17 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com DETAILED PIN DESCRIPTIONS The Operation Configuration Register Two bq27410 pins are configured via the Operation Configuration data flash register, as indicated in Table 8. This register is programmed/read via the methods described in Section Accessing the Data Flash. Table 8. Operation Configuration Bit Definition Default bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RESCAP RSVD BATLOWEN SLEEP RMFCC BIE GPIO_POL WRTEMP 0 0 0 1 1 0 0 1 RESCAP = No-load rate of compensation is applied to the reserve capacity calculation. True when set. Default is 0. RSVD = Reserved for future use. BATLOWEN = If set, the BAT_LOW function for GPOUT pin is selected. If cleared, the SOC_INT function is selected for GPOUT. Default is 0 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. BIE = Battery Insertion Enable. If set, the battery insertion is detection via BIN pin input. If cleared, the detection relies on the host to issue BAT_INSERT subcommand to indicate battery presence in the system. Default is 0. GPIO_POL = GPOUT pin is active-high if set or active-low if cleared. Default is 0. WRTEMP = Enables the host to write Temperature( ) if set. If cleared, the internal temperature sensor is used for Temperature( ). Default is 1. GPOUT Pin The GPOUT Pin is a multiplex pin and the polarity of the pin output can be selected via the [GPIO_POL] bit of the Operation Configuration. The function is defined by [BATLOWEN]. If set, the Battery Low Indicator (BAT_LOW) function for GPOUT pin is selected. If cleared, the SOC interrupt (SOC_INT) function is selected for GPOUT. When the BAT_LOW function is activated, the signaling on the multiplexed pin follows the status of the [SOC1] bit in the Flags( ) register. The bq27410 has two flags accessed by the Flags( ) function that warns when the battery’s SOC has fallen to critical levels. When RemainingCapacity( ) falls below the first capacity threshold, specified in SOC1 Set Threshold (factory default = 150mAh), the [SOC1] (State of Charge Initial) flag is set. The flag is cleared once RemainingCapacity( ) rises above SOC1 Set Threshold (factory default = 175mAh). The bq27410’s GPOUT pin automatically reflects the status of the [SOC1] flag when OpConfig[BATLOWEN=0]. When RemainingCapacity( ) falls below the second capacity threshold, SOCF Set Threshold (factory default = 75mAh), the [SOCF] (State of Charge Final) flag is set, serving as a final discharge warning. Similarly, when RemainingCapacity( ) rises above SOCF Clear Threshold (factory default = 100mAh) and the [SOCF] flag has already been set, the [SOCF] flag is cleared. When the SOC_INT function is activated, the GPOUT pin generates 1ms pulse width under various conditions as described in Table 9. Table 9. SOC_INT Function Definition SOCI_Delta Enable Condition Pulse Width Description SOCI_Delta ≠ 0 1ms During charge, when the StateOfCharge() reaches greater than or equal to (≥) the defined SOC_INT intervals. The intervals are defined as 100% and 100% – n × SOCI_Delta. During discharge, when the StateOfCharge() reaches less than (<) the defined SOC_INT intervals. The intervals are defined as 0% and 100% – n × SOCI_Delta. n: Integer value starting from 0. For SOCI_Delta = 10%, the SOC_INT intervals are 0%, 10%, 20%, ….. 90%, and 100%. State Change SOCI_Delta ≠ 0 1ms When there is a state change including charging, discharging, and relaxation. Battery Removal [BIE] bit is set in OpConfig 1ms When battery removal is detected by BIN pin. 18 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com Battery Detection (BIN) The host is responsible for battery detection by setting the [BAT_DET] bit to trigger INITIALIZATION mode. The function of OpConfig[BIE] bit is described in Table 10. When battery insertion is detected and INITIALIZATION mode is completed, the bq27410 runs in NORMAL mode to start Impedance Track™ fuel gauging. When battery insertion is not detected, fuel gauging is stopped. Table 10. Battery Detection OpConfig[BIE] Battery Insertion Requirement Battery Removal Requirement 1 (1) Host drives BIN pin from logic high to low to signal battery insertion. or (2) A weak pull-up resistor can be used (between BIN and VCC pin). When battery pack with pull-down is connected, it can generate a logic low to signal battery insertion. (1) Host drives BIN pin from logic low to high to signal battery removal. or (2) When battery pack with pull-down is removed, the weak pull-up resistor can generate a logic high to signal battery removal. 0 Host sends BAT_INSERT subcommand to signal battery insertion. Host sends BAT_REMOVE subcommand to signal battery removal. TEMPERATURE MEASUREMENT The bq27410 measures temperature using an on-chip temperature sensor. Alternatively if [WRTEMP] = 1, the host sends temperature data to the gauge with the initial default setting at 25°C. Regardless of [WRTEMP] setting, the fuel gauge uses temperature data in Temperature() command for fuel gauging. Over-Temperature Indication: Charge If during charging, Temperature( ) reaches the threshold of OT Chg (default = 55°C) for a period of OT Chg Time (default = 2 seconds) and AverageCurrent( ) > Chg Current Threshold (default = DesignCapacity / 13.3), then the [OTC] bit of Flags( ) is set. When Temperature() falls to OT Chg Recovery (default = 50°C), the [OTC] of Flags() is reset. Over-Temperature Indication: Discharge If during discharging, Temperature( ) reaches the threshold of OT Dsg (default = 60°C) for a period of OT Dsg Time (default = 2 seconds) , and AverageCurrent( ) ≤ -Dsg Current Threshold (default = DesignCapacity /16.7 ) , then the [OTD] bit of Flags( ) is set. When Temperature( ) falls to OT Dsg Recovery (default = 55°C), the [OTD] bit of Flags( ) is reset. DETECTING CHARGE TERMINATION The bq27410 detects charge termination when (1) during 2 consecutive periods of Current Taper Window (default = 40 seconds), the AverageCurrent( ) is < Taper Current (default = 100 mA), (2) during the same periods, the accumulated change in capacity > 0.25mAh/ / Current Taper Window (default = 40 seconds), and (3) Voltage( ) > (Charging Voltage – 100mV) where Charging Voltage = 4200mV by default. When this occurs, the [CHG] bit of Flags( ) is cleared. Also, if the [RMFCC] bit of Operation Configuration is set, and RemainingCapacity( ) is set equal to FullChargeCapacity( ). Charge Inhibit The bq27410 can indicate when battery temperature has fallen below or risen above predefined thresholds Charge Inhibit Temp Low (default = 0˚C) or Charge Inhibit Temp High (default = 45˚C), respectively. In this mode, the [CHG_INH] of Flags( ) is made high to indicate this condition, and is returned to its low state, once battery temperature returns to the range [Charge Temp Low, Charge Temp High] (default = [5˚C,40˚C]). Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 19 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com POWER MODES The bq27410 has different power modes: INITIALIZATION, NORMAL, SLEEP, FULLSLEEP and HIBERNATE. Following Power On Reset (POR), the fuel gauge begins INITIALIZATION. In NORMAL mode, the bq27410 is fully powered and can execute any allowable task. In SLEEP mode both low frequency and high frequency oscillators are active. Although the SLEEP has higher current consumption than the FULLSLEEP mode, it is also a reduced power mode. In FULLSLEEP mode the fuel gauge turns off the high frequency oscillator and exists in a reduced-power state, periodically taking measurements and performing calculations. In HIBERNATE mode, the fuel gauge is in a very low power state, but can be woken up by communication or certain I/O activity. POR INITIALIZATION Check for battery insertion No gauging . . Flags [BAT _ DET ] = 0 I CC = Normal Entry to NORMAL Flags [ BAT _ DET ] = 1 Exit From HIBERNATE V CELL < POR threshold Exit From NORMAL Flags [BAT _ DET ] = 0 NORMAL Exit From HIBERNATE Communication Activity OR bq27410 clears Control Status [HIBERNATE ] = 0 Recommend Host also set Control Status [HIBERNATE ] = 0 Fuel gauging and data updated every 1s Exit From SLEEP /FULLSLEEP Pack Configuration [SLEEP ] = 0 OR | AverageCurrent ( ) | > Sleep Current OR Current is Detected above I WAKE ICC = Normal SLEEP HIBERNATE Wakeup From HIBERNATE Communication to gauge AND Comm address is NOT for bq27410 Disable all subcircuits except GPIO . Entry to SLEEP Pack Configuration [SLEEP ] = 1 AND | AverageCurrent ( ) | = Sleep Current Fuel gauging and data updated every 20 seconds I CC = Sleep I CC = Hibernate Exit From WAIT _HIBERNATE Host must set Control Status [HIBERNATE ] = 0 AND VCELL > Hibernate Voltage Exit From WAIT _ HIBERNATE Cell relaxed AND | AverageCurrent () | < Hibernate Current OR V CELL Cell relaxed AND < Hibernate Voltage Entry to FULLSLEEP Host must set Control Status [FULLSLEEP ] = 1 FULL SLEEP WAIT _HIBERNATE Fuel gauging and data updated every 20 seconds In low power state of SLEEP mode . Gas gauging and data updated every 20 seconds Exit From SLEEP ( Host has set Control Status [HIBERNATE ] = 1 OR VCELL < Hibernate Voltage ICC = Full Sleep I CC = Sleep /FullSleep System Shutdown Exit From FULLSLEEP Any Communication Cmd System Sleep Figure 2. Power Mode Diagram INITIALIZATION Mode Following Power On Reset (POR), the fuel gauge begins INITIALIZATION mode where essential data is initialized and will remain in INITIALIZATION mode as halted-CPU state when an adapter, or other power source is present to power the bq27410 (and system), yet no battery has been detected. Until battery insertion is detected, the fuel gauge cannot transition to other power mode. When battery insertion is detected, a series of initialization activities begin including an OCV measurement. In addition CONTROL_STATUS[QMAXU] and [RESU] bits are cleared to allow fast learning of Qmax and impedance. Some commands, issued by a system processor, can be processed while the bq27410 is halted in this mode. The gauge will wake up to process the command, and then return to the halted state awaiting battery insertion. The current consumption of INITIALIZATION mode is similar to NORMAL mode. 20 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 www.ti.com SLUSAF4 – MARCH 2011 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. 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 (default = 10mA). Once entry into SLEEP mode has been qualified, but prior to entering it, the bq27410 performs an ADC autocalibration to minimize offset. During SLEEP mode, the bq27410 periodically takes data measurements and updates its data set. However, a majority of its time is spent in an idle condition. The bq27410 exits SLEEP if any entry condition is broken, specifically when: AverageCurrent( ) rises above Sleep Current (default = 10mA). FULLSLEEP Mode FULLSLEEP mode is entered automatically if the feature is enabled by setting the [FULLSLEEP] bit in the Control Status register when the BQ27410 is in SLEEP mode. The gauge exits the FULLSLEEP and returns to SLEEP mode when there is communication to the gauge. The bq27410 can also exit FULLSLEEP and returns to NORMAL if any SLEEP mode entry condition is broken, specifically when AverageCurrent( ) rises above Sleep Current is detected. Therefore, the execution of SET_FULLSLEEP sets [FULLSLEEP] bit, but EVSW might still display the bit clear. The FULLSLEEP mode can be verified by measuring the current consumption of the gauge. In this mode, the high frequency oscillator is turned off. The power consumption is further reduced in this mode compared to the SLEEP mode. During FULLSLEEP mode, the BQ27410 periodically takes data measurements and updates its data set. However, a majority of its time is spent in an idle condition. While in FULLSLEEP mode, the fuel gauge can suspend serial communications as much as 4ms by holding the communication line(s) low. This delay is necessary to correctly process host communication, since the fuel gauge processor is mostly halted in FULLSLEEP mode. HIBERNATE Mode HIBERNATE mode could be used when the system equipment needs to enter a very low-power state, and minimal gauge power consumption is required. This mode is ideal when a system equipment is set to its own HIBERNATE, SHUTDOWN, or OFF modes. Before the fuel gauge can enter HIBERNATE mode, the system must set the [HIBERNATE] bit of the CONTROL_STATUS register. The gauge waits to enter HIBERNATE mode until it has taken a valid OCV measurement and the magnitude of the average cell current has fallen below Hibernate Current. The gauge can also enter HIBERNATE mode if the cell voltage falls below Hibernate Voltage. The gauge will remain in HIBERNATE mode until the system issues a direct I2C command to the gauge. I2C Communication that is not directed to the gauge will not wake the gauge (or at least for very long). It is the system’s responsibility to wake the bq27410 after it has gone into HIBERNATE mode and prevents a charger from charging the battery before the [OCVTAKEN] bit is set which signals an OCV reading is taken. After waking, the gauge can proceed with the initialization of the battery information. Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 21 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com COMMUNICATIONS I2C INTERFACE The bq27410 supports the standard I2C read, incremental read, quick read, one byte write, and incremental write functions. The 7 bit device address (ADDR) is the most significant 7 bits of the hex address and is fixed as 1010101. The 8-bit device address will therefore be 0xAA or 0xAB for write or read, respectively. Host generated S ADDR[6:0] 0 A bq27410 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). Figure 3. 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 bq27410 or the I2C master. "Quick writes" function in the same manner and are a convenient means of sending multiple bytes to consecutive command locations (such as two-byte commands that require two bytes of data). The following command sequences are not supported: Attempt to write a read-only address (NACK after data sent by master): S ADDR[6:0] 0 A CMD[7:0] A DATA[7:0] N P Attempt to read an address above 0x6B (NACK command): S ADDR[6:0] 0 A CMD[7:0] N P I2C TIME OUT The I2C engine will release both SDA and SCL if the I2C bus is held low for about 2 seconds. If the bq27410 was holding the lines, releasing them will free for the master to drive the lines. If an external condition is holding either of the lines low, the I2C engine will enter the low power sleep mode. To make sure the correct results of a command with the 400KHz I2C operation, a proper waiting time should be added between issuing command and reading results. For subcommands, the following diagram shows the waiting time required between issuing the control command the reading the status with the exception of checksum and OCV commands. A 100ms waiting time is required between the checksum command and reading result, and a 1.2 second waiting time is required between the OCV command and result. For read-write standard command, 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. The I2C clock stretch could happen in a typical application. A maximum 80ms clock stretch could be observed during the flash updates. 22 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com COMMUNICATIONS (continued) Copyright © 2011, Texas Instruments Incorporated Submit Documentation Feedback 23 bq27410-G1 SLUSAF4 – MARCH 2011 www.ti.com Optional Pull up 1.8 MW REFERENCE SCHEMATIC 24 Submit Documentation Feedback Copyright © 2011, Texas Instruments Incorporated PACKAGE OPTION ADDENDUM www.ti.com 11-Apr-2011 PACKAGING INFORMATION Orderable Device Status (1) Package Type Package Drawing BQ27410DRZR-G1 PREVIEW SON BQ27410DRZT-G1 ACTIVE SON Pins Package Qty DRZ 12 2500 TBD DRZ 12 250 Green (RoHS & no Sb/Br) Eco Plan (2) Lead/ Ball Finish Call TI MSL Peak Temp (3) Samples (Requires Login) Call TI CU NIPDAU Level-2-260C-1 YEAR (1) The marketing status values are defined as follows: ACTIVE: Product device recommended for new designs. LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect. NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in a new design. PREVIEW: Device has been announced but is not in production. Samples may or may not be available. OBSOLETE: TI has discontinued the production of the device. (2) Eco Plan - The planned eco-friendly classification: Pb-Free (RoHS), Pb-Free (RoHS Exempt), or Green (RoHS & no Sb/Br) - please check http://www.ti.com/productcontent for the latest availability information and additional product content details. TBD: The Pb-Free/Green conversion plan has not been defined. Pb-Free (RoHS): TI's terms "Lead-Free" or "Pb-Free" mean semiconductor products that are compatible with the current RoHS requirements for all 6 substances, including the requirement that lead not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered at high temperatures, TI Pb-Free products are suitable for use in specified lead-free processes. Pb-Free (RoHS Exempt): This component has a RoHS exemption for either 1) lead-based flip-chip solder bumps used between the die and package, or 2) lead-based die adhesive used between the die and leadframe. The component is otherwise considered Pb-Free (RoHS compatible) as defined above. Green (RoHS & no Sb/Br): TI defines "Green" to mean Pb-Free (RoHS compatible), and free of Bromine (Br) and Antimony (Sb) based flame retardants (Br or Sb do not exceed 0.1% by weight in homogeneous material) (3) MSL, Peak Temp. -- The Moisture Sensitivity Level rating according to the JEDEC industry standard classifications, and peak solder temperature. Important Information and Disclaimer:The information provided on this page represents TI's knowledge and belief as of the date that it is provided. TI bases its knowledge and belief on information provided by third parties, and makes no representation or warranty as to the accuracy of such information. Efforts are underway to better integrate information from third parties. TI has taken and continues to take reasonable steps to provide representative and accurate information but may not have conducted destructive testing or chemical analysis on incoming materials and chemicals. TI and TI suppliers consider certain information to be proprietary, and thus CAS numbers and other limited information may not be available for release. In no event shall TI's liability arising out of such information exceed the total purchase price of the TI part(s) at issue in this document sold by TI to Customer on an annual basis. Addendum-Page 1 IMPORTANT NOTICE Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment. TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by government requirements, testing of all parameters of each product is not necessarily performed. TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and applications using TI components. To minimize the risks associated with customer products and applications, customers should provide adequate design and operating safeguards. TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI. Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions. Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in such safety-critical applications. TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use. TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated products in automotive applications, TI will not be responsible for any failure to meet such requirements. Following are URLs where you can obtain information on other Texas Instruments products and application solutions: Products Applications Audio www.ti.com/audio Communications and Telecom www.ti.com/communications Amplifiers amplifier.ti.com Computers and Peripherals www.ti.com/computers Data Converters dataconverter.ti.com Consumer Electronics www.ti.com/consumer-apps DLP® Products www.dlp.com Energy and Lighting www.ti.com/energy DSP dsp.ti.com Industrial www.ti.com/industrial Clocks and Timers www.ti.com/clocks Medical www.ti.com/medical Interface interface.ti.com Security www.ti.com/security Logic logic.ti.com Space, Avionics and Defense www.ti.com/space-avionics-defense Power Mgmt power.ti.com Transportation and Automotive www.ti.com/automotive Microcontrollers microcontroller.ti.com Video and Imaging www.ti.com/video RFID www.ti-rfid.com Wireless www.ti.com/wireless-apps RF/IF and ZigBee® Solutions www.ti.com/lprf TI E2E Community Home Page e2e.ti.com Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265 Copyright © 2011, Texas Instruments Incorporated