TPS25751: How to use an EDL USB Cable for device recovery when USB-PD power contracts can't be negotiated?

Part Number: TPS25751

Tool/software:

EDL Cables are used to power a USB-C device (e.g. a smartphone) and force it to enter EDL (Emergency DownLoad) mode to be able to reinstall firmware etc. on a bricked device.   They typically work by shorting the USB-SS USB-HS D+ line to GND.

These cables are basic USB2.0, invariably with a USB-A plug at the other end, and don't have CC lines, so there is no way to negotiate a USB-PD contract.

This means that in a system that is configured to switch off if the power contract is not met, the device can never enter EDL mode because it will be powered-down as soon as the TPS25751 is configured.

Is there any way to determine that a USB2.0 or EDL cable is being used, and make the TPS25751 allow power to be supplied in spite of no PD contract having been negotiated in this case?

Many thanks,

Justin

======

<Edit - corrected typo of USB-SS to USB-HS>

  • Hello,

    I am not quite sure I follow.  The Type-A plug should provide the Rp and the type-C operation will be defined (5V, with current capability advertised by Rp value). The TPS25751 will not transition to the PD state-machine until receipt of a message.  If you clear the dead-battery flag on the TPS25751 this would start the sinktimer and then a reset would occur upon a timeout.

    Can you show a waveform of what you are seeing on the CC and VBUS lines?

    Regards,
    Chris 

  • Thanks for the clear reply Chris, and for interpreting my unclear question well.

    My 5V power requirement is set to a current of 3A at the moment, although I could potentially lower that threshold somewhat.

    However, in the case where EDL mode is to be activated, the device performs only very basic operations, meaning that its power requirements are vastly lower.  I am wondering if there's a way for the TPS25751 to reduce or ignore the PD requirements under these conditions somehow?  If not, I may have to relax the 5V current requirement and accept that under some inadequate power supply conditions the device will just brown-out.

    I may be able to get waveforms of those lines if they turn-out to be pertinent but I don't have easy access to them just yet.

    Kind regards,

    Justin.

    ======

  • Hello,

    My 5V power requirement is set to a current of 3A at the moment, although I could potentially lower that threshold somewhat.

    What is the expected operation if a source is connected and that power is not supported?  There is an auto negotiate feature in the PD controller to prevent the power path from being closed in the event that the minimum power is not advertised by the source.  Per the specification the sink must request the highest capability of the source and the sink will notify the source of the mismatch.

    I am wondering if there's a way for the TPS25751 to reduce or ignore the PD requirements under these conditions somehow? 

    You can disable the PD operation so that the controller only supports the USBC standard.  This requires an i2C write to the Port Configuration register to set bit 10.

    https://www.ti.com/lit/ug/slvucr8a/slvucr8a.pdf#page=32

    Regards,

    Chris

  • Thanks Chris, so I would need to find a way to signal to the TPS25751 when the EDL cable is being used.  This won't be possible over I²C because in EDL mode the attached microprocessor is not booted.

    What is the expected operation if a source is connected and that power is not supported?

    The power path should normally be closed, and it does function correctly in this way presently.  I was looking for a way to make an exception when an EDL cable is attached, so that the power path stays open in spite of a mismatch.  Could it be done using a GPIO?  For example, can a GPIO be configured to enable the power path regardless of any mismatch?

    Really appreciate your help.

    Kind regards,
    Justin.
    ======

  • Hello,

    Could it be done using a GPIO?  For example, can a GPIO be configured to enable the power path regardless of any mismatch?

    The GPIO configurability is limited to what is described here and does not include a power path control input.  Technically you could use the 'S' variant of the TPS25751 and control the external power path FETs with some additional logic to incorporate the EDL use case.

    Regards,

    Chris