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.

BQ76952: I2C Communication Hang and Initialization Issue

Part Number: BQ76952

Tool/software:

Dear TI Expert,

We are facing problem in following explained case in our smart BMS (BQ76952 IC with MCU STM32L073RBT6)

We are moving in following sequence:

Case 1: 

Step1: All cell wires are connected to battery with proper wire harness.

Step2: All temperature sensors are connected through appropriate wire harness.

Step3: Microcontroller is powered up.

Step4: Microcontroller initializes BQ76952 with all default parameters which have defined.

Step5: Since it is smart BMS we are required to change the setting of parameters. Hence, we are to inform to that when we are changing the setting for multifunction pin like Temperature, Vcell Mode and Balancing, Desired settings are not performed it taken previous setting only.

 Please suggest Remedies exact reason what we are missing?

Case 2:

Step1: Before going to deep sleep, we are disabling 3.3V and 5V by setting DSP_LDO & DSP_LFO to zero. we are sending into deep sleep through command.

Step2: When microcontroller wakes up, we are making RST_SHUT high for 300mSec.

Step3: By Step 2 BQ76952 comes out from deep sleep and Reg1 & Reg2 becomes live (3.3V and 5V) but BQ does not communicate with MCU. It pulls down SCL Pin low (Permanently).

Please suggest remedies and exact reason of the behavior.

Thanks 

Rahul Sharma 

  • Hello Rahul,

    Thank you for your patience.

    Hence, we are to inform to that when we are changing the setting for multifunction pin like Temperature, Vcell Mode and Balancing, Desired settings are not performed it taken previous setting only

    Have you performed OTP on the BQ76952 with those new settings? If not, after a full reset/power cycle, the device will load up it's default settings. Further information on how to OTP device can be found in Section 3 OTP Programming of the Calibration and OTP Programming Guide and more information on resetting the device can be found in this Reset FAQ

    Before going to deep sleep, we are disabling 3.3V and 5V by setting DSP_LDO & DSP_LFO to zero. we are sending into deep sleep through command.

    When changing the Settings:Configuration:Power Config[DPSLP_LDO] while in CONFIG_UPDATE mode? We recommend doing so in CONFIG_UPDATE mode to ensure stable operation while settings are being modified.

    When microcontroller wakes up, we are making RST_SHUT high for 300mSec

    Just to clarify, is the microcontroller waking up before you do a partial reset? Or, are you waking up the device from DEEPSLEEP mode by doing a partial reset? 

    By Step 2 BQ76952 comes out from deep sleep and Reg1 & Reg2 becomes live (3.3V and 5V) but BQ does not communicate with MCU. It pulls down SCL Pin low (Permanently).

    Have you tried generating 8+1 clock signals in attempt to release the bus? This previous forum post may be able to assist you: How to Inform an I2C Target to Release the Bus.

    Best Regards,
    Alexis