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.

BQ40Z80: Update of Ra table and QMax1 to 6

Part Number: BQ40Z80
Other Parts Discussed in Thread: BQSTUDIO, GPCCHEM, BQ78350, BQ34Z100

Hi,

My customer has done charging until TC set and discharge until CUV in their 6S6P battery, but Ra Table and QMax1 to 6 are not updated from the value which is set before Optimize Cycle.  The attached files are log file for discharge and csv file of the parameters.

Could you provide me your advice to update Ra Table and QMax1 to 6?

Best Regards, Taki

  • Taki,

    QMax updates when you get 2 rested OCV readings 37% DOD apart. (90% on the first cycle). If update status in the dataflash is 0x04 that means the device is unlearned. The customer would need to follow the learn cycle procedure document.

    https://www.ti.com/lit/an/slua903/slua903.pdf?ts=1617732450442&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FBQ40Z50-R1 

    To get resistance updates you must first have gotten a QMax update, then the discharge rate must be bigger than C/10 of design capacity rate. 

    If additional debug is needed please provide a GG file and Log file from bqStudio to review. 

    Thanks,

    Eric Vos 

  • Hi,

    Can I post some questions?

    I will have to be excused for my poor English.

    I followed slua903.pdf, but Update Status doesn't change 0x05 to 0x06.

    Please help me to finish the leaning cycle.

    The detail is following:

    1. I discharged the battery to empty.

    2. The battery relaxed 5 hours.

    3. I charged The battery to full.

    4. The battery discharged a few seconds before the Qmax was updated, so Update Status was still 0x04. (mistake)

    5. And 2 hours later, the [REST] was set.

    6. And I discharged battery to empty, and relaxed it 5hours.

    7. The QMax was updated. Update status became 0x05.

    8. And charge-relax-discharge-relax cycle ran.

    9. And the Ra table was updated but QMax wasn't updated, and now Update Status is still 0x05.

    (I checked [REST] bit each relax methods, and DOD0 Passed Q was satisfy more than 90% of QMax)

    Did the Qmax be locked, when the QMax was updated after discharge for the first cycle?

    DOD0 Passed Q was overflow during charging and discharging, would it work something wrong?

    (another question)

    When I change DF and reset the device to apply the setting after relax time, must I relax the battery again?

    Best Regards, Masami

  • Hello,

    Can you share your log and a .gg file before and after the cycle? We will need more data in order to debug learning cycle questions.

    Was the correct chem ID found before the learning cycle using the GPCCHEM tool?

    Sincerely,

    Wyatt Keller

  • Masami,

    Going from Update status 05 to 06 requires the resistance to be updated. Please make sure you are discharging at above C/10 rate. Anything smaller will be disqualified from learning. 

    Thanks,

    Eric Vos

  • Hi,

    Thank you so much!

    They are the latest logs and the .gg files. (The log files are split, but charging and discharging are performed continuously.)

    Could you please analyze them.

    I used the GPCCHEM tool but the rate was C/5 then

    Best Regards, Masami

  • Masami,

    Everything about this cycle looks correct. It looks like you exported the GG file prior to the update status changing. If you run another cycle does it get updates to 06? Or do you have accuracy concerns? 

    Thanks,

    Eric Vos

  • Hi, Vos,

    Thank you for your analyze.

    I ran another cycle but it doesn't updates to 0x06, it was still 0x05.

    Can I ask 3 question.

    1. What do you meen "exported the GG file prior to the update status changing". I exported it after [REST] bit had been set. If I run some more cycles, will it updates to 0x06 someday?

    2. I think there may not be accuracy concerns, but if there are, should I run C/10 discharge again for GCPCHEM?

    3. If I change Data Memory(e.g. SOC Flag Config) and reset the device afeter relaxe, should I discharge again before relax and charge?

    Best regards.

  • 21041603_DCG3A.zip

    Could you please check this file.

    [RX] Flag pals occurred only 13 times during discharge.

    Even if the configurations were right, does it happen?

  • Masami,

    1) You must do a "read all" prior to exporting to refresh all the values.

    2) Yes this is the best actions

    3) Most registers you do not need to reset the gauge. Only things that impact how the hardware function. SOC Flag Config is not one of them.

    You might only need to enter Dsg or Chg to take effect. Reset will set the RDis flag which you must rest to clear prior to the gauge allowing resistance updates. 

    Thanks,

    Eric Vos

  • Masami,

    the [RX] flag toggles every time you get a resistance update, 13 is expected. You seem to be stuck in a weird update status mode. Please do the following

    1) Write Update Status = 06

    2) Write Ra Flags = 0055, Write RaX flags = 0000

    3) Write Rax values to Ra values. 

    Thanks,

    Eric Vos

  • Vos,

    Thank you for your responses.

    I'm going to do 1,2,3 and another cycle and post the result here.

    Best Regards, Masami

  • Hi, Vos,

    I've done the following:

    A) Discharge to Empty and waited 5 hours.

    B) Chemistry Programing. (the same Chem ID)

    C) one cycle. (Charge-relax-discharge-relax)

    D) change registers. (Above 1),2),3) )

    E) one cycle. (Charge-relax-discharge-relax)

    F) Got GG file

    The [RX] flag toggled one time during E. 

    Ra Flags became 0000.

    Rax Flags became 0055.

    Are these how these are supposed to work? 

    This is log file and GG file. Could you please check this file.20210423_log_gg.zip

    Best Regards, Masami

  • Masami,

    Yes the ra and rax flags will toggle the 55 back and forth. They update back to back since we have a flash update wear out limit. I do not see an issue with the logs. The resistance is very low, but this is expected with packs this large and low discharge rate.

    Thanks,

    Eric Vos

  • Hi, Vos,


    Thank you for your time.


    Sorry, let me know one more point.

    > 3) Write Rax values to Ra values.


    What does It mean exactly? In the following case, what should I do?

    Right after Chemistry programed:

    "Cell0 R_a 0" = 100, "xCell0 R_a 0" = 100, etc.

    When the cycle completed:

    "Cell0 R_a 0" = 20, "xCell0 R_a 0" = 100, etc.

    (Ra values updated and Rax values did not change)

    Which should I do A or B?

    A) Adopt Rax values:
    "Cell0 R_a 0" = 100, "xCell0 R_a 0" = 100, etc.


    B) Adopt Ra values:
    "Cell0 R_a 0" = 20, "xCell0 R_a 0" = 20, etc.


    I did A but get a accuracy problem(The SOH became 86%, though It's expected about 100%).
    I did B and it seems to work well.

    Should I do B?

    Best Regards, Masami

  • Hi, Vos,

    Sorry, can I ask another question?

    I ran another charge-relax-discharge-relax cycle in the end equipment setting.

    SOH and SOC values are OK, but Qmax was not updated and Update Status is still 0x06.

    Should I write Update Status = 0e?

    Best Regards, Masami

  • Hi, Vos,

    I was not good at explaining it, so let me correct it.

    Is my understanding correct?

    Could you please answer?

    - Keep Ra Values which was updated.

    - Write to change Rax Values that was left at their before the learning cycle values.

    In other words, the Ra/Rax values are changed as follows:

    Before the learning cycle:

    1_start.csv

    After the learning cycle:

    2_learned.csv

    After write Rax values:

    3_changed.csv

    Best Regards, Masami

  • Masami,

    Ra and RaX values should be the same values after learning. If they are not please update the X table to the non-X. Only do this one time as the gauge learns it will swap between the tables, but they should stay close and generally in sync. 

    Thanks,

    Eric Vos

  • Vos,

    Thank you for your answer.

    RaX values were not updated after my learning cycles, but only Ra values were updated.

    (I ran learning cycles even after F/W programing bq78350_R1_v1_04_build_26.srec, and I got the same results)

    I guess learned Ra values would be lost if I write the X table to the non-X table.

    In this case, what should I do?

    Please, let me know.

    Best Regards, Masami

  • Hi Vos,

    I heard Masami still couldn't solve the issue.  The update status is not change from 06 to 0E, if charge and dis-charge has been done after changing design capacity with changing update status and Ra values.

    Could you list up the possible cause that update status is not changed?   It help us to solve the issue.

    Best Regards, Taki 

  • Taki,

    The update status will go from 06 to 0E for the next successful QMax update. This update only needs 37%. SO doing a simple Charge, relax, discharge, then relax should work. 

    It would be disqualified if you were resting within the "Flat Zone" of the chemistry. 

    Please make sure the QMaxDOD0 parameter is updating during the relaxations. 

    Thanks,

    Eric Vos

  • Vos,

    Thank you for your many replies.

    In all my log files, "DoD Passed E" draws weird line. I think it should be the overflow issue.

    If Load Select = 1, then should IT work without problem though with the "DoD Passed E" behavior?

    Best Regards, Masami

  • Masami,

    No. You need to make sure none of the gauging parameters overflow. The reason your E is overflowing is because it is a power calculation. Voltage X Capacity/Current is causing the energy to exceed the 32K register value. 

    You will need to "scale" the gauge down. This is done in the calibration part of the learning. You apply 10A but tell the gauge it is 1A, then divide all your capacities by 10x (as an example).

    Please refer to the bq34z100 "using large capacity cells" as a reference. 

    Thanks,

    Eric Vos

  • Vos,

    Thank you!

    How about Load Select = 0?

    Even if Load Select = 0 (Constant Current mode), should I "scale" the gauge down?

    The system current is lower then 5A, I would rather not to "scale" down if possible.

    Best Regards, Masami

  • Vos,

    Excuse me. Let me correct my post.

    I meant to say not "Load Select" but "Load Mode".

    Best Regards, Masami

  • Hello Masami,

    The current scaling isn't only for max current ratings, it's also for large capacity cells over the max capacity. If your max discharge is less than the max reported by the gauge and the max capacity is less as well you should not need to scale. The load mode/load select wouldn't have a direct correlation unless you were trying to ignore some large pulses of current to be used by the gauge for the algorithm.

    Sincerely,

    Wyatt Keller

  • Wyatt, Vos,

    Thank you for everything you have done.

    I have run the 2nd and 3rd charge-relax-discharge-relax cycle, and Update Status is 06 and 0e.

    My issues are resolved. Tank you so much!

    Best Regards, Masami