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: Chemical ID selection

Part Number: BQ34Z100-G1
Other Parts Discussed in Thread: GPCCHEM, BQSTUDIO, GPCRA0

Hi TI team

We have used BQ34Z100-G1 and the cell "APR18650M1B"(refer to the attached spec) in our project. Could you help to tell us which Chem_ID is the right one, thanks.

 18650 Power Cell 060622 (002).pdf

  • Hello Luo,

    First, I would make sure you have an updated chemistry list. Please reference this website to do so:

    I didn't see your model of battery on the updated list, so I would recommend using the GPCCHEM tool. This
    tool uses a simple test of your battery to match it with batteries that have already been characterized.
    When you use this tool, a report will be sent to you that gives you the ChemID that closely matches
    your battery. Please reference this website:


    Nick Richards

  • Hi Nick, 

    I am a colleague of LUO. After I finished the battery data of GPC, I got the report as shown in the figure.

    Does this mean there is something wrong with the data I submitted? How should I get a CHEM ID that suits me?

    This is the data I

  • Hello Kent,

    In your "config.txt" file, the parameter "NumCellSeries" seems wrong since I see that the voltage
    started at 47488 mV. Please update this number with the correct amount of battery cells in series.

    In your "roomtemp_rel_dis_rel.csv" file, the "TimeStamp" column should be the elapsed time and not
    the current system time. Also, please follow all the steps correctly for getting the data. I will
    attach a screenshot for the steps for a Li-ion battery.

    Nick Richards

  • Hi Nick, 

    Following your advice, I successfully obtained the recommended CHEM ID, but now I still encounter two problems after learning cycle, please help me judge the cause of the problem.

    1.FCC>Design cap but SOH = 97%

    2.After discharge, PASSCHARGE>CC threshold, cycle count will not change.

    Here is my gg.file and my log, sincerely hope to get your answer.

  • Hello Kent,

    Are you using a scaling factor for the current, as I see that you have a discharge of over 100 amps.

    The FCC being greater than your design capacity seems fine because your Qmax and Design Capacity
    are slight different.

    Are you able to get a BQStudio log for the gauge. I want to make sure you are pulling data from the correct
    registers. What brings up a concern for me is the Ra table in your gg file. The values are very
    high, which is why I am asking for a BQStudio log.

    Also, can you send me the schematic of your circuit.

    How many sets of cells are in parallel?

    Nick Richards

  • Hi 

    Thank you for your patience. 

    1. My current sf=10

    2. It is normal for the discharge current over 100A, the battery pack I use is 14s 6p, so there will be a fully charged voltage of 49V and a discharge current of 100A.

    3.I use 9A to fully charge the battery pack to FC and wait for OCVtaken, then use 1C current to put the battery pack to Cell Terminate Voltage (the cut-off voltage may not be collected due to the sampling interval), and wait for OCVtaken as a learning.

    My SOC did not become 0 after the end of discharge

    cycle count increased but Maxerror was still 1

    SOH was 100 but how do I choose the proper SOH LOAD I

    The following is my learning cycle LOG and ggfile, and the record was interrupted once due to poor equipment contact.

    The problem that the SOC cannot be smoothed to 0 after using high current discharge and the MAXerror does not increase needs your help.



  • Hello Kent,

    SOH LOAD I should be set to the discharge current that the gauge usually experiences.

    I will need some time to look at the files you sent and will hopefully get back with you tomorrow.

    Nick Richards

  • Hello Kent,

    Sorry for taking so long to get back to you. I have review all the files you have sent me.
    I believe the main cause that the SOC value is not reaching 0% is becuase you have your specified
    "Cell Terminate Voltage" set to 2.2V as seen in your gg file. Thus, in your configuration with 14
    cells in series, the pack termination voltage is 30.8V. However, I looked at your personal log file
    and saw that the pack voltage read from the gauge only reached as low as 33.74 V and had a reported
    SOC of 11%. When looking at the BQStudio log file, the pack voltage reached as low as 31.5 V and
    reported an SOC of 5%. Therefore, I would recommend ensuring that the pack voltage reaches your specified
    30.8V or to change the "Cell Terminate Voltage" parameter in data memory to a higher value.

    Also, MaxError is incremented by 0.05% for every increment of Cycle Count after the last Qmax update and
    MaxError is only displayed in 1% increments.

    Nick Richards

  • Hello Nick,

    I have to thank you again for your patience in answering.

    With your help I successfully solved the problem of MaxError.

    But I still have a question about SOC that I want to ask, The reason why I mentioned in your answer that the SOC of my LOG is 11 is that the voltage is still 33.74V but when I checked, I found that the voltage read by BQ34 in the LOG seems to have reached 30.828V, maybe you said 33.74V It's not the voltage of BQ34 but the voltage at the MCU. It's a mistake in the mark when I sent the data.

    I will try to increase the Cell Terminate Voltage according to your suggestion. At the same time, I want to know what effect will be caused by modifying LOAD SELECT. I am currently using LOAD SELECT=6, 3000mA. If I increase or decrease this value, what effect will it have? .

    I tried to use LOAD SELECT=1-Present average discharge current yesterday, but I found that my FCC will drop from 7400mAh to 1200mAh immediately after modification, and only 1200mAh after learning, why?

    Thanks again for your answer

  • Hello Kent,

    Load Select defines the type of power or current model to be used to compute load-compensated
    capacity in the Impedance Track algorithm. When the Load Select is set to 6 and Load Mode is
    set to 0, the value "User_Rate_ma" allows the gauge to perform SoC simulations using this inputted
    value with the constant current model.

    If the value of User_Rate_mA is greater than the actual current draw, the device may underestimate
    the load-compensated capacity versus actual. If the value of User_Rate_mA is less than the actual
    current draw, the device may overestimate the load-compensated capacity versus actual.

    For example, it may be beneficial to set a high value for User_Rate_mA
    so the load-compensated capacity estimation assumes a worst case load at all times,
    thereby providing a lower SoC value but ensuring there is more charge left in the battery.

    It is common to see that FCC will change when a different "LOAD SELECT" is set for the gauge.
    FCC will correct itself over time, after a few cycles of the battery.

    Nick Richards

  • Hello Nick,

    I changed the User_Rate_mA from 3000 to 12000 according to your suggestion, as my understanding this will make the SOC drop faster during the discharge, thus having a lower SoC value at the end of the discharge.

    However, in my observation, FCC is larger than User_Rate_mA=3000 after learning, but SOC still jumps from 13 to 0. My ideal situation is to control the SOC value at the end of discharge within 5. Is there anything else you think I can modify to achieve this goal, can you list it for me? 

    Now I want to try to modify T rise, ResRelax Time try to use Fast Scale, I don't know what effect these will have.

    I attach the ggfile and log data used in this test, forgive me for not being able to use BQSTUDIO to record data during high current discharge, I need to take heat dissipation into consideration. Because the LFP battery takes too long to do one learning cycle, I have no way to consider a plan that requires multiple studies.

    Looking forward to your reply.


  • Hello Kent,

    Is the log file you sent showing data right after you changed the "User_Rate_mA"? Whenever you
    change any parameter related to Load Select or Load Mode, the gauge is creating new simulations
    to calculate SoC. However, the gauge will need time to learn the proper model for the battery.
    Therefore, I would recommend cycling the battery a few times to see if that fixes the reading of
    SoC. In the log file, I see that FCC is still changing a lot, which shows that the gauge is still
    correcting itself on the true FCC of the battery.

    ResRelax time deals with resistance updates. I would recommend not changing any of those setting
    just yet and lets see if the gauge can correct itself after a few cycles of the battery. Make sure
    that the battery have enough relaxation time after charge and discharge.

    Nick Richards

  • Hello Richards,

    Thank you very much for your suggestion. I have performed many LEARNING CYCLE. Although the first few times I successfully reduced the SOC from 14 to 10, the FCC also dropped significantly to 7230mAh. Unfortunately, after that, the learning is no longer effective. Every time After discharging, the SOC is around 10 every time.

    I rummaged through the LOG data, I have been charging and discharging with full load for LEARNING CYCLE, the released capacity is 6500mAh, but after many times of learning, my FCC will never be lower than 7000mAh, so that my SOC will always jump to 0.

    I have never used LEARNING CYCLE with light load, but discharge with light load can discharge 7100mAh, so that the SOC jumps to 0 at a lower value. I know this is the difference in discharge power caused by the battery being discharged with different loads, but I would like to ask, is there any way to make the SOC curve of BQ34 closer to my full-load discharge situation, so I can discard part of the light-load discharge accuracy.

    In addition, the User_Rate_mA I am using now is the average current when I discharge at full load. According to my understanding, the SOC should be in line with my current full-load discharge.

    Can you please help me to solve the above doubts?

    The following is the data I used to discharge with light load before, and the data of full load discharge after I have learned many timesDSG_LOG.csv

    full load.csv

  • Hello Kent,

    Can you send me the gg file for your current setup?

    It is possible that completing the learning cycle with the discharging at full load can affect the Ra table during the process. Therefore, I would recommend you to complete one new learning cycle, using a discharge rate of C/5 (discharging at 1440 mA).  After you successfully complete this learning cycle, please also send me the gg file for that setup. I will need both gg files to analyze the changes.


    Nick Richards

  • Hi Richards,

    Here is my gg.file, plz help me to point out the problem!



  • Hello Kent,

    I will need some time to review the files you sent, and should get back with you soon.  

    Nick Richards

  • Hello Kent,

    From what I can see in the logs the temperature increases rapidly during your high rate discharge tests. I believe this may be causing some issues with the way the gauge models the temperature and resistance. The gauge will use thermal modeling to predict that the cell temperature will be hotter as the discharge continues, this will cause the internal resistance estimations to decrease (resistance goes down the hotter the cell temperature). Due to accumulated error in the temperature modeling (from scaling factor error and from forward scaling error) this may be causing the gauge to think resistance is much lower than it is and causes under-estimations for FCC.

    What I would recommend doing is to run the GPCRA0 tool with the data you have collected already to verify the T Rise and T Time Constant which will help with the thermal modeling.


    Wyatt Keller