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.

BQ35100: Unable to read and interpret Scaled R and Measured Z during EOS Testing Procedure (values are varying randomly)

Part Number: BQ35100
Other Parts Discussed in Thread: BQSTUDIO

Hi,

We need your help with implementing the EOS testing for LS33600 battery using BQ35100 IC. Please find elaboration to the setup and queries below.

Setup -

Battery used - LS33600 

We are trying to execute EOS mode and read Scaled R and Measured Z for predicting battery life.

We are doing it through a bare-metal code using a microcontroller board and not BQstudio.

Also, the microcontroller board is powered by the same battery whose EOS values are to be read.

Steps followed -

Note - ChemID is set for battery LS33600 using BQstudio

1. GE pin set to high

2. Wait for INITCOMP bit to set high

3. Start gauge command sent & waited till GA bit sets to high

4. Unsealed successful

5. New Battery command sent and waited for 5 sec

(Q1 - What is the indication for New Battery command successful?)

Do we need to reconfigure the device for unsealed and other EOS related configuration post new battery command?

6. Operation config A register set to EOS mode (Successful)

7. Start gauge command sent & waited till GA bit sets to high

8. Given a pulse to dip 0.8V for 300ms at Bat+ of BQ35100

9. Stop gauge command sent & waited till G_DONE bit to set high

10. Read Scaled R and Measured Z 

(Q2- How to use the value of Scaled R and Measured Z to calculate life of the battery?)

//Also , the values are inconsistent when we read them even within 5min interval. Please enlighten us on that.

11. Set GE pin to low and wait for 6 hrs

12. Set GE pin to high and wait for INITCOMP bit to set high

13. Start gauge successful

14. Unsealed successful.

Now repeat the process from step 7 multiple times

Summary

Q1 - What is the indication for New Battery command successful? (Do we need to read R_NEW register from DF or is there another way?) Do we need to reconfigure the device for unsealed and other EOS related configuration post new battery command?

Q2- How to use the value of Scaled R and Measured Z to calculate life of the battery? Is it possible to track if the battery is at 10%, 30%, 50%, 75% remaining capacity? Why are Scaled R and Measured Z values inconsistent even at 5 min interval when read as per procedure? Is it necessary to power down the IC after every EOS testing iteration?

Please help with the same.

Please find Attached log file as well.

References used -

How to Configure the BQ35100 for EOS Mode (ti.com)

bq35100 Technical Reference Manual (Rev. C) (ti.com)

BQ35100 Lithium Primary Battery Fuel Gauge and End-Of-Service Monitor datasheet (Rev. E) (ti.com)

 

=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2024.05.21 17:50:25 =~=~=~=~=~=~=~=~=~=~=~=


 System Initializing..

 Init gauge successful 

 Start gauge sent 

 Start gauge successful 

 Unsealed successful 

 Chem ID is 0x0662

 op_config_A set to EOS 

 Start gauge successful 

 Start pulse 

 Stop pulse 

 Stop gauge successful 

 GDone is set 

 EOS_BAD_OCV set 

 After pulse - r-65441 mOhm, z-65441 mOhm, v-3615 V, t-2972 Kelvin, c--6 mA, ctrl -40d8, op_con_A -2

 GE low 

 Wait for 6hr 

 Wait for 6 hr 

 Wait for 5 hr 

 Wait for 4 hr 

 Wait for 3 hr 

 Wait for 2 hr 

 Wait for 1 hr 

 GE high 

 Init gauge successful 

 Unsealed successful 

 op_config_A set to EOS 

 Start gauge successful 

 Start pulse 

 Stop pulse 

 Stop gauge successful 

 GDone is set 

 EOS_BAD_OCV not set 

 After pulse - r-261 mOhm, z-261 mOhm, v-3615 V, t-2977 Kelvin, c--6 mA, ctrl -40d0, op_con_A -2

 GE low 

 Wait for 6hr 

 Wait for 6 hr 

 Wait for 5 hr 

 Wait for 4 hr 

 Wait for 3 hr 

 Wait for 2 hr 

 Wait for 1 hr 

 GE high 

 Init gauge successful 

 Unsealed successful 

 op_config_A set to EOS 

 Start gauge successful 

 Start pulse 

 Stop pulse 

 Stop gauge successful 

 GDone is set 

 EOS_BAD_OCV not set 

 After pulse - r-4977 mOhm, z-276 mOhm, v-3615 V, t-2979 Kelvin, c--6 mA, ctrl -40d0, op_con_A -2

 GE low 

 Wait for 6hr 

 Wait for 6 hr 

 Wait for 5 hr 

 Wait for 4 hr 

 Wait for 3 hr 

 Wait for 2 hr 

 Wait for 1 hr 

 GE high 

 Init gauge successful 

 Unsealed successful 

 op_config_A set to EOS 

 Start gauge successful 

 Start pulse 

 Stop pulse 

 Stop gauge successful 

 GDone is set 

 EOS_BAD_OCV not set 

 After pulse - r-5085 mOhm, z-282 mOhm, v-3615 V, t-2966 Kelvin, c--6 mA, ctrl -40d0, op_con_A -2

 GE low 

 Wait for 6hr 

 Wait for 6 hr 
                                                                                         

This is the console log captured during run time.

  • Hello Oishi,

    When you perform the pulse, does the OCV of the battery drop more than 100mV. I noticed that the EOS_BAD_OCV set for one of the pulses. 

    I am not sure of a way to verify if the NEW_BATTERY command is sent properly. Possibly the Short Term Average and Long Term Average values in Data Memory return to their default values.

    There is not a way to use resistance or impedance values to calculate a certain percentage off the battery

    Regards,

    Nick Richards