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.

BQ35100: can't calibrate current

Part Number: BQ35100
Other Parts Discussed in Thread: BQSTUDIO

Hello,

I'm trying to calibrate my BQ35100 with my own software.

I'm following the process from Technical reference document. I'm actually able to calibrate voltage and temperature, but I can't calibrate CC offset and current.

When I calibrate the board offset, it should modify both board offset and cc offset, but it does not. Only board offset is modified, cc offset never changes.

I also tried the command CC_OFFSET_SAVE 0x000B, but I get an i2c error from the gauge.

This prevent me from measuring a correct current, could anyone help me ?

Thanks by advance.

Arthur

  • Hi Arthur,
    What mode are you using the device in? The current measurement of the gauge is disabled in SOH mode. So change the mode to either accumulation or EOS mode and try calibration using bqstudio. If you are succesful in calibrating using bqstudio, then try using your own software.

    thanks
    Onyx
  • Hi Onyx,

    I'm in accumulator mode, and I can't use bqstudio because the gauge on my chip. 

    I already implemented most of I2C command but this one does'nt work.

    Is there something different with this command that I don't uderstand ?

    More over, is there any librairy or code examples available for this gauge ?

    Thanks

    Arthur

  • Hi Arthur,

    I am not a software expert, however, see if this app note below can help you some.

    www.ti.com/.../slua640b.pdf

    thanks
    Onyx
  • Hi Arthur,

    By the way, when performing board and CC offset, there should be no correct flow otherwise you will have wrong current measurement. Also, the gauge performs autocalibration of ccoffset before going into sleep mode, so i wouldn't bother with the fact that your cc offset isn't changing at this time.

    Also, I have pinged our software team to see if I can get further insights on your issue.

    thanks
    Onyx
  • Hi Authur

    I heard back from the firmware engineer that wrote the code for the device.. his response as follows:

    The way calibration works has changed over the years. And for the bq35100 there are some special considerations. However, CC Offset and Board Offset are fairly straightforward, but not as described in section 3.6 of the TRM. For the bq35100, it is important to follow the instructions for having the gauge in the ACC mode, the GE pin asserted high, and GAUGE_START command should be in effect. It is not necessary when using the MACs for CC Offset and Board Offset to enter the Calibration mode. These calibration should be done with no current flowing. To get the correct board offset the CC Offset should be done first; it is not done automatically in this version of FW. When the Board Offset MAC has completed it will automatically write the new board offset to flash memory. Use the CC_OFFSET_SAVE MAC to have the gauge FW write the new calibrated value to flash.

    The voltage calibration is described correctly in the TRM. It may be a bit hard to follow. so let's clarify. Here the gauge should be in the same state as I described for the CC Offset. In addition the gauge should be put into the Cal Mode as described in the TRM. The pack voltage register (0x08/0x09)always displays an output with that value including the offset term. Referring to section 3.7 in the TRM, the raw data from the voltage conversion is displayed at registers 0x7c/0x7d. In the single cell configuration where the BAT pin is used for cell voltage input the raw data will be in millivolts. If VIN is used then the values will be raw converter counts.

    i hope this helps

    thanks
    Onyx
  • Hi Onyx,

    Thanks this really helps ! 

    I havn't seen that there was a different register for raw voltage. 

    I managed to calibrate my current without calibrating CC_Offset and Board_offset.

    Thanks for your answers.

    Arthur