The TI E2E™ design support forums will undergo maintenance from Sept. 28 to Oct. 2. If you need design support during this time, contact your TI representative or open a new support request with our customer support center.

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.

TPS65987D: Host PD configuration

Part Number: TPS65987D


I am using TPS65987DDH in our design. We have two Type C ports in our design. One is connected to Host device (Android based device) and other connected to Power bank. we are supporting only 5V power option in both sides. 

When only Host is connected, Host device should source power for the board, enumerated USB hub and detect devices connected to USB hub. 

When Host and Power bank is connected, Host device should still be able to enumerate USB hub in our board, but the power for the board should be from power bank. Also, Host device should sink power from our board. In this condition, if power bank is disconnected, the board power should be switched to Host and USB functions should continue working. 

When power bank alone is connected, devices in our board should be powered from power bank.

The block diagram below shows the Design using TPS65987D.

I am attaching the GUI tool project files of both host and Power bank PD controller . Can you please verify whether the settings are ok?


Test observations with this setting is given below

 When i am testing with Windows laptop as host, (Type C connector in my Thinkpad laptop. It has a type C port, which primarily uses Type C connector to connect to charger. But it can also be used for Data transfer)is that it is detecting USB hub in our board.

But when i connect our board to my phone or any other android device, it is not even detecting it as USB. USB is getting connected only if we use a type C OTG connnector in between Phone and our board. Even after that, in the USB preferences it says USB is controlled by Connected Device. Ideally USB should be controlled by Android device. There is an option to change this control in the USB preferences. But when i try that it says it couldnt switch. What could be the issue?


Logi Francis

  • Hi Logi,

    I would need some time to debug this. Just to clarify, both PD only support 5V PDOs (for source and sink)? What are the current requirements?


    Raymond Lin

  • Yes both pds support only 5v pdos. Max current requirement is 3A

  • Hi Logi,

    To clarify, if a device is connected to the Host Connector (left PD in the block diagram) and the power bank connector (right PD) is not connected, then the host device should become the source and power the PD board, is that correct? 

    Assuming the Android device you're referring to is a smartphone type of device, the typical amount of current a handheld device can output is roughly around 100mA-500mA (0.1A-0.5A), however the minimum sink set on the PD controller is 0.9A, which is greater than what an Android device can handle. The reason why the laptop works as a host is because laptop's port are generally capable to supply the minimum power requirement (5V/0.9A), however most Android devices/smartphones are not built to be a power source (read here for more information: From that link:


    What kind of devices are being connected to this USB hub and do those devices requires power from the hub?

    Another possibility is compatibility issue with the Android device, for example Samsung phones sometimes doesn't work well with our PD controllers due to mismatch compliance. What kind of Android devices are you connecting to this hub?


    Raymond Lin

  • Yes your understanding is correct on the behaviour of the board, when power bank is not connected.

    We are not using a phone. It is a proprietary Android device. 

    Is it possible to reduce minimum sink current requirement of host pd controller to 0.5A?


  • Hi Logi,

    Can you collect PD logs for laptop and PD board  and Android device and PD board separately? Also does the Android-PD connection work when the power bank is connected (scenario where Android device doesn't have to provide power)?


    Raymond Lin 

  • Hi Raymond Lin,

    Please verify if the above files have right configuration. We are unable to  access pd log of android device that we are using. Currently only issue is that with some of the android devices it does not charge the android device from power bank if the hub was already connected to the android device while inserting the power bank. Can you suggest some solution for this as well.

    Best Regards,

  • Hi George,

    Can you message me on the side what type of Android devices are not working? I can confirm with my team if there are known issues with specific models.

    When the power bank is connected, how is it sending power to the host connector? If it's not through Vbus, try enabling Externally Powered in Global System Configuration (0x29) for the host pd. 

    I'll check with my team and see if there are any configurations that can help with this issue.


    Raymond Lin

  • Hi Raymond,

    We are interfacing with a MR smart glass. It is using Android 9. 

    I didnt clearly understood this question

    "When the power bank is connected, how is it sending power to the host connector? If it's not through Vbus, try enabling Externally Powered in Global System Configuration (0x29) for the host pd. "

    As shown in the diagram given above, we have  a single system power rail. If power bank is sourcing the power or when Android device is sourcing the power, it is all going to System power rail only. When power bank is connected, system power rail should be sourced by power bank.  PP2 switch of Host PD controller should be enabled and system power rail should source power to Android device through its VBUS. 

    Please note that we have enabled Barrel jack detect event on GPIO2. So when android device is already connected and then we connect power bank, this barrel jack detect event pin will go high and host PD controller should do the PR_swap. This is working perfectly with other android devices like phones. But with the smart glass device this is not happening.


    Logi Francis

  • Hi Logi,

    1. Can you connect a Type-C Flash Drive to the glass and see if it's able to detect the drive?

    2. Do the smart glass support PD capabilities (has a PD controller in it) or is it only Type C (DRP)?


    Raymond Lin