Electronic – USB-C connectors only work on target side, not host side

usbusb-c

I wanted to turn a short USB-A-to-Micro USB/Lightning cable into one that has a USB-C plug on the host side (because I couldn't find such a thing for purchase). I chopped off the USB-A plug and replaced it with a solderable USB-C connector that I found on eBay. Variants of this connector seem to be common. When I replaced the old plug, I wired up GND, VBUS, an D-/D+.

Unfortunately it's not working and the vendor told me that the connectors only work on the target side:

The connector is not OTG pinout, it can not connect the host to target.
The type-c end must be target end.

I'm not sure what OTG has to do with it, if anything.

The picture on that web site says "5.1K resistor", but when I measure it the resistor between CC1 and VBUS is actually 56K.

After a bit of research, it seems to me that the right fix is to remove the 56K resistor to VBUS and replace it with a 5.1K one to GND. In the little PCB attached to the connector and shown in the photo below, that means removing the resistor in the middle position and adding a 5.1K one in the currently empty position on the left. Does that sound right?

Update: Removing the 56k pull up and adding the 5.1k pull down resistor as described did make it work.

USB-C to micro-usb and lightning
CC1 configuration
D+/D- configuration

Best Answer

You are trying to make so-called "legacy assembly". In normal Type-C to Type-C connector the role of host and device are automatically managed over CC line inside the cable. When you are building a legacy cable, legacy connectors/cables don't have CC pins, so the role of a port must be selected with proper resistors INSIDE the cable overmold. Even if a Type-C port has a fixed role as host, it won't output VBUS until it sees a valid signature on CC pins.

Your original cable end with 56k to VBUS indicates that the other end is HOST. Plugging HOST to HOST will result in a problem.

If you want your cable to behave as a device (and take charging function from a Type-C host), you need your cable to pretend to be a device. This is done with 5.1k pull-down on one of CC pins on the Type-C connector end. It should work.