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.

TPA6404-Q1: i2c read

Part Number: TPA6404-Q1

Hi,

I am trying to read using I2C (random read) from my controller, successfully got the value , but unable to generate stop condition and hence I2C bus is busy. I2C write is working every time.

  • Hi Padmesh,
    Please let me clearify this question at first. When you read the register by I2C, you can get the value but I2C is always busy, right? Could you please show us the I2C read/write operation waveform captured by scope? Is it test performed on the EVM or your board please?
    Best regards,
    Shawn Zheng
  • Hi Shawn,

    Thanks for responding. After the value is read , stop condition is initiated from controller but the bus seems to be busy and start or stop does not seem to work. Test is performed on our custom board.
    One more thing , is repeat start a must for I2C read?

    Regards,
    Padmesh.
  • Hi Padmesh,

    I2C of this device follows standard I2C protocal, so repeat start is required after device address write(below sequence first two bytes).  I would suggest you to capture and post SDA/SCL waveform, then we can easily know what is happening.