RTT www.ti.com bq2084-V140 DBT SLUS664B – JULY 2005 – REVISED AUGUST 2006 SBS v1.1-COMPLIANT GAS GAUGE FOR USE WITH THE bq29312 FEATURES • • • • • • • • • • • Provides Accurate Measurement of Available Charge in Li-Ion and Li-Polymer Batteries Supports the Smart Battery Specification (SBS) V1.1 Integrated Time Base Removes Need for External Crystal with Optional Crystal input Works With the TI bq29312 Analog Front-End (AFE) Protection IC to Provide Complete Pack Electronics for 7.2-V, 10.8-V or 14.4-V Battery Packs With Few External Components Based on a Powerful Low-Power RISC CPU Core With High-Performance Peripherals Integrated Flash Memory Eliminates the Need for External Configuration EEPROM Uses 16-Bit Delta Sigma Converter for Accurate Voltage and Temperature Measurements Measures Charge Flow Using a High Resolution 16-Bit Integrating Converter – Better Than 0.65-nVh of Resolution – Self-Calibrating – Offset Error Less Than 1-µV Programmable Cell Modeling for Maximum Battery Fuel Gauge Accuracy Drives 3-, 4-, or 5-Segment LED Display for Remaining Capacity Indication Available in a 38-Pin TSSOP (DBT) Package APPLICATIONS • • • Notebook PCs Medical and Test Equipment Portable Instrumentation DESCRIPTION The bq2084-V140 SBS-compliant gas gauge IC for battery pack or in-system installation maintains an accurate record of available charge in Li-ion or Li-polymer batteries. The bq2084-V140 monitors capacity and other critical parameters of the battery pack and reports the information to the system host controller over a serial communication bus. It is designed to work with the bq29312 AFE protection IC to maximize functionality and safety and minimize component count and cost in smart battery circuits. Using information from the bq2084-V140, the host controller can manage remaining battery power to extend the system run time as much as possible. The bq2084-V140 uses an integrating converter with continuous sampling for the measurement of battery charge and discharge currents. Optimized for coulomb counting in portable applications, the self-calibrating integrating converter has a resolution better than 0.65-nVh and an offset measurement error of less than 1-µV (typical). For voltage and temperature reporting, the bq2084-V140 uses a 16-bit A-to-D converter. With the bq29312, the onboard ADC also monitors the pack and individual cell voltages in a battery pack and allows the bq2084-V140 to generate the control signals necessary to implement the cell balancing and the required safety protection for Li-ion and Li-polymer battery chemistries. The bq2084-V140 supports the Smart Battery Data (SBData) commands and charge-control functions. It communicates data using the System Management Bus (SMBus) 2-wire protocol. The data available include the battery's remaining capacity, temperature, voltage, current, and remaining run-time predictions. The bq2084-V140 provides LED drivers and a pushbutton input to depict remaining battery capacity from full to empty in 20%, 25%, or 33% increments with a 3-, 4-, or 5-segment display. 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. 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 © 2005–2006, Texas Instruments Incorporated bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 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. DESCRIPTION (CONTINUED) The bq2084-V140 contains 1k bytes of internal data flash memory, which store configuration information. The information includes nominal capacity and voltage, self-discharge rate, rate compensation factors, and other programmable cell-modeling factors used to accurately adjust remaining capacity for use-conditions based on time, rate, and temperature. The bq2084-V140 also automatically calibrates or learns the true battery capacity in the course of a discharge cycle from programmable near full to near empty levels. The bq29312 analog front-end (AFE) protection IC is used to maximize functionality and safety and minimize component count and cost in smart battery circuits. The bq29312 AFE protection IC provides power to the bq2084-V140 from a 2-, 3-, or 4-series Li-ion cell stack, eliminating the need for an external regulator circuit. ORDERING INFORMATION PACKAGE (1) TA 38-PIN TSSOP –20°C to 85°C (1) (2) (3) (DBT) (2) bq2084DBT-V140 36-PIN QFN (RTT) (3) bq2084RTT-V140 For the most current package and ordering information, see the Package Option Addendum at the end of this document, or see the TI Web site at www.ti.com. The bq2084DBT-V140 is available in tape and reel. Add an R suffix to the device type (e.g., bq2084DBTR-V140) to order tape and reel version. The bq2084RTT-V140 is available in tape and reel only. Add an T suffix to the device type (e.g., bq2084RTTT-V140) to order mini tape and reel version. ABSOLUTE MAXIMUM RATINGS over operating free-air temperature range unless otherwise noted (1) UNIT Supply voltage range, VDD relative to VSS (2) –0.3 V to 4.1 V Open-drain I/O pins, V(IOD) relative to VSS (2) –0.3 V to 6 V Input voltage range to all other pins, VI relative to VSs (2) TA Operating free-air temperature range –20°C to 85°C Tstg Storage temperature range –65°C to 150°C (1) (2) 2 –0.3 V to VDD + 0.3 V 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. VSS refers to the common node of V(SSA), V(SSD), and V(SSP). Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 ELECTRICAL CHARACTERISTICS VDD = 3 V to 3.6 V, TA = –20°C to 85°C unless otherwise noted PARAMETER VDD TEST CONDITIONS MIN TYP MAX 3 3.3 3.6 Supply voltage VDDA and VDDD IDD Operating mode current No flash programming or LEDs active I(SLP) Low-power storage mode current Sleep mode Output voltage low SMBC, SMBD, SDATA, SCLK, SAFE, PU IOL = 0.5 mA 0.4 LED1-LED5 IOL = 10 mA 0.4 VOL VIL VIH 380 µA Input voltage low SMBC, SMBD, SDATA, SCLK, EVENT, PU, PRES, PFIN –0.3 0.8 DISP –0.3 0.8 Input voltage high SMBC, SMBD, SDATA, SCLK, EVENT, PU, PRES, PFIN 2 6 DISP 2 VDD + 0.3 Input voltage range VIN, TS V(AI2) Input voltage range SR1, SR2 Z(AI1) Input impedance SR1, SR2 –0.25 V to 0.25 V Z(AI2) Input impedance VIN, TS 0 V–1 V V µA 8 V(AI1) UNIT VSS – 0.3 1.0 VSS – 0.25 0.25 V V V V V 2.5 MΩ 8 MΩ POWER-ON RESET Negative-going voltage input 2.1 2.3 2.5 V Vhys Power-on reset hysteresis 50 125 200 mV POWER ON RESET BEHAVIOR vs FREE-AIR TEMPERATURE 2.50 140 2.45 135 2.40 130 VIT- 2.35 125 2.30 120 2.25 115 Vhys 2.20 110 2.15 105 2.10 -20 -10 V hys - Hysterisis Voltage - mV V IT - Negative Going Input Threshold Voltage - V VIT+ 100 0 10 20 30 40 50 60 70 80 TA - Free-Air Temperature - °C INTEGRATING ADC CHARACTERISTICS VDD = 3 V to 3.6 V, TA = –20°C to 85°C unless otherwise noted PARAMETER V(SR) Input voltage range, V(SR2) and V(SR1) V(SROS) Input offset INL Integral nonlinearity error TEST CONDITIONS VSR = V(SR2)– V(SR1) MIN TYP –0.25 MAX UNIT 0.25 V 1 FAST = 0, –0.1 V to 0.8 x Vref 0.004% mV 0.018% PLL SWITCHING CHARACTERISTICS VDD = 3 V to 3.6 V, TA = –20°C to 85°C unless otherwise noted PARAMETER t(SP) (1) Start-up time (1) TEST CONDITIONS ±0.5% frequency error MIN TYP MAX 2 5 UNIT ms The frequency error is measured from the trimmed frequency of the internal system clock, which is 128 x oscillator frequency, nominally 4.194 MHz. Submit Documentation Feedback 3 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 OSCILLATOR VDD = 3 V to 3.6 V, TA = –20°C to 85°C (unless otherwise noted) (TYP: VDD = 3.3 V, TA = 25°C) PARAMETER f(eio) Frequency error from 32.768 kHz f(dio) Frequency f(sio) f(sxo) (1) (2) TEST CONDITIONS ROSC = 100k XCK1 = 12 pF XTAL drift (1) ROSC = 100k, TA = 0°C to 50°C Start-up time (2) MIN TYP MAX –2% 0.5% 2% –0.25% UNIT 0.25% –1% 1% ROSC = 100k 200 µs XCK1 = 12 pF XTAL 250 ms The frequency drift is measured from the trimmed frequency at VDD = 3.3 V, TA = 25°C. The start-up time is defined as the time it takes for the oscillator output frequency to be ±1% DATA FLASH MEMORY CHARACTERISTICS VDD = 3 V to 3.6 V, TA = –20°C to 85°C unless otherwise noted PARAMETER tDR TEST CONDITIONS TYP MAX UNIT See (1) 10 Years Flash programming write-cycles See (1) 20k Cycles t(WORDPROG) Word programming time See (1) I(DDPROG) Flash-write supply current See (1) (1) MIN Data retention 8 2 ms 12 mA Specified by design. Not production tested. REGISTER BACKUP PARAMETER I(RBI) RBI data-retention input current V(RBI) RBI data-retention voltage (1) TEST CONDITIONS MIN TYP MAX VRBI > 2 V, VDD < VIT (1) 10 100 1.3 UNIT nA V Specified by design. Not production tested. SMBus TIMING SPECIFICATIONS VDD = 3 V to 3.6 V, TA = -20°C to 85°C unless otherwise noted PARAMETER SMBus operating frequency Slave mode, SMBC 50% duty cycle f(MAS) SMBus master clock frequency Master mode, no clock low slave extend t(BUF) Bus free time between start and stop T(HD:STA) Hold time after (repeated) start t(SU:STA) Repeated start setup time t(SU:STO) Stop setup time t(HD:DAT) Data hold time tSU:DAT) Data setup time t(TIMEOUT) Error signal/detect t(LOW) Clock low period TYP MAX UNIT 10 100 kHz 51.2 kHz 4.7 µs 4 µs 4.7 µs 4 µs 0 Transmit mode 300 ns 250 See (1) 25 ns 35 4.7 t(HIGH) Clock high period See tLOW:SEXT) Cumulative clock low slave extend time See (3) tLOW:MEXT Cumulative clock low master extend time See (4) tf Clock/data fall time (VILMAX – 0.15 V) to (VIHMIN + 0.15 V) tr Clock/data rise time 0.9 VDD to (VILMAX– 0.15 V) (3) (4) MIN Receive mode (2) (1) (2) 4 TEST CONDITIONS f(SMB) 4 ms µs 50 µs 25 ms 10 ms 300 ns 1000 ns The bq2084-V140 times out when any clock low exceeds t(TIMEOUT). t(HIGH) Max. is minimum bus idle time. SMBC = 1 for t > 50 ms causes reset of any transaction involving bq2084-V140 that is in progress. t(LOW:SEXT) is the cumulative time a slave device is allowed to extend the clock cycles in one message from initial start to the stop. t(LOW:MEXT) is the cumulative time a master device is allowed to extend the clock cycles in one message from initial start to the stop. Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 SMBus TIMING DIAGRAMS SYSTEM DIAGRAM Discharge / Charge / Pre-Charge FETs Fuse Pack + Pre-Charge Control Pres bq29312 PF Input Fail-Safe Protection PCH FET Drive Power Management LDO, TOUT and Power Mode Control 3.3 V Temperature Measurement TINT <1% Error T1 1 k Bytes of User Flash 32 kHz Clock Generator 32 kHz Pre-Charge FET Drive Cell Balancing Drive LDO, Therm Output Drive and UVLO System Watchdog Delay Counters System Interface RAM Registers Cell Balancing Algorithm and Control SMBus SBS v1.1 Data System Interface I2C bq29312 RAM/Comms Validation 1 st Level OC Protection 1 st Level OV and UV Protection Pack Under Voltage Power Mode Control Cell and Pack Voltage Measurement Power Mode Control 2nd Level Overvoltage Protection bq2084 2-Tier Overcurrent Protection Capacity Prediction <1% Error Voltage Level Translator Pack − Sense Resistor (5 to 30 mW) Submit Documentation Feedback 5 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 PIN ASSIGNMENTS 38 33 32 31 PRES 34 SCLK 35 VDDD RBI 36 N/C SDATA VSSD VSSD 1 SAFE VIN N/C TSSOP (DBT) (TOP VIEW) SMBC QFN (RTT) (TOP VIEW) 30 29 28 27 26 1 PU TS 2 37 NC SMBD VSSA 3 36 NC DISP 2 25 VIN PFIN 3 24 TS PU 4 35 CLKOUT PRES 5 34 XCK1/VSSA VSSD 4 23 VSSD LED5 5 22 VSSD LED4 6 21 N/C LED3 7 20 CLKOUT LED2 8 19 XCK1 / VSSA SCLK 6 33 XCK2/ROSC NC 7 32 FILT VDDD 8 31 VDDA RBI SDATA 9 30 VSSA MRST NC 14 25 EVENT SMBC 15 24 LED1 SMBD 16 23 LED2 DISP 17 22 LED3 PFIN 18 21 LED4 VSSD 19 20 LED5 16 17 18 XCK2 / ROSC 26 15 FILT 13 14 VSSA SR2 NC 13 VDDA SR1 27 12 SR1 28 12 11 VSSA 11 SAFE 10 SR2 VSSD 9 MRST VSSA EVENT 29 LED1 10 Terminal Functions TERMINAL NAME NO. QFN I/O DESCRIPTION DISP 17 2 I Display control for the LED drivers LED1 through LED5 CLKOUT 35 20 O 32.768-kHz output to the bq29312 FILT 32 17 I Analog input connected to the external PLL filter EVENT 25 10 I Input from bq29312 XALERT output LED1 24 9 O LED2 23 8 O LED3 22 7 O LED4 21 6 O LED5 20 5 O MRST LED display segments that each may drive an external LED 26 11 I Master reset input that forces the device into reset when held high 7, 13, 14, 36, 37 21, 29, 35 – No connection PFIN 18 3 I Active low input to detect secondary protector output status PRES 5 27 I Active low input to sense system insertion PU 4 26 O Output to pull up the PRES pin for detection RBI 9 31 I Register backup that provides backup potential to the bq2084-V140 data registers during periods of low operating voltage. RBI accepts a storage capacitor or a battery input. SAFE 12 34 O Active low output for additional level of safety protection; e.g., fuse blow. SCLK 6 28 O Communication clock to the bq29312 SDATA 10 32 I/O Data transfer to and from bq29312 SMBC 15 36 I/O SMBus clock open-drain bidirectional pin used to clock the data transfer to and from the bq2084-V140 NC 6 NO. TSSOP Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Terminal Functions (continued) TERMINAL NO. TSSOP NO. QFN I/O SMBD 16 1 I/O SR1 28 13 I SR2 27 12 I Connections for a small-value sense resistor to monitor the battery charge- and discharge-current flow TS 2 24 I Thermistor voltage input connection to monitor temperature VDDA 31 16 I Positive supply for analog circuitry VDDD 8 30 I Positive supply for digital circuitry and I/O pins VIN 1 25 I Single-cell voltage input from the bq29312 NAME DESCRIPTION SMBus data open-drain bidirectional pin used to transfer address and data to and from the bq2084-V140 VSSA 3, 29, 30 14, 15 I Negative supply for analog circuitry VSSD 11, 19, 38 4, 22, 23, 33 I Negative supply for digital circuitry XCK1/VSSA 34 19 I 32.768-kHz crystal oscillator input pin or connected to VSSA if the internal oscillator is used XCK2/ROSC 33 18 O 32.768-kHz crystal oscillator output pin or connected to a 100-kΩ, 50 ppm or better resistor if the internal oscillator is used FUNCTIONAL DESCRIPTION OSCILLATOR FUNCTION The oscillator of the bq2084-V140 can be set up for an internal or external operation. As the bq2084-V140 powers up it automatically attempts to start the internal oscillator, but if a 100-kΩ resistor is not connected to ROSC (pin 33), then it attempts to start the oscillator using an external 32.768-kHz crystal. Either the 100-kΩ ROSC resistor OR the 12 pF 32.768-kHz crystal should be mounted, NOT both. The performance of the internal oscillator depends on the tolerance of the 100-kΩ resistor connected between RSOC (pin 33) and VSSA (pin 34). It is recommended that this resistor be as close to the bq2084-V140 as possible and that it has a specification of ±0.1% tolerance and ±50 ppm temperature drift or better. The 12-pF crystal, if used, should also be placed as close to the XCK1 (pin 34) and XCK2 (pin 33) pins as possible. The layout of the PCB around these pins and components is also an additional contributing factor to oscillator performance degradation. The average temperature drift error of the oscillator function over a learning charge or discharge cycle introduces an equal capacity prediction error in a learned full charge capacity (FCC). SYSTEM PRESENT OPERATION When the bq2084-V140 detects that the battery is inserted into the system via a low state on the PRES input, the bq2084-V140 enters normal operating mode and sets the PRES bit in PackStatus(). The discharge FET turns on within 250 ms of pack insertion. When the pack is removed from the system and the PRES input is high, then the bq2084-V140 enters the battery removed state and turns OFF the charge and discharge FETs, and enables the 0-V/precharging FET. If NR in Misc Config is set, then the PRES input can be left floating as it is not used. GENERAL OPERATION The bq2084-V140 determines battery capacity by monitoring the amount of charge input or removed from a rechargeable battery. In addition to measuring charge and discharge, the bq2084-V140 measures individual cell voltages, pack voltage, temperature, and current, estimates battery self-discharge, and monitors the battery for low-voltage thresholds using features of the bq29312 AFE device. The bq2084-V140 measures charge and discharge activity by monitoring the voltage across a small-value series sense resistor between the cell stack negative terminal and the negative terminal of the battery pack. The available battery charge is determined by monitoring this voltage and correcting the measurement for environmental and operating conditions. Submit Documentation Feedback 7 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 FUNCTIONAL DESCRIPTION (continued) The bq2084-V140 interfaces with the bq29312 to perform battery protection, cell balancing, and voltage translation functions. The bq2084-V140 can accept any NTC thermistor (default is Semitec 103AT) for temperature measurement or can also be configured to use its internal temperature sensor. The bq2084-V140 uses temperature to monitor the battery pack and to compensate the self-discharge estimate. MEASUREMENTS The bq2084-V140 uses an integrating sigma-delta analog-to-digital converter (ADC) for current measurement and a second sigma-delta ADC for individual cell and battery voltage and temperature measurement. The individual cell and pack voltages, Voltage(), Current(), AverageCurrent() and Temperature() are updated every 1 s during normal operation. CHARGE AND DISCHARGE COUNTING The integrating ADC measures the charge and discharge flow of the battery by monitoring a small-value sense resistor between the SR1 and SR2 pins. The integrating ADC measures bipolar signals from -0.25 V to 0.25µV. The bq2084-V140 detects charge activity when VSR = V(SR1)-V(SR2) is positive and discharge activity when VSR = V(SR1)-V(SR2) is negative. The bq2084-V140 continuously integrates the signal over time, using an internal counter. The fundamental rate of the counter is 0.65 nVh. The bq2084-V140 updates RemainingCapacity() with the charge or discharge accumulated in this internal counter once every second. OFFSET CALIBRATION The bq2084-V140 provides an auto-calibration feature to cancel the voltage offset error across SR1 and SR2 for maximum charge measurement accuracy. The bq2084-V140 performs auto-calibration when the SMBus lines stay low for a minimum of 20 s when it internally connects SR1 to SR2 and measures the internal offset. With this feature the bq2084-V140 is capable of automatic offset calibration down to <1 µV. DIGITAL FILTER The bq2084-V140 does not measure charge or discharge counts below the digital filter threshold. The digital filter threshold is programmed in the Digital Filter DF 0x2c and should be set sufficiently high to prevent false signal detection with no charge or discharge flowing through the sense resistor. VOLTAGE While monitoring SR1 and SR2 for charge and discharge currents, the bq2084-V140 monitors the individual series cell voltages through the bq29312. The bq2084-V140 configures the bq29312 to present the selected cell to the CELL pin of the bq29312, which should be connected to VIN of the bq2084-V140. The internal ADC of the bq2084-V140 then measures the voltage and scales it appropriately. The bq2084-V140 then reports the Voltage() and the individual cell voltages in VCELL1(), VCELL2(), VCELL3(), and VCELL4(). An additional SMBus command (0x45) returns the measured ADC Reading of the PACK input to the AFE. CURRENT The bq2084-V140 uses the SR1 and SR2 inputs to measure and calculate the battery charge and discharge current. This value is reported via the SBS command Current(). AverageCurrent() is implemented as a single-pole IIR filter with a 14.5-s time constant. TEMPERATURE The TS input of the bq2084-V140 along with an NTC thermistor measures the battery temperature as shown in the schematic. The bq2084-V140 reports temperature via the SBS command Temperature(). The bq2084-V140 can also be configured to use its internal temperature sensor by setting the IT bit in Misc Configuration DF 0x2a-0x2b. Data flash locations DF 0xb5 through DF 0xc0 also have to be changed to prescribed values if the internal temperature sensor option is selected. 8 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 FUNCTIONAL DESCRIPTION (continued) Table 1. Data Flash Settings for Internal or External Temperature Sensor LABEL LOCATION INTERNAL TEMP SENSOR SETTING EXTERNAL TEMP SENSOR SETTING (Semitec 103AT) Dec (Hex) Dec (Hex) Dec (Hex) Bit 7 = 1 Bit 7 = 0 Misc. Config 42 (0x2a) TS Const1 A3 164/5 (0xb5/6) 0 (0x0000) –28285 (0x9183) TS Const2 A2 166/7 (0xb7/8) 0 (0x0000) 20848 (0x5170) TS Const3 A1 168/9 (0xb9/a) –11136 (0xd480) –7537 (0xe28f) TS Const4 A0 170/1 (0xbb/c) 5734 (0x1666) 4012 (0x0fac) Min Temp AD 172/3 (0xbd/e) 0 (0x0000) 0 (0x000) Max Temp 174/5 (0xbf/c0) 5734 (0x1666) 4012 (0x0fac) GAS GAUGE OPERATION General The operational overview in Figure 1 illustrates the gas gauge operation of the bq2084-V140. Table 3 describes the bq2084-V140 registers. Figure 1. bq2084-V140 Gas Gauging Operational Overview The bq2084-V140 accumulates a measure of charge and discharge currents and estimates self-discharge of the battery. The bq2084-V140 compensates the charge current measurement for temperature and state-of-charge of the battery. The bq2084-V140 also adjusts the self-discharge estimation based on temperature. The main charge counter RemainingCapacity() (RM) represents the available capacity or energy in the battery at any given time. The bq2084-V140 adjusts RM for charge, self-discharge, and other compensation factors. The information in the RM register is accessible through the SMBus interface and is also represented through the LED display. Submit Documentation Feedback 9 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 The FullChargeCapacity() (FCC) register represents the last measured learned full discharge of the battery. It is used as the battery full-charge reference for relative capacity indication. The bq2084-V140 updates FCC after the battery undergoes a qualified discharge from nearly full to a low battery level. FCC is accessible through the SMBus interface. The Discharge Count Register (DCR) is a non-accessible register that tracks discharge of the battery. The bq2084-V140 uses the DCR register to update the FCC register if the battery undergoes a qualified discharge from nearly full to a low battery level. In this way, the bq2084-V140 learns the true discharge capacity of the battery under system-use conditions. Main Gas-Gauge Registers RemainingCapacity() (RM) RM represents the remaining capacity in the battery. The bq2084-V140 computes RM in units of either mAh or 10 mWh depending on the selected mode. See Battery Mode() (0x03) for units configuration. RM counts up during charge to a maximum value of FullChargeCapacity() (FCC) and down during discharge and self-discharge to a minimum of 0. In addition to charge and self-discharge compensation, the bq2084-V140 calibrates RM at three low-battery-voltage thresholds, EDV2, EDV1, and EDV0 and three programmable midrange thresholds VOC25, VOC50, and VOC75. This provides a voltage-based calibration to the RM counter. DesignCapacity () (DC) DC is the user-specified battery full capacity. It is calculated from Pack Capacity DF 0x32-0x33 and is represented in units of mAh or 10 mWh. It also represents the full-battery reference for the absolute display mode. FullChargeCapacity() (FCC) FCC is the last learned measured discharge capacity of the battery. It is represented in units of either mAh or 10 mWh, depending on the selected mode. On initialization, the bq2084-V140 sets FCC to the value stored in Full Charge Capacity DF 0x36-0x37. During subsequent discharges, the bq2084-V140 updates FCC with the last learned measured discharge capacity of the battery. The last learned measured discharge of the battery is based on the value in the Discharge Count Register (DCR) after a qualified discharge occurs. Once updated, the bq2084-V140 writes the new FCC value to data flash in mAh to Full Charge Capacity. FCC represents the full-battery reference for the relative display mode, relative state of charge and AtRate() calculations. Discharge Count Register (DCR) The DCR register counts up during discharge, independent of RM. DCR counts discharge activity, battery load estimation, and self-discharge increments. The bq2084-V140 initializes DCR, at the beginning of a discharge, to FCC - RM when FCC - RM is within the programmed value in Near Full DF 0x30. The DCR initial value of FCC RM is reduced by FCC/128 if SC = 1 (bit 5 in Gauge Configuration) and is not reduced if SC = 0. DCR stops counting when the battery voltage reaches the EDV2 threshold on discharge. Capacity Learning (FCC Update) and Qualified Discharge The bq2084-V140 updates FCC with an amount based on the value in DCR if a qualified discharge occurs. The new value for FCC equals the DCR value plus the programmable nearly full and low battery levels, according to the following equation: FCC (new) = DCR (final) = DCR (initial) + Measured Discharge to EDV2 + (FCC x Battery Low%) here Battery Low % = (value stored in DF 0x2f) ÷ 2.56 A qualified discharge occurs if the battery discharges from RM = FCC - Near Full to the EDV2 voltage threshold with the following conditions: • No more than 256 mAh of self-discharge or battery load estimation occurs during the discharge period. • The temperature does not drop below the low temperature threshold programmed in Learning Low Temp DF 0xac during the discharge period. • The battery voltage reaches the EDV2 threshold during the discharge period, and the voltage is greater than or equal to the EDV2 threshold minus 256 mV when the bq2084-V140 detects EDV2. • No midrange voltage correction occurs during the discharge period. 10 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 • • • Current remains ≤ 3C/32 when EDV2 or Battery Low % level is reached. No overload condition exists when EDV2 threshold is reached, or if RM() has dropped to Battery Low% x FCC, No valid charge activity occurs during the discharge period. A valid charge is defined as an uninterrupted charge of 10 mAh into the battery. The bq2084-V140 sets VDQ = 1 in PackStatus() when qualified discharge begins. The bq2084-V140 sets VDQ = 0 if any disqualifying condition occurs. FCC cannot be reduced by more than 256 mAh or increased by more than 512 mAh during any single update cycle. The bq2084-V140 saves the new FCC value to the data flash within 4 seconds of being updated. End-of-Discharge Thresholds and Capacity Correction The bq2084-V140 monitors the battery for three low-voltage thresholds, EDV0, EDV1, and EDV2. The EDV thresholds can be programmed for determination based on the overall pack voltage or an individual cell level. The EDVV bit in Pack Configuration DF 0x28 configures the bq2084-V140 for overall voltage or single-cell EDV thresholds. If programmed for single-cell EDV determination, the bq2084-V140 determines EDV on the basis of the lowest single-cell voltage. Fixed EDV thresholds must be programmed in EMF/EDV0 DF 0x95-0x96, EDV C0 Factor/EDV1 DF 0x97-0x98, and EDV R Factor/EDV2 DF 0x99-0x9a. If the CEDV bit in Gauge Configuration DF 0x29 is set, automatic compensated EDVs are enabled and the bq2084-V140 computes the EDV0, EDV1, and EDV2 voltage thresholds based on the values in DF 0x95-0xa0 and the battery's current discharge rate and temperature. If FEDV0 in Gauge Configuration is also set then EDV0 is not compensated. The bq2084-V140 disables EDV detection if Current( ) exceeds the Overload Current threshold programmed in DF 0x5b-DF 0x5c. The bq2084-V140 resumes EDV threshold detection after Current( ) drops below the Overload Current threshold. Any EDV threshold detected is reset after charge is detected and VDQ is cleared after 10 mAh of charge. The bq2084-V140 uses the EDV thresholds to apply voltage-based corrections to the RM register according to Table 2. Table 2. State-of-Charge Based on Low Battery Voltage THRESHOLD RELATIVE STATE OF CHARGE EDV0 0% EDV1 3% EDV2 Battery Low % The bq2084-V140 performs EDV-based RM adjustments with Current()≤ C/32. No EDV flags are set if current < C/32. The bq2084-V140 adjusts RM as it detects each threshold. If the voltage threshold is reached before the corresponding capacity on discharge, the bq2084-V140 reduces RM to the appropriate amount as shown in Table 2. If an RM % level is reached on discharge before the voltage reaches the corresponding threshold, then RM is held at that % level until the threshold is reached. RM is only held if VDQ = 1, indicating a valid learning cycle is in progress. If Battery Low % is set to zero, EDV1 and EDV0 corrections are disabled. EDV Thresholds and Near-Full Programming The bq2084-V140 uses the values stored in data flash for the EDV0, EDV1, and EDV2 values or calculates the three thresholds from a base value and the temperature, capacity, and rate adjustment factors stored in data flash. If EDV compensation is disabled, then EDV0, EDV1, and EDV2 are stored directly in mV in DF 0x95-0x96, DF 0x97-0x98, and DF 0x99-0x9a, respectively. For capacity correction at EDV2, Battery Low % DF 0x2f can be set at a desired state-of-charge, STATEOFCHARGE%, in the range of 3-19%. Typical values for STATEOFCHARGE% are 5-7%, representing 5-7% capacity. Battery Low % = (STATEOFCHARGE% x 2.56) Submit Documentation Feedback 11 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 The bq2084-V140 updates FCC if a qualified discharge occurs from a near-full threshold of FCC - Near Full, until EDV2 condition is reached. The desired near-full threshold window is programmed in Near Full in DF 0x30, 0x31 in mAh. EDV Discharge Rate and Temperature Compensation Programming If EDV compensation is enabled, the bq2084-V140 calculates battery voltage to determine EDV0, EDV1, and EDV2 thresholds as a function of battery capacity, temperature, and discharge load. The general equation for EDV0, EDV1, and EDV2 calculation is EDV0,1,2 = n (EMF × FBL – | ILOAD | × R0 × FTZ) EMF is a no-load cell voltage higher than the highest cell EDV threshold computed. EMF is programmed in mV in EMF/EDV1 DF 0x95-0x96. ILOAD is the current discharge load magnitude. n = the number of series cells FBL is the factor that adjusts the EDV voltage for battery capacity and temperature to match the no-load characteristics of the battery. FBL = f ( C0, C + C1, T ) C (either 0%, 3%, or Battery Low % for EDV0, EDV1, and EDV2, respectively) and C0 are the capacity-related EDV adjustment factors. C0 is programmed in EDV C0 Factor/EDV1 DF 0x97-98. C1 is the desired residual battery capacity remaining at EDV0 (RM = 0). The C1 factor is stored in EDV C1 Factor DF 0xa0. T is the current temperature in °K. R0 × FTZ represents the resistance of a cell as a function of temperature and capacity. FTZ = f ( R1, T0, T, C + C1, TC) R0 is the first order rate dependency factor stored in EDV R0 Factor/EDV2 DF 0x99-0x9a. T is the current temperature; C is the battery capacity relating to EDV0, EDV1, and EDV2. R1 adjusts the variation of impedance with battery capacity. R1 is programmed in EDV R1 Rate Factor DF 0x9d-0x9e. T0 adjusts the variation of impedance with battery temperature. T0 is programmed in EDV T0 Rate Factor DF 0x9b-0x9c. TC adjusts the variation of impedance for cold temperatures (T < 23°C). TC is programmed in EDV TC DF 0x9f. Typical values for the EDV compensation factors, based on overall pack voltages for a Li-ion 3s2p 18650 pack, are: EMF = 11550/3 T0 = 4475 C0 = 235 C1 = 0 R0 = 5350/3 R1 = 250 TC = 3 12 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Table 3. bq2084-V140 Register Functions FUNCTION COMMAND CODE ACCESS UNITS ManufacturerAccess 0x00 Read/write NA RemainingCapacityAlarm 0x01 Read/write mAh, 10 mWh RemainingTimeAlarm 0x02 Read/write minutes BatteryMode 0x03 Read/write NA AtRate 0x04 Read/write mA, 10 mW AtRateTimeToFull 0x05 Read minutes AtRateTimeToEmpty 0x06 Read minutes AtRateOK 0x07 Read Boolean Temperature 0x08 Read 0.1°K Voltage 0x09 Read mV Current 0x0a Read mA AverageCurrent 0x0b Read mA MaxError 0x0c Read percent RelativeStateOfCharge 0x0d Read percent AbsoluteStateOfCharge 0x0e Read percent RemainingCapacity 0x0f Read mAh, 10 mWh FullChargeCapacity 0x10 Read mAh, 10 mWh RunTimeToEmpty 0x11 Read minutes AverageTimeToEmpty 0x12 Read minutes AverageTimeToFull 0x13 Read minutes ChargingCurrent 0x14 Read mA ChargingVoltage 0x15 Read mV Battery Status 0x16 Read NA CycleCount 0x17 Read cycles DesignCapacity 0x18 Read mAh, 10 mWh DesignVoltage 0x19 Read mV SpecificationInfo 0x1a Read NA ManufactureDate 0x1b Read NA SerialNumber 0x1c Read integer Reserved 0x1d-0x1f 0 0 ManufacturerName 0x20 Read string DeviceName 0x21 Read string DeviceChemistry 0x22 Read string ManufacturerData 0x23 Read string Pack status 0x2f (LSB) Read NA Pack configuration 0x2f (MSB) Read NA VCELL4 0x3c Read mV VCELL3 0x3d Read mV VCELL2 0x3e Read mV VCELL1 0x3f Read mV VPACK 0x45 Read mV AFEData 0x46 Read hex Submit Documentation Feedback 13 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Self-Discharge The bq2084-V140 estimates the self-discharge of the battery to maintain an accurate measure of the battery capacity during periods of inactivity. The bq2084-V140 makes self-discharge adjustments to RM every 1/4 s when awake and periodically (determined by Sleep Timer DF 0xfe) when in sleep mode. The self-discharge estimation rate for 25°C is doubled for each 10 degrees above 25°C or halved for each 10 degrees below 25°C. Table 4 shows the relation of the self-discharge estimation at a given temperature to the rate programmed for 25°C (Y% per day programmed in DF 0x2d). Table 4. Self-Discharge for Rate Programmed TEMPERATURE (°C) SELF-DISCHARGE RATE Temp < 10 1/4 Y% per day 10 ≤ Temp <20 ½ Y% per day 20 ≤ Temp <30 Y% per day 30 ≤ Temp <40 2Y% per day 40 ≤ Temp <50 4Y% per day 50 ≤ Temp <60 8Y% per day 60 ≤ Temp <70 16Y% per day 70 ≤ Temp 32Y% per day The nominal self-discharge rate, %PERDAY (% per day), is programmed in an 8-bit value Self-Discharge Rate DF 0x2d by the following relation: Self-Discharge Rate = %PERDAY/ 0.01 Battery Electronic Load Compensation The bq2084-V140 can be configured to compensate for a constant load (as from battery electronics) present in the battery pack at all times. The bq2084-V140 applies the compensation continuously when the charge or discharge is below the digital filter. The bq2084-V140 applies the compensation (BEL) in addition to self-discharge. The compensation occurs at a rate determined by the value stored in Electronics Load DF 0x2e. The compensation range is 0 µA-765 µA in steps of approximately 3 µA. The data is stored as follows: Electronics Load = BEL / 3 Midrange Capacity Corrections The bq2084-V140 applies midrange capacity corrections when the VCOR bit is set in Gauge Configuration DF 0x29. The bq2084-V140 adjusts RM to the associated percentage at three different voltage levels: VOC25, VOC50, and VOC75. The VOC values represent the open-circuit battery voltage at which RM corresponds to the associated percentage for each threshold. For the midrange corrections to occur, the temperature must be in the range of 19°C to 31°C inclusive and Current() and AverageCurrent() must both report between -64 mA and 0. The bq2084-V140 makes midrange corrections as shown in Table 5. For a correction to occur, the bq2084-V140 must detect the need for correction twice during subsequent 20-s intervals. With the VCOR bit set, the bq2084-V140 makes midrange corrections whenever conditions permit. If the OTVC bit in Gauge Configuration DF 0x29 is set and VCOR = 0, the bq2084-V140 makes two Voltage() measurements, determines the average of the two readings and sets the appropriate RM level. No further RSOC% vs Voltage() validation is performed until after the next device reset. 14 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Table 5. Midrange Corrections Voltage() CONDITION RESULT ≤ VOC75 and RelativeStateOfCharge() ≤ 63% RelativeStateOfCharge() → 75% ≤ VOC75 and RelativeStateOfCharge() ≤ 87% RelativeStateOfCharge() → 75% ≤ VOC50 and RelativeStateOfCharge() <38% RelativeStateOfCharge() → 50% <VOC50 and RelativeStateOfCharge() ≤ 62% RelativeStateOfCharge() → 50% ≤ VOC25 and RelativeStateOfCharge() ≤ 13% RelativeStateOfCharge() → 25% < VOC25 and RelativeStateOfCharge() ≤ 37% RelativeStateOfCharge() → 25% Three voltage-based thresholds, VOC25 DF 0x88-0x89, VOC50 DF 0x83-0x84, and VOC75 DF 0x7e-0x7f, are stored in the data flash in mV. Charge Control The bq2084-V140 internal charge control is compatible with the constant current/constant voltage profile for Li-ion. The bq2084-V140 detects primary charge termination on the basis of the tapering charge current during the constant-voltage phase. Charging Voltage Broadcasts The bq2084-V140 supports SBS charge control by broadcasting the ChargingCurrent() and ChargingVoltage() to the Smart Charger address. The bq2084-V140 broadcasts the requests every 10 seconds. The bq2084-V140 updates the values used in the charging current and voltage broadcasts based on the battery's state of charge, voltage, and temperature. The 16-bit value (mV) for charging voltage is programmed in Charging Voltage DF 0x03a-0x3b although it can be set to 0 in different operating conditions. It also sets the base value for determining overvoltage conditions during charging and voltage compliance during a constant-voltage charging methodology. The 16-bit value, Over Voltage Margin DF 0x5d-0x5e, sets the limit over ChargingVoltage() in mV that is to be considered as an overvoltage charge-suspension condition. Charging Current Broadcasts ChargingCurrent() values are either broadcast to a Level 2 smart battery charger or read from the bq2084-V140 by a Level 3 smart battery charger. The ChargingCurrent() may take any of four different values: Fast-Charging Current DF (0x3e-0x3f), Maintenance Charging Current (DF 0x40-0x41), Precharge Current (0x42-0x43) or 0 depending on charge state and operating conditions. When fast charge is allowed, the bq2084-V140 sets ChargingCurrent() to the rate programmed in Fast-Charging Current DF 0x3e-0x3f. Fast-Charging Current is stored in mA. When fast charge terminates, the bq2084-V140 sets ChargingCurrent() to zero and then to the MaintenanceCharging Current DF 40 0x41 when the termination condition ceases. The desired maintenance current is stored in mA. When Voltage() is less than EDV0, the bq2084-V140 sets ChargingCurrent() to Precharge Current DF 0x42, 0x43. Typically this rate is larger than the maintenance rate to charge a deeply depleted pack up to the point where it may be fast charged. The desired precharge rate is stored in mA. If temperature is between the Charge Inhibit Temp Low (DF0x46) and the precharge threshold PC (°C), the bq2084-V140 sets ChargingCurrent() to Precharge Current. The threshold is programmed in the Precharge Temp DF 0x44. The maximal value of precharge temperature threshold setting is 12.7°C. • Precharge Temp = PC (°C) / 0.1 The bq2084-V140 also sets ChargingCurrent() to the precharge rate if Voltage() is less than the value programmed in Precharge Voltage DF 0x3c-0x3d. Precharge Voltage is programmed in mV. Submit Documentation Feedback 15 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Alarm Broadcasts to Smart Charger and Host If any of the bits 8-15 in BatteryStatus() are set, the bq2084-V140 broadcasts an AlarmWarning() message to the Host address. If any of the bits 12-15 in BatteryStatus() are set, the bq2084-V140 also sends an AlarmWarning() message to the Smart Charger address. The bq2084-V140 repeats the AlarmWarning() messages every 10 seconds until the alarm bits are cleared. All broadcasts can be disabled by setting SM (bit 2) in Pack Configuration (DF 0x28). Precharge Qualification The bq2084-V140 sets ChargingCurrent() to the precharge rate as programmed in Precharge Current DF 0x42-0x43 under the following conditions: • Voltage: The bq2084-V140 requests the precharge charge rate when any cell voltage drops below the precharge threshold or when the EDV0 threshold is detected. Once requested, a precharge rate remains until all cell voltages increase above the precharge threshold and the EDV0 condition does not exist. The precharge threshold is programmed in Precharge Voltage DF 0x3c-0x3d. • Temperature: The bq2084-V140 requests the precharge rate when Temperature() is between Charge Inhibit Temp Low (DF0x46) and the precharge threshold programmed in Precharge Temp 0x44. Temperature( ) must be equal to or greater than the precharge threshold + 3°C to allow the fast-charge rate. Charge Suspension The bq2084-V140 may temporarily suspend charge if it detects a charging fault. A charging fault includes the following conditions. • Overcurrent: An overcurrent condition exists when the bq2084-V140 measures the charge current to be greater than Charge OC Threshold (DF 0x12a-0x12b) for a time greater than Charge OC Time (DF 0x12c). On detecting an overcurrent condition, the bq2084-V140 turns off the Charge FET. If the Nonremovable Battery bit is not set in Misc Configuration DF 0x2a, then the Discharge FET is turned off also. This condition is cleared when the pack is removed or if the Nonremovable Battery bit is set in Misc Configuration DF 0x2a and when a discharge current is detected or when SBS AverageCurrent() is less than the ClearFailCurrent DF 0x61-0x62 for FaultResetTime DF 0x130. • Overtemperature: During charging, an overtemperature condition exists when Temperature() is greater than the Charge Suspend Temp High value programmed in DF 0x6d, 0x6e. On detecting an overtemperature condition, if enabled by the OT bit in Misc Configuration DF 0x2a, the bq2084-V140 turns off the Charge and Discharge FETs. The overtemperature condition is cleared when Temperature() is equal to or below Charge Suspend Temp High Reset (DF 0x6f -0x70). The condition is also cleared if the pack is removed. • Undertemperature: During charging, an undertemperature condition exists when Temperature() is less than the Charge Suspend Temp Low in DF 0x79 or Charge Inhibit Temp Low in DF 0x46. On detecting an undertemperature condition the bq2084-V140 turns off the Charge FET. The undertemperature condition is cleared when Temperature() is greater than Charge Suspend Temp Low DF 0x79. The condition is also cleared if the pack is removed. The maximal value of Charge Suspend Temp Low setting is 12.7°C. • Charging exceeds Maximum Charging Time in DF 0x10f-0x110. If charging time reaches Maximum Charge Time, the Charge FET is turned off. This condition is cleared when the pack detects discharge current or is removed. • Cell or Pack Overvoltage: An overvoltage condition exist when any cell is greater than Cell Over Voltage Limit in DF 0x63-0x64 or if Voltage() is greater than Charging Voltage in 0x3a-0x3b plus OvervoltageMargin in 0x5d-05e. This condition is cleared when the pack is removed or if the Nonremovable Battery bit is set in Misc Configuration DF 0x2a and when a discharge current is detected or when SBS AverageCurrent() is less than the ClearFailCurrent DF 0x61-0x62 for FaultResetTime DF 0x130. Also, the overvoltage condition must be cleared by Voltage() less than Charging Voltage in 0x3a-0x3b plus OvervoltageMargin in 0x5d-05e and all cell voltages less than Cell Over Voltage Reset in DF 0xe0-0xe1. • Charging is also temporarily suspended during pulse-charging, but this is not considered a fault condition. Pulse Charge The bq2084-V140 is capable of charge control using a pulse-charging algorithm, which allows for charge control in systems where the charger does not control current. The pulse-charging algorithm uses voltage thresholds and associated time limits for control. These are stored as constants in data flash. The cell voltages are read by the a/d converter every 125 ms during charging. The 16 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 voltage used for comparison to the thresholds is the highest cell voltage. These thresholds are set by three data flash constants: Von Charge Voltage, Voff Charge Voltage, and Vmax Charge Voltage. Von is the lowest of these, and is the threshold below which the charge FET is turned on, provided the minimum off time (Pulse Minimum Off Time) has been met. When the voltage crosses the Voff threshold, the maximum on time (Pulse Maximum On Time) begins to count down. When this time has expired, the charge FET is turned off. Any time Vmax is exceeded, the charge FET is turned off immediately. The rules are: 1. If charge FET is on: a. If voltage above Vmax, turn off. b. Else if voltage above Voff and max on time expired, turn off. c. Else count down max on time. 2. If charge FET is off: a. If voltage below Von and minimum off time, turn on. b. Else increment off time. Voltage is sampled every 125 ms; therefore, the minimum off time and maximum on time are in units of 125ms, and pulse on and off times are integral multiples of 125 ms. The voltage thresholds can be chosen in such a way that they alter the charge mechanism. If Voff is set equal to Vmax, then every time this threshold is crossed, the charge FET turns off immediately. This effectively disables the maximum charge time, so that the Voff threshold has no effect. In this case, the algorithm can be described as having two voltage thresholds, rather than three. The charge FET simply turns on and off as it crosses the two thresholds. The minimum off time can be similarly disabled by setting it to zero or one. Due to the sample interval, the charge FET always is off for at least one 125-ms cycle. Thresholds must be chosen carefully to get the desired charging behavior. For example, if Von is set below charge voltage minus taper voltage, the pack can never detect full charge. During pulse charging, the charge FET remains off until the cells relax to below the Von voltage, which is below the qualification voltage for full charge detection. During cycle phase of pulse charging (charge FET ON), the voltage can exceed Voff value for a period of 125ms until next sample is taken and FET is switched OFF. To prevent cell overvoltage termination, or pack overvoltage termination during this period, values for cell OV should be set larger than voltage reached during this period. Reasonable value of cell OV for given charger current I can be calculated, assuming cell impedance of 0.08 Ω/cell, as V(cell)OV > Von + 0.08 × I. Correspondingly, the pack overvoltage margin should be set as V(margin) > V(cell)OV x n - V(charge) where: n = number of series cells. When charging begins on a depleted battery pack, the voltage is below Voff, and may even stay below Von for some time. This means the pack is under constant charge, with no pulsing, for some part of the charge cycle. As the voltage on the cells rises, it crosses the Voff threshold (or the Vmax threshold if Voff is disabled), and the charge FET turns off. Initially, the off time is short, because the cells are only barely over the threshold and is quickly relaxed to below Von. As the cell voltages rises, the off times become longer and the on times shorter. This effect, in combination with the reduced current drawn by the cells, results in a gradually declining charge current. Eventually, this current falls below the taper current, and the pack detects the full charge condition and stops charging. The pulse-charging control operates during normal charging conditions and are overridden in case of a fault condition. Charging is stopped for any fault conditions which may occur, such as overtemperature or overcurrent, without regard to the voltage thresholds or time limits. Primary Charge Termination The bq2084-V140 terminates charge if it detects a charge-termination condition based on current taper. A charge-termination condition includes the following: Submit Documentation Feedback 17 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 The bq2084-V140 detects a current taper termination when the pack voltage is greater than Charging Voltage (DF 0x3a-0x3b) minus Current Taper Qualification Voltage (DF 0x4d-0x4e) and the AverageCurrent() is below the Current Taper Threshold (DF 0x4b-0x4c), but greater than the Charge Detection Current in DF 0x113-0x114, for a period of Current Taper Window (DF 0x4f). Once the bq2084-V140 detects a Primary Charge Termination, the bq2084-V140 sets the TERMINATE_CHARGE_ ALARM and FULLY_CHARGED bits in BatteryStatus(), and turns off the charge FET via the bq29312. The charge FET is turned on when discharge current is detected and is greater than Discharge Detection Current (DF 0x115-0x116), to minimize IR losses. The TERMINATE_CHARGE_ ALARM is cleared if charge current is no longer detected or the pack is removed, but returns if charging is attempted while the FULLY_CHARGED bit is set. The bq2084-V140 clears the FULLY_CHARGED and TERMINATE_CHARGE_ALARM bit when RelativeStateOfCharge() is less than the programmed Fully Charged Clear %. See Table 13 for a summary of BatteryStatus() alarm and status bit operation. Cell Balancing The bq2084-V140 balances the cells during charge by discharging those cells above the threshold set in Cell Balance Threshold DF 0xe8-0xe9, if the maximum difference in cell voltages exceeds the value programmed in Cell Balance Min DF 0xec. For cell balancing, the bq2084-V140 measures the cell voltages at an interval set in Cell Balance Interval DF 0xed. On the basis of the cell voltages, the bq2084-V140 either selects the appropriate cell to discharge or adjusts the cell balance threshold up by the value programmed in Cell Balance Window 0xea-0xeb when all cells exceed the cell balance threshold or the highest cell exceeds the cell balance threshold by the cell balance window. Cell balancing only occurs when charging current is detected and the cell balance threshold is reset to the value in Cell Balance Threshold at the start of every charge cycle. The threshold is only adjusted once during any balance interval. If the cells are severely imbalanced during charging, where VCELL(MAX) - VCELL(MIN) > Cell Imbalance Threshold AND SBS. Current()> Balance IMAX for a period of Cell Imbalance time then the CIM bit in PF Status is set. Table 6. Cell Balancing and Cell Imbalance Programming NAME DF ADDRESS DESCRIPTION Cell Balance Threshold 0xe8-0xe9 Sets the maximum voltage in mV that each cell must achieve to initiate cell balancing. Programming Cell Balance Threshold to 65,535 disables cell balancing. Cell Balance Min 0xec Sets in mV the cell differential that must exist to initiate cell balancing Cell Balance Window 0xea-0xeb Sets in mV the amount that the cell balance threshold increases during cell balancing Cell Balance Interval 0xed Sets the cell balancing time interval in seconds. Cell Imbalance Threshold 0xee-0xef Sets the severe imbalance fault limit for cell imbalance detection Balance IMAX 0xf2-0xf3 Sets the charge current required to allow a cell imbalance to be detected Cell Imbalance Time 0x134 Sets the time period during which a cell imbalance must be selected for the bq2084 to enter PF mode. DISPLAY PORT General The display port drives a 3-, 4-, or 5-LED bar-graph display. The display is activated by a logic signal on the DISP input. The bq2084-V140 can display RM in either a relative or absolute mode with each LED representing a percentage of the full-battery reference. In relative mode, the bq2084-V140 uses FCC as the full-battery reference; in absolute mode, it uses Design Capacity (DC). The DMODE bit in Pack Configuration DF 0x28 programs the bq2084-V140 for the absolute or relative display mode. The LED bits program the 3-, 4-, or 5-LED option. 18 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Activation The display may be activated at any time by a high-to-low transition on the DISP input. This is usually accomplished with a pullup resistor and a pushbutton switch. Detection of the transition activates the display and starts a 4-s display timer. Reactivation of the display requires that the DISP input return to a logic-high state and then transition low again. The second high-to-low transition can be detected only after the display timer expires. If unused, the DISP input must be pulled up to VCC. If the EDV0 bit is set, the bq2084-V140 disables the LED display. Display Modes In relative mode, each LED output represents 20%, 25%, or 33% of the RelativeStateOfCharge() value. In absolute mode, each LED output represents 20%, 25% or 33% of the AbsoluteStateOfCharge() value. Table 7 shows the display options for 5 LEDs, for 4 LEDs, Table 8 and Table 9 for 3 LEDs. In either mode, the bq2084-V140 blinks the LED display if RemainingCapacity() is less than Remaining CapacityAlarm(). The display is disabled if EDV0 = 1. Table 7. Display Mode for Five LEDs CONDITION RELATIVE OR ABSOLUTE FIVE-LED DISPLAY OPTION StateOfCharge() LED1 LED2 LED3 LED4 LED5 EDV0 = 1 OFF OFF OFF OFF OFF <20% ON OFF OFF OFF OFF ≤20%, < 40% ON ON OFF OFF OFF ≤40%, < 60% ON ON ON OFF OFF ≤60%, < 80% ON ON ON ON OFF ≤80% ON ON ON ON ON Table 8. Display Mode for Four LEDs CONDITION RELATIVE OR ABSOLUTE FOUR-LED DISPLAY OPTION StateOfCharge() LED1 LED2 LED3 LED4 EDV0 = 1 OFF OFF OFF OFF <25% ON OFF OFF OFF ≤25%, < 50% ON ON OFF OFF ≤50%, < 75% ON ON ON OFF ≤75% ON ON ON ON Table 9. Display Mode for Three LEDs CONDITION RELATIVE OR ABSOLUTE THREE-LED DISPLAY OPTION StateOfCharge() LED1 LED2 LED3 EDV0 = 1 OFF OFF OFF <34% ON OFF OFF ≤34%, < 67% ON ON OFF ≤67% ON ON ON LI-ION PROTECTION The bq2084-V140 along with the bq29312 provides protection for Li-ion batteries, as shown in Table 10. The bq2084-V140 measures temperature and current and uses the bq29312 to measure individual cell voltage. The bq2084-V140 uses this information to determine protection requirements and control the safety FETs or SAFE output as necessary. It is recommended that the bq2084-V140 protection control be validated by two successive measurements by setting VOD=1 in Misc Configuration. Submit Documentation Feedback 19 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 The bq29312 can independently detect and protect the load from an overload (OL) or short circuit in charge (SCC) or discharge (SCD). The bq29312 sets the appropriate FET state and then alerts the bq2084-V140 with the XALERT output whenever a protection threshold is breached and its associated delay time has expired. The bq2084-V140 then determines if and when the FETs should be turned back on. Table 10. CVOV and CVUV Flags in PackStatus() FLAG CVOV SET CONDITION DSG FET CHG FET CLEAR CONDITION (1) ON OFF (2) Voltage() < ChargingVoltage() ON OFF (2) Voltage() = ChargingVoltage() + Over Voltage Margin VCELL(ANY) = Cell Over Voltage CVUV (3)ON VCELL(ANY) = Cell Under Voltage AverageCurrent() < - Over Load Current (1) (2) (3) OFF (3) ON VCELL(ALL) < Cell Over Voltage Reset VCELL(ALL) > Cell Under Voltage Reset AverageCurrent() < - Current Fault Clear Threshold Clear is detected and controlled by the bq2084-V140. On if there is a discharge current ≤150 mA On if there is a charge current ≤50 mA Protection Configuration 1st Level Cell Voltage Thresholds The cell undervoltage (VUV) and overvoltage (VOV) limits are programmed in Cell Under Voltage and Cell Over Voltage DF 0x65-0x66, DF 0x63-0x64, respectively. Both values are stored in mV. Cell Over Voltage Reset DF 0xe0-0xe1 and Cell Under Voltage Reset 0xe2-0xe3 set the reset points in mV for these safety parameters. Safety Overvoltage Threshold The safety voltage threshold is programmed in Safety Over Voltage DF 0x6b-0x6c. It is stored in mV. Exceeding the Safety Voltage for a period determined by the MISC Config VOD bit causes permanent failure if enabled by PFConfig. Overcurrent Thresholds Discharge current threshold is programmed in Discharge OC Threshold DF 0x12d-0x12e. The discharge overcurrent must exist for time programmed in Discharge OC Time DF 0x12f. When a discharge overcurrent condition is detected the discharge FET is turned off. Similarly, a charge overcurrent is programmed in Charge OC ThresholdDF 0x12a-0x12b. The charge overcurrent must exist for the time programmed in Charge OC Time DF 0x12c or Charge OC Time DF 0x12c. When a charge overcurrent condition is detected, the charge FET is turned off. Temperature Thresholds The Safety Over Temperature in Charge (SOTC) threshold is programmed in Safety Over Temperature in Charge DF 0x75-0x76 and Safety Over Temperature in Discharge (SOTD) threshold is programmed in Safety Over Temperature in Discharge DF 0x77-0x78. SOTC is stored as Safety Over Temperature in Charge = SOTC/0.1 (°C) as an unsigned integer SOTD is stored as Safety Over Temperature in Discharge = SOTD/0.1 (°C) as an unsigned integer. Exceeding the Safety Temperatures for a period exceeding Over Temperature Time DF 0x162 causes permanent failure if enabled by PFConfig. There are also temperature thresholds to disable both charge and discharge FETs and to set the SBS Battery Status Overtemperature bit. The thresholds are set according to whether discharge or charge is detected. The Charge Suspend Temp High threshold is stored in DF 0x6d-0x6e with the reset threshold stored in DF 0x6f-0x70. Likewise, the Over Temperature Discharge threshold is stored in DF 0x71-0x72 with the reset threshold stored in DF 0x73-0x74. If the OT bit in Misc Configuration is set then all temperature protection is disabled except for Safety Over Temperature. The Charge Suspend Temp Low threshold (CSTL) is stored in Charge Suspend Temp Low DF 0x79-0x7a and is stored as Charge Suspend Temp Low = CSTL/0.1 (°C) as a signed integer. A Charge Suspend Temp Low turns off the charge FET. The maximal value of Charge Suspend Temp Low setting is 12.7 °C. 20 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 AFE Configuration The AFE protection limits are programmed as specified in the bq29312 data sheet. AFE Over Load DF 0xc5 sets the AFE overload protection threshold. AFE Over Load Delay DF 0xc6 sets the delay timing for overload protection. AFE Short Circuit in Charge DF 0xc7 sets the AFE short circuit in charge protection threshold and delay time. AFE Short Circuit in Discharge DF 0xc8 sets the AFE short circuit in discharge protection threshold and delay time. SMBus command 0x46 can be used to string-read the AFE RAM with the AFE address 0x00 first, if the bq2084-V140 is not sealed as indicated by bit 5 of PackStatus. Table 11. Overcurrent Protection FAILURE FET STATUS CLEAR CONDITIONS NR=1 AFE OLV CHG on, ZVCHG off, DSG off Same AFE SCD AFE SCC CHG off, ZVCHG off, DSG on Average Current ()< Clear Fail Current (DF 0x61/2) for Fault Reset Time (DF 0x130), or discharge current > discharge detection current (DF 0x115/6) AFE SCD CHG on, ZVCHG off, DSG off Average Current () ≤ -Clear Fail Current (DF 0x61/2) for Fault Reset Time (DF 0x130), or charge current > charge detection current (DF 0x113/4) GG Charge OC (set by DF 0x12a to 0x12c) CHG off, ZVCHG off, DSG on Same AFE SCC GG Discharge OC (set by DF 0x12d to 0x12f) CHG on, ZVCHG off, DSG off Same AFE SCD NR=0 FAILURE FET STATUS EXIT CONDITIONS AFE OLV All FETs off RRES=high AFE SCC All FETs off PRES=high AFE SCD All FETs off PRES=high GG Charge OC (set by DF 0x12a to 0x12c) All FETs off PRES=high GG Discharge OC (set by DF 0x12d to 0x12f) All FETs off PRES=high The AFE protection features can also recover automatically after AFE Recovery Time (DF 0x160) if the AFE Recovery Time is set to a nonzero value. When the protection feature is recovered in this manner, it does not re-trigger for AFE Hold Off Time (DF 0x161). AFE Integrity Check The bq2084-V140 checks the programming of the AFE registers at a period determined by AFE Check Time DF 0xfb. The units of the check period are seconds unless the bq2084-V140 is in sleep mode, in which case the period is AFE Check Time x Sleep Current Multiplier (DF 0xfd). If the data is not correct, the bq2084-V140 increments an internal counter until it reaches the AFE Fail Limit (DF 0xe4). Setting AFE Check Time to 0 disables this function. When the internal AFE Fail counter reaches AFE Fail Limit, then the AFE bit in PF Status is set. AFE Watchdog Fault and Clear The bq29312 has a feature where the 32-kHz output (CLKOUT, pin 35) of the bq2084-V140 is used to drive its internal clock. If this clock fails, a fault is declared in the AFE. See the bq29312 data sheet for further details. The fault is cleared automatically on return of the 32-kHz input via the bq2084-V140 CLKOUT pin. Permanent Failure Mode (SAFE Output) The SAFE output of the bq2084-V140 provides an additional level of safety control. The active low safety output can blow a fuse or control another switch on the basis of temperature, pack-voltage cell-voltage, CHG FET Failure, severe cell imbalance, or an integrity check of the AFE and Data Flash configuration registers. Submit Documentation Feedback 21 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 The bq2084-V140 can also activate the SAFE output and set the PF Flag based on the PFIN input. If this pin is low for PFIN Time seconds ±1 s, then the PFIN bit in PF Status is set. The SAFE output can be driven low in any of the following conditions, and the bq2084-V140 sets the PF Flag register (DF 0x11e) to 0x66 (011001100). The activation of the SAFE output and the setting of the PF Flag can be enabled or disabled for different safety option per the PF Config (DF 0x11f) register settings. The SAFE output and PF Flag register can only be cleared using a series of ManufacturerAccess() commands. Table 12. SAFE Activation Conditions (1) CONDITION ACTIONS Voltage() > Safety Over Voltage (DF 0x6b and 0x6c), SOV and PF set Temperature() > Safety Over Temperature in Charge (DF 0x75 and 0x76) SOTC and PF set Temperature() > Safety Over Temperature in Discharge (DF 0x77 and 0x78) SOTD and PF set When Miscellaneous Configuration (0x2a) bit 13 AC is set, and the number of AFE failures has reached the AFE Fail Limit (DF 0xe4) AFE and PF set When VCELL(MAX) - VCELL(MIN) > Cell Imbalance Threshold (DF 0xee, 0xef) during charging CIM and PF set If charge FET is off, and charge current greater than FET Fail charge current stored in DF 0x125-0x126 for the time determined by FET Fail time in DF 0x129, or if discharge FET is off and discharge current greater than FET Fail discharge current stored in DF 0x127-0x128 for the time determined by FET Fail time in DF 0x129. The PFIN input has detected a low state for PFIN Time in consecutive seconds, as determined by DF 0x120 (1) FETF and PF set PFIN, PF set SAFE output activated and PF Flag set only if enabled by PF Config (DF 0x0x11f) Permanent Failure Status (PF Status) PF Status DF 0x11d contains the flags for the cause of the permanent failure mode. b7 b6 b5 b4 b3 b2 b1 b0 PFF PFIN FETF CIM AFE SOTD SOTC SOV SOV The SOV bit indicates a safety overvoltage occurred which if enabled by PF Config would cause the SAFE output to activate. 0 SOV fault not detected (default) 1 SOV fault detected SOTC The SOTC bit indicates a safety overtemperature in charge occurred which if enabled by PF Config would cause the SAFE output to activate. 0 SOTC fault not detected (default) 1 SOTC fault detected SOTD The SOTD bit indicates a safety overtemperature in discharge occurred which if enabled by PF Config would cause the SAFE output to activate. 0 SOTD fault not detected (default) 1 SOTD fault detected AFE The AFE bit indicates an AFE integrity fault state occurred which if enabled by PF Config would cause the SAFE output to activate. 22 0 AFE is operating correctly (default) 1 AFE Integrity check fail limit reached Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 CIM The CIM bit indicates that a severe cell imbalance occurred during charging, which if enabled by PF Config, would cause the SAFE output to activate. 0 All cells are within the Cell Imbalance Threshold (default) 1 There is a severe cell imbalance FETF The FETF bit indicates a FET or FET driver failure occurred, which if enabled by PF Config would cause the SAFE output to activate. 0 The FETs are operating normally (default) 1 The FETs or FET drivers have a fault PFIN The PFIN bit is used to indicate that the output of the 2nd level protector has activated. 0 The PFIN input is high (default) 1 The PFIN input drive and held low by 2nd level protector output FPP The FPP bit is used to indicate that current has been detected when the fuse has been set to be blown. 0 Current not detected with fuse blown 1 Current detected with fuse blown Permanent Failure Configuration (PF Config) PF Config DF 0x11f contains the enable/disable configuration that determines if the SAFE output is activated and the PF Flag set for each possible failure mode. b7 b6 b5 b4 b3 b2 b1 b0 - XPFIN XFETF XCIM XAFE XSOTD XSOTC XSOV XSOV The XSOV bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status SOV is set. 0 Activation disabled (default) 1 Activation enabled XSOTC The XSOTC bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status SOTC is set. 0 Activation disabled (default) 1 Activation enabled XSOTD The XSOTD bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status SOTD is set. 0 Activation disabled (default) 1 Activation enabled XAFE The XAFE bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status AFE is set. Bit 13 of Miscellaneous Config DF 0x2a also needs to be set for activation. Submit Documentation Feedback 23 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 0 Activation disabled (default) 1 Activation enabled XCIM The XCIM bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status CIM is set. 0 Activation disabled (default) 1 Activation enabled XFETF The XFETF bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status FETF is set. 0 Activation disabled (default) 1 Activation enabled XPFIN The XPFIN bit enables or disables the activation of SAFE and the setting of the PF Flag when PF Status PFIN is set. 0 Activation disabled (default) 1 Activation enabled Permanent Failure Flag (PF Flag) PF Flag DF 0x11e contains the flag indicating if the /SAFE output has been activated. STATE b7 b6 b5 b4 b3 b2 b1 b0 Clear 0 0 0 0 0 0 0 0 Set 0 1 1 0 0 1 1 0 PF FLAG The PF Flag indicates that the SAFE output of the bq2084-V140 has been activated. 0x00 SAFE output high (default) 0x66 SAFE output activated An example circuit using the SAFE output to blow a fuse is shown in Figure 2. Figure 2. Example SAFE Circuit Implementation 24 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Low-Power Modes The bq2084-V140 enters sleep mode when the charge and discharge current is less than the threshold programmed in Sleep Current Threshold DF 0xfc, the SMBus lines are low for at least 2s, and bit 12 of Misc. Configuration DF 0x2a is set to zero. Additionally, PRES must be pulled high if the NR bit in Misc Config is set to 0. The bq2084-V140 wakes up periodically to monitor voltage and temperature and to apply self-discharge adjustment. The sleep period is set in Sleep Timer DF 0xfe. The bq2084-V140 wakes up at a period set by Sleep Current Multiplier DF 0xfd multiplied by Sleep Time to measure current. The bq2084-V140 comes out of sleep when either of the SMBus lines go high or when the current is measured and it is greater than the Sleep Current Threshold. The sleep current threshold, SLP (mA), is stored in Sleep Current Thresh DF 0xfc as: Sleep Current Thresh = SLP(mA)/0.5 The wake-up period for current measurement, WAT(s), is set using the following formula: Sleep Current Multiplier x Sleep Time = WAT(s) During sleep mode, both charge and discharge FETs are turned off if the NR bit in Misc Config is cleared. If the bq2084-V140 is in Non-Removable mode where NR=1, then the discharge FET retains its state on entry to sleep. Shutdown Mode The bq2084-V140 goes into shutdown, in which all FETs are turned off and the pack electronics are powered down (including the bq2084-V140), when SBS.Voltage() falls below Shutdown Voltage DF 0x7c-0x7d and Voltage at the Pack pin is less than VPACK threshold (DF 0x131, 0x132) both for 2 consecutive samples (1 to 2 s). Vpack is programmed in units of 0.935 mV/count and has tolerance of ±6%. For example, to set 12 V as Vpack Threshold, the program value should be 12000/0.935 = 12834. When the DSG FET is turned on, the pack voltage is close to the battery voltage even with no charger attached. Therefore, to enter shutdown, the Vpack threshold should be set higher than the shutdown threshold plus the tolerance. The bq2084-V140 can also be instructed to enter Shutdown mode via the ManufacturerAccess() command. When the command is sent to the bq2084-V140, the bq29312 is instructed to enter shutdown mode by the bq2084-V140. This forces the chipset into its lowest power mode. The bq2084-V140 does not issue a shutdown command to the AFE unless the pack voltage is less than the Vpack Threshold. Program the Vpack threshold higher than the SBS.Voltage() when ship command is issued. Exit from this mode is only achieved by application of a charger. After exiting shutdown mode, the bq2084-V140 does not enter the shutdown mode again until the Shutdown Timer (DF 0x133, units are seconds) has expired even if the correct conditions are present. After the Shutdown Timer has expired, the SMBus command or voltage and current conditions enables the bq2084-V140 to enter shutdown mode. Submit Documentation Feedback 25 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Normal Operation SBS.VCELLx( ) Measured SBS.PackVoltage( ) Measured SBS.Voltage( ) calculated SBS.Voltage( ) <= DF.Shutdown Threshold ? No Yes No SBS.Current( ) <= 0? Yes SBS.PackVoltage( ) < DF.Vpack Threshold ? No Yes No Has Time since exit from last Shutdown > DF.Shutdown Timer? Yes bq2084 Enters Shutdown DEFAULTS: Non-Removable Pack DF.ShutdownVoltage = 2.8 V x Number of Series cells; DF.ShutdownTimer = 2 s NOTE: VpackThreshold must be greater than Shutdown voltage + 6%. Removable Pack DF.ShutdownVoltage = 2.8 V x Number of Series cells; DF.ShutdownTimer = 20 s NOTE: VpackThreshold must be greater than Shutdown voltage + 6%. 26 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Figure 3. Shutdown Flow Chart in Normal Operation SBS MAC command 0x05 received No SBS.Current( ) <= 0? Yes No Pack voltage < Vpack threshold ? Yes bq2084 Enters Shutdown Figure 4. Shutdown Flow Chart in SBS MAC Reset Conditions On power up, the entire IC is reset and data is loaded from Data Flash to configure the SBS Data and the battery management solution. On a partial reset (loss of VCC but RBI holds RAM valid), a limited number of locations are taken. These actions are the following: • The AFE registers are rewritten. • PackStatus() EDV2 flag is cleared. • BatteryStatus() DISCHARGING flag is cleared. • The charger and alarm broadcast period is set to 10 seconds between broadcasts. COMMUNICATION The bq2084-V140 includes an SMBus communication port. The SMBus interface is a 2-wire bidirectional protocol using the SMBC (clock) and SMBD (data) pins. The communication lines are isolated from VCC and may be pulled up higher than VCC. Also, the bq2084-V140 does not pull these lines low if VCC to the part is zero. The communication ports allow a host controller, an SMBus compatible device, or other processor to access the memory registers of the bq2084-V140. In this way a system can efficiently monitor and manage the battery. Submit Documentation Feedback 27 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 SMBus The SMBus interface is a command-based protocol. A processor acting as the bus master initiates communication to the bq2084-V140 by generating a start condition. A start condition consists of a high-to-low transition of the SMBD line while the SMBC is high. The processor then sends the bq2084-V140 device address of 0001011 (bits 7-1) plus a R/W bit (bit 0) followed by an SMBus command code. The R/W bit (LSB) and the command code instruct the bq2084-V140 to either store the forthcoming data to a register specified by the SMBus command code or output the data from the specified register. The processor completes the access with a stop condition. A stop condition consists of a low-to-high transition of the SMBD line while the SMBC is high. With SMBus, the most-significant bit (MSB) of a data byte is transmitted first. In some instances, the bq2084-V140 acts as the bus master. This occurs when the bq2084-V140 broadcasts charging requirements and alarm conditions to device addresses 0x12 (SBS Smart Charger) and 0x10 (SBS Host Controller.) SMBus Protocol The bq2084-V140 supports the following SMBus protocols: • Read word • Write word • Block read A processor acting as the bus master uses the three protocols to communicate with the bq2084-V140. The bq2084-V140 acting as the bus master uses the write word protocol. The SMBD and SMBC pins are open drain and require external pullup resistors. A 1-MΩ pulldown resistor in the battery pack on SMBC and SMBD is required to ensure the detection of the SMBus off-state, the performance of automatic offset calibration, and the initiation of the low-power sleep mode when the battery pack is removed. SMBus Packet Error Checking The bq2084-V140 supports packet error checking as a mechanism to confirm proper communication between it and another SMBus device. Packet error checking requires that both the transmitter and receiver calculate a packet error code (PEC) for each communication message. The device that supplies the last byte in the communication message appends the PEC to the message. The receiver compares the transmitted PEC to its PEC result to determine if there is a communication error. PEC Protocol The bq2084-V140 can receive or transmit data with or without PEC. Figure 5 shows the communication protocol for the read word, write word, and read block messages without PEC. Figure 6 includes PEC. In the read word protocol, the bq2084-V140 receives the PEC after the last byte of data from the host. If the host does not support PEC, the last byte of data is followed by a stop condition. After receipt of the PEC, the bq2084-V140 compares the value to its calculation. If the PEC is correct, the bq2084-V140 responds with an ACKNOWLEDGE (ACK). If it is not correct, the bq2084-V140 responds with a NOT ACKNOWLEDGE (NACK) and sets an error code. In the write word and block read, the host generates an ACK after the last byte of data sent by the bq2084-V140. The bq2084-V140 then sends the PEC and the host acting as a master-receiver generates a NACK and a stop condition. 28 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Gas Gauge Figure 5. SMBus Communication Protocol Without PEC Submit Documentation Feedback 29 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Gas Gauge Figure 6. SMBus Communication Protocol With PEC PEC Calculation The basis of the PEC calculation is an 8-bit cyclic redundancy check (CRC-8) based on the polynomial C(X) = X8 + X2 + X1 + 1. The PEC calculation includes all bytes in the transmission, including address, command, and data. The PEC calculation does not include ACKNOWLEDGE, NOT ACKNOWLEDGE, start, stop, and repeated start bits. For example, the host requests RemainingCapacity() from the bq2084-V140. This includes the host following the read word protocol. The bq2084-V140 calculates the PEC based on the following 5 bytes of data, assuming the remaining capacity of the battery is 1001 mAh. • Battery Address with R/W = 0: 0x16 • Command Code for RemainingCapacity(): 0x0f • Battery Address with R/W = 1: 0x17 • RemainingCapacity(): 0x03e9 For 0x160f17e903, the bq2084-V140 transmits a PEC of 0xe8 to the host. PEC Enable in Master Mode The PEC for master mode broadcasts to the charger, host, or both can be enabled/disabled with the combination of the bits HPE and CPE in Pack Configuration DF 0x28. SMBus On- and Off-State The bq2084-V140 detects whether the SMBus enters the Off State by monitoring the SMBC and SMBD lines. When both signals are continually low for at least 2.0 s, the bq2084-V140 detects the Off State. When the SMBC and SMBD lines go high, the bq2084-V140 detects the On State and can begin communication within 1 ms. One-MΩ pulldown resistors on SMBC and SMBD are recommended for reliable Off State detection. 30 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Command Codes The SMBus command codes are in (). Temperature(), Voltage(), Current(), and AverageCurrent(), performance specifications are at bq29312 regulated VCC (V(REG)) and a temperature of -20°C to 85°C. Manufacturer Access() (0x00) Description: This function provides writable command codes to control the bq2084-V140 during normal operation and pack manufacture. Writing the command code to SMB command 0x00 causes the following reads with the SMB command 0x00 to return the word indicated in the table. The following commands are available: COMMAND CODE NAME DESCRIPTION 0x0001 Device Type Returns IC part number so it can be read, i.e., 2084 (0x0824) 0x0002 Firmware Rev Returns firmware version so it can be read 0x0003 EDV Level Returns the pending end-of-discharge voltage level so it can be read 0x0004 Manufacturer Status Returns the battery system status so it can read 0x0005 SHIP Command Instructs the bq2084-V140 to instruct the bq29312 to enter ship mode 0x062b Seal Instructs the bq2084-V140 to restrict access to those functions listed in Table 3. The bq2084-V140 completes the seal function and clears ManufacturerAccess(). The Manufacture Status word is defined as: b15 b14 b13 b12 b11 b10 b9 b8 FET1 FET0 PF1 PF0 STATE3 STATE2 STATE1 STATE0 b7 b6 b5 b4 b3 b2 b1 b0 0 0 0 0 1 0 1 0 FET1, FET0 Indicated the state of the charge and discharge FETs 0,0 Both charge and discharge FETs are on. 0,1 Charge FET is off, discharge FET is on. 1,0 Both charge and discharge FETs are off. 1,1 Charge FET is on, discharge FET is off. PF1, PF0 Indicates permanent failure cause when permanent failure indicated by STATE3-STATE0 0,0 Fuse is blown 0,1 Cell imbalance failure 1,0 Safety voltage failure 1,1 FET failure STATE3, STATE2, STATE1, STATE0 Indicates battery state as defined in the State and Status bit Summary. Purpose: The ManufacturerAccess() function provides the system host access to bq2084-V140 functions that are not defined by the SBD. SMBus protocol: Read or write word Input/Output: Word Submit Documentation Feedback 31 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Table 13. State and Status Bit Summary State wakeup MAC Mode (MSB) 0x00 Wake up CC() CV() CHG FET (1) DSG FET ZVCHG FET FUSE Power Mode 0 0 off (2) on on (3) ok normal on on (4) ok normal precharge 0x03 Precharge PC CV of (2)f chargesusp 0x04 Charge Suspension FC CV off on off ok normal terminatecharge 0x07 Charge Terminate normalcharge 0x05 Charge provisionalcharge normaldischarge 0x01 Normal MC CV off on off ok normal FC (5) CV on on off ok normal 0 0 off on off ok normal FC CV on on off ok normal depleted PC CV off off off ok normal depleted_ac PC CV off off off( (4)) ok normal overheatdischarge FC CV off off off ok normal overheatcharge 0x0e System Present FC CV off off off ok normal battfail_overcharge 0 0 off on off ok normal battfail_lowtemp 0 0 off on off ok normal 0 0 off on off ok normal 0 0 off of (6)f off ok normal FC CV off (6) off off ok normal battfail_chargeterminate battfail_afe_chg battfail_afe_dsg battfail_chg battfail_dsg 0x08 Fault Charge Terminate 0x0c Battery Failure 0x0a Over Current 0 0 off off (6) off ok normal FC CV off (6) off off ok normal FC CV off off off ok normal removed 0x0f Battery Out sleep 0x0d Sleep 0 0 off off(7) off ok low permanent_failure 0x09 Permanent Failure 0 0 off off off blow low (1) (2) (3) (4) (5) (6) CHG FET always on if discharge current greater than Discharge Detection Current (DF 0x115, 0x116) On if FET Config = 01 (Common precharge, charge FET) ZVCHG FET on, OD FET off if FET Config = 00 or 02 (ZVCHG FET or precharge FET) ZVCHG FET on, OD FET off if FET Config = 00 (ZVCHG FET), or ZVCHG FET off, OD FET on if FET Config = 02 (precharge FET) 0 if CVOV or PC is not CVOV and minimum cell voltage is less than the precharge cell voltage threshold If MiscConfig.Nonremoveable Battery is set, then FET is on. RemainingCapacityAlarm() (0x01) Description: Sets or gets the low-capacity threshold value. Whenever the RemainingCapacity() falls below the low-capacity value, the bq2084-V140 sends AlarmWarning() messages to the SMBus host with the REMAINING_CAPACITY_ALARM bit set. A low-capacity value of 0 disables this alarm. The bq2084-V140 initially sets the low-capacity value to Remaining Capacity Alarm value programmed in DF 0x02-0x03. The low-capacity value remains unchanged until altered by the RemainingCapacityAlarm() function. The low-capacity value may be expressed in either current (mA) or power (10 mWh) depending on the setting of the BatteryMode() CAPACITY_MODE bit. Purpose: The RemainingCapacityAlarm() function can be used by systems that know how much power they require to save their operating state. It enables those systems to more finely control the point at which they transition into suspend or hibernate state. The low-capacity value can be read to verify the value in use by the bq2084-V140 low-capacity alarm. SMBus protocol: Read or write word Input/Output: Unsigned integer-value below which Low Capacity messages are sent. BATTERY MODES 32 CAPACITY_MODE BIT = 0 CAPACITY_MODE BIT = 1 Units mAh at C/5 10 mWh at P/5 Range 0-65,535 mAh 0-65,535 10 mWh Granularity Not applicable Accuracy See RemainingCapacity() Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 RemainingTimeAlarm() (0x02) Description: Sets or gets the Remaining Time Alarm value. Whenever the AverageTimeToEmpty() falls below the remaining time value, the bq2084-V140 sends AlarmWarning() messages to the SMBus host with the REMAINING_TIME_ALARM bit set. A remaining time value of 0 effectively disables this alarm. The bq2084-V140 initially sets the remaining time value to the Remaining Time Alarm value programmed in DF 0x00-0x01. The remaining time value remains unchanged until altered by the RemainingTimeAlarm() function. Purpose: The RemainingTimeAlarm() function can be used by systems that want to adjust when the remaining time alarm warning is sent. The remaining time value can be read to verify the value in use by the bq2084-V140 RemainingTimeAlarm(). SMBus protocol: Read or write word Input/Output: Unsigned integer—the point below which remaining time messages are sent. Units: Minutes Range: 0 to 65,535 minutes Granularity: Not applicable Accuracy: See AverageTimeToEmpty(). BatteryMode() (0x03) Description: Selects the various battery operational modes and reports the battery's mode and requests. Defined modes include • Whether the battery capacity information is specified in units of mAh or 10 mWh (CAPACITY_MODE bit) • Whether the ChargingCurrent() and ChargingVoltage() values are broadcast to the smart battery charger when the CHARGER_MODE bit is set. • Whether all broadcasts to the smart battery charger and host are disabled The defined request condition is the battery requesting a conditioning cycle (RELEARN_FLAG). Purpose: The CAPACITY_MODE bit allows power management systems to best match their electrical characteristics with those reported by the battery. For example, a switching power supply represents a constant power load, whereas a linear supply is better represented by a constant current model. The CHARGER_MODE bit allows a SMBus host or smart battery charger to override the smart battery desired charging parameters by disabling the bq2084-V140 broadcasts. The RELEARN_FLAG bit allows the bq2084-V140 to request a conditioning cycle. SMBus protocol: Read or write word Input/Output: Unsigned integer—bit mapped—see Table 14. Units: Not applicable Range: 0-1 Granularity: Not applicable Accuracy: Not applicable The BatteryMode() word is divided into two halves, the MSB (bits 8-15) which is read/write and the LSB (bits 0-7) which is read only. The bq2084-V140 forces bits 0-6 to zero and prohibits writes to bit 7. Table 14 summarizes the meanings of the individual bits in the BatteryMode() word. Specified default values, where applicable, are noted. INTERNAL_CHARGE_CONTROLLER bit is not used by the bq2084-V140. PRIMARY_BATTERY_SUPPORT bit is not used by the bq2084-V140. RELEARN_FLAG bit set indicates that the bq2084-V140 is requesting a capacity relearn cycle for the battery. The bq2084-V140 sets the RELEARN_FLAG on a full reset and if it detects 20-cycle counts without an FCC update. The bq2084-V140 clears this flag after a learning cycle has been completed. CHARGE_CONTROLLER_ENABLED bit is not used by the bq2084-V140. The bq2084-V140 forces this bit to zero. Submit Documentation Feedback 33 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 PRIMARY_BATTERY bit is not used by the bq2084-V140. The bq2084-V140 forces this bit to zero. Table 14. Battery Mode Bits and Values Battery Mode() BITS INTERNAL_CHARGE_CONTROLLER PRIMARY_BATTERY_SUPPORT Reserved BITS USED FORMAT ALLOWABLE VALUES 0 Read only bit flag 1 - always one 1 Read only bit flag 0 - always zero 2-6 0 - always zero RELEARN_FLAG 7 Read only bit flag 0—Battery OK1—Relearn cycle requested CHARGE_CONTROLLER_ENABLED 8 R/W bit flag Not used 9 R/W bit flag Not used PRIMARY_BATTERY Reserved 10-12 0 - always zero ALARM_MODE 13 R/W bit flag 0—Enable alarm broadcast (default)1—Disable alarm broadcast CHARGER_MODE 14 R/W bit flag 0—Enable charging broadcast (default)1—Disable charging broadcast CAPACITY_MODE 15 R/W bit flag 0—Report in mA or mAh (default)1—Report in 10 mW or 10 mWh ALARM_MODE bit is set to disable the bq2084-V140s ability to master the SMBus and send AlarmWarning() messages to the SMBus host and the smart battery charger. When set, the bq2084-V140 does not master the SMBus, and AlarmWarning() messages are not sent to the SMBus host and the smart battery charger for a period of no more than 60s and no less than 59s. When cleared (default), the smart battery sends the AlarmWarning() messages to the SMBus host and the smart battery charger any time an alarm condition is detected. • The ALARM broadcast does not occur more often than once every 10 s. Whenever the BATTERY_MODE command is received, the bq2084-V140 resets the bit and starts or restarts a 60-s (nominal) timer. After the timer expires, the bq2084-V140 automatically enables alarm broadcasts to ensure that the accidental deactivation of broadcasts does not persist. An SMBus host that does not want the bq2084-V140 to be a master on the SMBus must therefore continually set this bit at least once per 59 s to keep the bq2084-V140 from broadcasting alarms. • The ALARM_MODE bit defaults to a cleared state when the bq2084-V140 enters SLEEP mode. • The condition of the ALARM-MODE bit does not affect the operation or state of the CHARGER_MODE bit, which is used to prevent broadcasts of ChargingCurrent() and ChargingVoltage() to the smart battery charger. CHARGER_MODE bit enables or disables the bq2084-V140's transmission of ChargingCurrent() and ChargingVoltage() messages to the smart battery charger. When set, the bq2084-V140 does not transmit ChargingCurrent() and ChargingVoltage() values to the smart battery charger. When cleared, the bq2084-V140 transmits the ChargingCurrent() and ChargingVoltage() values to the smart battery charger. The CHARGER_MODE bit defaults to a cleared state when the bq2084-V140 enters SLEEP mode. CAPACITY_MODE bit indicates if capacity information is reported in mA/mAh or 10 mW/10 mWh. When set, the bq2084-V140 reports capacity information in 10 mW/10 mWh as appropriate. When cleared, the bq2084-V140 reports capacity information in mA/mAh as appropriate. The CAPACITY_MODE bit defaults to a cleared state when the bq2084-V140 enters SLEEP mode. The following functions are changed to accept or return values in mA/mAh or 10 mW/10 mWh depending on the CAPACITY_MODE bit: • RemainingCapacityAlarm() • AtRate() • RemainingCapacity() • FullChargeCapacity() • DesignCapacity() The following functions are calculated on the basis of capacity and may be calculated differently depending on the CAPACITY_MODE bit: • AtRateOK() • AtRateTimeToEmpty() 34 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 • • • • • • AtRateTimeToFull() RunTimeToEmpty() AverageTimeToEmpty() AverageTimeToFull() Remaining Time Alarm() BatteryStatus() The bq2084-V140 updates the non-AtRate related register values immediately after changing the state of the CAPACITY_MODE bit. The AtRate() values are updated after the next AtRate() value is written to the bq2084-V140 (or after the next 1-s scheduled refresh calculation). AtRate() (0x04) Description: The AtRate() function is the first half of a two-function call-set used to set the AtRate value used in calculations made by the AtRateTimeToFull(), AtRateTimeToEmpty(), and AtRateOK() functions. The AtRate value may be expressed in either current (mA) or power (10 mW) depending on the setting of the BatteryMode() CAPACITY_MODE bit. Purpose: Because the AtRate() function is the first half of a two-function call-set, it is followed by the second function of the call-set that calculates and returns a value based on the AtRate value and the battery's present state. • When the AtRate() value is positive, the AtRateTimeToFull() function returns the predicted time to full charge at the AtRate value of charge. • When the AtRate() value is negative, the AtRateTimeToEmpty() function returns the predicted operating time at the AtRate value of discharge. • When the AtRate() value is negative, the AtRateOK() function returns a Boolean value that predicts the battery's ability to supply the AtRate value of additional discharge energy (current or power) for 10 seconds. The default value for AtRate() is zero. SMBus protocol: Read or write word Input/Output: Signed integer-charge or discharge; the AtRate() value is positive for charge, negative for discharge, and zero for neither (default). BATTERY MODES Units Charge range Discharge range Granularity Accuracy CAPACITY_MODE BIT = 0 CAPACITY_MODE BIT = 1 mA 10 mW 1 to 32,767 mA 1 to 32,767 10 mW –1 to –32,768 mA –1 to –32,768 10 mW 1 Unit NA AtRateTimeToFull() (0x05) Description: Returns the predicted remaining time to fully charge the battery at the AtRate() value (mA). Purpose: The AtRateTimeToFull() function is part of a two-function call-set used to determine the predicted remaining charge time at the AtRate value in mA. The bq2084-V140 updates AtRateTimeToFull() within 5 ms after the SMBus host sets the AtRate value. The bq2084-V140 automatically updates AtRateTimeToFull() based on the AtRate() value every 1 s. SMBus protocol: Read word Output: Unsigned integer—predicted time in minutes to fully charge the battery. Units: Minutes Range: 0 to 65,534 min Granularity: 2 min or better Submit Documentation Feedback 35 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Accuracy: ± MaxError() * FullChargeCapacity()/|AtRate()| Invalid Data Indication: 65,535 indicates the AtRate = 0. AtRateTimeToEmpty() (0x06) Description: Returns the predicted remaining operating time if the battery is discharged at the AtRate() value. Purpose: The AtRateTimeToEmpty() function is part of a two-function call-set used to determine the remaining operating time at the AtRate() value. The bq2084-V140 updates AtRateTimeToEmpty() within 5 ms after the SMBus host sets the AtRate() value. The bq2084-V140 automatically updates AtRateTimeToEmpty() based on the AtRate() value every 1 s. SMBus protocol: Read word Output: Unsigned integer—estimated operating time left. Units: Minutes Range: 0 to 65,534 min Granularity: 2 min or better Accuracy: -0, +MaxError() × FullChargeCapacity/|AtRate()| Invalid Data Indication: 65,535 indicates AtRate = 0. AtRateOK() (0x07) Description: Returns a Boolean value that indicates whether or not the battery can deliver the AtRate() value of additional energy for 10 s. If the AtRate value is zero or positive, the AtRateOK() function ALWAYS returns OK (logic 1). Purpose: The AtRateOK() function is part of a two-function call-set used by power management systems to determine if the battery can safely supply enough energy for an additional load. The bq2084-V140 updates AtRateOK() within 5 ms after the SMBus host sets the AtRate() value. The bq2084-V140 automatically updates AtRateOK() based on the At Rate() value every 1 second. SMBus protocol: Read word Output: Boolean—indicates if the battery can supply the additional energy requested. Units: Boolean Range: 1, 0 Granularity: Not applicable Accuracy: Not applicable Temperature() (0x08) Description: Returns the temperature (K) measured by the bq2084-V140. Purpose: The Temperature() function provides accurate cell temperatures for use by battery chargers and thermal management systems. A battery charger can use the temperature as a safety check. Thermal management systems may use the temperature because the battery is one of the largest thermal sources in a system. SMBus protocol: Read word Output: Unsigned integer—cell temperature in tenth-degree Kelvin increments. Units: 0.1°K Range: 0 to +6553.5°K {real range} Granularity: 0.1°K Accuracy: ±1.5°K (from ideal Semitec 103AT thermistor performance, after calibration) 36 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Voltage() (0x09) Description: Returns the cell-pack voltage (mV). Purpose: The Voltage() function provides power management systems with an accurate battery terminal voltage. Power management systems can use this voltage, along with battery current information, to characterize devices they control. This ability helps enable intelligent, adaptive power-management systems. SMBus protocol: Read word Output: Unsigned integer—battery terminal voltage in mV. Units: mV Range: 0 to 20,000 mV Granularity: 1 mV Accuracy: ±0.25% (after calibration) Current() (0x0a) Description: Returns the current being supplied (or accepted) by the battery (mA). Purpose: The Current() function provides a snapshot for the power management system of the current flowing into or out of the battery. This information is of particular use in power-management systems because they can characterize individual devices and tune their operation to actual system power behavior. SMBus protocol: Read word Output: Signed integer—charge/discharge rate in mA increments: positive for charge, negative for discharge. Units: mA Range: -32,768 to 32,767 mA Granularity: 1 mA Accuracy: 0.25% or 5 mA, whichever is greater AverageCurrent() (0x0b) Description: Returns a value that approximates a one-minute rolling average of the current being supplied (or accepted) through the battery terminals (mA). AverageCurrent() is implemented as a single pole IIR filter with a 14.5-s time constant. Purpose: The AverageCurrent() function provides the average current flowing into or out of the battery for the power management system. SMBus protocol: Read word Output: Signed integer—charge/discharge rate in mA increments: positive for charge, negative for discharge. Units: mA Range: -32,768 to 32,767 mA Granularity: 1 mA Accuracy: 0.25% or 5 mA, whichever is greater MaxError() (0x0c) Description: Returns the expected margin of error (%) in the state of charge calculation. For example, when MaxError() returns 10% and RelativeStateOfCharge() returns 50%, the RelativeStateOfCharge() is more likely between 50% and 60%. The bq2084-V140 sets MaxError() to 100% on a full reset. The bq2084-V140 sets MaxError() to 2% on completion of a learning cycle, unless the bq2084-V140 limits the learning cycle to the +512/-256 mAh maximum adjustment values. If the learning cycle is limited, the bq2084-V140 sets MaxError() to 8% unless MaxError() was already below 8%. In this case, MaxError() does not change. The bq2084-V140 increments MaxError( ) by 1% after four increments of CycleCount() without a learning cycle. If voltage-based corrections are applied to the coulomb counter, MaxError() is set to 25%. Submit Documentation Feedback 37 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Purpose: The MaxError() function has real value in two ways: first, to give the user a confidence level about the state of charge and second, to give the power management system information about how aggressive it should be, particularly as the battery nears the end of its life. SMBus protocol: Read word Output: Unsigned integer—percent uncertainty for selected information. Units: % Range: 2-100% Granularity: 1% Accuracy: Not applicable RelativeStateOfCharge() (0x0d) Description: Returns the FullChargeCapacity() (%). predicted remaining battery capacity expressed as a percentage of Purpose: The RelativeStateOfCharge() function is used to estimate the amount of charge remaining in the battery relative to the last learned capacity. SMBus protocol: Read word Output: Unsigned integer-percent of remaining capacity. Units: % Range: 0-100% Granularity: 1% Accuracy: -0, +MaxError() AbsoluteStateOfCharge()(0x0e) Description: Returns the predicted remaining battery capacity expressed as a percentage of DesignCapacity() (%). Note that AbsoluteStateOfCharge() can return values greater than 100%. Purpose: The AbsoluteStateOfCharge() function is used to estimate the amount of charge remaining in the battery relative to the nominal or DesignCapacity(). SMBus protocol: Read word Output: Unsigned integer—percent of remaining capacity. Units: % Range: 0-100+% Granularity: 1% Accuracy: -0, +MaxError() RemainingCapacity() (0x0f) Description: Returns the predicted charge or energy remaining in the battery. The RemainingCapacity() value is expressed in either charge or energy, depending on the setting of the BatteryMode() CAPACITY_MODE bit. Purpose: The RemainingCapacity() function returns the battery's remaining capacity. This information is a numeric indication of remaining charge or energy given by the AbsoluteStateOfCharge() or RelativeStateOfCharge() functions and may be in a better form for use by power management systems. SMBus protocol: Read word Output: Unsigned integer—remaining charge in units of mAh or 10 mWh. 38 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 BATTERY MODES CAPACITY_MODE BIT = 0 CAPACITY_MODE BIT = 1 Units mAh 10 mWh 0-65,535 10 mWh Range 0-65,535 mAh Granularity mAh 10 mWh Accuracy -0, +MaxError() * FullCharageCapacity() FullChargeCapacity() (0x10) Description: Returns the predicted pack capacity when it is fully charged. The FullChargeCapacity() value is expressed in either current (mAh at a C/5 discharge rate) or power (10 mWh at a P/5 discharge rate) depending on the setting of the BatteryMode()CAPACITY_MODE bit. Purpose: The FullChargeCapacity() function provides a means of understanding the tank size of the battery. This information, along with information about the original capacity of the battery, indicates battery wear. SMBus protocol: Read word Output: Unsigned integer—estimated full-charge capacity in units of mAh or 10 mWh. BATTERY MODES CAPACITY_MODE BIT = 0 CAPACITY_MODE BIT = 1 Units mAh 10 mWh Range 0-65,535 mAh 0-65,535 10 mWh Granularity mAh 10 mWh -0, +MaxError() × FullCharageCapacity() Accuracy RunTimeToEmpty() (0x11) Description: Returns the predicted remaining battery life at the present rate of discharge (minutes). TheRunTimeToEmpty() value is calculated based on either current or power depending on the setting of the BatteryMode() CAPACITY_MODE bit. Purpose: The RunTimeToEmpty() provides the power management system with information about the relative gain or loss in remaining battery life in response to a change in power policy. This information is not the same as the AverageTimeToEmpty(), which is not suitable to determine the effects that result from a change in power policy. SMBus protocol: Read word Output: Unsigned integer—minutes of operation left. Units: Minutes Range: 0 to 65,534 min Granularity: 2 min or better Accuracy: -0, +MaxError()×FullChargeCapacity() / Current() Invalid Data Indication: 65,535 indicates battery is not being discharged. AverageTimeToEmpty() (0x12) Description: Returns a predicted remaining battery life (minutes), based on AverageCurrent. The AverageTimeToEmpty() value is calculated based on either current or power depending on the setting of the BatteryMode()CAPACITY_MODE bit. Purpose: The AverageTimeToEmpty() displays state-of-charge information in a more useful way. It averages the instantaneous estimations so that the remaining time does not appear to jump around. SMBus protocol: Read word Output: Unsigned integer—minutes of operation left. Submit Documentation Feedback 39 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Units: Minutes Range: 0 to 65,534 min Granularity: 2 min or better Accuracy: -0, +MaxError() * FullChargeCapacity() / AverageCurrent() Invalid Data Indication: 65,535 indicates battery is not being discharged. AverageTimeToFull() (0x13) Description: Returns a predicted remaining time until the battery reaches full charge (minutes), based on AverageCurrent. Purpose: The AverageTimeToFull() function can be used by the SMBus host's power management system to aid in its policy. It may also be used to find out how long the system must be left on to achieve full charge. SMBus protocol: Read word Output: Unsigned integer—remaining time in minutes. Units: Minutes Range: 0 to 65,534 minutes Granularity: 2 minutes or better Accuracy: -0, +MaxError() * FullChargeCapacity() / AverageCurrent() Invalid Data Indication: 65,535 indicates the battery is not being charged. ChargingCurrent() (0x14) Description: Returns the desired charging rate in mA. Purpose: The ChargingCurrent() function sets the maximum charge current of the battery. TheChargingCurrent() value should be used in combination with the ChargingVoltage() value to set the charger's operating point. Together, these functions permit the bq2084-V140 to dynamically control the charging profile (current/voltage) of the battery. The bq2084-V140 can effectively turn off a charger by returning a value of 0 for this function. The charger may be operated as a constant-voltage source above its maximum regulated current range by returning a ChargingCurrent() value of 65,535. SMBus protocol: Read word Output: Unsigned integer—maximum charger output current in mA. Units: mA Range: 0 to 65,535 mA Granularity: 1 mA Accuracy: Not applicable Invalid Data Indication: 65,535 indicates that a charger should operate as a voltage source outside its maximum regulated current range. ChargingVoltage() (0x15) Description: Returns the desired charging voltage in mV. Purpose: The ChargingVoltage() function sets the maximum charge voltage of the battery. The ChargingVoltage() value should be used in combination with the ChargingCurrent() value to set the charger's operating point. Together, these functions permit the bq2084-V140 to dynamically control the charging profile (current/voltage) of the battery. The charger may be operated as a constant-current source above its maximum regulated voltage range by returning a ChargingVoltage() value of 65,535. SMBus protocol: Read word Output: Unsigned integer—charger output voltage in mV. 40 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Units: mV Range: 0 to 65,535 mV Granularity: 1 mV Accuracy: Not applicable Invalid Data Indication: 65,535 indicates the charger should operate as a current source outside its maximum regulated voltage range. BatteryStatus() (0x16) Description: Returns the bq2084-V140 status word (flags). Some of the BatteryStatus() flags ( and REMAINING_TIME_ALARM) are calculated on the basis of either current or power depending on the setting of the BatteryMode()CAPACITY_MODE bit. This is important because use of the wrong calculation mode may result in an inaccurate alarm. Purpose: The BatteryStatus() function is used by the power management system to get alarm and status bits, as well as error codes from the bq2084-V140. This is basically the same information broadcast to both the SMBus host and the smart battery charger by the AlarmWarning() function except that the AlarmWarning() function sets the error code bits all high before sending the data. SMBus protocol: Read word Output: Unsigned Integer-status register with alarm conditions bit-mapped as follows: ALARM BITS 0x8000 OVER_CHARGED_ALARM 0x4000 TERMINATE_CHARGE_ALARM 0x2000 Reserved 0x1000 OVER_TEMP_ALARM 0x0800 TERMINATE_DISCHARGE_ALARM 0x0400 Reserved 0x0200 REMAINING_CAPACITY_ALARM 0x0100 REMAINING_TIME_ALARM STATUS BITS 0x0080 Initialized 0x0040 DISCHARGING 0x0020 FULLY_CHARGED 0x0010 FULLY_DISCHARGED ERROR CODES 0x0007 Unknown Error 0x0006 BadSize 0x0005 Overflow/Underflow 0x0004 AccessDenied 0x0003 UnsupportedCommand 0x0002 ReservedCommand 0x0001 Busy 0x0000 OK ALARM BITS OVER_CHARGED_ALARM bit is set whenever the bq2084-V140 detects that the battery is being charged beyond the maximum overcharge limit, which is full capacity plus Maximum Overcharge DF 0x51-0x52. This bit is cleared when the bq2084-V140 detects that the battery is no longer being charged and there are 2 mAh of continuous discharge (i.e., the bq2084-V140 detects discharge activity or no activity above the digital filter). Submit Documentation Feedback 41 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 TERMINATE_CHARGE_ALARM bit is set when the bq2084-V140 detects a primary charge termination. This bit is cleared when the bq2084-V140 detects that the battery is no longer being charged. OVER_TEMP_ALARM bit is set when the bq2084-V140 detects that the internal battery temperature is greater than or equal to the OverTemperature Charge threshold while charging or OverTemperature Discharge threshold while discharging. This bit is cleared when the internal temperature falls back below the OverTemperature Charge Reset or OverTemperature Discharge Reset as appropriate. TERMINATE_DISCHARGE_ALARM bit is set when RM = 0, Voltage() = Terminate Voltage DF 0x67-0x68, the battery temperature is less than or equal to the Charge Suspend Temp Low DF 0x79 or the CVUV bit in pack status is set indicating that a Li-ion cell voltage has dropped below the limit programmed in Cell Under. The bit is cleared when Voltage() > Terminate Voltage, RM() > 0, and the CVUV bit is cleared. REMAINING_CAPACITY_ALARM bit is set when the bq2084-V140 detects that RemainingCapacity() is less than that set by the RemainingCapacityAlarm() function. This bit is cleared when either the value set by the RemainingCapacityAlarm() function is lower than the RemainingCapacity() or when the RemainingCapacity() is increased by charging. REMAINING_TIME_ALARM bit is set when the bq2084-V140 detects that the estimated remaining time at the present discharge rate is less than that set by the RemainingTimeAlarm() function. This bit is cleared when either the value set by the RemainingTimeAlarm() function is lower than the AverageTimeToEmpty() or when the AverageTimeToEmpty() is increased by charging. STATUS BITS The initialized bit is set when the bq2084-V140 has detected a valid load of data flash at full or partial reset. It is cleared when the bq2084-V140 detects an improper data flash load. DISCHARGING bit is set when the bq2084-V140 determines that the battery is not being charged. This bit is cleared when the bq2084-V140 detects that the battery is being charged. FULLY_CHARGED bit is set when the bq2084-V140 detects a primary charge termination or an Overcharge condition. It is cleared when RelativeStateOfCharge() is less than the programmed Fully Charged Clear % in DF 0x4a. FULLY_DISCHARGED bit is set when Voltage() or VCELL is less than the EDV2 threshold and Current() < Overload Current or when RelativeStateOfCharge() < Battery Low %. This bit is cleared when RelativeStateOfCharge() is greater than or equal to 20%. ERROR CODES ERROR CODES DESCRIPTION OK The bq2084-V140 processed the function code without detecting any errors. Busy The bq2084-V140 is unable to process the function code at this time. Reserved The bq2084-V140 detected an attempt to read or write to a function code reserved by this version of the specification. The bq2084-V140 detected an attempt to access an unsupported optional manufacturer function code. Unsupported The bq2084-V140 does not support this function code which is defined in this version of the specification. AccessDenied The bq2084-V140 detected an attempt to write to a read-only function code. Overflow/Underflow The bq2084-V140 detected a data overflow or underflow. BadSize The bq2084-V140 detected an attempt to write to a function code with an incorrect data block. UnknownError The bq2084-V140 detected an unidentifiable error. CycleCount()(0x17) Description: Returns the number of cycles the battery has experienced. The mAh value of each count is determined by programming the Cycle Count Threshold value in DF 0x38-0x39. The bq2084-V140 saves the cycle count value to Cycle Count DF 0x0c-0x0d after an update to CycleCount(). Purpose: The CycleCount() function provides a means to determine the battery wear. It may be used to give advance warning that the battery is nearing its end of life. SMBus protocol: Read word 42 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Output: Unsigned integer—count of total charge removed from the battery over its life. Units: cycle Range: 0 to 65,534 cycles; 65,535 indicates battery has experienced 65,535 or more cycles. Granularity: 1 cycle Accuracy: Absolute count DesignCapacity() (0x18) Description: Returns the theoretical or nominal capacity of a new pack. The DesignCapacity() value is expressed in either current (mAh at a C/5 discharge rate) or power, (10 mWh at a P/5 discharge rate) depending on the setting of the BatteryMode()CAPACITY_MODE bit. Purpose: The DesignCapacity() function is used by the SMBus host's power management along with FullChargeCapacity() to determine battery wear. The power management system may present this information to the user and also adjust its power policy as a result. SMBus protocol: Read word Output: Unsigned integer—battery capacity in units of mAh or 10 mWh. BATTERY MODES CAPACITY_MODE BIT = 0 CAPACITY_MODE BIT = 1 Units mAh 10 mWh Range 0-65,535 mAh 0-65,535 10 mWh Granularity Not applicable Not applicable Accuracy Not applicable Not applicable DesignVoltage() (0x19) Description: Returns the theoretical voltage of a new pack (mV). The bq2084-V140 sets DesignVoltage() to the value programmed in Design Voltage DF 0x04-0x05. Purpose: The DesignVoltage() function can be used to give additional information about a particular smart battery expected terminal voltage. SMBus protocol: Read word Output: Unsigned integer—the battery's designed terminal voltage in mV Units: mV Range: 0 to 65,535 mV Granularity: Not applicable Accuracy: Not applicable SpecificationInfo() (0x1a) Description: Returns the version number of the smart battery specification the battery pack supports, as well as voltage and current scaling information in a packed unsigned integer. Power scaling is the product of the voltage scaling times the current scaling. The SpecificationInfo() is packed in the following fashion: (SpecID_H × 0x10 + SpecID_L) + (VScale + IPScale × 0x10) × 0x100. The bq2084-V140 VScale (voltage scaling) and IPScale (current scaling) should always be set to zero. The bq2084-V140 sets SpecificationInfo() to the value programmed in Specification Information DF 0x06-0x07. Purpose: The SpecificationInfo() function is used by the SMBus host's power management system to determine what information the smart battery can provide. SMBus protocol: Read word Output: Unsigned integer—packed specification number and scaling information: Submit Documentation Feedback 43 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 FIELD BITS USED FORMAT ALLOWABLE VALUES SpecID_L 0...3 4-bit binary value 0–15 SpecID_H 4...7 4-bit binary value 0–15 VScale 8...11 4-bit binary value 0 (multiplies voltage by 10^ VScale) IPScale 12...15 4-bit binary value 0 (multiplies current by 10 ^ IPScale) ManufactureDate() (0x1b) Description: This function returns the date the cell pack was manufactured in a packed integer. The date is packed in the following fashion: (year-1980) * 512 + month * 32 + day. The bq2084-V140 sets ManufactureDate() to the value programmed in Manufacture Date DF 0x08-0x09. Purpose: The ManufactureDate() provides the system with information that can be used to uniquely identify a particular battery pack when used along with SerialNumber(). SMBus protocol: Read word Output: Unsigned integer-packed date of manufacture: FIELD BITS USED FORMAT Day 0...4 5-bit binary value 0-31 (corresponds to date) ALLOWABLE VALUES Month 5...8 4-bit binary value 1-12 (corresponds to month number) Year 9...15 7-bit binary value 0-127 (corresponds to year biased by 1980) SerialNumber() (0x1c) Description: This function is used to return a serial number. This number, when combined with the ManufacturerName(), the DeviceName(), and the ManufactureDate(), uniquely identifies the battery (unsigned integer). The bq2084-V140 sets SerialNumber() to the value programmed in Serial Number DF 0x0a-0x0b. Purpose: The SerialNumber() function can be used to identify a particular battery. This may be important in systems that are powered by multiple batteries where the system can log information about each battery that it encounters. SMBus protocol: Read word Output: Unsigned integer ManufacturerName() (0x20) Description: This function returns a character array containing the battery manufacturer's name. For example, MyBattCo identifies the smart battery manufacturer as MyBattCo. The bq2084-V140 sets ManufacturerName() to the value programmed in Manufacturer Name DF 0x0e-0x19. When Misc Configuration 2 SSTRING is set then the extended manufacturer name data flash is appended (0x151-0x15f). Purpose: The ManufacturerName() function returns the name of the smart battery manufacturer. The manufacturer's name can be displayed by the SMBus host's power management system display as both an identifier and as an advertisement for the manufacturer. The name is also useful as part of the information required to uniquely identify a battery. SMBus protocol: Read block Output: String—character string with maximum length of 11 characters (11 + length byte). DeviceName() (0x21) Description: This function returns a character string that contains the battery name. For example, a DeviceName() of bq2084-V140 indicates that the battery is a model bq2084-V140. The bq2084-V140 sets DeviceName() to the value programmed in Device Name DF 0x1a-0x21. When Misc Configuration 2 SSTRING is set then the extended device name data flash is appended (0x141-0x14f) Purpose: The DeviceName() function returns the battery name for identification purposes. SMBus protocol: Read block Output: String—character string with maximum length of 7 characters (7 + length byte). 44 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 DeviceChemistry() (0x22) Description: This function returns a character string that contains the battery chemistry. For example, if the DeviceChemistry() function returns NiMH, the battery pack contains nickel metal hydride cells. The bq2084-V140 sets DeviceChemistry() to the value programmed in Device Chemistry DF 0x22-0x26. Purpose: The DeviceChemistry() function gives cell chemistry information for use by charging systems. The bq2084-V140 does not use DeviceChemisty() values for internal charge control or fuel gauging. SMBus protocol: Read block Output: String—character string with maximum length of 4 characters (4 + length byte). The following is a partial list of chemistries and their expected abbreviations. These abbreviations are not case sensitive. CHEMISTRY ABBREVIATIONS Lead acid PbAc Lithium ion LION Nickel cadmium NiCd Nickel metal hydride NiMH Nickel zinc NiZn Rechargeable alkaline-manganese RAM Zinc air ZnAr The ManufacturerData() (0x23) Description: This function allows access to the manufacturer data contained in the battery (data). The bq2084-V140 stores seven critical operating parameters in this data area. Purpose: The ManufacturerData() function may be used to access the manufacturer's data area. The data fields of this command reflect the programming of eight critical data flash locations and can be used to facilitate evaluation of the bq2084-V140 under various programming sets. The ManufacturerData() function returns the following information in order: Pack Configuration, Gauge Configuration, Misc Configuration (2 bytes), Digital Filter, Self Discharge Rate, Pack Load Estimate, Battery Low%, and Near Full (2 bytes) AFE Status, and the pending EDV threshold voltage (low byte and high byte). SMBus protocol: Read block Output: Block data—data that reflects data flash programming as assigned by the manufacturer with maximum length of 13 characters (13 + length byte). Pack Status and Pack Configuration (0x2f) This function returns the pack status and pack configuration registers. The pack status register contains a number of status bits relating to bq2084-V140 operation. The pack status register is the least significant byte of the word. The pack configuration register reflects how the bq2084-V140 is configured as defined by the value programmed in Pack Configuration in DF 0x28. The pack status register consists of the following bits: b7 PRES b6 EDV2 b5 SS b4 VDQ b3 AFEFAIL b2 PF b1 CVOV b0 CVUV PRES The PRES bit indicates that the bq2084-V140 has been inserted into the system. 0 bq2084-V140 is out of the system 1 bq2084-V140 is inserted into a system Submit Documentation Feedback 45 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 EDV2 The EDV2 bit indicates that pack or cell voltage (program option) is less than the EDV2 threshold. 0 Voltage > EDV2 threshold (discharging) 1 Voltage = EDV2 threshold SS The SS bit indicates the seal state of the bq2084-V140. 0 The bq2084-V140 is in the unsealed state. 1 The bq2084-V140 is in the sealed state. AFEFAIL The AFEFAIL bit indicates that AFE communications has failed. 0 AFE communications are okay. 1 AFE communications have failed. VDQ The VDQ bit indicates if the present discharge cycle is valid for an FCC update. 0 Discharge cycle not valid 1 Discharge cycle valid PF The PF bit indicates that the bq2084-V140 PF Flag has been set. It is cleared only when the PF Flag has been cleared. 0 bq2084-V140 PF Flag = 0x00 1 bq2084-V140 PF Flag = 0x66 CVOV The CVOV bit indicates that a protection limit has been exceeded including Prolonged Overcurrent, Overvoltage, or Overtemperature conditions. The bit is not latched and merely reflects the present fault status. 0 No secondary protection limits exceeded 1 A secondary protection limit exceeded CVUV The CVUV bit indicates that a protection limit has been exceeded including overload or overdischarge conditions. The bit is not latched and merely reflects the present fault status. 0 No secondary protection limits exceeded 1 A secondary protection limit exceeded VCELL4-VCELL1 (0x3c-0x3f) These functions return the calculated individual cell voltages in mV. If NVCELL is set in Misc Configuration 2 then the SMBus commands are changed to 0x38-0x3b). The alternative commands are NACK'ed when not selected. DATA FLASH General The bq2084-V140 accesses the internal data flash during reset and when storing historical data. The data flash stores basic configuration information for use by the bq2084-V140. The data flash must be programmed correctly for proper bq2084-V140 operation. 46 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Memory Map The following table shows the memory map for the data flash. It shows the default programming for the bq2084-V140. The default programming reflects example data for a 3s2p Li-ion battery pack with a 0.02-Ω sense resistor. The data flash must be reprogrammed to meet the requirements of individual applications. DATA FLASH ADDRESS NAME LI-ION EXAMPLE 0x01 Remaining Time Alarm 0x03 Remaining Capacity Alarm 0x04 0x05 0x06 HIGH BYTE LOW BYTE 0x00 0x02 DATA MSB LSB 10 minutes 00 0a 360 mAh 01 68 Design Voltage 14400 mV 38 40 0x07 Specification Information v1.1/PEC 00 31 0x08 0x09 Manufacture Date 1/1/2003=11809 2e 21 0x0a 0x0b Serial Number 1 00 01 0x0c 0x0d Cycle Count 0 00 00 0x0e Manufacturer Name Length 11 0b 0x0f Character 1 T 54 0x10 Character 2 e 45 0x11 Character 3 x 58 0x12 Character 4 a 41 0x13 Character 5 s 53 0x14 Character 6 0x15 Character 7 I 49 0x16 Character 8 n 4e 0x17 Character 9 s 53 0x18 Character 10 t 54 0x19 Character 11 . 2e 0x1a Device Name Length 6 06 0x1b Character 1 b 42 0x1c Character 2 q 51 0x1d Character 3 2 32 0x1e Character 4 0 30 20 0x1f Character 5 8 38 0x20 Character 6 4 34 0x21 Character 7 — 00 0x22 Device Chemistry Length 4 04 0x23 Character 1 L 4c 0x24 Character 2 I 49 0x25 Character 3 O 4f 0x26 Character 4 N 4e 0x27 Manufacturer Data Length 9 09 0x28 Pack Configuration DMODE, 4-LEDs, 4-CELL c3 Gauge Configuration CSYNC, OTVC Misc Configuration OT, VOD 0x2c Digital Filter (Dead Band) 9860 nV 22 0x2d Self-Discharge Rate 0.2% 14 0x2e Electronics Load 0 mA 00 0x2f Battery Low % (MSB) 7.03% 12 0x29 0x2a 0x2b 41 0b 00 0x30 0x31 Near Full 200 mAh 00 c8 0x32 0x33 Design Capacity 7200 mAh 1c 20 0x34 0x35 Reserved 0 00 00 Submit Documentation Feedback 47 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 DATA FLASH ADDRESS LI-ION EXAMPLE DATA HIGH BYTE LOW BYTE MSB LSB 0x36 0x37 Full Charge Capacity 7200 mAh 1c 20 0x38 0x39 Cycle Count Threshold 5200 mAh 14 50 0x3a 0x3b Charging Voltage 16800 mV 41 a0 c4 0x3c 0x3d Precharge Voltage 2500 mV 09 0x3e 0x3f Fast-Charging Current 2500 mA 09 c4 0x40 0x41 Maintenance Charging Current 0 mA 00 00 0x42 0x43 00 64 Precharge Current 100 mA 0x44 Precharge Temperature 9.6°C 60 0x45 Precharge Temperature Hysteresis 3.0°C 1e 0x46 Charge Inhibit Temp Low 0.0°C Charge Inhibit Temp High 50°C 0x49 Fast Charge Termination % 100% ff 0x4a Fully Charged Clear % 95% 5f 0x47 0x48 00 01 f4 0x4b 0x4c Current Taper Threshold 240 mA 00 f0 0x4d 0x4e Current Taper Qual Voltage 300 mV 01 2c Current Taper Window 40s 0x4f 0x50 0x51 28 Reserved 0x52 Maximum Overcharge 0x53 Reserved 0x54 Charge Efficiency 0x55 Reserved 0x56 0x57 0x58 48 NAME 40 300 mAh 01 2c 02 100% ff 64 Reserved 02 Reserved 22 32 0x59 0x5a Reserved 01 ae 0x5b 0x5c Overload Current 5000 mA 13 88 0x5d 0x5e Over Voltage Margin 700 mV 02 bc 0x5f 0x60 Reserved 01 f4 0x61 0x62 Clear Fail Current 256 mA 01 00 0x63 0x64 Cell Over Voltage 4350 mV 10 fe 0x65 0x66 Cell Under Voltage 2300 mV 08 fc 0x67 0x68 Terminate Voltage 11300 mV 2c 24 0x69 0x6a Reserved 00 00 0x6b 0x6c Safety Over Voltage 20000 mV 3a 98 0x6d 0x6e Charge Suspend Temp High 60°C 02 58 0x6f 0x70 Charge Suspend Temp High Reset 55°C 02 26 0x71 0x72 Over Temperature Discharge 70°C 02 bc 0x73 0x74 Over Temperature Discharge Reset 60°C 02 58 0x75 0x76 Safety OverTemperature Charge 75°C 02 ee 0x77 0x78 Safety OverTemperature Discharge 75°C 02 ee 0x79 Charge Suspend Temp Low 0°C 00 0x7a Reserved 0x7b Current Deadband 3 mA 03 Shutdown Voltage 8800 mV 22 60 VOC75 15848 mV 3d e8 0x7c 0x7d 0x7e 0x7f ef 0x80 Reserved bf 0x81 Reserved 56 0x82 Reserved 40 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 DATA FLASH ADDRESS HIGH BYTE LOW BYTE 0x83 0x84 NAME LI-ION EXAMPLE VOC50 15240 mV DATA MSB LSB 3b 88 0x85 Reserved 7f 0x86 Reserved 3d 0x87 0x88 Reserved 0x89 VOC25 27 15024 mV 3a b0 0x8a Reserved 3f 0x8b Reserved 24 0x8c Reserved 0e 0x8d Reserved 14 0x8e Voltage Average Time 1s 0x8f Correction Current Limit 64 mA 01 40 0x90 0x91 Reserved 0b e1 0x92 0x93 Reserved 0b 68 0x95 0x96 EMF/EDV0 3000 mV 0b b8 0x97 0x98 EDV C0 Factor/EDV1 3250 mV 0c b2 0x99 0x9a EDV R0 Factor/EDV2 3400 mV 0d 48 0x9b 0x9c EDV T0 Factor 0 00 00 0x9d 0x9e EDV R1 Factor 0 00 00 0x94 Reserved 19 0x9f EDV TC Factor 0 00 0xa0 EDV C1 Factor 0 00 0xa1 Reserved 08 0xa2 Reserved 9b 0xa3 Reserved c7 0xa4 Reserved 64 0xa5 Reserved 14 0xa6 0xa7 Reserved 02 00 0xa8 0xa9 Reserved 01 00 0xaa Reserved 0xab Reserved 0xac Learning Low Temp 0xad Reserved 08 02 11.9°C 77 0a 0xae 0xaf Reserved 01 80 0xb0 0xb1 Reserved 01 00 0xb2 Reserved 08 0xb3 Reserved 18 0xb4 Reserved 14 0xb5 0xb6 TS Const 1 91 83 0xb7 0xb8 TS Const 2 51 70 0xb9 0xba TS Const 3 e2 8f 0xbb 0xbc TS Const 4 0f ac 0xbd 0xbe TS Const 5 00 00 0xbf 0xc0 Reserved 0f ac 0xc1 Reserved 02 0xc2 AFE State Control 00 0xc3 AFE Function Control 00 0xc4 AFE Cell Select 00 Submit Documentation Feedback 49 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 DATA FLASH ADDRESS NAME LI-ION EXAMPLE 0xc5 AFE Overload 140 mV 0xc6 AFE Overload Delay 31 ms 0xc7 AFE Short Circuit Charge HIGH BYTE LOW BYTE 0xc8 AFE Vref* 0xcb 0xcc Sense Resistor Gain* 0xcd 0xce CC Delta* (1) 0xcf 0xd0 CC Delta* (1) 0f 17 17 9750 mV 26 16 0.02 & 3b d0 0.0000323 mAh 92 0a 16 00 0xd3 CC Offset* fa (2) 49701 c2 25 0xd4 DSC Offset* (2) 38 26 0xd5 ADC Offset* (2) 38 26 0 00 Temperature Offset* (1) 0xd7 Board Offset* (1) 0 00 0xd8 0xd9 Reserved 00 40 0xda 0xdb Reserved 01 00 0xdc 0xdd Reserved 0xde 0xdf Version 05 1.0 Reserved 01 00 00 32 0xe0 0xe1 Cell Over Voltage Reset 4150 mV 10 36 0xe2 0xe3 Cell Under Voltage Reset 3000 mV 0b b8 0xe4 0xe5 AFE Fail Limit 2 counts 00 02 0xe6 0xe7 Reserved ff ff 0xe8 0xe9 Cell Balance Thresh 3900 mV 0f 3c 0xea 0xeb Cell Balance Window 100 mV 00 64 Cell Balance Min 40 mV Cell Balance Interval 20 s 0xec 0xed 50 (1) LSB 12 Reserved 0xd6 (2) (1) 0xca 0xd1 (1) MSB AFE Short Circuit Discharge 0xc9 0xd2 DATA 28 14 0xee 0xef Cell Imbalance Threshold 01 f4 0xf0 0xf1 Balance Vcell Max 10 36 0xf2 0xf3 Balance Imax 00 9e 0xf4 0xf5 Reserved a5 5a 0xf6 0xf7 Reserved 7a 43 0xf8 0xf9 Reserved 20 83 0xfa Battery Low (LSB) 7.03 % 12 0xfb AFE Check Time 0s 00 0xfc Sleep Current Thresh 2 mA 04 0xfd Sleep Current Multiplier 5 counts 05 0xfe Sleep Time 20 s 14 0xff 0x100 Manufacturer Info 1 00 00 0x101 0x102 Manufacturer Info 2 00 00 0x103 0x104 Manufacturer Info 3 00 00 0x105 0x106 Vmax Charge Voltage 4280 mv 10 b8 0x107 0x108 Voff Charge Voltage 4280 mv 10 b8 0x109 0x10a Von Charge Voltage 4200 mv 10 68 Reserved locations must be set as shown. Locations marked with an * are typical calibration values that can be adjusted for maximum accuracy. For these locations, the table shows the appropriate default or initial setting. Reserved locations must be set as shown. Locations marked with an * are typical calibration values that can be adjusted for maximum accuracy. For these locations, the table shows the appropriate default or initial setting. Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 DATA FLASH ADDRESS NAME LI-ION EXAMPLE DATA HIGH BYTE LOW BYTE MSB LSB 0x10b 0x10c Pulse Max On Time 60 s 01 e0 0x10d 0x10e Pulse Min Off Time 0.125 s 00 01 0x10f 0x110 Max Charge Time 7200 s 1c 20 0x111 0x112 Precharge Detection Current 10 mA 00 0a 0x113 0x114 Charge Detection Current 100 mA 00 64 0x115 0x116 Discharge Detection Current -150 mA ff 6a 0x117 0x118 Reserved 10 68 0x119 0x11a Reserved 10 36 0x11b 0x11c Reserved 00 0x11d Permanent Fail Status 0 00 0x11e Permanent Fail Flag 0 00 0x11f Permanent Fail Config 0 00 0x120 Permanent Fail Input Time 0 00 0x121 0x122 Reserved 17 12 0x123 0x124 Reserved 26 73 0x125 0x126 FET Fail Charge Current 20 mA 00 20 0x127 0x128 FET Fail Discharge Current -20 mA ff FET Fail Time 20 s 0x12b Charge OC Threshold 4000 mA Charge OC Time 6s 0x12e Discharge OC Threshold 10970 mA 0x12f Discharge OC Time 10 s 00 0x130 Fault Reset Time 30 s 1e 0x129 0x12a 0x12c 0x12d 0x131 0x132 VPACK Threshold ec 14 0f a0 06 2a 07 da d0 0x133 Shutdown Timer 20 s 14 0x134 Cell Imbalance Time 20 s 14 0x135 0x136 0x137 0x138 0x139 Reserved EDV0 3000mV 0b Misc Configuration 2 b8 00 0x13a 13b Reserved ff ff 0x13c 13d Reserved ff ff 0x13e 13f Reserved ff 0x140 0x141 Aux Device Name Length 0x14f 0x150 0x151 Aux Device Name Aux Manufacturer Name Length 0x15f 0 bytes 00 0 bytes Aux Manufacturer Name ff 00 00 00 00 00 0x160 AFE Recovery 3s 03 0x161 AFE Holdoff 30s 1e 0x162 Over Temperature Time 10s 0a 0x163 0x165 0x164 Reserved Reserved Submit Documentation Feedback 00 0a 0a 51 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 ADDITIONAL PROGRAMMING INFORMATION ADDITIONAL DATA FLASH PROGRAMMING The following sections describe the function of each data flash location and how the data is to be stored. Fundamental Parameters Sense Resistor Value The 32-bit CC Delta DF 0xcd-0xd0 corrects the coulomb counter for sense resistor variations. It represents the gain factor for the coulomb counter. The 16-bit Sense Resistor Gain in DF 0xcb-0xcc scales each integrating converter conversion to mAh. The Current() related measurement Sense Resistor Gain is based on the resistance of the series sense resistor. The following formula computes a nominal or starting value for Sense Resistor Gain from the sense resistor value (in Ω). Sense Resistor Gain = 306.25/Rs RSNS Value (mΩ) Sense Resistor Gain 5 61250 10 30625 20 15312 CC offset CC offset DF 0xd2-0xd3, contains the offset for the coulomb counter. It is automatically updated when the pack has met the conditions for sleep, before it enters sleep mode. DSC offset DSC offset DF 0xd4, contains the offset for the pack ground reference. It is automatically updated when the pack has met the conditions for sleep, before it enters sleep mode. ADC offset ADC offset DF 0xd5, contains the offset for the a/d converter. It is automatically updated when the pack has met the conditions for sleep, before it enters sleep mode. Digital Filter The desired digital filter threshold, VDF (V), is set by the value stored in Digital Filter DF 0x2c. Digital Filter = VDF / 290 nV CELL AND PACK CHARACTERISTICS Battery Pack Capacity and Voltage Pack capacity in mAh units is stored in Design Capacity, DF 0x32-0x33. In mAh mode, the bq2084-V140 copies Design Capacity to DesignCapacity(). In mWh mode, the bq2084-V140 multiplies Design Capacity by Design Voltage DF 0x04-0x05 to calculate DesignCapacity() scaled to 10 mWh. Design Voltage is stored in mV. The initial value for Full Charge Capacity, in mAh, is stored in DF 0x36-0x37. Full Charge Capacity is modified over the course of pack usage to reflect cell aging under the particular use conditions. The bq2084-V140 updates Full Charge Capacity in mAh after a capacity learning cycle. Remaining Time Alarm and Capacity Alarm Remaining Time Alarm in DF 0x02-0x03 set the alarm thresholds used in the SMBus command codes 0x01 and 0x02, respectively. Remaining Time Alarm is stored in minutes and Remaining Capacity Alarm in units of mAh or 10 mWh, depending on the BatteryMode() setting. 52 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Cycle Count Initialization Cycle Count DF 0x0c-0x0d stores the initial value for the CycleCount() function. It should be programmed to 0x0000. Cycle Count Threshold Cycle Count Threshold 0x37-0x38 sets the number of mAh that must be removed from the battery to increment CycleCount(). Cycle Count threshold is a 16-bit value stored in mAh. Charge Efficiency The bq2084-V140 applies the efficiency factor, EFF%, to all charge added to the battery. EFF% is encoded in Charge Efficiency DF 0x54 according to the following equation: Charge Efficiency = (EFF% w 2.56-1) PACK OPTIONS Pack Configuration Pack Configuration DF 0x28 contains bit-programmable features. b7 b6 b5 b4 b3 b2 b1 b0 DMODE LED1 LED0 HPE CPE SM CC1 CC0 DMODE The DMODE bit determines whether the LED outputs indicate AbsoluteStateOfCharge() or RelativeStateOfCharge(). 0 LEDs reflect AbsoluteStateOfCharge() 1 LEDs reflect RelativeStateOfCharge() LED1–LED0 The LED bits set the number of LEDs for Remaining Capacity () indication. 0-0 Configures the bq2084-V140 for five LEDs 0-1 Configures the bq2084-V140 for three LEDs 1-0 Configures the bq2084-V140 for four LEDs 1-1 Configures the bq2084-V140 for five LEDs HPE The HPE bit enables/disables PEC transmissions to the smart battery host for master mode alarm messages. 0 No PEC byte on alarm warning to host 1 PEC byte on alarm warning to host CPE The CPE bit enables/disables PEC transmissions to the smart battery charger for master mode messages. 0 No PEC byte on broadcasts to charger 1 PEC byte on broadcasts to charger SM The SM bit enables/disables master mode broadcasts by the bq2084-V140. 0 Broadcasts to host and charger enabled 1 Broadcasts to host and charger disabled If the SM bit is set, modifications to bits in BatteryMode() do not re-enable broadcasts. Submit Documentation Feedback 53 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 CC1–CC0 The CC bits configure the bq2084-V140 for the number of series cells in the battery pack. 1-1 Configures the bq2084-V140 for four series cells 1-0 Configures the bq2084-V140 for three series cells 0-1 Configures the bq2084-V140 for two series cells Gauge Configuration Gauge Configuration DF 0x29 contains bit-programmable features: b7 b6 b5 b4 b3 b2 b1 b0 FEDV0 CSYNC SC CEDV EDVV OVSEL VCOR OTVC FEDV0 When this bit is set, the EDV0 voltage is fixed while the EDV1 and EDV2 are left as compensated values if CEDV is also set. When this bit is set, the compensated values of EDV1 and EDV2 are limited from going below EDV0. 0 EDV0 acted upon per CEDV bit setting 1 EDV0 fixed regardless of CEDV setting CSYNC In usual operation of the bq2084-V140, the CSYNC bit is set so that the coulomb counter is adjusted when a fast charge termination is detected. In some applications, especially those where an externally controlled charger is used, it may be desirable not to adjust the coulomb counter. In these cases the CSYNC bit should be cleared. 0 The bq2084-V140 does not alter RM at the time of a valid charge termination. 1 The bq2084-V140 updates RM with a programmed percentage of FCC at a valid charger termination. SC The SC bit enables learning cycle optimization for a Smart Charger or independent charge. 1 Learning cycle optimized for independent charger 0 Learning cycle optimized for Smart Charger CEDV The CEDV bit determines whether the bq2084-V140 implements automatic EDV compensation to calculate the EDV0, EDV1, and EDV2 thresholds base on rate, temperature, and capacity. If the bit is cleared, the bq2084-V140 uses the fixed values programmed in data flash for EDV0, EDV1, and EDV2. If the bit is set, the bq2084-V140 calculates EDV0, EDV1, and EDV2. 0 EDV compensation disabled 1 EDV compensation enabled EDVV The EDVV bit selects whether EDV termination is to be done with regard to Voltage () or the lowest single-cell voltage. 0 EDV conditions determined on the basis of the lowest single-cell voltage 1 EDV conditions determined on the basis of Voltage() OVSEL The OVSEL bit determines if Safety Over Voltage is based on Voltage () or highest cell voltages. 0 54 Safety overvoltage based on Voltage () Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 1 Safety overvoltage based on highest cell voltage multiplied by the number of cells and then compared to the safety voltage. VCOR The VCOR bit enables the midrange voltage correction algorithm. When it is set, the bq2084-V140 compares the pack voltage to RM and may adjust RM according to the values programmed in VOC25, VOC50, and VOC75. 0 Continuous midrange corrections disabled 1 Continuous midrange corrections enabled OTVC The OTVC bit programs the bq2084-V140 to perform a midrange voltage one time after a device reset 0 One-time midrange correction disabled 1 One-time midrange correction enabled Miscellaneous Configuration Misc Configuration DF 0x2a (high) and 0x2b (low) contains additional bit programmable features. Misc Configuration (high) DF 0x2a b15 b14 b13 b12 b11 b10 b9 b8 IT 0 AFEDET DS OT ECLED 1 VOD IT The IT bit configures the bq2084-V140 to use its internal temperature sensor. The DF constants 0xb5-0xc0 need to match the required thermistor on internal temperature sensor. See the Data Flash Settings for Internal or External Temperature Sensor Table. 0 bq2084-V140 requires an external thermistor. 1 bq2084-V140 uses its internal temperature sensor. AFEDET The AFEDET bit programs the bq2084-V140 to look for errors with I2C communications and the AFE and enables the detection of the AFE permanent failure if bit 3 of PF Config 0x11f is set. 0 Does not verify AFE communications. 1 Does verify AFE communications. DS The DS bit programs the bq2084-V140 to enter sleep mode on SMBus inactivity. 0 bq2084-V140 enters sleep mode when the SMBus is low for 2 s. 1 bq2084-V140 does not enter sleep mode. OT The OT bit enables the bq2084-V140 to turn off the FETs when the bq2084-V140 detects an overtemperature condition. 1 bq2084-V140 turns the appropriate FET off under over temperature conditions 0 bq2084-V140 takes no FET action at all on over temperature conditions ECLED The ECLED bit programs the LED activity during charging (DSG bit = 0). 0 The LEDs are not enabled during charging. 1 The LEDs are enabled during charging. Submit Documentation Feedback 55 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 VOD The VOD bit enables a 1-s time delay in the setting of the CVOV and CVUV bits in PackStatus. 0 No delay 1 1-s delay Misc Configuration (low) DF 0x2b b7 LEDRCA b6 PFET1 b5 PFET0 b4 NR b3 CHGFET b2 0 b1 0 b0 DSGOT LEDRCA The LEDRCA bit programs the LED to blink when there is a RemainingCapacityAlarm. 0 The LEDs blink when there is a RemainingCapacityAlarm. 1 The LEDs are off when there is a RemainingCapacityAlarm. PFET1, PFET0 The PFETx bits define the precharge FET operation. See the bq29312 data sheet for more detail. 0,0 The bq29312 ZVCHG FET is turned on for precharge. Assumes charger has precharge function. 0,1 The charge FET is turned on for precharge. Assumes charger has precharge function. 1,0 The bq29312 OD FET is turned on for precharge. Assumes charger does not have precharge function. 1,1 Not defined, unpredictable operation NR The NR bit defines whether the bq2084-V140 is to be used with a nonremovable system battery. If set to indicate a nonremovable system battery there are additional clear conditions for a battery failure due to overcharge, overcurrent, and overload. The additional conditions besides battery removal (defined as the loss system present pin going high) are either detection of an opposite current of that caused the failure or when AverageCurrent() is less than Clear Fail Current DF 0x61, 0x62 for a time defined by Fault Reset Time DF 0x130. Also, for a nonremovable battery the charge FET is left on for discharge current failures and the discharge FET is left on for charge current failures. 0 Removable battery, battery fail conditions cleared by battery removal only. 1 Nonremovable system battery. CHGFET The CHGFET bit programs the charge FET to remain on even after a charge terminate condition. 0 The charge FET is turned off after a charge termination condition. 1 The charge FET is turned on after a charge termination condition. DSGOT When this bit is set, it allows the DSG FET to remain on after overtemperature in charge conditions 0 bq2084-V140 turns both FETs off during an overtemperature in charge 1 bq2084-V140 only turns off the CHG FET during overtemperature in charge Misc Configuration 2 (low byte) (0x139) b7 0 b6 0 b5 SSTRING b4 NVCELL b3 CCDSG b2 SOCL b1 CVFC b0 DEPFET SSTRING When this bit is set, it enables an additional 15 characters of storage for both SBS.ManufacturerName( ) and SBS.DeviceName( ). (Storage is in separate area of data flash) 0 56 ManufacturerName( ) and DeviceName( ) strings are 11 and 7 characters respectively Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 1 ManufacturerName( ) and DeviceName( ) strings are 26 and 22 characters respectively NVCELL When this bit is set, it forces SBS.VCELL1..4( ) to be accessible via alternative commands. 0 SBS.VCELL1..4( ) available via 0x3c-0x3f 1 SBS.VCELL1..4( ) available via 0x38-0x3b CCDSG When this bit is set, it forces SBS.ChargingCurrent( ) to be reported as 0 when SBS.BatteryStatus( ) DISCHARGING is also set. 0 SBS.ChargingCurrent( ) is not modified just because SBS.BatteryStatus( ) DISCHARGING is set. 1 SBS.ChargingCurrent( ) is set to 0 when SBS.BatteryStatus( ) DISCHARGING is set. SOCL When this bit is set, it limits both RSOC and ASOC to 99% until a valid charge termination is detected. 0 RSOC and ASOC are not limited. 1 RSOC and ASOC are limited to 99% until charge termination. CVFC When this bit is set, it causes SBS.ChargingVoltage( ) to be set to 0 when SBS.BatteryStatus( ) FC = 1. 0 SBS.ChargingVoltage( ) is not modified 1 SBS.ChargingVoltage( ) is set to 0 when FC = 1 DEPFET When this bit is set, it enables the CHG FET to be turned on when in depleted mode and when the lowest cell voltage reading is greater than the precharge voltage threshold 0 No FET action taken 1 CHG FET turned on Constants and String Data Specification Information Specification Information DF 0x06-0x07 stores the default value for the SpecificationInfo() function. It is stored in data flash in the same format as the data returned by the SpecificationInfo(). Manufacture Date Manufacture Date DF 0x08-0x09 stores the default value for the ManufactureDate() function. It is stored in data flash in the same format as the data returned by the ManufactureDate(). Serial Number Serial Number DF 0x0a-0x0b stores the default value for the SerialNumber() function. It is stored in data flash in the same format as the data returned by the SerialNumber(). Manufacturer Name Data Manufacturer Name Length DF 0x0e stores the length of the desired string that is returned by the ManufacturerName() function. Locations DF 0x0f-0x19 store the characters for ManufacturerName() in ASCII code. Device Name Data Device Name Length DF 0x1a stores the length of the desired string that is returned by the DeviceName() function. Locations DF 0x1b-0x21 store the characters for DeviceName() in ASCII code. Submit Documentation Feedback 57 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Device Chemistry Data Device Chemistry Length DF 0x22 stores the length of the desired string that is returned by the DeviceChemistry() function. Locations DF 0x23-0x26 store the characters for DeviceChemistry() in ASCII code. Manufacturers Data Length Manufacturers Data Length DF 0x27 stores the length of the desired number of bytes that is returned by the ManufacturersData() function. It should be set to 9. Temperature Limits The limits described below are extensions to those limits detailed in the safety and charging sections of this data sheet. Charge Suspend Temp Low Charge Suspend Temp Low DF 0x79 sets the lowest temperature, in degrees C/10, at which normal operation is allowed. If the temperature falls below this limit, the pack goes into a temporary failure state, the charge FET is turned off, and the MAC status is set to system present. It is cleared when the pack warms, or the pack is removed. Charge Inhibit Temp Low Charge Inhibit Temp Low DF 0x46 inhibits charging by setting ChargingCurrent() and ChargingVoltage() to 0 and turn off the CHG FET. It is programmed in degrees C/10 and the range of -12.8°C to 12.7°C. Charge Inhibit Temp High Charge Inhibit Temp High DF 0x47 - 0x48 inhibits charging by setting ChargingCurrent() and ChargingVoltage() to 0 Charge Suspend Temp High Charge Suspend Temp High DF 0x6d-0x6e sets the highest temperature, in degrees C/10, at which charging will be allowed to continue. If this temperature is exceeded during charging, the pack goes into a temporary failure state, and the MAC status is set to system present. It is cleared when the pack cools below OverTemperature Charge Reset, or ac adapter is removed, or the pack is removed. Charging can only resume when the temperature returns to within the charge start temperature limits. Charge Suspend Temp High Reset Charge Suspend Temp High Reset DF 0x6f-0x70 sets the temperature, in degrees C/10, at which the pack recovers from Charge Suspend Temp High fault. Over Temperature Discharge Over Temperature Discharge DF 0x71-0x72 sets the highest temperature, in degrees C/10, at which discharging will be allowed. If the pack exceeds this temperature, charge and discharge FETs are turned off, and MAC status is set to system present. The pack returns to normal operation when the temperature falls below Over Temperature Discharge Reset, or if the pack is removed. Over Temperature Discharge Reset Over Temperature Discharge Reset DF 0x73-0x74 sets the temperature, in degrees C/10, at which the pack will recover from Over Temperature Discharge Over temperature will also reset when the pack is removed from the system if not in the non-removable mode. Failure Detection Thresholds Safety OverTemperature Charge Safety OverTemperature Charge DF 0x75-0x76 sets the temperature, in degrees C/10, above which, during charging, the pack enters permanent failure, if the XSOTC bit in Permanent Failure Configuration is set. 58 Submit Documentation Feedback bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 Safety OverTemperature Discharge Safety OverTemperature Discharge DF 0x77-0x78 sets the temperature, in degrees C/10, above which, during discharging, the pack enters permanent failure, if the XSOTD bit in Permanent Failure Configuration is set. Charge Detection Current Charge Detection Current DF 0x113-0x114 sets the threshold in milliamperes for detecting charge current. This is a signed value and is positive. This threshold is used for detecting cross-conduction, and ensuring that charge termination is not improperly detected due to loss of charging current. Discharge Detection Current Discharge Detection Current DF 0x115-0x116 sets the threshold in milliamperes for detecting discharge current. This is a signed value and is negative. This threshold is used for detecting cross-conduction and determining that the charge FET should be turned on during discharge to reduce IR losses. FET Fail Charge Current FET Fail Charge Current DF 0x125-0x126 sets the threshold in milliamperes for detecting current in a charge FET which is turned off. This is a signed value and is positive. FET Fail Discharge Current FET Fail Discharge Current DF 0x127-0x128 sets the threshold in milliamperes for detecting current in a discharge FET which is turned off. This is a signed value and is negative. FET Fail Time FET Fail Time DF 0x129 sets the time in seconds that current must be detected in a FET which is turned off, in order to determine that the FET has failed. Terminate Voltage Terminate Voltage DF 0x67-0x68, sets the threshold below which the Terminate Discharge Alarm bit is set. The alarm is cleared when the voltage rises above this threshold, if the CVUV bit in Pack Status is not set. Offsets and Limits Temperature offset Temperature offset DF 0xd6, contains a signed offset for the pack's temperature measurements, in degrees C/10. It is set at board test during pack calibration. Board offset Board offset DF 0xd7, contains a signed offset for the pack's coulomb counter measurements. If used, it is set at board design time. Current Deadband Current Deadband DF 0x7b, sets the threshold in mA below which a current measurement is not detected. Shutdown Voltage Shutdown Voltage DF 0x7c-0x7d sets the pack voltage below which the pack's electronics, including the bq2084-V140, is shut down to conserve power. All FETs are turned off by the AFE. Submit Documentation Feedback 59 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 APPLICATION INFORMATION Figure 7 shows a typical bq2084-V140-based battery pack application. The circuit consists of the bq29312 AFE IC, bq29400 second-level protection IC, LED, temperature measurement network, data flash connections, serial port, and the sense resistor. The data flash stores basic battery pack configuration information and measurement calibration values. The data flash must be programmed properly for bq2084-V140 operation. 60 Submit Documentation Feedback BAT2P X3 Submit Documentation Feedback 1 2 3 BATIN X5 1 1 R2 100 R8 100 1 k 0.1 µ F R7 R9 100 C7 C6 1k R6 C5 0.1 µ F C4 0.1 µ F R10 100 0.1 µ F 1 2 3 4 R11 100 8 7 6 5 D1 2N7002 3 Q1 1 R43 2 JP1 3 Q3 BAT54LT1 D3 100 k R12 100 k R45 VCC R14 5k R13 5k R17 R18 1M 5k 2 F1 6A 321 0.47 µ F D4 BAT54LT1 4 300 1W R22 100 k 4 C21 0.47µ F R44 100 k R42 VCC 8 7 65 R16 100 R15 100 2 0.1 µ F C16 0.1µ F C19 0.1 µ F C18 0.1 µ F 1 1 21 2 20 R21 61.9 k VCC DSG ZVCHG CHG 1 BAT 22 PACK RT1 19 SLEEP C17 4.7µ F REG 18 10 k 3 TOUT 17 VC1 24 R19 1 OD 4 VC2 U2 8.45 k SCLK 13 5 VC3 bq29312 SDATA 14 6 VC4 XALERT 16 7 VC5 WDI 10 R20 100 23 PMS CELL 11 SR1 SR2 GND GND 8 9 15 12 C20 2 100 k C12 0.1 µ F 2N7002 3 Q2 1 BAV99 D2 BAV99 BSS84 U1 bq29400 VC1 OUT VC2 VDD VC3 CD GND VC4 C1 C2 C8 C9 C10 C11 0.1 µ F 0.1 µ F 0.1 µ F 0.1µ F 0.1 µ F 1 µ F 50 V .020 75 PPM BAT1P X4 4 BAT3P X2 R1 BAT4P X1 1k R5 R4 100 1k R3 0.1 µ F C3 1 8 7 65 Q5 Si4435DY 321 C14 0.1µ F Q4 Si4435DY 1M R23 C22 R24 4 Q6 Si4435DY 1M R27 10 R28 3 SW1 0.1 µ F 100 4 2 3 1 100 k R35 VCC D6 4 D7 R37 R39 100 100 1 GREEN 2 1 PACK− C29 150 pF C30 2200 pF GREEN 2 1 D9 SMBD SMBC Sys Pres R46 R47 1M 1M 100 D11 AZ23C5V6 R41 R40 AZ23C5V6 D10 61.9 k D8 R36 100 100 R38 GREEN 2 1 GREEN 2 1 470 470 470 470 470 100 k 1 GREEN 2 D5 VCC R30 R31 R32 R33 R34 C28 68 PF C27 0.47µ F R25 8 31 VDDD VDDA 11 VSSD 30 VSSA 19 VSSD VSSA 29 38 VSSD 3 OC 18 PFIN VSSA/XCK1 34 12 33 ROSC/XCK2 SAFE 37 NC 15 SMBC 2 TS 16 SMBD U3 6 SCLK bq2084 32 10 SDATA FLT 36 NC NC 7 25 EVENT LED5 20 35 CLKOUT LED4 21 1 LED3 22 VIN 5 k 4 PU LED2 23 5 PRES LED1 24 28 SR1 NC 14 27 SR2 MRST RBI NC DISP 26 9 13 17 R29 C26 C25 68 PF VCC C24 0.47µ F 0.047 µ F 8 765 C13 321 0.1µ F X10 X9 X8 X7 bq2084-V140 www.ti.com SLUS664B – JULY 2005 – REVISED AUGUST 2006 APPLICATION INFORMATION (continued) Figure 7. bq2084-V140 Based Battery Pack Schematic 61 PACKAGE OPTION ADDENDUM www.ti.com 21-Jun-2013 PACKAGING INFORMATION Orderable Device Status (1) Package Type Package Pins Package Drawing Qty Eco Plan Lead/Ball Finish (2) MSL Peak Temp Op Temp (°C) Device Marking (3) (4/5) BQ2084DBTR-V140 OBSOLETE TSSOP DBT 38 TBD Call TI Call TI -20 to 70 BQ2084DBTR-V140G4 OBSOLETE TSSOP DBT 38 TBD Call TI Call TI -20 to 70 BQ2084RTTT-V140 OBSOLETE VQFN RTT 36 TBD Call TI Call TI -20 to 85 BQ2084RTTT-V140G4 OBSOLETE VQFN RTT 36 TBD Call TI Call TI -20 to 85 2084DBT BQ2084 (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. (4) There may be additional marking, which relates to the logo, the lot trace code information, or the environmental category on the device. (5) Multiple Device Markings will be inside parentheses. Only one Device Marking contained in parentheses and separated by a "~" will appear on a device. If a line is indented then it is a continuation of the previous line and the two combined represent the entire Device Marking for that device. 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 Samples IMPORTANT NOTICE Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, enhancements, improvements and other changes to its semiconductor products and services per JESD46, latest issue, and to discontinue any product or service per JESD48, latest issue. Buyers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All semiconductor products (also referred to herein as “components”) are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment. TI warrants performance of its components to the specifications applicable at the time of sale, in accordance with the warranty in TI’s terms and conditions of sale of semiconductor products. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by applicable law, testing of all parameters of each component is not necessarily performed. TI assumes no liability for applications assistance or the design of Buyers’ products. Buyers are responsible for their products and applications using TI components. To minimize the risks associated with Buyers’ products and applications, Buyers should provide adequate design and operating safeguards. TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right relating to any combination, machine, or process in which TI components or services are used. Information published by TI regarding third-party products or services does not constitute a license to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI. Reproduction of significant portions of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions. Resale of TI components or services with statements different from or beyond the parameters stated by TI for that component or service voids all express and any implied warranties for the associated TI component or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. Buyer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements concerning its products, and any use of TI components in its applications, notwithstanding any applications-related information or support that may be provided by TI. Buyer represents and agrees that it has all the necessary expertise to create and implement safeguards which anticipate dangerous consequences of failures, monitor failures and their consequences, lessen the likelihood of failures that might cause harm and take appropriate remedial actions. Buyer will fully indemnify TI and its representatives against any damages arising out of the use of any TI components in safety-critical applications. In some cases, TI components may be promoted specifically to facilitate safety-related applications. With such components, TI’s goal is to help enable customers to design and create their own end-product solutions that meet applicable functional safety standards and requirements. Nonetheless, such components are subject to these terms. No TI components are authorized for use in FDA Class III (or similar life-critical medical equipment) unless authorized officers of the parties have executed a special agreement specifically governing such use. Only those TI components which TI has specifically designated as military grade or “enhanced plastic” are designed and intended for use in military/aerospace applications or environments. Buyer acknowledges and agrees that any military or aerospace use of TI components which have not been so designated is solely at the Buyer's risk, and that Buyer is solely responsible for compliance with all legal and regulatory requirements in connection with such use. TI has specifically designated certain components as meeting ISO/TS16949 requirements, mainly for automotive use. In any case of use of non-designated products, TI will not be responsible for any failure to meet ISO/TS16949. Products Applications Audio www.ti.com/audio Automotive and Transportation www.ti.com/automotive Amplifiers amplifier.ti.com Communications and Telecom www.ti.com/communications Data Converters dataconverter.ti.com Computers and Peripherals www.ti.com/computers DLP® Products www.dlp.com Consumer Electronics www.ti.com/consumer-apps DSP dsp.ti.com Energy and Lighting www.ti.com/energy Clocks and Timers www.ti.com/clocks Industrial www.ti.com/industrial Interface interface.ti.com Medical www.ti.com/medical Logic logic.ti.com Security www.ti.com/security Power Mgmt power.ti.com Space, Avionics and Defense www.ti.com/space-avionics-defense Microcontrollers microcontroller.ti.com Video and Imaging www.ti.com/video RFID www.ti-rfid.com OMAP Applications Processors www.ti.com/omap TI E2E Community e2e.ti.com Wireless Connectivity www.ti.com/wirelessconnectivity Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265 Copyright © 2014, Texas Instruments Incorporated