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.

  • Answer Suggested

Values of CC Gain and CC Delta

Prodigy 155 points

Replies: 7

Views: 4043

I am not using the evaluation software, but i am using a microcontroler with i2c to communicate with bq and I did already some writes and reads from flash I am using the bq34z100 and a I have a doubt about one of the steps to configure bq. In step 4, Determine the Sense Resistor Value, in the end is said that: The value of the current sense resistor should be entered into both CC Gain and CC Delta parameters in the Data Flash Calibration section of the Evaluation Software. In datasheet i see the position of this 2 registers in flash, but my doubt is what values i have to put in their, because i assume that is not just about put the value of resistor. My resistor is 1mOhm.

Can you help me? 

  • Helder,

    You can use the document SLUA640, available for download from the TI website, to see an example of calibrating the current and finding the CC Gain and CC Delta. The typical bqEVSW value for these parameters will be the sense resistor value. E.g. “1” for 1 mohm.

  • In reply to ThomasCosby:

    After i implemented that example to calibrate the current, i ran very experiments and i couldnt made this work.
    With a fLoad=-1045 (1045mA) the result that i have reading the current register is 0x4B=43.It's obvious that this is wrong, in quantity and signal.
    So, firts of all i want to make some questions that i have about this process.

    In the current:
    I read in others topics and i see some changes in the next formulas. I have this:



    ccGain = fLoad/(e-adj_ccOffset);

    ccDelta = ccGain * 1193046.0f;

    This is what is written in the document, is it what i really nead to make?

    In the DF-write

    Here have something wrong with the parenthesis
    Shoul i use:

    And finally, is proven that this document work in bq34z100 or exists some diferences that i should now?

    Best Regards.


  • In reply to jp_electric:

    Hello guys.

    PDF documentation to this IC is the worst out of all I read. Very confusing.

    CC Gain and CC Delta is written in F4 ;)) Of course it is not standard float (for example as Arduino uses)

    How to calculate F4 value:

    1. Byte on lowest address is used for exponent then e=byte-128-24
    2. Other 3 bytes is mantissa. Highest bit is sign.
    3. Set this highest bit (OR 0x80) then convert to long so you get m
    4. F4_value= m*2^e

    Anyway, TI, why you couldn't use standard float and just put it in mOhms into flash??? That would be easy for designers.

  • In reply to ThomasCosby:

    Hello Thomas.

    Anyway what is the difference between CC Gain and CC Delta?

    Haw you designed this fuel guage IC? It is remarkable how many functions and settings it has. ;)

  • In reply to Drahomir Komar:


    The floating point implementation is different from the standard algorithm and the document that I sent is all that I have to offer in calculating the values. The CC Delta and CC Gain are not the same and the document also provides a flow chart to calculate these parameters. The bq34z100 datasheet has a table that provides the data flash to EVSW conversion factors.


  • In reply to ThomasCosby:

    Dear All

    No one should take any notice of the flow diagram on page 8 of SLUA640, as it is full of errors.

    The F4 data type used to store values for CC Gain and CC Delta in flash with chips like the BQ34Z110 seems to be Xemics Floating Point. How it works is explained in

    How EVSW Display the Raw Data V1.03.pdf

    and there are VB functions (which do work) to convert in either direction between Xemics form in hex and the equivalent flash (not EVSW) decimal form on page 4 of


    All best,

  • In reply to Tim Rickman:

    I too have had no luck deciphering the Floating point value and just didn't have time yet to ask about it yet.


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.