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.

TPS65988: Debug adapter issues

Part Number: TPS65988

Tool/software:

Hi,

I have a design based on the TPS65988 chip. I'm trying to debug the configuration on my custom board with a FT4232HL FTDI adapter. The adapter connects and I can read/write registers, but it stops working after a short time. I can confirm the chip is still functioning because I can read registers through the on-board MCU that is connected to an other I2C port on the TPS65988.

More precisely I don't get any sort of error message or disconnect signal, the application will just read 0xFF from every register after a while of normal operation.

I purchased a TIVA devkit because I have seen it recommended on these forums. Someone please, share the required firmware image with me.

Thanks,

Adam

  • Hi Adam, 

    Thank you for reaching out!

    Debug mode is typically used in conjunction with TI EVMs. I recommend using the on-board MCU for reading/writing registers on your custom board. 

    Please let me know if you have additional questions/concerns. 

    Best Regards, 

    Aya Khedr

  • Hi Aya,

    I have an issue with the custom board, that is why I would like to use the debug probe. It would be much easier to use the existing Application Customization Tool instead of implementing the same thing in the MCU.

    Maybe you can help me with that other issue instead.

    The port controller works well if I power it externally. The device can negotiate the required 12V with the charger and switch to the USB power source for operation. This is what I see with the PD analyzer:

    VBUS_UP
    SOURCE_CAPABILITIES
    GOODCRC
    REQUEST
    GOODCRC
    ACCEPT
    GOODCRC
    PS_RDY
    GOODCRC

    If I try to connect the charger in a dead battery state, the board will get caught in a boot loop. Using a PD analyzer, I can see the following happening in an infinite loop

    VBUS_UP
    SOURCE_CAPABILITIES
    SOURCE_CAPABILITIES
    SOURCE_CAPABILITIES
    VBUS_DN

    What can be the reason for this?

    Best regards,

    Adam

  • Hi Adam, 

    Is the port negotiating the 12V sourcing, sinking, or DRP? From your description, it sounds like the port is intended to behave as a source (providing power to devices downstream), is that correct?

    In a dead-battery state (i.e. powered from VBUS), the device would not be able to source power, until the dead-battery flag is cleared through I2C 4CC command "DBfg"

    Best Regards, 

    Aya Khedr 

  • Hi,

    Sorry, if I wasn't clear there. Here is some more context:

    The device in question is a docking station for smartphones. It is supposed to have 2 options for powering: DC plug and USB Type-C. If you plug in both at the same time the DC plug will be disconnected automatically. The TPS65988 has one port strictly as a source (connected to the phone) and the other strictly as a sink (possibly connected to a phone charger).

    The system works perfectly if I power it from the DC plug, it is able to charge the phone the TPS65988 acting as a source.

    The system also works if I start with a DC plug, then plug in the USB charger and then remove the DC plug. The TPS65988 in this case will sink 12V and once stable the board will switch over to draw power from USB instead of the DC plug.

    The issue happens when I try to power the board using the USB charger. There is no phone connected at this point. The TPS65988 is acting as a sink. I can see that the MCU and TPS65988 can power up in legacy 5V mode. Once the MCU configures the TPS65988 to negotiate the 12V the whole system resets. Voltage drops to 0V then back to 5V and the cycle starts again.

    Best regards,

    Adam

  • Hi Adam, 

    Thank you for clarifying. 

    The issue happens when I try to power the board using the USB charger. There is no phone connected at this point. The TPS65988 is acting as a sink. I can see that the MCU and TPS65988 can power up in legacy 5V mode. Once the MCU configures the TPS65988 to negotiate the 12V the whole system resets. Voltage drops to 0V then back to 5V and the cycle starts again.

    Is the USB charger PD capable? What is the power rating of the adapter? 

    Also, have you tested with other Type-C PD adapters? Is the behavior the same? 

    Best Regards, 

    Aya Khedr 

  • Hi,

    Yes, the charger is PD capable. It is rated for 12V 1.5A max. I have tested with different adapters too.

    The PD negotiation happens without any issues when not in a dead battery state so the charger must be compatible.

    Best regards,

    Adam

  • Hi Adam, 

    What is the dead-battery configuration set to? And how is the configuration being loaded to the PD controller (MCU or SPI flash?)

    Best Regards, 

    Aya Khedr 

  • Hi Aya,

    There is no flash on the current board, but I already added one to the next revision in case it might be necessary to achieve what we want. The goal would be to do this without flash if possible.

    I have an MCU that would load the "Low Region" bin file generated by the Application Customization Tool when the system is powered up.

    I tried multiple bootstrap configurations.

    In the meantime I found the following post. It seems to describe my exact situation/problem, but it has no public solution.

    e2e.ti.com/.../tps65988-seems-stuck-in-legacy-mode

    Best regards,

    Adam

  • Hi,

    Please expect delay in response due to Thanksgiving holiday.

    Regards

  • Hi Adam, 

    Thank you for your patience. 

    Is there a step in the process where you could be resetting the PD controller? (maybe through the 4CC command "GAID")

    Best Regards, 

    Aya Khedr 

  • Hi,

    These are the commands I execute for the fw update

    PTCq
    PTCr
    PTCs
    PTCd (in a loop)
    PTCc
    PTCq
    Gaid (Warm reset, I also tried without this)

    Best regards,
    Adam

  • Hi Adam, 

    I will review the sequence provided and get back to you with feedback by end of week. 

    Best Regards, 

    Aya Khedr

  • Hi Aya,

    Do you have any news for me?

    Best regards,
    Adam

  • Hi Adam, 

    Thank you for your patience. 

    I don't see any obvious issue with the flow described above. The MCU seems to be loading the configuration correctly since you are not observing issues when in a non dead-battery condition. 

    1- Does the MCU write to any of the PD controller's registers after the configuration is loaded to the PD? There are some registers such as Global System Configuration (27h) and Port Configuration (28h) that if modified, will cause a port disconnect and reconnect. If a port disconnect occurs, VBUS will go low, the MCU will reconfigure the PD controller, and the cycle would repeat. 

    2- The dead battery configuration should be set to one of the following when loading the configuration by MCU. 

    Best Regards, 

    Aya Khedr