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.

TPS65982: I2C Communication

Part Number: TPS65982

Hi Team,

My customer is trying to communicate between a host and the PD controller. They have confirmed that the host can see the PD controller on the I2C using a common linux i2cdetect utility. They are sending commands to addr 0x38 with I2C_ADDR and both DEBUG_CTL pins tied to GND, but when they try to read from different registers, they are getting all 0's for all the registers including the first byte that specifies how many bytes of data are in the register. 

Where are the places where we should begin debugging? I've asked to confirm they see 3 ACKs before the number of bytes value comes in, but after that, I'm unsure what could be causing this. The schematic for this has also been reviewed previously by myself and the team. 

Regards,

Matt

  • Hi Matt,

    Would you be able to share a I2C log of your customer writing to our device? Also, which register are they trying to read? A good register to read is the Power Path Status register (0x26) after you connect a device to the Type-C port and a valid PD contract has been negotiated.

    Also, how is the patch bundle generated from the configuration tool being loaded onto the PD controller? From an external SPI flash or a external EC through the PTCx commands?

  • They appear to be getting acks for every byte, write or read. However, the read data returned, all five of them, show 0 value.

     They’re doing this on a linux host and using i2ctransfer utility as follows:  (where 12 is our i2c bus number)

     “i2ctransfer –y 12 w1@0x38 0x26 r5”

     The above command basically says on i2c bus number 12, write 1 byte with value 0x26 to addr 0x38,  followed by 5 bytes of read from the same addr 0x38.

     Have you ever seen anything like this and would it be associated with the PD negotiation or configuration pload?

  • Hi Matt,

    Are you loading a configuration onto the TPS65982? Do you have an external SPI flash connected to the TPS65982 to load the application configuration using the configuration tool?

    https://www.ti.com/tool/TPS6598X-CONFIG