nPM1300 Fuel Gauge Update Rate Requirements for Accuracy (nrf_fuel_gauge_process)

Hello,

I'm working on an application where we're implementing the nPM1300 and utilizing the fuel gauge algorithm to estimate battery life. 

Interestingly, the results that are provided by the fuel gauge algorithm appear to vary significantly depending on the rate that I update nrf_fuel_gauge_process. For example, after a given test with a constant current draw, the estimated battery SoC at the end of the test is 33% if I update at 1 second intervals and the estimated battery SoC is 60% if I update at 30 second intervals. The 33% estimate is closer to being accurate given the test. 

While the API documentation for the fuel gauge does not list a minimal update rate and a prior post does not indicate a minimal update rate, either, it seems that this update rate may be significant while discharging. Interestingly, it appears that the update rate is not nearly as significant while charging.

For reference, this is a higher-current application, with ~500mA current draw on a 1000mAH Li-ion battery that has been appropriately modeled according to noted practices at bench temperatures (21C).

Is there a minimal update rate required for an accurate SoC estimate across different states (idle vs. high current draw vs. low current draw)?

Thanks in advance!
Ben

Parents
  • For a typical Bluetooth LE application we recommend running the Fuel Gauge algorithm once every second. There might be cases where running it less frequently will give a good state of charge estimate, but this will be application dependent and needs to be tested by the customer. See the user guide for more details: nPM1300 fuel gauge overview.

    As your application is having a 500mA current draw. We would recommend at least sampling every second in such active periods. The fuel gauge adds around a 8μA to 10μA total overhead to the power budget at 1 second sampling.

  • thanks for the quick reply. Obviously the additional power draw of the fuel gauge processing will be minimal compare to the actual powered application. Do you know if there is additional accuracy (long-term) gained by updating the fuel gauge more often than every one second?

    What I'm curious about is if there's a set of best practices "per state" or "per level of current consumption". I've seen the guidance that update rates during low power states can be very low and that an update rate of 1 second in certain applications while drawing power can be appropriate. 
    I'd love to see minimum/maximum update rate best practices listed for:
    - while in a sleep state (e.g., total draw < 10uA)
    - while in a low power state (e.g., 10uA < total draw <100uA)
    - while in a higher power state (e.g., 100uA < total draw < 50mA)
    - while in a very high power draw state (e.g., 50mA < total draw < 1A)
    - while charging (constant current vs. constant voltage? does charging rate matter as well?)

    Perhaps the eventual answer is a little more simple, but it's not apparent from the Fuel Gauge API documentation right now.

    Again, thanks for the help!

Reply
  • thanks for the quick reply. Obviously the additional power draw of the fuel gauge processing will be minimal compare to the actual powered application. Do you know if there is additional accuracy (long-term) gained by updating the fuel gauge more often than every one second?

    What I'm curious about is if there's a set of best practices "per state" or "per level of current consumption". I've seen the guidance that update rates during low power states can be very low and that an update rate of 1 second in certain applications while drawing power can be appropriate. 
    I'd love to see minimum/maximum update rate best practices listed for:
    - while in a sleep state (e.g., total draw < 10uA)
    - while in a low power state (e.g., 10uA < total draw <100uA)
    - while in a higher power state (e.g., 100uA < total draw < 50mA)
    - while in a very high power draw state (e.g., 50mA < total draw < 1A)
    - while charging (constant current vs. constant voltage? does charging rate matter as well?)

    Perhaps the eventual answer is a little more simple, but it's not apparent from the Fuel Gauge API documentation right now.

    Again, thanks for the help!

Children
No Data
Related