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: When Charger is turned on I2C hangs

Part Number: BQ76952
Other Parts Discussed in Thread: LM5017

Hi,

I have designed 13s BMS using bq76952. Everything is good until a charger is connected. When the charger is connected to the battery. I can see that battery is being charged but my only problem is i2c bus freezes as soon as the charger is connected

Iterations I had tried

1. Tried the 1k, 2.4k, 4.7k pull up resistors, it didn't work

2. I even powered my  3.3V esp32 MCU with a decent power source ( with all grounds common)

3. Created a power supply for MCU, using LM5017, even it didn't work

My questions are as follows

1. What could be the issue? EMC? If yes please suggest a technique to sort this out

2. By Adjusting pull-up resistors, can we solve this issue?

3. I have gone through TI's pull-up resistor selection guide but I was unable to calculate bus capacitance, How to measure bus capacitance?

  • Hi Mounish,

    You did not describe the architecture of the circuit, high side or low side and where the I2C bus connects.  It looks like there was a figure but it shows as a broken link.  

    I2C out of the pack could be influenced by the protection FETs or sense resistor if using low side switching.  A voltage drop could cause a shift in the reference level so that the signals are not understood. For high side switching only the sense resistor should be in the path.  An external bus has longer wires and may be more susceptible to EMI than an internal path, and is likely to have more capacitance.  An internal path should have little capacitance, and likely less opportunity for EMI pickup, but could still be sensitive to where the grounds are referenced. 

    If your charger also connects to the I2C bus there could be bus contention.

    1. Look at the signals with an oscilloscope without the charger and with the charger to see what changes.  If the signals show a level shift or go low or have significant change in rise time you will have an idea of what the issue may be.

    2. Possibly, but not likely.  You will probably have to find the cause, only if the rise time is the issue will a smaller resistor likely fix the issue.

    3. You may be able to measure the capacitance of the bus with some instrument, but looking at the rise time may be the best way.  Inspect the rise time of the signal when released by the host, calculate the capacitance from the rise time knowing that the bus rises by the pull up resistor and it charges the bus capacitance.  If the bus has active drivers you may need to disable the driver and short the line low to measure when the line is released.