I'm doing a board that has two USB C receptacles. After the first receptacle is a multiplexer which can route the USB signals either to the second USB receptacle or another connector.

The first USB C receptacle is upstream facing and intended to plug into the host PC. The other USB C receptacle is downstream facing and is intended to be the "host" to the downstream device, using a cable with USB C plugs on both ends.

Once this is running, the downstream device should be unaware that its signals are going through a multiplexer.

For the USB2.0 signals DP and DM, it's clear that I just need to route those straight across. However For the USB3.0 signals TX/RX pairs, I'm not sure if I need to swap the TX and RX on the downstream facing receptacle, partly because I'm not sure whether TX and RX refer to the host as the owner of direction, and I'm not sure how standard USB cables are made.

So the question is: Do I need to swap the TX/RX on the downstream facing receptacle? Can someone point me to a schematic where someone has done this?


1 Answer 1


One important thing to know is hat USB C cables contain 4 pairs of high speed signals, (TX1, TX2, RX1, RX2) and only 2 pair is used for USB 3.0. You either need to use TX1 and RX1, or TX2 and RX2.

Just connecting the signals to the other outlet does not work, you don't know if both sides have the cable in the same orientation.

This requires you to do cable orientation on both USB C plugs and switch your mux to the proper pairs

According to table 3-10 in the USB C spec:

USB Type-C Plug #1 Wire USB Type-C Plug #2
Pin Signal Signal Name Wire number Signal name Pin Signal Signal Name
A1, B1, A12, B12 GND 1 [16] GND_PWRrt1 [GND_PWRrt2] A1, B1, A12, B12 GND
A4, B4, A9, B9 VBUS 2 [17] PWR_VBUS1 [PWR_VB US2] A4, B4, A9, B9 VBUS
A5 CC 3 CC A5 CC
B5 VCONN 18 PWR_VCONN (See Section 4.9) B5 VCONN
A6 Dp1 4 UTP_Dp A6 Dp1
A7 Dn1 5 UTP_Dn A7 Dn1
A2 TXp1 6 SDPp1 B11 RXp1
A3 TXn1 7 SDPn1 B10 RXn1
B11 RXp1 8 SDPp2 A2 TXp1
B10 RXn1 9 SDPn2 A3 TXn1
B2 TXp2 10 SDPp3 A11 RXp2
B3 TXn2 11 SDPn3 A10 RXn2
A11 RXp2 12 SDPp4 B2 TXp2
A10 RXn2 13 SDPn4 B3 TXn2
A8 SBU1 14 SBU_A B8 SBU2

This shows that the cable swaps the signals around, every side transmits on the A2,A3,B2,B3 pins, and receives data on the A10,A11,B10,B11

You would need to take the data in from pins A10,A11,B10,B11, feed to though a mux, then another mux for the other port and then send it out on A2,A3,B2,B3 for both directions.

Depending on your exact muxes, you might need a active repeater in between to make sure the signals stay outside the eye

  • \$\begingroup\$ So the new mux you're talking about isn't to determine whether to route the incoming ("left") TX to the outgoing ("right") TX or RX. The new mux you're talking about is whether to route the incoming TX to the outgoing TX on the A side, or the outgoing TX on the B side, right? This decision being based on the detection of "right" plug orientation? Couldn't I just always route left A10/A11 to right A2/A3, and left B10/B11 to right B2/B3? \$\endgroup\$ Commented Sep 22, 2021 at 5:37
  • \$\begingroup\$ You use the muxes to see if you have to receive from receive pair 1 or 2, and use it to see if you to transmit on pair 1 or 2. If you just route the wires though your device only works in 1 cable orientation. If you connect all the pairs together the reflections of the signal make the signal to noise ratio too low for proper communications \$\endgroup\$
    – Ferrybig
    Commented Sep 22, 2021 at 5:43
  • \$\begingroup\$ I've looked at a $5 passive USB-C-to-C coupler. The two connectors are swapped in orientation so A and B are on one side, and B and A are on the other; the superspeed lines in that case go straight across and other swapping happens with the other wires. I'm basing my design on that. My board is a coupler with an option to divert all the signals elsewhere. I have to use power from elsewhere on the PCB to run the mux, because VBUS doesn't come on until power is negotiated, which happens with CC lines, which is driven by the selected target, so there's a catch-22. \$\endgroup\$ Commented Oct 5, 2021 at 3:53
  • \$\begingroup\$ @Sonicsmooth with a passive coupler, it may work or not work depending on the orientation of the cables at either side. The noise introduced to the high speed lines affects the some devices making them not work. The extra impedance to the power path causes some devices to mall function. Another dangerous thing that can happen if you mix 5A cables with 3A, the charger sees the first 5A cable, so it offers a 5A charge profile, but the 3A cable is not designed for 5A. If any of the cables is using active vcon powered electronics for it's USB 3 boosters, it is unreliable \$\endgroup\$
    – Ferrybig
    Commented Oct 5, 2021 at 5:19
  • \$\begingroup\$ Thanks for your feedback. \$\endgroup\$ Commented Oct 8, 2021 at 16:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.