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.

TM4C1294NCPDT: USB Interface Failure

Part Number: TM4C1294NCPDT

Tool/software:

Hi,

I have a customer who is experiencing failures on USB interface. On boards they received back from the field after failing, they have found that the device fails to enumerate. They believe Vbus must not be detected and no enumeration happens. 

I have attached further detail below: 

What they have discovered in debugging is that after the failure it seems that there is no device Mode pullup on D+ (should be ~1.5kOhm). Both D+ and D- are sitting at ground potential. That might be either they are disconnected, or the USB interface tries to enter Host Mode (in this case both D+ and D- are pulled down with ~15kOhm). There is +5V VBus on the top layer trace to the MCU VBus sense pin. The 1.5kOhm pullup on D+ signals to the Host that a Device is on the bus so the Host could start enumeration and assign address and whatever else to the device. No pullup, no device as far as the Host is concerned so enumeration won't start. Sure enough, the USB Device on the MCU side is not configured with anything but reset values except the SOFTCONN bit is set. That bit pulls D+/D- pins out of 3-state so when the interface is in the Device Mode (it is, the DEV bit in USBDEVCTL is set on power-up so it defaults to Device Mode initially and it is still set after USB init by the RTOS) so it should put a pullup on D+. It doesn't do this, D+ is at ground.

Power cycle does not fix the issue or reflashing the MCU. It is like the USB PHY is broken.

They suspect it may be due to B16 (USBVBUS) tied directly to VBus - the voltage is around 5.2V. Would 5.2V on B16 cause damage to the system?

I also can share the schematic via email, please let me know if this is needed. 

  • They suspect it may be due to B16 (USBVBUS) tied directly to VBus - the voltage is around 5.2V. Would 5.2V on B16 cause damage to the system?

    Hi Abigail,

      Indeed, it is possible the chip is damaged due to overvoltage on pin B16 when the pin is yet to be configured as a VBUS pin. By default after reset, B16 is a GPIO pin until it is programmed as a USB VBUS pin. When it is in GPIO mode, it is not 5V tolerant. Refer to TM4C129 System Design Guideline.

    4.3.1 USB Device Only

    For TM4C129x devices that are used in a device-only configuration, the only signal used in addition to USB0DM and USB0DP is USB0VBUS, which is located on port PB1. PB1 is 5-V tolerant. In USB device only mode, USB0VBUS is used to detect when voltage has been applied to or removed from the USB connector, which triggers software to manage the internal USB PHY accordingly. For a USB device-only configuration, a 100Ω resistor should be placed in series between VBUS on the USB connector and PB1 (or alternate GPIO) on the microcontroller in order to limit damage caused by any ESD events.

    If PB1 must be used for a function other than USB0VBUS, any other available GPIO could be used in its place. Because no other GPIO pins are 5V tolerant, a 5.6KΩ +/- 5% in series with a 10KΩ +/- 5% resistor should be wired as a voltage divider between VBUS on the connector and ground. This circuit drops the 5V VBUS value to 3.2V at the GPIO pin.

  • Hi Charles, thanks for the insight here! Running it by the customer now