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: Auto calibration function

Part Number: BQ40Z50
Other Parts Discussed in Thread: BQSTUDIO

Tool/software:

Need support how to diagnose the CC auto calibration function. CC Auto config is set to 0x7 (Bits Auto_Cal_En, Auto_Neston and Offset_Taken are set, see BQ40Z50-R3 reference manual chapter 13.2.1.4).
Based on this setting, an auto calibration should be done on entry into sleep mode (and sleep mode is being activated basically with no I2c communication no "present" signal).
However, behaviour is as follows:
- accu with BQ40Z50R3 is not used for >10hours (time for preventing flash wear out)
- accu is inserted into test adapter with active present signal and I2c communication to PC, battery management studio is active
  -> BMS shows accu status (SOC, voltage,..)
- when reading Data Memory CC Auto offset shows value1 (e.g. 10)
- when reading Data memory again (using "Read all" function) after a few seconds CC Auto offset shows different value2 (e.g. 12)

So Questions are:
- why is CC auto offset changing when battery is activated / waking from sleep at all?
  based on the documentation it should only change when entering sleep mode

- is there a way to read (or even reset) the time since last CC auto offset calibration was done?

  • Hi Werner,

    Based on this setting, an auto calibration should be done on entry into sleep mode (and sleep mode is being activated basically with no I2c communication no "present" signal).

    Can you please confirm the device is entering sleep? This can be observed by attaching a scope to the TS1 pin of the device and looking at the sampling rate, where in normal this should be 1s but in sleep should be 4s.

    - accu is inserted into test adapter with active present signal and I2c communication to PC, battery management studio is active
      -> BMS shows accu status (SOC, voltage,..)
    - when reading Data Memory CC Auto offset shows value1 (e.g. 10)
    - when reading Data memory again (using "Read all" function) after a few seconds CC Auto offset shows different value2 (e.g. 12)

    If possible, can you tell me if there are any differences in the CC Auto Config register value during this time?

    Regards,

    Anthony Baldino

  • Hi Anthony,
    - difficult to monitor TS1 pin (closed housing, only DC lines, SMBus communication and present signal accessible from outside. My assumption was/is that device will not be entering sleep mode as present signal is active and battery management studio shows connection active (SOC, voltage,.. are displayed) -> SMBus  communication is active; bus timeout is currently set to 5sec.
    Based on the SMBus signal recording (2nd screenshot below) I assume that the reason for the "going to sleep" is the bus timeout of 5sec (being too low); battery management studio is checking for a device with a cycle of ~7.2sec; if present is activated shortly after this polling, bus timeout will pass and BQ will go to sleep before next polling. In the test shown present was activated at ~13sec, immediatly after the 2nd poll cycle visible. When reading the data memory once battery management studio was connected I got 2 different calibration values -> auto calibration was done. I will check this with a modified setting of 20sec for the bus timeout.
    - no difference in CC auto config can be seen, always set to 0x7

    Is there any way to reset the 10hrs timer?

  • Hi Werner,

    - difficult to monitor TS1 pin (closed housing, only DC lines, SMBus communication and present signal accessible from outside. My assumption was/is that device will not be entering sleep mode as present signal is active and battery management studio shows connection active (SOC, voltage,.. are displayed) -> SMBus  communication is active; bus timeout is currently set to 5sec.

    If bqStudio is also attached, turning off the auto-refresh will stop the constant polling to the device, which could also be keeping it out of sleep. Also, please ensure the current being read from the device is below the sleep current.

    Based on the SMBus signal recording (2nd screenshot below) I assume that the reason for the "going to sleep" is the bus timeout of 5sec (being too low); battery management studio is checking for a device with a cycle of ~7.2sec; if present is activated shortly after this polling, bus timeout will pass and BQ will go to sleep before next polling. In the test shown present was activated at ~13sec, immediatly after the 2nd poll cycle visible. When reading the data memory once battery management studio was connected I got 2 different calibration values -> auto calibration was done. I will check this with a modified setting of 20sec for the bus timeout.
    - no difference in CC auto config can be seen, always set to 0x7

    Is there any way to reset the 10hrs timer?

    I do not believe there is a way to reset the 10hr timer without exiting sleep and reentering it, however I will look into the firmware of the device to see if there are any other ways to accomplish this.

    Regards,

    Anthony Baldino