USB-C functional tests involve a lot of cable plugging and unplugging, connector flipping, and device swapping. Acroname's USB-C-Switch handles those connections for you, providing control through our HubTool GUI application or BrainStem API, even remotely!
For this article, we'll look at how the USB-C-Switch can simplify system interoperability testing of a USB-C host port with Alt. mode video and USB-PD support. This could be a PC, laptop, tablet, or mobile device.
USB-C Manual test plan: the old way
In this example, we'll use the suggested devices in the Microsoft usability system interoperability test plan, but feel free to substitute devices as needed. The suggested plan is to manually test each device in the device list:
- USB A-to-C adapter - USB 3.0 hub - USB mouse - USB 3.0 flash drive
- USB-C storage drive
- USB Type-C video (HDMI adapter to monitor or directly to Alt-mode monitor)
- USB-PD charger
For each device in the device list:
- Connect the USB-C cable to the host port
- Run the test procedure
- Disconnect the cable from the host port
- Flip the cable 180 degrees and reconnect to the host port
- Run the test procedure
- Disconnect the cable from the host port
That's a lot of flipping, plugging and unplugging!
USB-C-Switch to the rescue
By putting a USB-C-Switch between the Host Port Under Test and the test devices, you can connect and disconnect each device, and perform cable flips if using a Universal Orientation Cable (UOC). Unlike a USB Hub, the USB-C-Switch acts like a cable, so all signals will pass through, including USB Alt. modes like DisplayPort.
The USB-C switch can be controlled by the HubTool GUI, or through the BrainStem API for easy scripting.
Need to get out of the lab? Remote Desktop to the Test PC from your office, or use HubTool on your local computer connected to the Test PC by aEther.
USB-C-Switch connections
- Host Port Under Test connects via Universal Orientation Cable to the Common port.
- Test PC connects via USB-C to the Control Port
- Devices connect to mux ports 0-3
Let's review the same test plan now using USB-C-Switch and HubTool.
For each device:
- Select the corresponding mux port
- Run the test procedure again
- Unselect Cable Flip
All without touching a cable!
Which Universal Orientation Cable should I use to enable Cable Flip?
For the port being tested:
- If the USB 2 D+/D- lines are connected between sides A and B, use c46, which carries one 480 Mbps D+/D- data pair
- If the USB 2 D+/D- lines are not connected between sides A and B, use c44, which carries two independent 480 Mbps D+/D- data pairs
How do I know what kind of port I have? What happens if I use the wrong cable?
Hopefully you know the implementation details of your Port Under Test! But if you connect c44 to a port with connected USB 2 data on sides A and B, the unconnected driven data lines degrade the other signals on the cable. This could cause repeated enumeration on USB 2 and generally bad connections. If c46 is connected to a port with independent USB 2 data on sides A and B, one orientation of cable flip won't allow USB2 to connect. Luckily, the USB-C-Switch comes both universal cables.
Which USB-C-Switch version should I use?
The USB-C-Switch comes in passive and redriver versions. For functional testing with short cables, and for measuring signal integrity, we recommend the passive version. For longer runs and general connectivity, the redriver version is a better choice.
What else can I do with a USB-C switch?
Consider the USB-C-Switch for any applications involving multiple hosts or devices where a hub won't work. This includes Alt. modes, signal integrity and compliance testing, and functional test. Since it doesn't add a tier to the USB Tree, the USB-C-switch can go in front of the full-blown USB-Type C Interoperability Tree and allow automatic selection of hosts or host ports. If your application does allow for a hub, check out USBHub3c.
Add new comment