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.

TCA9534: I2C have a big glitch on data pin (TCA9534)

Part Number: TCA9534

Tool/software:

Hi,

I use the Arduino_UNO to control the chip  TCA9534PWR and it can work but it have a  have a big glitch on data pin.

the glitch is a 1.7MHz puls and my cloxk is 50KHz, Add The RC filter is not work.

Could you have any suggestions to resolve it??

  • Hi Gordon,

    This is expected behavior of I2C and should not cause an issue in the operation of your system. 

    The "glitch" occurs on the 9th clock edge of SCL. This is the hand-off between the controller and target device. The controller releases SDA in order for the target to pull the bus LOW on SDA in order to transmit a ACK bit back to the controller to tell the controller device the byte of data was correctly sent. 

    During this handoff, the SDA bus is idle for some time. The PU resistors on SDA will automatically pull up the SDA bus towards VCC until the target pulls the bus LOW. THus a "glitch" occurs - which really isn't a glitch but the result of an open-drain topology bus network. 

    If you want to get rid of this rising edge, you can adjust the timing of the handoff (I don't think this can be done in Arduino). 

    If not in the IDE, try making the PU resistors larger. Try 10k, although using 10k PU resistors might make rise-time large which could limit your overall I2C speed. 

    Adding in an external cap to ground could also reduce the rising edge. 

    Regards,

    Tyler