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.

TCA9517-Q1: I2C Not Working Properly

Part Number: TCA9517-Q1
Other Parts Discussed in Thread: TCA9517, MSPM0G3519, LP-MSPM0G3519

We have the system that shown down below. We are having a I2C communication issues. TCAL devices works as expected but, TMAG devices does not work properly. We try to read data from tcal devices but the data we get back is wrong or currupted.

We are supplying tmag devices thrugh the tcal device. Tmag devices enabled one by one and changing i2c address.

What is wrong on our system design? What are we doing wrong?

  • Hi Mesut,

    To narrow down on root cause, it would be helpful to provide the full schematic of the TCA9517, as well as the waveforms at A/B side of the device. One thing to keep in mind is that the pull-ups on B side should be sized accordingly, to ensure that a VIL back into the device at this side is less than 0.4V:

    Regards,

    Jack

  • Hi Jack,

    I tested only the sensor side with STM32 NUCLEO-G474RE to ensure sensors are working. The sensors worked just fine with 2K2 pullup resistors at both 100kHz and 400kHz I2C frequencies. But one sensor was not working. After investigation we determined that one sensor's SCL and SDA lines were soldered in reverse. 

    After fixing the sensor connection our system worked at 100kHz. But not worked properly at 400kHz. 

    R63 and R64 not populated. 2k pullup resistor soldered between 3V3.GR1 and SCL, SDA lines.

    C1: Sensor Side, C2: Host Side

    100KHz SDA Line

    400kHz SDA Line

  • Hi Mesut,

    Can we attempt to retest with stronger pullups, i.e 1kohms? 

    I tested only the sensor side with STM32 NUCLEO-G474RE to ensure sensors are working. The sensors worked just fine with 2K2 pullup resistors at both 100kHz and 400kHz I2C frequencies.

    What is the difference between this board that allowed for 100KHz/400KHz operation vs. the board that does not allow it to function? 

    After fixing the sensor connection our system worked at 100kHz. But not worked properly at 400kHz. 

    Regards,

    Jack

  • Hi Jack,

    Can we attempt to retest with stronger pullups, i.e 1kohms? 

    I have tested with NUCLEO-G474RE and 1K pullup resistor. Sensor side working fine with 400kHz. Here is the waveforms:

    What is the difference between this board that allowed for 100KHz/400KHz operation vs. the board that does not allow it to function? 

    On our system, we are using MSPM0G3519 as a master MCU and we have TCA9517 in between MCU and Sensor Side. On the test setup we have NUCLEO-G474RE as a MCU and directly connected to sensor side with pullup resistors.

    I can be sure that the sensor side is working. The  problem may be on the MCU side or on the TCA9517 side.

    How should I proceed?

    Thanks

  • Hi Mesut,

    As the board with the MSPM0G3519 is functioning and NUCLEO-G474RE is not, it would indicate that investigation on the second MCU should looked further. From the waveforms, the rise times are a bit slower (which can be remedied with using stronger external pullups), though I do not see anything alarming on the waveforms which you provided (i.e false logic high/low signal), otherwise please help to clarify the specific concern is. 

    Regards,

    Jack

  • Hi Jack,

    I tested sensor side with LP-MSPM0G3519 EVM. It works both 100kHz and 400kHz. Here is the signal:

    So far I tried:

    Sensor Sİde + NUCLEO-G474RE Working

    Sensor Side + LP-MSPM0G3519 Working

    Sensor Side + TCA9517 + MSPM0G3519 NOT Working

    When sensor side directly connected to MCU it is working. But not working with TCA9517.

    Should I remove the TCA9517? Do I need I2C buffer or repeater for 60-70 cm cable?

    Thanks

  • Hi Mesut,

    60-70cm length cable is adequate loading, however when pairing with multiple peripherals on sensor side, the total capacitance on the bus begins to increase, so the system can benefit from an I2C buffer to help redrive the capacitances. This app note has the the calculation of the external pullups to satisfy the rise time/ max Cload of the I2C bus depending on your mode of operation. What are the VIL/ VOL thresholds of the MCU on Host side? 

    Regards,
    Jack

  • Hi Jack,

    We are using MSPM0G3519 MCU on the host side. We supply the MCU with 3V3. Here is the VIL/ VOL:

    Datasheet, 7.10.1 Electrical Characteristics

    VOL : 0.4V Max

    VIL  : -0.3V Min, 0.8V Max

    Thanks

  • Hi Mesut,

    With the TCA9517 interfacing this device on the B-side, the VOL of 0.54V would still be accepted into the MSP as it is less than 0.8V max, and the VOL of the MSP is also within the max VILC on B-side. 

    Regards,

    Jack