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.

BQ34Z100-G1: SOC sometimes does not reach 100% when being fully charged.

Part Number: BQ34Z100-G1
Other Parts Discussed in Thread: BQ40Z50

Please tell me about that the SOC sometimes does not reach 100% when being fully charged.

I wrote the details on my attached file.
My question are below.

1. Learning Cycle
I have not performed a learning cycle and the parameters in the Ra Table are still at their default values.
If I write the appropriate parameters, is there a high possibility that the SOC will reach 100% when fully charged from the beginning of use?

2. Charge Termination
I am wondering if there is a mistake in the Charge Termination parameters.
Does the SOC change to 100% When gas gauge detects valid charge terminaltion?
See 『7.3.11 Charging and Charge Termination Indication』 in the datasheet.

3. How to force SOC change to 100%
Is there any way to force Gas Gauge to output SOC=100%?
Question_220607.xlsx

  • Hello

    I attached the parameters file.

    regards,
    Hirotaparameters_220101_2.xlsx

  • Hello Hirota-san,

    The SOC is not very accurate without having finished the learning cycle. The intended use is to perform a learning cycle, otherwise the behavior is hard to predict. So, I would recommend doing that before trying to debug an issue like this. 

    When the gauge first learns Qmax it will save the DOD at charge termination. This DOD point is then used as the 100% for SOC. So whether or not you get to 100% SOC is based on that DOD point rather than charge termination. Most likely, you should also reach charge termination at the same time anyways. This DOD point can also be updated as the gauge learns over time. There is a setting you may want to use called RMFCC, this setting essentially sets SOC to 100% on valid charge termination. Is this what you mean by force SOC=100%?

    Let me know if you have any follow-up questions.

    thanks,

    Alex M.

  • Hello Mr. Alex,

    Your advice helped me solve most of them. Thank you.
    For the charger IC I set the termination current from 200mA to 100mA  so that AvergeCurrent() absolutely go below the Taper Current ( = 200mA).
    Then, SOC change to 100%. 200mA is in Experiment 1 and 100mA in Experiment 2.

    There are two things I don't understand. I see "7.3.11 Charging and Charge Termination Indication" in the datesheet.
    In experiment 1, the first point is that the charge termination conditions seems to be met and the SOC would change 100%. But in fact, it was not.
    In Experiment 2, the second point is that the SOC could have reached 100% earlier than it actually did.

    Could you tell me that the condition in the datesheet seems to be different from actual one.


    regards,
    Hirota

    Question_220614.xlsx
    data Exp1.xlsmdata Exp2.xlsm

  • Hello Mr. Alex,

    Your advice helped me solve most of them. Thank you.
    For the charger IC I set the termination current from 200mA to 100mA  so that AvergeCurrent() absolutely go below the Taper Current ( = 200mA).
    Then, SOC change to 100%. 200mA is in Experiment 1 and 100mA in Experiment 2.

    There are two things I don't understand. I see "7.3.11 Charging and Charge Termination Indication" in the datesheet.
    In experiment 1, the first point is that the charge termination conditions seems to be met and the SOC would change 100%. But in fact, it was not.
    In Experiment 2, the second point is that the SOC could have reached 100% earlier than it actually did.

    Could you tell me that the condition in the datesheet seems to be different from actual one?


    regards,
    Hirota

    Question_220614.xlsx
    data Exp1.xlsmdata Exp2.xlsm

  • Hello Hirota-san,

    This FAQ should be helpful. It is written for the BQ40Z50, but the same logic applies. To clarify, the gauge does not actually use the averagecurrent() parameter for charge termination, but a 40s window rolling average current that it calculates itself once DSG=0. In the logs, I can see the difference between the current and the averagecurrent() is surprisingly large. The experiment that did not reach SOC=100% also did not reach charge termination. I believe this is because the average current the gauge is using for VCT is higher than the averagecurrent() reading.

    Notice the gray line doesn't fall below 200mA here, but does in the 100mA experiment. 

    I'm not sure why the averagecurrent() is so far off from the actual average current. I'm not sure if it has to do with how you are setting up the experiment/logs. In any case, I can see that the learning cycle still isn't complete based on the logs (maxerror = 100%).  The SOC is not very accurate until the learning cycle is completed (hence the maxerror = 100%). So, I still think the best course of action would be to complete the learning cycle before trying to debug an SOC related issue. 

    Let me know if you have any more questions/ need more details. I know the average current vs. averagecurrent() can be confusing.

    thanks,

    Alex M.