Part Number: BQ27750
Hello,
in our device we're using a LiPo akkupack with BQ27750 fuelgauge chip.
We want to use the AverageTimeToEmpty() function to display the remaining runtime of our device.
From BQ27750 reference document I can find the following description of the AverageTimeToEmpty() function:
---8<---
Uses average current value with a time constant of 15 s for this method. A value of 65535 means the
battery is not being discharged.
---8<---
Furthermore I can find the following description of AverageCurrent in the same document:
---8<---
This read-only function returns a signed integer value that is the average current flow through the sense
resistor. The value is updated every 1 s. Units are mA.
---8<---
From my understanding the the AverageTimeToEmpty() function refreshes the remaining runtime every 15 seconds based on the AverageCurrent which is updated every 1s.
Now here comes the tweaky point:
Our device won't discharge the akkupack with a constant current but it will discharge it with a constant power.
That means if the akkupack is nearly full charged the discharge current will be lower due to higher cell voltage and if the akkupack is nearly empty the discharge current will be higher due to lower cell voltage (discharge power is constant all the time).
Because of changig discharge current the AverageTimeToEmpty() function delivers some inaccuracies at the beginning of device usage.
Now I found out in the reference document that BQ27750 also delivers power values with "AveragePower":
---8<---
This read-only function returns a signed integer value of average power during battery charging and
discharging. It is negative during discharge and positive during charge. A value of 0 indicates that the
battery is not being discharged. The value is reported in units of mW.
---8<---
So the crucial question is:
Is it possible to use the AverageTimeToEmpty() function based on AveragePower values ??
Thanks and best regards,
Marcel Fischer