Coulomb counting for primary battery?
-
When using a primary battery (non-rechargeable) like a lithium thionyl chloride battery, monitoring voltage to assess the % remaining capacity of the battery does not work well (very flat relationship between voltage and % remaining capacity). Coulomb-counting would be handy. The TI bq27441-G1 battery fuel gauge on the F1 starter kit is designed for rechargeable batteries and requires complicated calibration for the specific battery you want to use. But it does Coulomb counting. And TI says in this document link text that the bq27x00 could be used to assess the remaining capacity of primary batteries with Coulomb counting. Any information on how to do this? And are there any example scripts (or library?) for doing the I2C communication?
And what is the preferred option for sensing the battery voltage? By measuring voltage on GPIO12 that is connected to the voltage divider (two 100k resistors in series, but what tolerance?)? Or by querying the bq27441-G1 that also senses battery voltage?
-
Hi jandls, the design initative of our system using TI BQ27441-G1 is for monitoring Li-ion or Li-polymer rechargeable batteries since from our considered use case, they are all using rechargable batteries. At this moment, we do not have non-rechargable batteries data.
For I2C communication, please refer to standard Micropython I2C codes to assess BQ27441 by default address 0x55 (7-bit address). And thanks for your post, we are considering to add sample codes for the fuel guage application. Thanks very much for your valuable opinion and questions.
For sensing battery voltage, we suggest first consider using BQ27441 first.
While using the “BATMON” pin is considered as system monitoring method to live monitor the system power rail usage. If this part of circuit is used, our suggested component values are adding 100kOhm 1% for R304 and R307, and 0Ohm 1% for R306 and making use of GPIO12 as ADC input. -
Hi @jandls, to add to @wilsonto, we do have direct support in MicroPython to interact with the BQ27441. Please note that it is only powered when a battery is connected.
https://github.com/sg-wireless/sg-sdk/blob/main/src/platforms/F1/comps/fuel-gauge-if/fuel_gauge.md