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: Complaint about poor datasheet quality

Part Number: BQ35100

Tool/software:

Hello,

I'd like to make sure our driver interprets the data from the fuel gauge correctly, but the data sheet is a mess, to put it politely.

See the following two tables from SLUSCM6E and SLUUBH1C:

1. The tables do not match between the two documents about the bq35100.

2. All the things I marked red do not fit together within a given line. A signed integer with 0 as minimum makes just as much sense as an unsigned integer with -32768 as minimum: none.

3. Some entries do not make sense in the context of the physical unit used. Temperature is given in 0.1 Kelvin. The minimum is 0 K and not -327680 K, there is simply nothing below absolute zero.

4. To make things even more complicated, the chapters about the registers also have their own interpretation. For the temperature the TRM states in chapter 11.5 Temperature(): 0x06/0x07: "This read-only command pair returns an unsigned integer value of the temperature, in units of 0.1°K, measured by the device and has a range of 0 to 6553.5°K." which sound correct to me.

I'd kindly ask you to tell me the correct interpretation of the data registers. And please also correct your data sheets afterwards.

Best,
Hendrik

  • Hi Hendrik,

    Thanks for point these out. I will raise a flag over this, and these will be corrected the next time the documented refreshed.

    Temperature is an unsigned integer.

    Regards,

    Evan

  • Hi Evan,

    thank you for your response. What about the other values though? The current for example is negative in discharge mode, which is consistent with the tables. I try to avoid making any assumptions about the values. I need a source that I can trust. The tables are definitely not trustworthy in this respect.

    Best,
    Hendrik

  • Hi Hendrik,

    Sorry about that.

    AccumulatedCap - unsigned, 0 - 4.29E9

    Current - signed, -32768 - 32767 (it will be negative in discharge and positive in charge)

    Voltage - unsigned, 0 - 65535

    The rest should be correct, if you have any doubts I can verify for you.

    Regards,

    Evan

  • Hi Evan,

    thank you for the explanation. Does the same logic apply to all the Cal_* values? I'm asking because I found the following statement about Cal_Current in the chapter "3.8 Current Calibration" of the TRM: "The sign of current should be positive. Raw current samples are positive in discharge mode. This ensures that ccGain is positive." Is the sign of the raw value then just inverted compared to the other register?

    I'd like to verify the values for Cal_Current, Cal_Voltage and Cal_Temperature with you to make sure our implementation is correct.

    Best,
    Hendrik

  • Hi Hendrik,

    1. Cal_Count - Updated every time new readings are taken
    2. Cal_Current - Raw ADC current values
    3. Cal_Voltage - Raw ADC Voltage values
    4. Cal_Temperature -Raw ADC temp readings

    These values do not take into account calibration values.

    Regards,

    Diego