IPad – Connecting USB-C iPad Pro to Xcode and USB Peripheral

ipadusbxcode

I am trying to connect my third generation iPad Pro to my Mac through USB to communicate with Xcode (I am aware network debugging is an option but I am looking for a wired solution) while also having a MIDI device plugged into the iPad Pro. I have tried this with the Apple USB-C Digital AV Multiport Adapter (A1621) but it appears that the USB-C port on the adapter is only for power delivery. Does anyone have any experience with other USB-C hubs that can do this or is this a limitation of the hardware of the iPad Pro?

Best Answer

Does anyone have any experience with other USB-C hubs that can do this or is this a limitation of the hardware of the iPad Pro?

It's a limitation of the hardware in the iPad Pro because all USB-C ports act this way. USB is a host/device (or master/slave) protocol and so there needs to be some means to enforce this. This used to be done with the use of cables that had an "A" connector for the host and a "B" connector for the device. USB-C is a dual-role connector and this makes defining the operation of a USB-C hub difficult. USB-C also allows for "power only" ports which complicates this further.

The way host/device is enforced with USB-C is by having no hubs. Connecting a hub to a host is easy since it's going to have only USB-A and a power only USB-C. Once in a while I will see a hub with two USB-C ports, one for data only and the other for power only, and these tend to confuse or frustrate people should something be plugged into the wrong port. No damage is done if the two ports are confused, things just won't work. Without designating which USB-C port serves which role, and labeling them as such, the operation of the hub cannot be defined in a predictable manner.

If you do see a hub or dock with more than two USB-C ports then this is violating the USB spec or it is a Thunderbolt dock. Thunderbolt defines the function of a USB-C hub, but the iPad Pro doesn't support Thunderbolt. Yet.