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.

WEBENCH® Tools/BQ35100: Reading data flash

Part Number: BQ35100
Other Parts Discussed in Thread: BQSTUDIO

Tool/software: WEBENCH® Design Tools

Hi,

I'm using a bq35100EVM, and I'm trying to read data flash. According to the datasheet : 

12.1.2 Read from DF Example
• Write 0x00 0x40 (DF address in little endian format) to ManufacturerAccessControl(0x3E, 0x3F).
• Read ManufacturerAccessControl(0x3E, 0x3F) to verify.
• Read data from MACData(0x40–0x5F).
• Read checksum and length from MACDataSum(0x60), MACDataLen().
• Verify checksum. All data above can be read in a single transaction by reading 36 bytes starting at ManufacturerAccessControl().

Using this sequence, I'm able to read the first 36 bytes of data flash.

But I don't understand how to acces the rest of the data flash. Even if I read 36 bytes from MACData(0x5F), I can only acces a little part of the data flash.

It looks like I'm missing a point. Can you help me please ?

Regards.

Arthur

  • Hi Arthur,

    Pls review the app note below..

    www.ti.com/.../slua801

    thanks
    Onyx
  • Hi Onyx,

    thanks for answering, this document helps me but I still have some problems.

    For example with the CC Offset register. In the BQ35100 thecnical references, it is described as follow :

    Calibration    Data     0x4008    CC Offset    I2    –32767    32767    –1400 mA

    And according to the document you've send me : I2    Signed    2-byte    integer    –32768    32767

    But when I'm reading this register with BqStudio, it's value is -0.42mA.

    Shoul'd I ignore the value from BqStudio ?

    Thanks

    Arthur

  • Hi Arthur,
    I think bqstudio is right and the TRM is wrong. I wouldn't advice trying to calibrate CC offset anyway because the gauge typically does that before going into sleep mode.

    thanks
    Onyx
  • Hi Onyx,

    I won't calibrate CC Offset that was just an example.

    But I need to calibrate CC Gain and CC Delta. And I'm very confuse by the values I read in BqStudio.

    Name                Default TRM value                  Default BqStudio value

    CC Gain            0.04768                                   99.8

    CC Offset          5.67745E6                              100

    According to TRM calibration routine page 16 : ccDelta = ccGain * 1193046

    Which doesn't correspond to BqStudio values.

    Moreover, when I convert 0.04768 to a 4 bytes values recognize by the gauge, the value match the default data flash memory.

     That's why I think TRM is wright and BqStudio is wrong.

    If BqStudio is actually wrong, is there a way to compute real data flash values from BqStudio values ?

    thanks

    Arthur

  • Arthur,
    When you perform the calibration routines using bqstudio, it makes adjustments to the calibration parameters notably if doing current calibration, it adjusts cc gain ad cc delta. After doing the calibration, if your current measured isn't correct then it means bqstudio values are wrong which i doubt because the device and the tool was tested prior to device release.

    For posterity, we will test the calibration on our board to make sure the values bqstudio is provides after calibration gives accurate current measurement.

    thanks
    Onyx
  • Arthur,

    My short answer is both are correct.  bqStudio is doing a conversion to convert the .046 to a mOhm value representing the sense resistor. bqStudio applies a formula to the value put into DF before writing to the device. The goal of this is if you would like to change your sense resistor you can use bqStudio to write in your new sense resistor value in mOhms and be pretty close without actually calibrating. It is also useful as a quick check, if you run calibration through the plug-in the new value you read should be very close to your senseR. 

    If you would like to know the raw value in the device, doing a DF read is the best method. 

    Let me know any other questions

    Thanks,

    Eric Vos