BQ34Z100-G1: Incomplete learning cycle: update status did not changed to 0x05 after charge-relax cycle

Part Number: BQ34Z100-G1


We are using PbA  battery with rating as follows, Voltage: 12V and Battery Capacity: 42Ah. (Exide powersafe plus EP42-12) 

After performing the CHEM ID identification process, we have got CHEM ID as 801 from the GPC tool. Please find the GPC_report

We are trying to achieve learning cycle for the fuel gauge BQ34Z100-G1. Till now we ran through 2 unsuccessful learning cycle. In both the trials we failed to achieve update status of 0x05 after the charge-relax cycle.

We have tried to follow each step as mentioned in these documents in respective learning cycles. Achieve Successful Learning Cycle and Technical Reference Manual - Appendix D

As per our last learning cycle attempt we run through following stages:

  1. Program fuel gauge with the given CHEM-ID
  2. Configure data flash parameter as per battery and application ratings. Find it here
  3. Start a discharging cycle for the battery with  10 A load. Which is around C/4 as recommended (C/5 < load < C/2)
  4. At the given load it will take around 5 hours to reach termination voltage (11.79V) for the battery. You can find logs for discharging cycle here 
  5. After reaching termination voltage we kept the battery for relax cycle for more than 5 hours waiting to stabilized the voltage. At the time of this cycle RUP_DIS and VOK bit were 0.
  6. After the relaxation period we have given IT_ENABLE command for starting the learning cycle and enabling Qmax updation. At this time VOK and QEN bits were 1. Update Status changes to 0x04.
  7. We kept the battery for charging cycle with charging current of 3.3 A until the FC bit sets to 1. You can find the logs for same here
  8. After the FC bit set to 1 and voltage reached to maximum charged state voltage (15 V) we kept the battery for relaxation for > 2 hours waiting for VOK bit to set to 0 and update status to be 0x05.
  9. We have waited for more than 4 hours in the relaxation period but the scenario is as follows: VOK=0, Update Status is still 0x04. FIRSTDOD was 1 at the start of the relax cycle but it was set to 0 at the mid stage and Qmax, DOD values in the registers were changed to 0. Please find the logs for this cycle here

Please guide us through to complete the learning cycle. Also please let us know if any discrepancy is there in the data flash parameters which might cause the learning to fail. 

  • Hi Hardik,

    Do you have a single log of the full learning cycle? It would be easier to analyze what is going on.



  • Hi Jessica, 

    Thanks for looking into the issue. 

    we have tried to log each cycle in individual log files so we don't have any single log file. All logs are in sequential order.

  • Hi Jessica,

    I have combined all the log files into a single file for you to analyze better.

    Please find the attached file.Learning Cycle Log

  • Thanks Hardik! I will look at your log and get back to you.



  • Hi ,

    I hope the attached logs were useful for your diagnosis. 

    As we are short of time in the project, we are doing our best effort to complete the learning cycle ASAP. 

    We are planning to perform another learning cycle with some changes in the data flash parameter. If someone from the TI Technical team could please help us to finalize the data flash parameter so that parallelly we can run a new cycle. 

    Please find the data flash parameter: data_flash_csv

  • Hi Hardik,

    Sorry for the delay. My response from yesterday did not get posted for some reason.

    What cell configuration are you using in your system? From your description, you say the battery is 12V but you're discharging it to 11.79V, is that correct?

    I noticed that your DOD0 = 0 for a portion of your learning cycle. This usually means you are charging above our chemID max value so the algorithm doesn't know how to handle it.



  • Hi Jessica,

    Our battery specifications are 12V - 42Ah Lead-acid 6 series cell. 

    Yes, we are discharging it up to 11.79 V because it is defined as termination voltage. Out battery's operating range is between 11.4(fully discharge) to 13.4(fully charge) Volts.

    We are charging till the charging current is below taper current to two consecutive taper current windows and until the FC bit sets to 1.  Is that correct?

    Also, we come across another forum post where it is mentioned that the procedure for lead-acid batteries differed from what is mentioned in the TRM. The logs which I have provided to you are as per the TRM learning cycle procedure.

    In the meantime of past 1 week, we have carried out another learning cycle by following this guide in Ti forum: 733183635346

    Please find data flash and learning cycle logs here: data_flash_csv , learning_cycle_logs

    Please let us know which other information you require to diagnosis the issue, if we have that information we can provide it to you for faster resolution.

  • Hi Jessica, 

    Any update on this?

  • Hello Hardik,

    It looks like there are some device parameters that are still set to default and need to be updated for Lead-acid batteries. Can you please review the steps outlined in section 8, particularly section 8.2.3, of the datasheet

    Also please follow the steps outlined in the FAQ you linked above.



  • Hi Jessica,

    Probably Yes. But there no such description where it is mentioned that exactly which parameters need to be updated from more than 100 data flash parameters that too for lead-acid.

    I am following the steps mentioned in the FAQ posted by Bryan Kehler.

    I have also posted my queries related to data flash parameters here.   

    I have attached my data flash parameters in the previous post. You can look at it and provide me some insight into the discrepancies between my configuration and standard configurations of lead-acid.

    Thanks and Regards,

    Hardik Panchal.

  • Hello,

    We have successfully completed the learning cycle for our fuel gauge after 5 trials.

    These are the data flash parameters we configured for the learning cycle which might be useful for anyone who faces same kind of issues:


    Following are our learning outcomes after attempting multiple failed learning cycles which might help other to diagnosis such issues:

    1. If you are using a lead-acid battery please follow this e2e post for steps of the learning cycle.  FAQ: Learning cycle for lead acid                            Learning cycle procedure given in the technical reference manual is for Li-Ion battery. Following that will lead you to an unsuccessful learning cycle.

    2. If your battery data sheet does not specify the taper current, termination voltage or maximum operating voltage do a charging-discharging cycle by yourself and note down these three important parameters which need to be configured in data flash.

    3. Flash update Voltage OK should be set to 1000 mV for lead-acid battery. Refer to this: Flash update for lead acid

    4. In the process of charging make sure [FC] (Full charge) bit sets to 1. If it is not set then your cycle may fail. For taper based charge termination make sure 'FC set % = -1'. In this case, following conditions should be met for FC bit to set. 1) Battery voltage > (Charging Voltage) - (Charge Taper voltage). 2) Avg Current < Taper current for minimum of (taper current window * 2 = 80 sec )

    5. Your taper current, charge voltage, and termination voltage are crucial parameters.

    5. While in relaxation, once the battery voltage stabilizes [OCVTAKEN] bit will be set.

    6. For a lead-acid battery you need to perform 2 charge-rel-dis-rel cycles. Also, the Update status will change only in relax phase done after discharge.

    7. Calculate your design scale if capacity is more than 19 Ah. Scale down your design energy and design capacity in data flash. Consider this scale factor for all values related to current or capacity in data flash.

    8. All voltages in the data flash (eg. BL set threshold) should be considered as per cell voltage and not the overall voltage of your battery.

    9 If you are not sure about Load Select and Load Mode values keep it as 1 and 0 respectively. 

    10. 'QMax Cell 0' should be set to design capacity initially.

    11. In pack configuration registers SCALED, VOLSEL bit should be set if you are using scaling factor for your design capacity.

    12. Do not over-discharge or over-charge your battery. It will damage the battery and the learning cycle will fail.