All trademarks are the property of their respective owners.
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.
![]() | ![]() |
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.
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:
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.
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:
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.
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.