The STC3100 monitors the critical parameters of
a single-cell Li-Ion battery (voltage, temperature
and current) and includes hardware functions to
implement a gas gauge for battery charge
monitoring, based on a programmable 12- to
14-bit A/D converter. With a typical 30 milliOhms
external sense resistor, the battery current can be
up to 2.5 A and the accumulator system provides
a capacity up to +/-7000 mAh with a resolution of
0.2 mAh.
The device is programmable through the I2C
interface.
IO0
ROSC
SDA
SCL
Pin connections
(top view)
1
2
3
4
8
7
6
5
VIN
VCC
CG
GND
January 2009 Rev 11/21
www.st.com
21
Block diagramSTC3100
1 Block diagram
Figure 1.STC3100 internal block diagram
VCC
SCL
SDA
Accumulatorsand
control registers
I2C interface
1.2 V
reference
AD converter
11 bits (unsigned)
AD converter
12 / 14 bits (signed)
General-purpose I/O line
RAM & ID registers
32 kHz
time base
GND
MUX
OscillatorROSC
Temp sensor
VIN
CG+
CG-
CG
IO0
AM00830
2/21
STC3100Pin assignment
2 Pin assignment
Table 1.STC3100 pin description
Pin #Pin nameTypeFunction
1IO0I/ODGeneral-purpose I/O
2ROSC I_AD
3SDAI/ODI2C serial data
4SCLI_DI2C serial clock
5GNDGroundAnalog and digital ground
6CGI_AGas gauge current sense input
7VCCSupplyPower supply
8VINI_ABattery voltage sense input
Note:I: input
O: output
OD: open drain
A: analog
D: digital
Oscillator bias resistor or external 32 kHz clock for gas
gauge
3/21
Absolute maximum ratings and operating conditionsSTC3100
3 Absolute maximum ratings and operating conditions
Table 2.Absolute maximum ratings
SymbolParameterValueUnit
VmaxMaximum voltage on any pin7V
VioVoltage on I/O pins-0.3 to 7V
TstgStorage temperature-55 to 150
TjMaximum junction temperature150
ESDElectrostatic discharge (HBM human body model)2kV
Table 3.Operating conditions
SymbolParameterValueUnit
° C
° C
VccOperating supply voltage on V
CC
2.7 to 5.5V
VinInput voltage on Vin0 to VccV
VminMinimum voltage on VCC for RAM content retention2.0V
ToperOperating free air temperature range-40 to 85
° C
4/21
STC3100Electrical characteristics
4 Electrical characteristics
Table 4.Electrical characteristics (2.7 V < VCC < 4.5 V, -20°C to 70° C)
SymbolParameterConditionsMinTypMax Units
Supply
I
CC
Operating current consumptionAverage value over 4s100uA
IstbyCurrent consumption in standbystandby mode, inputs=0V2uA
IpdnCurrent consumption in power downV
UVLOthUndervoltage threshold(V
< UVLOth, inputs=0V1uA
CC
decreasing)2.52.62.7V
CC
UVLOhystUndervoltage threshold hysteresis100mV
PORPower-on reset threshold(V
decreasing)2.0V
CC
Gas gauge A/D converter
Vin_ggInput voltage range-80+80mV
IinInput current for CG pin500nA
ADC_resAD converter granularity
12 bits
13 bits
14 bits
47.08
23.54
11.77
CG = 0V
ADC_offsetAD converter offset
ADC_timeAD conversion time (32768Hz clock)
ADC_accAD converter gain accuracy at full scale
12 bits
13 bits
14 bits
12 bits
13 bits
14 bits
25° C
over temperature range
-2
-2
-3
125
250
500
2
LSB
2
LSB
3
LSB
0.51%
FoscInternal time base frequencyRosc = 200 kΩ, 0.1%32768Hz
Osc_accInternal time base accuracy
25° C, V
CC
=3.6V
over temperature and
voltage ranges
2
2.5%%
Fosc_extExternal time base frequency range3070kHz
uV
uV
uV
ms
ms
ms
%
Cur_resCurrent register LSB value11.77uV
Chg_res
Global_
CG_acc
Charge register LSB value
(32,768 Hz clock)
Gas gauge accuracy (not including the
external sense resistor tolerance)
=Cur_res*2^12*0.5/3600
Using internal time base
Using external time base
6.70uV.h
3.51%
%
5/21
Electrical characteristicsSTC3100
Table 4.Electrical characteristics (2.7 V < VCC < 4.5 V, -20°C to 70° C) (continued)
SymbolParameterConditionsMinTypMax Units
Battery voltage and temperature a/d converter
Vin_adcInput voltage rangeVcc = 5 V05V
LSBLSB value
ADC_timeAD conversion time (32,768 Hz clock)250ms
Volt_accBattery voltage measurement accuracy 2.7 V<Vin<4.5 V, VCC=Vin-0.5+0.5%
Temp_accInternal temperature sensor accuracy-3+3°C
Digital I/O pins (SCL, SDA, IO0)
VihInput logic high1.2V
VilInput logic low0.35V
VolOutput logic low (SDA, IO0)Iol = 4 mA0.4V
Voltage measurement
Temperature measurement
2.44
0.125
mV
°C
6/21
STC3100Typical performance curves
5 Typical performance curves
Figure 2.Standby current vs. temperatureFigure 3.Current measurement accuracy vs.
temperature
1.6
1.4
1.2
1.0
0.8
Istby (uA)
0.6
0.4
0.2
0.0
Vcc=4.5V
-50-250 255075100125
Temp (°C)
Figure 4.Oscillator frequency accuracy vs.
temperature
2.0
1.5
1.0
0.5
0.0
-0.5
Osc_acc (% )
-1.0
-1.5
-2.0
-50-250255075100125
Temp (°C)
0.6
Vgg=80mV
0.4
0.2
0.0
ADC_acc (%)
-0.2
-0.4
-0.6
-50-250255075100125
Temp (°C)
Figure 5.Voltage measurement accuracy vs.
temperature
0.6
Vin= 3.5V
0.4
0.2
0.0
Volt_acc ( %)
-0.2
-0.4
-0.6
-50-25 0 25 50 75100125
Temp (°C)
7/21
Application informationSTC3100
6 Application information
Figure 6.Example of an application schematic using the STC3100
Rosc
ROSC
IO voltage
VCC
VIN
C1
STC3100
SCL
SDA
Table 5.External components list
GND
CG
IO0
NameValueToleranceComments
Rcg10 to 50 mΩ1%Gas gauge sense resistor
Rosc200 kΩ0.1%Internal oscillator bias resistor
C11 µFSupply decoupling capacitor
C2220 nFBattery voltage input filter (optional)
R11 kΩBattery voltage input filter (optional)
Optional filter
R1
C2
Rcg
AM00831
8/21
STC3100Functional description
7 Functional description
7.1 Gas gauge
The gas gauge is used to monitor the available battery capacity. The voltage drop across the
external sense resistor is integrated during a conversion period and input to a 12- to 14-bit
AD converter. The output conversion is accumulated into a 28-bit accumulator. The system
controller can control the gas gauge and read the data (upper 16 bits of the accumulator)
through the I2C control registers.
The AD converter output is in two’s complement format. When a conversion cycle is
completed, the result is added to the charge accumulator and the number of conversions is
incremented in a 16-bit counter.
Figure 7.Gas gauge block diagram
CG
GND
12/14-bit
AD converter
EOC
2
cg_res
cg_clock
cg_enable
cg_calibration
Control
registers
16
16
16
rd_req
Counter
register
Current
register
Charge
register
AM00832
16-bit counter
28
28-bit
accumulator
16
32768 Hz
3
28
cg_rst
Control logic
The controller can read the value of the most recent conversion in two’s complement format
by reading the REG_CURRENT registers. These registers are updated at the end of each
conversion.
The differential inputs are scaled to the full range of the AD converter, introducing a small
offset error. A high value written to the CG_CAL bit of the control register connects the
inputs of the AD converter together, allowing the controller to measure the digital offset
error. Using this measurement, one can calibrate the gas gauge and reduce errors due to
the internal offset error.
9/21
Functional descriptionSTC3100
The conversion cycle for n bit resolution is 2n clock cycles. Using the 32,768 Hz internal
clock, the conversion cycle time is 125 to 500 ms for a 12- to 14-bit resolution. The LSB
value is set by the internal gain and internal reference and is 11.77 uV at maximum
resolutions. When using an external 30 milliOhms sense resistor, the 28-bit accumulator
results in a capacity of approximately +/- 7300 mA.h. The upper 16 bits of the accumulator
can be read from the I2C interface, giving a resolution of 0.2 mA.h.
When the battery voltage falls below the under voltage lockout threshold at 2.7 V, the gas
gauge system is stopped and the STC3100 stays in standby mode with minimum quiescent
current. All registers are maintained down to 2.0 V. Below 2.0 V, the registers are reset to
their default power-on value.
The gas gauge system needs an accurate 32,768 Hz timebase to compute the level of
charge flowing from/to the battery. The STC3100 can operate from an internal oscillator, or
use an external RTC signal for highest accuracy.
7.2 Battery voltage and temperature monitoring
The battery voltage and chip temperature (close to the battery temperature) are measured
by means of an A/D converter and a multiplexer. This function takes place concurrently to
the gas gauge function with a dedicated A/D converter, which means that it does not affect
the performance of the gas gauge. To reduce the power consumption, a conversion takes
place only every two seconds, alternatively for battery voltage and temperature (so each
value is refreshed every four seconds).
The conversion cycle takes 2
conversion cycle time is 250 ms. The resolution is 2.44 mV for the battery voltage and
0.125° C for the temperature.
13
= 8192 clock cycles. Using the 32,768 Hz internal clock, the
7.3 General-purpose input/output
A general-purpose I/O line is available. The output is an open drain, and an external pull-up
resistor may be needed in the application. Writing the IO0DATA bit to 0 forces the IO0 output
low; writing the IO0DATA bit to 1 leaves the IO0 output in a high impedance state. Reading
the IO0DATA bit gives the state of the IO0 pin.
In standby (CG_RUN=0), reset (PORDET set to 1) and power-down (Vcc<UVLOth) states,
the IO0 output is open and the input is read as zero whatever is the actual state of the IO0
pin.
7.4 RAM registers
The STC3100 provides 32 RAM registers to store any information regarding battery status,
charge cycles, battery aging, proprietary informations, etc...
The register content is maintained during standby and low voltage states, down to the
power-on reset level of approximately 2.0 V. Below this level, the content is not preserved.
This usually means that the Li-Ion cell was very deeply discharged and has been damaged.
10/21
STC3100Functional description
7.5 Unique device ID
The STC3100 provides a means to identify the battery pack or the subsystem. Each device
has its own unique 8-byte ID made of an 8-bit part ID (value = 10h for the STC3100), a
48-bit random unique ID and an 8-bit CRC.
The CRC-8 is calculated according to bytes REG_ID0 to REG_ID6 using the "x8 + x2 + x +
1" polynomial with a zero initial value.
Since the device ID is downloaded from the ROM at power-up and is subsequently kept in
read-only RAM locations together with the general-purpose RAM registers, the device ID
can also be used as an indicator of the RAM integrity.
11/21
I2C interfaceSTC3100
8 I2C interface
8.1 Read and write operations
The interface is used to control and read the current accumulator and registers. It is
compatible with the Philips I2C registered trademark (version 2.1). It is a slave serial
interface with a serial data line (SDA) and a serial clock line (SCL).
●SCL: input clock used to shift data.
●SDA: input/output bidirectional data transfers.
A filter rejects the potential spikes on the bus data line to preserve data integrity.
The bidirectional data line supports transfers up to 400 kbit/s (fast mode). The data is shifted
to and from the chip on the SDA line, MSB first.
The first bit must be high (START) followed by the device address and read/write bit control.
Bits DevADDR0 to DevADDR2 are factory-programmable, the default device address value
being 70h (AddrID0 = AddrID1 = AddrID2 = 0). The STC3100 then sends an acknowledge
at the end of an 8-bit long sequence. The next 8 bits correspond to the register address
followed by another acknowledge.
The data field is the last 8-bit long sequence sent, followed by a last acknowledge.
Start bit = SDA falling when SCL = 1
Stop bit = SDA rising when SCL = 1
Restart bit = start a
Acknowledge = SDA forced low during aSCL clock
7 bits7 bits
Slave
W
fter astart
A
8bits
Figure 9.Write operation
Start Device addrReg address
Start bit = SDA falling when SCL = 1
Stop bit = SDA rising when SCL = 1
Restart bit = start after astart
7 bits8 bits
A
Restart Device addr
W
A
8bits
A
Reg data
Reg data
A
R
8bits
Reg data
A
8bits
Address
n+1
A
A
Reg data
8bits
Address
n+1
Reg data
8bits
Address
n+2
A
A
Reg data
8bits
Address
n+2
Stop
AM00834
A
Stop
AM00833
13/21
I2C interfaceSTC3100
8.2 Register map
The register space provides 12 control registers, 8 read-only (factory OTP) registers for
unique device ID and 32 read/write general-purpose RAM registers. Mapping of all registers
is shown in Ta bl e 9 . Detailed descriptions of registers 0 (REG_MODE) and 1 (REG_CTRL)
are shown in Ta bl e 10 and Ta bl e 1 1 . All registers are reset to default values at power-on or
reset, and the PORDET bit in register REG_CTRL is used to indicate the occurrence of a
power-on reset.
Table 9.Register map
Name
Control registers0 to 23
REG_MODE0R/WMode register
REG_CTRL1R/WControl and status register
REG_CHARGE_LOW2RGas gauge charge data, bits 0-7
REG_CHARGE_HIGH3RGas gauge charge data, bits 8-15
REG_COUNTER_LOW4RNumber of conversions, bits 0-7
REG_COUNTER_HIGH5RNumber of conversions, bits 8-15
REG_CURRENT_LOW6RBattery current value, bits 0-7
REG_CURRENT_HIGH7RBattery current value, bits 8-15
REG_VOLTAGE_LOW8RBattery voltage value, bits 0-7
REG_VOLTAGE_HIGH9RBattery voltage value, bits 8-15
Values held in consecutive registers (such as the charge value in the REG_CHARGE_LOW
and REG_CHARGE_HIGH registers) must be read with a single I2C access to ensure data
integrity. It is possible to read multiple values in one I2C access, all values will be consistent.
The charge data is coded in 2’s complement format, and the LSB value is 6.70 uV.h.
The battery current is coded in 2’s complement format, and the LSB value is 11.77 uV. In
13-bit resolution mode, the 0 bit is always set to zero. In 12-bit resolution, bits 0 and 1 are
always set to zero.
The battery voltage is coded in binary format, and the LSB value is 2.44 mV.
The temperature value is coded in 2’s complement format, and the LSB value is 0.125° C.
The temperature of 0° C corresponds to code 0.
Gas gauge ADC resolution:
00:14 bits, 01:13 bits, 10:12 bits
0: no effect
1: used to calibrate the AD converters
0: standby mode. Accumulator and counter
GG_RUN4R/W0
registers are frozen, gas gauge and battery
monitor functions are in standby.
1: operating mode.
[7..5]Unused
Table 11.REG_CTRL - address 1
NamePos.TypeDef.Description
RX
Port IO0 data status:
0 = IO0 input is low, 1 = IO0 input is high
IO0DATA0
W1
Port IO0 data output drive:
0 = IO0 output is driven low,1 = IO0 output is open
0: no effect
GG_RST1W0
1: resets the charge accumulator and conversion
counter. GG_RST is a self-clearing bit.
GG_EOC2R1
VTM_EOC3R1
Set at the end of a battery current conversion
cycle. Clears upon reading.
Set at the end of a battery voltage or temperature
conversion cycle. Clears upon reading.
Power on reset (POR) detection bit:
R1
0 = no POR event occurred,
1 = POR event occurred
PORDET4
W0
Soft reset:
0 = release the soft-reset and clear the POR
detection bit, 1 = assert the soft-reset and set the
POR detection bit.
[7..5]Unused
15/21
Package informationSTC3100
9 Package information
In order to meet environmental requirements, ST offers these devices in different grades of
ECOPACK
specifications, grade definitions and product status are available at: www.st.com.
ECOPACK
®
packages, depending on their level of environmental compliance. ECOPACK®
Table 13.DFN8 3x3x1.0 mm package mechanical data (pitch 0.5 mm)
Dimensions
Ref.
Min.Typ.Max.Min.Typ.Max.
A0.800.901.000.0310.0350.039
A10.020.050.00080.0019
A20.550.650.800.0210.0250.031
A30.200.008
b0.180.250.300.0070.0100.012
D2.853.003.150.1120.1180.124
D22.202.700.0870.106
E2.853.003.150.1120.1180.124
E21.401.750.0550.069
e0.500.020
L0.300.400.500.0120.0160.020
ddd0.080.003
MillimetersInches
18/21
STC3100Ordering information
10 Ordering information
Table 14.Order codes
Part number
STC3100IST
STC3100IQTDFN8 3 x 3
Temperature
range
-40°C, +85°C
PackagePackingMarking
MiniSO-8
Tape & reelO201
19/21
Revision historySTC3100
11 Revision history
Table 15.Document revision history
DateRevisionChanges
27-Jan-20091Initial release.
20/21
STC3100
Please Read Carefully:
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any
time, without notice.
All ST products are sold pursuant to ST’s terms and conditions of sale.
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such
third party products or services or any intellectual property contained therein.
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS EXPRESSLY APPROVED IN WRITING BY AN AUTHORIZED ST REPRESENTATIVE, ST PRODUCTS ARE NOT
RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING
APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY,
DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any
liability of ST.
ST and the ST logo are trademarks or registered trademarks of ST in various countries.
Information in this document supersedes and replaces all information previously supplied.
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.