This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ27421-G1: fuel gauge battery health is not correct (always ~84% )

Part Number: BQ27421-G1

Tool/software:

Dear TI support team,

We use the BQ27421 (BQ27421YZFR-G1A) fuel gauge together with a 470mAh battery in two of our products. We implemented a battery image which fits from our side to our battery. The fuel gauge works in all ways very fine, but there is one big problem we have:

The battery health value which we read from the fuel gauge does not fit to the real. We always read battery health values around 84%.


During our product development we worked with some batteries to find the correct battery image. Therefore, we used new batteries from a batch where we also did tests in relation to the real capacity of these batteries by an external battery test company. The tests of the external battery test company showed that the battery capacity is 470 mAh.
We set the relevant values (design capacity, termination voltage and so on) of these batteries to the fuel gauge and run some charge, discharge cycles over a week. Finaly, we read the battery image of the fuel gauge and used this as our default battery image which is written to the fuel gauge in our production.
A view weeks were we tested the fuel gauge battery image we saw also battery health values around 84%, but we thought maybe our batteries which we used for these tests maybe have already aged during our development process.

Our Battery image in hex:
41 5D 80 00 00 81 0E DB 0E A8 01 D6 06 CB 05 3C 0C E4 00 C8 00 32 00 14 03 E8 01 00 2A 10 04 00 05 10 64 FF CE FF CE 00 01 00 64 00 64 00 5C 00 5C 00 41 00 3A 00 40 00 42 00 3B 00 35 00 42 00 45 00 7A 01 3F 01 FA

Which represents the following values:
FG_QMAX_CELL0              16733
FG_UPDATE_STATUS           128  
FG_RESERVE_CAP_MAH         0    
FG_LOAD_SELECT_MODE        0x81 
FG_Q_INVALID_MAXV          3803 
FG_Q_INVALID_MINV          3752 
FG_DESIGN_CAPACITY         470  (mAh)
FG_DESIGN_ENERGY           1739 
FG_DEFAULT_DESIGN_CAP      1340 
FG_TERMINATE_VOLTAGE       3300  (3,3V)
FG_T_RISE                  20   
FG_T_TIME_CONSTANT         1000 
FG_SOIC_DELTA              1    
FG_TAPER_RATE              42   
FG_TAPER_VOLTAGE           4100  (4,1V)
FG_SLEEP_CURRENT           5    
FG_V_AT_CHG_TERM           4190   (4,19V)
FG_AVG_I_LAST_RUN          -50  
FG_AVG_P_LAST_RUN          -50  
FG_DELTA_VOLTAGE           1    

Ra RAM class:
FG_R_A0_0                  100  
FG_R_A0_1                  100  
FG_R_A0_2                  92   
FG_R_A0_3                  92   
FG_R_A0_4                  65   
FG_R_A0_5                  58   
FG_R_A0_6                  64   
FG_R_A0_7                  66   
FG_R_A0_8                  59   
FG_R_A0_9                  53   
FG_R_A0_10                 66   
FG_R_A0_11                 69   
FG_R_A0_12                122   
FG_R_A0_13                319   
FG_R_A0_14                506   

Please compare this battery image with the datasheet screenshot of our battery

 

 

After further tests of our products we can still see battery health values of ~84% at all test devices. A battery health value of ~84% is shown when completely new battery is used and also on devices, which are tested around 1 year.

We would like to correct this issue with a new firmware release. Therefore, my question:

Do you have any ideas what I do wrong in my fuel gauge configuration or battery image?

Thank you for your help and support, best wishes, Michael

  • Hello, 

    Since this is a ROM gauge, we cannot simply release a new FW to achieve a new functionality, instead this would require changing the HW. This to me is the expected behavior of the gauge since the gauge uses the design capacity to calculate the state of health and Qmax. It is likely that your design capacity is far greater than the actual Qmax reported by the gauge, causing the SOH to read ~84%. 

    My recommendation is to use your host MCU to scale the SOH value reported by the gauge. If a new cell is reported as 84% SOH by the gauge, then you should use your host MCU to scale this value such that the MCU reports a SOH of 100% when the gauge reports a SOH of 84%. 

    Regards, 

    Robert.