• Menu
  • Product
  • Email
  • PDF
  • Order now
  • Autonomous Smart Battery Guide

    • SLUAAF8 October   2021 BQ24707 , BQ24707A , BQ24725A , BQ24735 , BQ24770 , BQ24780S , BQ24800 , BQ25700A , BQ25708 , BQ25710 , BQ25720 , BQ25730 , BQ28Z610-R1 , BQ4050 , BQ40Z50 , BQ40Z50-R1 , BQ40Z50-R2 , BQ40Z80

       

  • CONTENTS
  • SEARCH
  • Autonomous Smart Battery Guide
  1.   Trademarks
  2. 1Introduction
  3. 2Smart Battery Setup
    1. 2.1 Gauge Setup
      1. 2.1.1 I2C System Differences
    2. 2.2 Charger Setup
  4. 3Communication Protocol
  5. 4Data Collected
  6. 5Summary
  7.   A Appendix
    1.     A.1 General Setup
    2.     A.2 Gauge Setup - SMBus
    3.     A.3 Gauge Setup - I2C
    4.     A.4 Charger Setup
    5.     A.5 Charge Voltage Example
    6.     A.6 Charge Current Example
  8.   B References
  9. IMPORTANT NOTICE
search No matches found.
  • Full reading width
    • Full reading width
    • Comfortable reading width
    • Expanded reading width
  • Card for each section
  • Card with all content

 

APPLICATION NOTE

Autonomous Smart Battery Guide

Trademarks

All trademarks are the property of their respective owners.

1 Introduction

Including only the gauge and charger reduces cost and size of simple BMS systems. The battery gauge replaces the functionality of the host MCU for a conventional system. Most standard battery systems would also use an MCU to communicate with other ICs, this increases the flexibility of the BMS, but also increases the BOM and cost. Using the battery gauge as the host is best for applications that are fairly simple and only require a State of Charge (SOC) readout with LEDs, safety protections, and passive cell balancing.

A power supply capable of supplying high enough current and voltage to charge the batteries is required. A load capable of discharging the batteries at a rate between C/5 and C/10 through the SYS pin on the charger is another requirement. The data line (SMBD), clock line (SMBC), and GND are the needed between the gauge and charger for communication. The power connections required are PACK– to GND, then PACK+ to BAT.

A conventional BMS with MCU controls the charger from the information read from the gauge along with other peripherals, compared to the smart battery system connections which do not include an MCU. The MCU for the conventional system reads the ChargingVoltage() and ChargingCurrent() from the gauge to then program the charger, or perform its own modifications to the charge profile before programming the charger.

GUID-690136FC-E7B3-458E-9BD0-6697936C9F7B-low.pngFigure 1-1 Conventional BMS Configuration
GUID-D7396910-77C7-4406-9C7A-FB052EFD0BB9-low.pngFigure 1-2 Smart Battery System

2 Smart Battery Setup

The specific setup process for broadcast mode following the Smart Battery System guidelines is minimal. The gauge and charger follow the default settings for the device address, charge current, and charge voltage using the SBS specification. The I2C system requires slightly more setup in flash memory.

2.1 Gauge Setup

For the tests in this application note, the gauges were calibrated following the guidelines in the Technical Reference Manual (TRM) of the respective gauge. A Relax Discharge Relax (RDR) cycle was performed on the batteries to gather data which was submitted to the Gauge Parameter Calculator Chemistry ID tool (GPCCHEM)(5) to find the corresponding chemistry ID. Finally, a learning cycle was run on the batteries to complete the gauge setup(6). After these steps are finished, the application-specific functions can be enabled, like LED SOC display formatting, protection thresholds, and charging profiles in the Advanced Charge Algorithm section(7).

The final golden image can be exported from the gauge and uploaded to new gauges during production after the gauge setup is completed. Only one learning cycle is required. Voltage and current calibration can be performed on several gauges and the values can be averaged for the final golden image if the variations are low between packs.

More of the broadcast information is found in the gauge's TRM:

GUID-20210730-SS0I-8SJ0-T95L-VWXQ7JQD2H6F-low.png

After the initial setup, place the gauge thermistor as close as possible to the battery to get the most accurate temperature reading during battery cycling. The gauge thermistor is the only thermistor needed, the charger thermistor is not necessary.

Following the specifications from the battery manufacturer, the Advanced Charging Algorithm section of dataflash can be setup to match the battery and application-specific needs. Usually in the Constant Current (CC) mode the charge current is higher in the medium to high voltage ranges, compared to the low or precharge voltage range. During cold temperatures the charge current can be reduced, and in hot temperatures the final charge voltage can be reduced to increase the battery longevity. Further explanations are found in Section A.

With R2 or newer firmware on the BQ40Z50, the charge current and charge voltage can also be reduced depending on the cell degradation. The degradation thresholds can be based on either State of Health (SOH) or cycle count. This feature is helpful for battery safety and longevity.

Many of the charging parameters that can be modified using the Advanced Charge Algorithm settings in the TI battery gauges. The precharge, low voltage, medium voltage, and high voltage thresholds are all adjustable as well. T1–T6 indicate the temperature range thresholds that can also be modified following the Advanced Charge Algorithm application report.

GUID-F7CD3BAB-D197-40D7-AEEB-BD47A2B904D2-low.png Figure 2-1 Charging Profile Using Advanced Charging Algorithm

2.1.1 I2C System Differences

The setup process is slightly more involved for I2C broadcast mode. The charger device address, charge current register, charge voltage register, and broadcast pacing need to be programmed to the flash memory of the gauge.

The BQ28Z610-R1 is currently a unique case, it can broadcast ChargingCurrent() and ChargingVoltage() in a 2-byte format to chargers that meet its broadcast mode transmission formatting and use I2C for communication. More information is found in the gauge TRM:

GUID-20210802-CA0I-T5ZP-T76G-WXKTBCNZWBX2-low.png

For the correct formatting, the charger must have a 2-byte charge current and charge voltage register, and it must not have any other bits in the same register used to configure the charger. The gauge will write the whole 2-byte register, so any configuration information would be overwritten. If the bits are reserved for a TI charger, like the BQ25730(8), it does not matter what the gauge writes to the register, the reserved values are not modified. Refer to Section A for more specific information about the gauge setup for I2C.

2.2 Charger Setup

Since the SBS specification defines the registers for charge current and charge voltage, there is no setup needed on the charger side. Voltage, current, and temperature are sensed by the gauge and the appropriate charge current and charge voltage is sent to the charger based on the Advanced Charge Algorithm settings.

The control loops in the charger will limit the current to the programmed ChargingCurrent()from the gauge during the Constant Current (CC) phase of charging, and then the charger will limit the charging voltage during the Constant Voltage (CV) phase based on the programmed ChargingVoltage() from the gauge.

Most TI chargers that use SMBus are SBS compliant and considered level 2 smart chargers. This requires them to accept ChargingCurrent() and ChargingVoltage() commands to the 0x14 and 0x15 addresses respectively.

The SBS Specification(1) states the ChargingVoltage() data range is from 0 to 65,534 mV with +1% to –9% accuracy in voltage regulation while there is a good power supply attached. The ChargingCurrent() has the data range from 0 to 65,534 mA with ±5% accuracy. This must be for both the gauge and charger. See the ChargingCurrent() (0x14) section and ChargingVoltage() (0x15) section of the SBS Specification for more information on exceptions.

For the I2C-based system using the BQ28Z610-R1, the charger also does not need to be configured for the application. The gauge will write directly to the charging voltage and charging current registers in the charger after they are set in the gauge.

The BQ25730 is an I2C-based charger that has 2-byte charge current and voltage registers, the BQ28Z610-R1 can be configured to work with the BQ25730 charger because of its 2-byte registers that do not have any other configuration information in the registers. Refer to Section A for more information on the charger setup.

3 Communication Protocol

Using the register bit definitions outlined in the data sheet of the charger, the charge current and voltage writes can be verified using a logic analyzer or oscilloscope. For the BQ40Z50 and other SMBus devices, the communications in broadcast mode can be PEC enabled with the SBS configuration[CPE] bit. SBS configuration[HPE] does not affect this system because there is no host. If both SBS configuration[HPE] and SBS configuration[CPE] are disabled the gauge will not transmit a PEC byte during any communication. The current and voltage are transmitted from the gauge in little endian, so the format of transmission is the following when the SBS configuration[CPE] bit is set:

Charger address (write) -> Register to write -> Least significant byte -> Most significant byte -> PEC Byte.

For the I2C-based system the package structure is the same, except the Packet Error Checking (PEC) byte is not used for I2C-based systems so there are no PEC enable options for the BQ28Z610-R1.

4 Data Collected

All data collected was using the BQ40Z50 device with R4 firmware and the BQ25710 device which follow the SBS guidelines. Both of the data sets collected used the system outlined in the block diagram, with the EV2400 tied on the SMBus as well.

Relax Discharge Relax (RDR) cycle to find the chemistry ID using the Gauge Parameter Calculator Tool.

GUID-68E7128A-0BA4-42FB-AF9E-3C12524FF13E-low.png Figure 4-1 RDR Cycle for the GPCCHEM Tool

During the next charge cycle after a relax period, the Update Status (LStatus in the bqStudio log) changed from 0x04 to 0x05, indicating that two valid Open Circuit Voltage (OCV) readings were taken and the gauge updated Qmax. On the next discharge, the gauge will update the resistance table (Ra table) to complete the learning process(6).

GUID-AC243234-D721-433E-BA02-6C22E4F55436-low.png Figure 4-2 Full Charge Cycle Using SMBus SBS

The voltage thresholds are seen during charging between precharge voltage, low voltage, medium voltage, high voltage as the current changes in each voltage region.

In the precharge region when the voltage is slowly rising in Figure 4-2, the set charge current is 100 mA, but 10 mA is being supplied. That is because the FET Options[PCHG_COMM] = 0 by default, which enables the precharge FET and not the charge FET. For the charge current to directly reflect the broadcasted value, FET Options[PCHG_COMM] must be set to 1. With the precharge FET enabled, the current is limited by the series resistor.

5 Summary

TI's SMBus gauge and charger can be setup to communicate together for a simple solution for a BMS. This method can reduce the overall cost of a BMS which can still report accurate SOC, provide protection, and send charging information to the charger. The gauge operates as the simple MCU of the system to stop charge or discharge in the case of any fault conditions, and complete a desired charging profile following any JEITA or custom temperature profile.

The system can be setup using the SMBus compliant gauge and charger, or by using the I2C based BQ28Z610-R1 as long as the I2C-based charger conforms to the broadcast formatting of the gauge.

A Appendix

The appendix is designed to show more detailed implementation than previously explained.

A.1 General Setup

The battery used in this example is the LG INR21700 M50T. The battery manufacturer specifications were used for programming the gauge with the recommended charging current, charging voltage, charge termination, and discharge termination.

Some of the battery specifications used for this example, from the manufacturer:

Item

Notes

Specification

Energy

By standandard Charge or Discharge

Nominal 18.2 Wh

Nominal Voltage

Average through standard charge and discharge

3.63 V

Standard Charge

Constant current

Constant voltage

End current (cut off)

0.3C (1,455 mA)

4.2 V

50 mA

Minimum Discharge Voltage

In all operations, the minimum closed voltage circuit value for a cell

2.5 V

Following the specifications for the battery chosen, the following modifications were made to the flash memory of the gauge:

  1. Design Capacity mAh = 4850 mAh
  2. Design Capacity cWh = 3640 cWh
  3. Design Voltage = 8400 mV
  4. Taper Current = 100 mA
  5. Quit Current = 20 mA
  6. DA Configuration register to match number of cells and set NR bit
  7. Any values updated from calibration
  8. The advanced charge algorithm described in this section.

The parameters described in the General Setup section are needed for most gauges to start the learning cycle and are dependent on the battery being used.

The EV2400 can be used as shown in the block diagram to log data during charge and discharge cycles. The EV2400 is essentially the MCU of the system, but just for logging. The EV2400 can be added to the SMBus lines so the charger, gauge, and EV2400 will all be on the same bus. Logging and configuration changes can then be done to both the charger and gauge during testing using bqStudio.

To configure the charger with all three devices on the same bus, bqStudio must be opened with the chargers designated bqz file before connecting the EV2400, otherwise bqStudio will auto-connect to the gauge. The advanced communication tab in the BQ40Z50 GUI can also be used to communicate with the charger.

Multiple primary devices on the same communication bus is not recommended because it can lead to arbitration errors. This is why broadcast mode should only be used when the gauge is the only primary device.

A.2 Gauge Setup - SMBus

Follow the bq40z50EVM Li-Ion Battery Pack Manager Evaluation Module user's guide to get started with hardware connections and basic gauge setup.

The first step is to set the number of cells used to change the DA configuration[CC0,1] bits (bqStudio -> data memory -> settings -> DA configuration[CC0,1]) the gauge may shutdown due to low voltage, if not configured correctly. The WAKE button may need to be held during this step. The Non-removable bit DA configuration[NR] also must be set to 1 to ignore the PRES pin.

Set the number of cells and DA configuration[NR] bit, then the voltage and current calibration needs to be completed. Applying a known voltage and current to the gauge, as described in the EVM users guide, is the best way to calibrate the gauge. The next step is to find the chemistry ID using the GPCCHEM tool and complete a learning cycle. After these two steps, the gauge needs to be configured for the more specific parameters for the application.

Follow the Section A.1 section for details on the battery setup and the parameters to set in the gauge. After the general gauge setup, the most important configuration is to set the SBS Configuration[BCAST] bit to transmit data from the gauge to the charger. As an example, Figure 6-1 is the Advanced Charge Algorithm setup page in bqStudio for the information the gauge broadcasts to the charger. Set the custom temperature profile or JEITA standard in the gauge registers. The temperature profile can widely vary, it is dependent on the cell manufacturer's ratings and the specific application needs.

GUID-14F6A010-1FF3-419A-94E4-C454943144A8-low.png Figure 6-1 Example Temperature and Voltage Range Settings.

Now the current ranges must be set, the values are arbitrary just to show the feature can be used to setup many different charging profiles:

GUID-12C42C6D-646A-4FFF-A89B-C197F96ACC49-low.png Figure 6-2 Example Current Settings Based on Temperature and Voltage

If degradation to charging current and charging voltage over the lifetime of the battery is desired, the SOH or cycle count can be used to reduce the reported charging voltage and current to the charger. Newer BQ40Z50 firmware versions are adding features like runtime-based degradation as well for more flexibility depending on the end-application.

Note:
  • The gauge writes all the bits of the charge current and charge voltage registers, but the reserved bits will remain unchanged. For example, the lowest charge current that can be supplied is 64 mA, because the charger has 64-mA resolution.
  • If a lower precharge current is required than 64 mA, the FET Options[PCHG_COMM] bit can be used to charge at a lower rate while the voltage is within the precharge voltage region.

A.3 Gauge Setup - I2C

Follow the bq28z610EVM 1- to 2-Series Li-Ion Battery Pack Manager Evaluation Module users guide to get started with hardware connections and basic gauge setup.

The charger must have a 2-byte charge current and charge voltage register, it must not have any other bits in the same register used to configure the charger. The gauge will write the whole 2-byte register, so any configuration information would be overwritten. If the bits are reserved, it does not matter what the gauge writes to the register.

The BQ25730 is an I2C-based charger that has 2-byte charge current and voltage registers, the BQ28Z610-R1 can be configured to work for this charger.

The BQ25730 is compatible with the BQ28Z610-R1 broadcast mode because the register is 2-bytes and the unused bits are reserved, not configuration bits. The device address should be set to the 7-byte address without the read/write bit. Set the Voltage and Current registers to the beginning register value. For example, if charge current is 0x02-0x03, set it to 0x02. The pacing should be set to prevent a charger watchdog from clearing the values written by the gauge.

To setup the BQ28Z610-R1 to communicate with the BQ25730, the Device Address should be set to 0x6B, which is the 7-bit address without the read/write bit. The current register should be set to address 0x02, and the voltage register to address 0x04. The watchdog resets the charger every 175 seconds by default, so the pacing should be less than that value.

GUID-20210802-CA0I-LCS2-B33V-0ZGVRKDZJKHN-low.png

A.4 Charger Setup

Follow the BQ2571x Evaluation Module users guide for basic charger hardware setup.

The SMBus based charger uses the predefined charge current address (0x14) to comply with the SBS guidelines. There is no further setup on the charger side required, the gauge handles everything.

GUID-20210730-SS0I-PJXF-81JB-GLJXMJ9NSQZK-low.pngFigure 6-3 BQ25710 SMBus Charge Current Register (0x14)

Follow the BQ2573X Evaluation Module user's guide for basic charger hardware setup.

The I2C-based charger charge current register configuration is essentially the same format as SMBus, except the I2C-based charger uses a different address. Any I2C-based charger with a similar register format to the BQ25730 will work with the I2C broadcast mode.

GUID-20210802-CA0I-TXXS-QLNW-240KCTRV2PWR-low.pngFigure 6-4 BQ25730 I2C Charger Current Register

A.5 Charge Voltage Example

An example of the charging voltage communication with the packet structure follows:

0x12 (write) 0x15 0xD0 0x20 0x73

Charging voltage is transmitted in little endian as well, so the bytes must be swapped:

Voltage: 0x20D0 = 0010 0000 1101 0000

Comparing the register bit definitions, the charge voltage can be calculated:

8192 + 128 + 64 + 16 = 8400 mV

GUID-20210730-SS0I-DWWL-4VJ2-186SDDHFPPZT-low.pngFigure 6-5 Voltage Write From Gauge to the Charger in Broadcast Mode

A CRC-8 calculator can be used for verifying the PEC byte of the voltage and current examples, the PEC byte can be calculated using the data sent previously as a type of checksum(9). To check the PEC byte, use the bytes 0x12, 0x15, 0xD0, and 0x20 as the CRC calculator input. The calculated byte should be the PEC byte.

A.6 Charge Current Example

An example of the charging current communication with the packet structure follows:

0x12 (write) 0x14 0xC4 0x09 0xC4

Current: 0x09C4 = 0000 1001 1100 0100

Comparing the register bit definitions from the Charger Setup section, the charge current can be calculated:

2048 + 256 + 128 + 64 + (4) = 2500 mA

The desired programmed charge current is 2500 mA, but 4 mA does not exist in the bq25710 register definitions, it is reserved. Reserved bits cannot be written to on the charger, so whatever the gauge writes the charger will not update the reserved bits.

GUID-20210730-SS0I-FQF8-LGRJ-3FDCPFVXFD8V-low.pngFigure 6-6 Current Write From the Gauge to the Charger in Broadcast Mode

B References

  1. "Smart Battery System Specifications." sbs-forum. http://sbs-forum.org/specs/sbc110.pdf
  2. Texas Instruments, BQ25710 SMBus 1-4 cell Buck-Boost battery charge controller w/ system power monitor and processor hot monitor
  3. Texas Instruments, BQ40Z50 1-4 series Li-ion battery pack manager | battery fuel (gas) gauge
  4. Texas Instruments, BQ28Z610-R1 Battery fuel gauge with integrated protector for 1-2 series packs
  5. Texas Instruments, Simple Guide to Chemical ID Selection Tool (GPC) Technical Reference
  6. Texas Instruments, Achieving The Successful Learning Cycle Application Report
  7. Texas Instruments, Advanced Charge Algorithm Application Report
  8. Texas Instruments, BQ25730 I²C 1-5 cell NVDC buck-boost battery charge controller with power path and USB-C® PD OTG
  9. "CRC Calculator (Javascript)." Sunshine2k. http://www.sunshine2k.de/coding/javascript/crc/crc_js.html

IMPORTANT NOTICE AND DISCLAIMER

TI PROVIDES TECHNICAL AND RELIABILITY DATA (INCLUDING DATASHEETS), DESIGN RESOURCES (INCLUDING REFERENCE DESIGNS), APPLICATION OR OTHER DESIGN ADVICE, WEB TOOLS, SAFETY INFORMATION, AND OTHER RESOURCES “AS IS” AND WITH ALL FAULTS, AND DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY RIGHTS.
These resources are intended for skilled developers designing with TI products. You are solely responsible for (1) selecting the appropriate TI products for your application, (2) designing, validating and testing your application, and (3) ensuring your application meets applicable standards, and any other safety, security, or other requirements. These resources are subject to change without notice. TI grants you permission to use these resources only for development of an application that uses the TI products described in the resource. Other reproduction and display of these resources is prohibited. No license is granted to any other TI intellectual property right or to any third party intellectual property right. TI disclaims responsibility for, and you will fully indemnify TI and its representatives against, any claims, damages, costs, losses, and liabilities arising out of your use of these resources.
TI’s products are provided subject to TI’s Terms of Sale (www.ti.com/legal/termsofsale.html) or other applicable terms available either on ti.com or provided in conjunction with such TI products. TI’s provision of these resources does not expand or otherwise alter TI’s applicable warranties or warranty disclaimers for TI products.
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2021, Texas Instruments Incorporated

 

Texas Instruments

© Copyright 1995-2025 Texas Instruments Incorporated. All rights reserved.
Submit documentation feedback | IMPORTANT NOTICE | Trademarks | Privacy policy | Cookie policy | Terms of use | Terms of sale