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.

HD3SS3202: Mux not switching

Part Number: HD3SS3202
Other Parts Discussed in Thread: HD3SS3220

I already looked through every single post on TI's website regarding this device, tried all the suggestions and went through the recommended checklist but still can't seem to make it work.

I'm attempting to connect an FT601 by FTDI to the computer through a usb type-c cable. For what I could understand from the datasheet, I needed to configure the HD3SS3220 in UFP mode. The thing is that the DIR pin is always high. The cable orientation is never detected and by measuring the resistance of the SS lines I figured that the mux never actually switches.

I'm using a USB Type-C to USB 3.0 Type-A cable with a 56k pullup. The CC lines show 418 mV and 0 V in one orientation but when I flip the cable they show a square wave with 4.8V peak and around 13Hz frequency.

I should also mention that the FT601 is never detected by the computer as a USB 3.0 but only as USB 2.0.

Thanks in advance for your help.

  • I2C pullup should be 4.7k.
    INT, ID, Vconn should pullup to 5v
  • Hello Brian

    Thank you for your reply.

    You are correct that the I2C pullups should be 4.7k.

    According to the datasheets those pins you mentioned are all open-drain so the voltage to which we pull-up to depends on the interface of the controlling system. At the moment the device is configured in GPIO mode. I'm not actually using those signals but made provisioning for it in case I needed to. The only reason I installed some of those resistors was to try to figure out why the HD3SS3220 wasn't working.

    EDIT: To make sure all bases were covered, I tried the suggestion to pull INT, ID and Vconn_fault to 5V. The mux is still not switching and the device is not enumerating as Usb 3.0

  • JDtech

    C4 and C5 are not needed, would you please replace them with 0 ohm resistors?

    Thanks
    David
  • Hi David

    Replacing C4 and C5 with 0 ohm resistors shows the same behaviour
  • Do you have the 200k resistor installed on DIR?

    Thanks
    David
  • At the moment I have all the resistors installed apart from R7, R8 and R12
  • What is the voltage on CC1, CC2, and DIR when you inserted Type C cable in normal and flip orientation?

    Thanks
    David
  • [CC1, CC2, DIR] are respectively [426 mV, 15 mV, 3.29 V] for normal orientation and ["square wave", "square wave", 3.29 V] flipped.

    This is what I mean by "square wave"

  • For normal operation, would you please probe SSTX and SSRX signal on both side of HD3SS3220? Are you seeing 20MHZ LFPS?

    Thanks
    David
  • Once again thank you David and Brian for your assitance.

    Probing the SSRX line shows a similar trace before and after the HD3SS3220

    The signal is 15.6 MHz LFPS rather than 20 MHz.

    I tested the continuity between the type-a connector of the usb cable and the SSTX capacitors and everything seems fine. Unfortunately the SSTX line shows no activity either before or after the MUX.

    EDIT: I should also add that there was a lot of jitter while taking that trace so I had to use the single trigger. I didn't see any jitter at all when I measured this signal before but I can't recall what the frequency of the LFPS was.

    EDIT 2: We finally managed to communicate with the FT601 over USB 3.0. For some reason the USB 3.0 port on the front of the computer isn't actually 3.0. Plugging the cable in the back brought the device to life. However we are still facing the same issue with the HD3SS3220 not switching when the cable orientation changes.

  • So the host is sending LFPS, and it goes through HD3SS3220. But you need to check to see why FT601 is not sending its LFPS back to the host. If the LFPS handshake was successful, both partners proceed into link training, sending TSQ, then TS1 and then TS2 "ordered sets", and then the link moves into active "U0" state, exchanging "link management" packets and determining link capabilities.

    Thanks

    David

  • Thanks David.

    That clarifies it a bit. Some of this concepts are still new to me.

    I'm not sure if you saw my EDITs on the last post. In any case, I already managed to communicate with the FT601 over USB 3.0 when the cable is in normal orientation.
    The only problem now is the fact that the HD3SS3220 is not switching when the cable orientation changes. DIR and ID are always at 3.29V. CC1 and CC2 still have the weird behaviour I mentioned a few posts ago when the cable is flipped.
  • Are you connecting to a host with Type C or Type A USB connector?

    Have you also tried with different USB cable?

    In the flip orientation, it looks like CC2 is not seeing the pullup resistor on the host side.

    Thanks
    David
  • To answer your questions:

    "Are you connecting to a host with Type C or Type A USB connector?" Type A
    "Have you also tried with different USB cable?" No

    And you were absolutely right about the CC2 not seeing the pullup resistor. Turns out that the Type-C receptacle we are using (DX07S024XJ1R1100) has smd pads for A1 to A12 and through pins from B1 to B12. During our initial debugging, we detected that there were some issues with the soldering of the through pins. Evidently we didn't fix all of them. CC2 was indeed disconnected. After applying flux and soldering again the HD3SS3220 came to life in both orientations.

    Another issue we had was connecting to the computer through a USB port in the front. Even though it was supposed to be USB 3.0, for some reason it only enumerates devices as USB 2.0. Using the USB 3.0 ports in the back fixed all the other issues and now we can interface with the FT601 through USB 3.0 and using the cable in both orientations.

    Thank you David. You're support is much appreciated!