I’m working on a custom carrier board. I’ve been able to get USB 2.0 ports 1 and 2 working, however, port 0 is dead. I get no activity on those signals. SS0 is also working. We are currently using USB0 and SS0 for a USB 3.0 port. Why would the other two USB 2.0 ports be functioning properly, but USB 0 isn’t?
Hi, which config of lane mapping did you choose? Please compare to USB0 port of dev kit to check if any difference design might cause this. USB0 port is default working, should not be no functioning.
We are currently using config 2. This module used to be on the dev board. The major difference between our board and the dev kit is that we are routing USB0 with SS0 to a USB HUB to gain more USB 3.0 ports. we have connected the USB0_VBUS_DET line to 5V, but have left the OTG and USB0_EN_OC# signals floating.
If you haven’t also removed the load switch (U25 in the carrier board schematics), there’s nothing to turn on the 5V to the port. You’ll need a pullup on the enable pin.
Not having the load switch or control over it may cause issues for the module, but I don’t know what. Would be pleased to know if it works fine with USB port tied straight to system 5V.
We have removed U25. I have USB0_VBUS_DET directly to 5V. The signals get wired as follows:
USB0_VBUS_DET - 5V
USB0_D+ - USB HUB
USB0_D- - USB HUB
USB0_EN_OC# - Not connected
USB0_OTG_ID - Not connected
Even with the VBUS_DET line tied to 5V there is no activity on the data lines.
Did you try connecting USB0_VBUS_DET to VBUS of hub? Please follow the reference design as far as possible.
We followed the reference design as much as we could, however, we have requirements for more USB than available on the Jetson module.
I just tried connecting USB0_VBUS_DET to VBUS of the hub. There was no improvement. The VBUS of the hub is at approximately 0.5V. The hub we are using is the TI TUSB8041IPAPRQ1. In addition I tied the USB_EN_OC# to 3.3V. No improvement.
Can you share this part of your schematic? I’m having trouble visualizing it
Attached is the USB hub schematic.
USB 3.0 Hub.pdf (458 KB)
We figured this out. The OTG signal was pulled high, which put the USB0 in a device state. Once we pulled the OTG signal low, the USB0 port was put in a host state which allowed the hub to distribute the data signals appropriately.
That’ll do it. Nice.
We are planning to build a custom carrier board that also uses three USB 2.0 ports. Was it straight forward to get the third USB port working (USB2)? If so, would you mind sharing how you configured your device tree?
Yes, it was pretty straight forward. Once we properly handled the OTG and HDMI signals, USB0, USB1, and USB2 worked just fine. As mentioned above, we were using config 2. It was the module that came attached to the dev kit. We installed the os per the dev kit instructions then moved the module to our carrier. We didn’t, at the time, make any modifications to the device tree.
Thats great to know! Out of curiousity, did you use a custom pin on the jetson to enable the USB power switch for USB2, or did you just connect the 5V pin in the USB2 connector directly to the 5V rail?