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.

TCA9539-Q1: I2C NACK Issue

Part Number: TCA9539-Q1
Other Parts Discussed in Thread: TCA9539

Hi Team,

My customer is seeing some strange behavior on TCA9539-Q1 regarding multiple I2C reads and we are not sure what is going on.

Here's the rundown of their board:

  1. 400KHz I2C bus w/ 1.5K pull-up on SDA, SCL
  2. Overall bus capacitance of ~90pF
  3. We have 4 TCA9539 devices all on different addresses (A0-A1)
  4. Address pins are tied hard to their respective rails
  5. Rails remain stable during operation (i.e. bus dips are <<Vcc_GH)
  6. Reset pin remains stable during operation
  7. Slowing down I2C to 100KHz makes the issue more frequent!
  8. The issues are consistent across boards
  9. Assigning output duties to a different TCA device causes the I2C issue to follow that device- i.e, the issue is not confined to a particular IC but rather the function the IC is assigned.
  10. The other 3 TCA devices are configured as inputs and do not have problems.

Here's what they are observing:

Our software executes the following in a loop:

  1. Read PORT0 config (address 0x06) from device 0x77
  2. Read PORT0 output (address 0x02) from device 0x77
  3. Write PORT0 output (address 0x02) from device 0x77

This transaction succeeds for a while (thousands of transactions) and suddenly fails where the slave NACKs its address. Our master delays 20us and retries 3 times before giving up. The slave NACKs all 3 times. If we continuously retry, the slave will suddenly begin to respond after some 20-50 retries. If we remove step 1 and only execute actions in steps 2 and 3, the transactions never fail. Is it valid to repeatedly read the PORTx output config register?

Here are a few scope shots to illustrate what is going on:

3x Slave NACK:

Good Transaction:

Master Retry Behavior:

Signal Integrity:

Slave NACK:

Thanks,
Mitchell

  • Hey Mitchell,

    Can we see a schematic layout? If you need to keep this private, please email me at duynguyen@ti.com

    What is the end equipment?

    Can you explain your testing a bit more? (Why repeat thousands of read writes?) I'd like a bit more context on what you are testing and what is going on around the system while you test (EMI testing around the system?). Any motors turning on and off (or inductive loads)?

    Thanks,

    -Bobby

  • Hi Mitchell,

    Do you have any updates on this issue?  Or, have you been able to review Bobby's questions above?

    Thanks,
    Max