BQ76952: I2C communication issue using ISO1640 I2C Isolator

Part Number: BQ76952
Other Parts Discussed in Thread: ISO1640, , TCA9517A

Tool/software:

Dear TI Expert,

we are communicating BQ7695202 BQ IC with microcontroller STM32G0B1RET6 using ISO1640 I2C Isolator.

we are attaching following details:

1. waveform without  ISO1640 I2C Isolator pull up resistor 1.5KR.

2. waveform with ISO1640 I2C Isolator pull up resistor 1.5KR bq7695202 side.

3. waveform with ISO1640 I2C Isolator pull up resistor 1.5KR Microcontroller side.

4. waveform with ISO1640 I2C Isolator pull up resistor 10KR bq7695202 side.

5. waveform with ISO1640 I2C Isolator pull up resistor 10KR Microcontroller side.

6. we are operate I2C at 100KHz.

as you can see data line in BQ7695202 side is shifted to 600mV from GND.

Please suggest solution for getting proper waveform 

Thanks 

Rahul Sharma

  • Hello Rahul,

    Do you mind sharing a schematic for this? Also, you are still able to communicate between the AFE and the MCU correct?

    Best Regards,
    Alexis

  • Dear Sir,

    Please find the attachment.

    5% of time data loss.

    Thanks 

    Rahul Sharma

  • Hello Rahul,

    Do the SCL/SDA lines look okay when the isolator is removed? What do those waveforms look like?

    Can you also try adding the capacitors as shown in Figure 9-6. Typical ISO1640 Circuit Hookup from the datasheet and seeing if that helps?

    Best Regards,
    Alexis

  • Dear TI Expert,

    We have put capacitor as per your suggestion fig. 9.6 typical ISO1640 circuit.

    Please find the attached document of waveform.

    Observation: No improvement in waveform please what is do next.

    Waveform Analysis of I2C Isolator ISO1640.pdf

  • Dear TI Expert,

    We are waiting your response, my project is suffering.

  • Hi Rahul,

    Thank you for the reminder.
    I am from the ISO1640 product line. We have been notified about this discussion, please allow one of us to review and get back to you in the next 24 hours. Thanks.


    Regards,
    Koteshwar Rao

  • Hi Rahul,

    I've review the inputs shared by you and came to conclusion that the issue that you're facing is SDA1 and SCL1 being DC shifted by 0.6V.

    If the above conclusion is correct then, then let me tell you that this is an expected behavior on Side1 of ISO1640 as VOL1(max) is 0.71V mentioned in datasheet. 

    If you want to know more on why is that the case for Side1 of ISO1640 and how the architecture is made inside the device, then please refer to the following FAQ: https://e2e.ti.com/support/isolation-group/isolation/f/isolation-forum/757564/faq-why-is-the-logic-low-level-output-voltage-vol1-up-to-0-8v-on-side1-of-the-iso1540-iso1541-and-iso1640-iso1641-bidirectional-i2c-isolators

    Regards
    Varun
  • Dear TI Expert,

    Primary side is connected to the IC of BQ7695202.

    will BQ7695202 function reliably.

    Thanks 

    Rahul Sharma

  • HI Rahul,

    The Logic Compatibility based on VOL/VOH and VIL/VIH of the two interconnected ICs needs to be checked and verified beforehand.

    For reliable functioning of this already in hand design, please check the VIH and VIL values of BQ7695202 pins where the Side1 SDA/SCL of the ISO1640 is connected. The VIL(min) value of BQ7695202 pins should be higher than VOL(Max) for the design to work across all operating ranges and temperature.

    Regards
    Varun
  • Hi Rahul,

    As Varun stated earlier, the voltage shift is expected due to architecture used in ISO1640 to achieve bidirectional functionality. This is a common approach used in the industry to implement I2C in isolator and is not unique to ISO1640 alone.

    I quickly reviewed the I/O thresholds of SDA/SCL lines in BQ76952 and I see that their VIL (max) is 0.53V assuming worst-case VREG18 of 1.6V. Since VOL(max) of Side1 of ISO1640 is 0.71V, I would say these two ports are not compatible.

    Please do verify if your MCU has a VIL(max) of >0.71V and if yes, then connect Side1 of ISO1640 to MCU and Side2 to BQ76952 and everything should work fine.

    If the MCU is also not compatible to ISO1640 Side1, then you can consider using an I2C buffers like TCA9517A where the VOL will improve to 0.6V. This buffer can be connected between ISO1640 and MCU where ISO1640 Side1 connects to SideA of TCA9517A and SideB of TCA9517A is connected to MCU. This is assuming that the MCU has a VIL(max) that is >0.6V (which is required by SideB of TCA9517A).

    Please consider these inputs and let us know if these inputs resolve your issues, thanks.


    Regards,
    Koteshwar Rao

  • Dear TI Expert,

    We are using STM32G0B1RET6 MCU which has VOLmax 0.4V.

    While using your buffer in primary side and MCU we see that it is not compatible.

    Please suggest if this buffer can be used in primary side and connected to BQ7695202. 

    If not, please suggest suitable isolator or combined circuit arrangement to make the product success.

    We are complete with project except this issue.

    Thanks 

    Rahul Sharma

  • Hi Rahul,

    I quickly looked up the MCU STM32G0B1RET6 VIL(max). Since you have powered ISO1640 with 3.3V both sides and also connected pull-ups to 3.3V, I am assuming VDDIO = 3.3V (worst-case 2.7V). With this assumption, the datasheet (screenshot below) specifies VIL(max) = 0.3*VDDIO = 0.3*2.7V = 0.81V.

    Since VIL(max) = 0.81V and VOL(max) = 0.4V for the MCU, these are compatible with ISO1640 Side1. Therefore, just swapping ISO1640 sides should make it work and no buffer is needed.

    Let me know if anything is not clear, thanks.


    Regards,
    Koteshwar Rao