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.

TPS65986: continuous PD transaction loop with TPS65988 upon rapid disconnect/connect event

Part Number: TPS65986
Other Parts Discussed in Thread: TPS65988

We are using both TPS65986 for a Device, and TPS65988 for a Hub product.   We've discovered an issue with rapid Type-C plug events between these two, that seems to put the TPS65986 in a PD transaction loop that can not be recovered unless we disconnect for a period of time.  

 

Steps to reproduce: 

  • Connect our generic 60W PD power supply to TPS65988 Hub.
    • Note: TPS65988 can only be powered from this port; the second TPS65986-facing port is power source only. 
  • Connect TPS65988 Hub to TPS65986. 
  • Disconnect '988 from '986, then immediately reconnect (~500ms or less).

Symptoms: 

  • VBUS toggles between 0V and 5V in a repeated pattern.    (see attached scope-shot below)
  • CC Lines toggle in a repeated pattern

Recovery: 

  • Disconnect TPS65988 Hub from TPS65986, wait several (2-3) seconds, and reconnect.

Details: 

  • Our EZ-PD Analyzer log shows a number of normal, successful PD transactions happening between t=0 and t=21.6s. TPS65986 negotiates for 20V from the TPS65988, then completes a DR swap to complete the transaction. 
  • After that, the PD transaction loop is shown. 
  • TPS65986 sends a burst of VDM "Discover Identity" Commands. 
  • TPS65988 responds with a burst of Source Capability Lists
  • Instead of sending a request, TPS65986 just sends more "Discover Identity" commands. 
  • This pattern repeats three times, then a hard reset occurs (VBUS goes to 0V), and the pattern resumes....  presumably infinitely

  • Eric,

    Could you answer the questions below which can better help me locate the problems?

    1. Check the hard reset details in PD status register(0x40) of TPS65986.

    2. Are you using VDMs commands on either the TPS65988 or TPS65986? If these are sent at the wrong time, it could interfere with other PD messaging

    3. Do you use external controller to send commands to TPS65986/8 through I2C? If so, what commands are you sending when there is a hard reset or reconnection?

    Please give me as many details as possible to help find the root cause.

    Thank you,

    Hao