I'm trying to connect a single PC with limited storage (Mini ITX) to a much bigger PC full tower that has a lot of hard drive storage. Both machines have USB-C on them so I was just wondering if I can just get a USB-C to USB-C cable to connect them together to begin transferring files? Does USB C act as both host/client? I've seen USB 3 crossover cables so I'd be willing to go with that if it's easier but I'm trying to get the best possible speed on the cheap.
-
Paging @AliChen.– SpiffJun 3, 2017 at 22:01
-
1Beware that the mere presence of a USB Type-C connector doesn’t necessarily tell us much about what that port is really capable of. Do you have any indication whether or not they’re Thunderbolt 3 ports?– SpiffJun 3, 2017 at 22:04
-
Yea after some research I realized it's the TB circuitry that dictates who is client/server based on faux Ethernet IP addresses on the Thunderbolt adapter.– BrianJun 5, 2017 at 0:46
-
It appears this question was bumped for some reason in spite of its age, and there's similar questions popping up still. I've seen people successfully transferring data over a USB-C-to-USB-C link but not by any regularly documented means. It will be hit and miss based on the hardware and software involved.– MacGuffinApr 22 at 4:47
3 Answers
To connect one Type-C device (one PC) with another Type-C USB device (or another PC) and expect some connectivity, at least one of the "Type-C link partners" must support so-called DRD - Dual Role Device. The DRD port advertises its dual role by continuously switching its CC (communication channel) pins from 5.1k pull-down (signifying a USB device) to 56k-22k-10k pull-up (signifying USB host with different VBUS supply capability). It does this flip-flop several cycles per second.
However, to be a DRD Type-C device, it must have TWO USB controllers inside, one of xHCI (host controller interface), and another of "DCI" type - device controller interface. The IO of these two controllers must be multiplexed at the USB port pins. Currently only a few products (notably the Intel SoC aka "atom cheery trail" family, and other mobile-oriented chips found in mobile phones) have this capability. If a PC is made of desktop line of processors, no DRD is available yet.
If both PC are of the same kind, no connection (and no harm) will happen.
If one Type-C PC has DRD functionality, it will pick the phase of its "flip-flop advertising" with the role that is opposite to the connected single-role device. If the connecting device is host, the DRD device will lock as device, and vice-versa. If both devices are DRD, the roles will be selected at random, and later should be switchable in software.
-
If any newer Intel chipsets support DRD/DRP, I will be glad to correct my answer... Jun 4, 2017 at 1:19
-
Thanks for the detailed response. I figured it's just easier to go with a USB 3 transfer cable then since it's very rare to find PC motherboards with native ThunderBolt support unless it's with an addin card variety which wouldn't work for my setup.– BrianJun 5, 2017 at 0:48
-
1I found a datasheet for intel 200 series chipsets (Z270 on my motherboard), that states: the USB Host Controller can now be paired with a standalone USB device to provide dual role functionality. The USB subsystem incorporates a USB 3.0 device controller. This controller is instantiated as a separate PCI function and shares USB 2.0 port 1 and USB 3.0 port 1. and furrther: Bus 0: Device 20: Function 1 USB Device Controller (OTG) Whether there are drivers for this I don't know ...– LucianoFeb 10, 2018 at 17:44
-
1Actually, after messing around on my computer, I found that the abovementioned PCI device is missing (disabled). But it may exist on other, more expensive motherboards. This was on an intel skylake platform.– LucianoFeb 10, 2018 at 18:03
-
I've been asking myself the same question and discovered a few things.
First is that Apple laptops have had this featured called "Target Disk Mode" for a very long time. This mode is in the computer firmware and allows many models of Apple computers to act like an external drive to another computer. This feature exists in Apple computers with USB-C ports. I've tested this with my own Apple laptop with USB-C ports by putting it into Target Disk Mode and using it like a USB drive to another Apple laptop with a USB-A male to USB-C male cable. Apple does this in firmware but there is no reason I can see why this cannot also be done in the operating system, and done in a way to support more than looking like a storage device.
A second thing I discovered is that the model of USB chip Apple puts in their laptops that are capable of this feat is widely used by other computer makers. There's evidence of this with the "hackintosh" crowd using Apple drivers on their non-Apple computers running macOS and seeing the USB ports working.
A third thing I discovered is that there is a project called "USB Gadgets" which intends to allow a computer running open source operating systems to act like a USB device to another computer. There is an abundance of information on this for USB 2.0 but not so much for the USB 3.x chips seen in newer systems.
A fourth thing I discovered is that USB-C ports used for charging/powering a laptop must enter into device mode for the charging to work. You can see this by plugging a "device" computer, one that takes power in from USB-C, into a "host" computer, one capable of providing power out from USB-C, and every USB-C port in a computer will provide some power. If one were to look at the connected USB devices on the "host" computer the "device" computer will be listed. The negotiation of which direction the power flows, and how much, is done over the data pins of the USB port. Unlike the previous systems that used resistors on the data pins for a very passive means of conveying this information this new protocol requires an actual data connection.
Fifth is that in the USB 3.x spec is a provision for host to host communications by the "superspeed" data pins. This means all four twisted pair data wires in the cable are available for host to host communications, and each is capable of 5 Gbps of data. That means a 20 Gbps connection is possible.
So, if you have two computers with USB-C ports, and a USB-C cable, then the chances are that all the hardware is there to make a 20 Gbps connection between the two. All it takes is one computer to have the right software to support a network device on a USB-C port, and the other to have the right software to emulate a network device on a USB-C port.
If that software exists then I haven't found it. If it does not exist then someone is likely writing it right now.
-
1Importantly, "USB gadgets" are not a software-only solution, they still need the device-side hardware (possibly as part of a DRD or OTG port) Oct 13, 2021 at 17:18
-
"then the chances are that all the hardware is there to make a 20 Gbps connection between the two. All it takes is one computer to have the right software" - wrong, the chances are dim as explained in the accepted answer. The computers must have "device-side hardware", as Ben Voigt commented. Oct 13, 2021 at 17:45
-
@BenVoigt " Importantly, "USB gadgets" are not a software-only solution, they still need the device-side hardware (possibly as part of a DRD or OTG port) " The point of my answer is that the device side hardware is common in most laptops on the market today. A laptop that charges from USB-C must support device mode, that is required to communicate with a USB-C charger host. Without device side hardware it cannot charge. With this also comes features like Target Disk Mode, another function that requires device side hardware. Oct 18, 2021 at 0:53
-
@Ale..chenski " wrong, the chances are dim as explained in the accepted answer. The computers must have "device-side hardware", as Ben Voigt commented. " For a MacBook to act in Target disk mode it must have device side hardware so the chances a MacBook has the hardware is 100%. The USB-C hardware Apple uses is not unique, many other manufacturers use the same chips which can be demonstrated a number of ways including the "hackintosh" users using Apple drivers to get USB-C to work. There is also a hot-to-host mode in the USB-C and USB 3.x specs to allow this. Oct 18, 2021 at 1:05
-
1@MacGuffin: Target Disk Mode requires device-side hardware, USB PD does not. You seem to be assuming that the power provider is always a host and the power consumer is always a device but that is not the case with USB PD. Oct 18, 2021 at 15:43
This likely won't help the original poster, but if your PC's both have Thunderbolt, and you have a Thunderbolt cable, it is supported (TB3 and TB4 cables use USB-C connectors but are typically thicker and rarely longer than 50cm). I just connected two laptops that are on different networks, and a new Ethernet connection appeared and I can browse shared folders and use Remote Desktop from one to the other, without any manual configuration. One laptop is Windows 10, the other is Windows 11.