Dear TI-Team,
the BQ35100 looks very promising. But I'm not sure about the concept of ACC mode.
The d/s says that there's an average supply current of 0.3uA in ACC mode: "Update every 30 minutes otherwise GE = Low". But as far as I understand GE, the sigma-delta ADC is only powered when GE = high. Okay, so assuming that GE = low for 29 minutes, then GE = high for 1 minute the actual current (power) measurement is only for the last minute while GE was high, right? So we have to multiply the result by 29 to get an estimated power consumption for the last 30 minutes, correct? And we have to make sure that the result is stored in NVM to be able to know the accumulated power during the whole cycle (say, the MCU freezes and the watchdog does a reset - we have to load the uptime from NVM to be sure to calculate the total power consumed since battery insertion).
In SLUUBH1C I found this:
5.1.1 Total Capacity Update When in ACCUMULATOR mode, the bq35100 device tracks and then stores the total accumulated capacity to its internal data flash. CAUTION Care should be taken when enabling and using this feature to ensure that the maximum number of writes, which is 200,000, is not exceeded. For example, this translates to no more than 25 writes per day over 20 years. When the GE pin is asserted, the device will update AccumulatedCapacity() from the value stored in data flash. When ControlStatus() [GA] is set, the device adds each coulomb counter measurement to the value of AccumulatedCapacity(). Sending the GAUGE_STOP() command prior to the GE pin being pulled low initiates the latest value of AccumulatedCapacity() to be written to data flash memory. As this operation takes a finite amount of time, the gauge will assert [G_DONE] in ControlStatus() and can optionally trigger the ALERT pin to inform the host when the operation is complete.
Okay, sounds great. AccumulatedCapacity seems to be stored in NV flash.
But I'm confused about 5.1:
In this mode, the bq35100 device measures and updates cell voltage, cell temperature, and load current every 1 s and begins accumulating after GAUGE_START is received. This data is provided through the I 2C interface while ControlStatus() [GA] is set.
I'm not sure what the power consumption between GAUGE_START and GAUGE_END is. Is it below 1uA and only more for the short duration GE is asserted? So the stated "0.3uA in ACC mode" means, it accumulates the whole time, but only updates the register's value every 30 seconds when GE is asserted?