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.

BQ40Z50-R2: Current Calibration Not Working

Part Number: BQ40Z50-R2
Other Parts Discussed in Thread: BQSTUDIO, BQ40Z80

I want to do a learning cycle with my hardware and pack, but I saw that the current readings are off. There is a both an offset (-30 to -40 mA reported with no load or supply attached), and some sort of error (it doesn't scale correctly as I adjust the current.

I can run the calibration through bqStudio and get it to report the correct value at a given point, but it isn't accurate at other current points (and it still ends up an offset of 30-40 mA). What am I missing? Thanks!

  • Ok, playing with things further, I seem to have gotten something reasonable by manually adjusting the "Calibration->Current->CC Gain/Capacity Gain", and "Calibration->Current Offset->CC Offset". Was this the right way to do things? 

  • Hello Eric,

    If you are calibrating on your own hardware you will need to calibrate the board offset as well. I don't believe BQStudio supports board offset at this time because it is usually done in production. You will need to follow the app note for how to set the value.

    The applications note regarding how to calibrate all the needed gains and offsets may help you debug, you shouldn't need to do trial and error to manually change those values.

    Here's the app note: https://www.ti.com/lit/an/slua734a/slua734a.pdf?ts=1597075785130&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FBQ40Z50-R2

    Sincerely,

    Wyatt Keller

  • Hi Wyatt,

    Thanks for the info. I had tried this procedure before, but tried again, and got further (I realized this time that having bqStudio scanning the registers kicked it immediately out of the mode I was trying to put it into, so it never responded properly before to my block access request). 

    However, the calibration procedure seemed to make the current measurement less accurate, which makes me think that I'm misunderstanding / missing something. Here's what I did:

    1. Send message 0x002D to set CAL_EN. Saw that flag set in the Bit Registers section.
    2. Send 0xF082 to ManufacturerAccess().
    3. Polled ManufacturerBlockData (Send 0x44 to "Read Block" in the Advanced Comm SMB tab in bqStudio). Now I got back the data I was expecting, and could pick out the ADCcc value (ranged from 1-3, so I called it 2). Example message reply: 82 F0 E2 02 02 00 73 48 52 46 F4 30 6C 48 C6 00 1A 41 01 00 03 00 FF FF 03 00
    4. Coulomb Counter Offset Samples is set to 64, so that gives a CC Offset of 128 (which I entered in).
    5. I observed the measured current go from about -40 mA to about -45 mA. This doesn't look correct, but don't see what else to do here.
    6. Tried calibrating the board offset next. This resulted in a value of AAaa of 0xFFEA (Example Received message: 81 F0 2D 01 E9 FF BC 48 D2 46 17 39 CC 48 C5 00 66 43 EA FF EB FF EB FF E7 FF)
    7. Calculated ADCcc = -(0xFFFF - 0xFFEA + 0x0001) = -22
    8. Calculated board offset = (ADCcc - CC Offset) * Coulomb Counter Offset Samples = (-22 - 128) * 64 = -9600. Setting this gives a current of 225 mA. Again, this looks really wrong.

    Anything that you can spot that I goofed up? I suppose I could try the CC Gain/Capacity Gain Calibration, but I don't see how that can help with my zero current being so off.

    Thanks,

    -Eric 

  • Hello Eric

    Here are the steps of getting the ADC values with the BQ40Z80, which should be a very similar process, I have used these steps before and they are correct:

    1. Do the calibration with the bqStudio and make sure cell1 gain/pack gain/Vc6-Vss gain are updated.
    2. You would need to be in the Calibration mode.
    3. Send 0x2D to 0x00 cmd (Write word)
    4. You will see bit 15 [Cal] of manufacturing Status = 1
    5. Send 0xF081 to 0x00 cmd (Write word)
    6. Read cmd 0x23 (Read Block)
    7. Send 0xF082 to 0x00 cmd (Write word)
    8. Read cmd 0x23 (Read Block)
    9. You should get the similar values for cell1 ADC/pack ADC/Vc6-Vss gain
    10. Do the gain calculation with the actual voltage and compare to the DF calibration gain values.

    Are you able to calibrate the voltage correctly? Is it just the current calibration that is incorrect? Yes you will need to turn the auto refresh off for calibration.

    Sincerely,

    Wyatt Keller

  • Hi Wyatt,

    Thanks for the advice - I really appreciate your help with this. I finally realized that the current offset was from our other electronics - they're not nearly as efficient as I would have thought. I will run with them off while I try to do the auto calibration. 

    Thanks again,

    -Eric