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.

BQ34Z651: Full Charge QMAX update in learning cycle

Part Number: BQ34Z651
Other Parts Discussed in Thread: BQSTUDIO, GPCCHEM, BQEVSW

Hi There,

I am attempting to run learning cycles on two packs at the moment. One of these succeeds consistently so I have a good idea of what a successful learning cycle should look like.

One the other pack however, when I fully charge the pack during the learning cycle (FC is set) and then rest until VOK is cleared. The QMAX update never occurs (update_status never transitions fro 0x04 to 0x0D), and therefore MaxError never decreases from 100% to 3%. Therefore the learning cycle is unsuccessful, even after fully discharging the pack.

On the pack where the learning cycle is successful the transition of update_status and MaxError is seemingly simultaneous with VOX being cleared. And on other packs where learning cycles have failed in the past, VOK was never cleared. 

So I am not quite sure what is wrong wherein the pack both tells me it has completed it's measurements when fully charged (VOK is set) but also seems to fail at taking that measurement.

I have been using the following documents as references, but they have not been particularly helpful.

SLUA597
SLUA379E
SLUA421A
SLUA334B

Thanks,

David

  • Hi David,

    The log and gg files from the gauge would be useful to debug why learning is failing. An important question to ask is how do your setting differ between the unit that is successful and the unit that is failing. A comparison of both is needed to understand what is different.
    thanks
    Onyx
  • Hi Onyx,

    The difference between the two packs is the cell chemistry used and the number of cells in parallel. The Gas gauge files are here:

    /cfs-file/__key/communityserver-discussions-components-files/196/rom-files.zip

    As I am using a custom script to talk to the pack and control the charger and load I do not have a full log of the data, however I can provide the log files that my code did generate:

    /cfs-file/__key/communityserver-discussions-components-files/196/learning-logs.zip

    This folder contains files for:

    Successful learning cycle
    Charge portion where update_status doesn't change with VOK
    Full Charge/Discharge Cycle where discharge is triggered by VOK clearing but update_status never changes:

    Let me know if there is any other information I can provide you with.

    Cheers.

    David

  • Hi David,
    Is it possible to hook your system up to bqstudio and run the cycles while logging. That will contain pertinent info to understand why learning is failing.
    If the chemistries are different , did you identify the correct chem id for each pack? You can't just use one chem id for both without identifying the correct chem id using gpcchem and then configuring your design capacity appropriately.

    thanks
    Onyx
  • Hi Onyx,

    Unfortunately I can't log using the BQEVSW is parallel as the EV2300 seems incapable of multi-mastering with my the SMB master that I am using to provide gas gauge data to the charging cycling program I am using. Are there any particular data items that would would like me to sample, I can add anything to my log, it would just be tedious to add everything...

    On the Chemistry front I went through the chemistry selection process for all of the cells that I use, so there should be no issues there. Due to the voltage limitations of the gas gauge I am not fully discharging the HG2 cells in use on the pack with the issue (I have to stop early so I don't under-voltage the gas gauge) Should this be reflected in the design capacity? If so, are there any other places this capacity should be updated?

    Thanks,

    David

  • Hi David,

    Not discharging to the min values specified in the cells manufacturer data sheet could prevent qmax from being learnt given that you need at least a passed accumulated charge of 90% of design capacity. Disable the UV conditions after learning is complete, then you can re-enable them again. Also, endeavour to use a discharge rate between c/5 and c/10.

    You can perform learning manual using bqstudio or you can control your charger and load independent of the gauge. This will allow you to log using bqEVSW.

    thanks
    Onyx
  • Hi Onyx,

    That 90% limitation is almost certainly my issue. Thank you! Can you point me in the direction of where I should have been able to find that out myself, I don't recall seeing that anywhere?

    I am hesitant to remove the UV protections because that would run the gas gauge down past it's recommended operating voltage. So I would prefer to redefine the Design Capacity, would that have the same effect?

    I had a lot of issues running the cycles through the BQ studio as I could never stop charging fast enough after termination to prevent the charge accumulation constraint from being violated. So I had to resort to writing my own control program for the Power supply etc to make that work. This is what allowed me to get the successful learning cycle that I achieved.

    Cheers,

    David

  • Hi David,
    The gauge requires around 4V to stay powered on. You are using atleast two cells so even if the two cells are at 2V, the chip will still be powered on.

    I would recommned discharging to the minimum voltage of the cell specified by the manufacturer. There isn't a charging restraint .. you just need to charge to full, make sure the FC flag gets set.. and then relax for two hours. you do not need to turn off charging immediately FC gets set. There is no constraint. The important aspect is that the FC flag gets set.

    training.ti.com/how-perform-successful-learning-cycle-gauges

    app note on learning cycle below:
    www.ti.com/.../slua903.pdf

    thanks
    Onyx
  • Hi Onyx,

    Thank you for those references, I will certainly look into that. I seem to recall reading (although I can't find a reference for it now) that after charge termination, during the rest, there was a maximum amount of capacity change that could be recorded (hence the requirement to remove the load and charger which it mentioned in almost every document) Therefore I assumed it was the fact that I was slow to remove the charger that was causing me issues.

    On the discharge, if CUV protection is triggered will that cause me issues?

    In terms of power, the reference design, and therefore my design has a diode in the VCC path to the device, and so the VCC voltage drops below 4V with a pack voltage of about 4.3V (according to my measurements). Hence the self-imposed premature termination. Additionally I have another device running from the same power supply that will start to brown out at 4.5V so I would really like to keep that lower limit higher. Should I be re-selecting a chemistry based off this cropped cycle?

    Also some of my hardware just dies so it will be a few days before I can put this into practice...

    Thank you for being so helpful!

    David

  • Hi David,
    When you ran the chem id identification, what voltage did you discharge to? What are your cells rated down to? It is important to perform chem id identification down to the rated minimum cell voltage specified by the cell manufacturers. When doing learning also discharge to that voltage to allow qmax to be learnt. After learning is successful, then you can make adjustments for CUV, a higher terminate voltage if you application requires one, a lower charging voltage if your application requires one as well. It is best you reduce your cuv thresholds to prevent them from triggering during learning. CUV triggering will stop discharge and that could prevent learning from occurring.
    thanks
    Onyx
  • Hi Onyx,
    I ran the chem id identification using the manufacturers spec (down to 2V)
    I will certainly try that out next week when I have my system back up and running.
    Just to clarify, if the CUV triggering occurs below the 'term voltage' and thus is a suitable time to stop discharging would that still have adverse affects on the learning cycle?

    Cheers,
    David
  • I would say learn to the voltage specified on the cell manufacturer sheet. Ensure that the min voltages is sufficient to keep the gauge powered on. Disable the CUV to allow the gauge to learn that low, then after learning has been completed enable CUV.

    thanks
    Onyx
  • Hi Onyx,

    This seems to be working. I have managed to run a couple of successful learning cycles on different configurations that I am using. I have a couple of questions however.

    On a couple of seemingly failed learning cycles I have managed to charge to full, see Max Error > 3% and update_status change. I then discharge the pack to empty and the RA table is updated but no matter how long I wait after the pack is discharge (up to 24 hours) update_status and MaxError never change again. So it seems I am missing something, this is happening consistently with a single pack configuration. Where should I be looking to fix this?

    Secondly, I am wanting to generate golden pack rom files that I can program to packs off the production line without re-running the learning cycle on those packs. The RA table values and QMAX values however would be specific to this pack (and even seem to change between cycles on the same pack) As such would I be best to run the cycle of a number of identical packs and then average each individual value across the packs to obtain a less-pack specific, more general golden pack rom file?

    Cheers,

    David
  • For question 2, no just that one golden file is needed .Each gauge will learn independently the qmax and ra of the cells attached while in the field.

    for q1. I woud suggest using a different discharge current. c/7 preferably and discharge to below min voltage specified. Even though Ra changes, doesn't mean update status will go to 06. if a condition is being violated, it will not change which i suspect is happening in your case.

    thanks
    Onyx