Jump to content

USB 3.0-A to USB 3.0-C

Good Morning All!

 

I have an issue with  a USB 3.0 where im trying to replace a USB-A 3.0 head with a USB-C 3.0 head.

 

Ive soldered some flying leads onto a USB-C 3.0 socket PCB and then connected these leads to the USB-A cable (where i cut one of the heads off)

 

Using a multimeter i can see there is continuity between all the pinouts correctly.

 

However, when im plugging this cable into a PC and a device. The device is only being recognised as USB 2.0 instead of the USB 3.0 (which the device is definitely a USB3.0 device as i have plugged in a USB-A to USB-C cable and all is working correctly)

 

Im wondering if anyone has an experience or notes on custom making USB 3.0 cables. Im 100% sure i have the Tx+/Tx- and Rx+/Rx- connected correctly. 

 

I had no idea that USB 3.0 was so complex to get working compared to USB 2.0 where you can just put any connector on and it works!!

 

Thanks for any advice guys !

 

-K

Link to comment
Share on other sites

Link to post
Share on other sites

7 minutes ago, K_Jones_94 said:

Good Morning All!

 

I have an issue with  a USB 3.0 where im trying to replace a USB-A 3.0 head with a USB-C 3.0 head.

 

Ive soldered some flying leads onto a USB-C 3.0 socket PCB and then connected these leads to the USB-A cable (where i cut one of the heads off)

 

Using a multimeter i can see there is continuity between all the pinouts correctly.

 

However, when im plugging this cable into a PC and a device. The device is only being recognised as USB 2.0 instead of the USB 3.0 (which the device is definitely a USB3.0 device as i have plugged in a USB-A to USB-C cable and all is working correctly)

 

Im wondering if anyone has an experience or notes on custom making USB 3.0 cables. Im 100% sure i have the Tx+/Tx- and Rx+/Rx- connected correctly. 

 

I had no idea that USB 3.0 was so complex to get working compared to USB 2.0 where you can just put any connector on and it works!!

 

Thanks for any advice guys !

 

-K

Take a pic and post it so we can see what/where you solder stuffs.

There is approximately 99% chance I edited my post

Refresh before you reply

__________________________________________

ENGLISH IS NOT MY NATIVE LANGUAGE, NOT EVEN 2ND LANGUAGE. PLEASE FORGIVE ME FOR ANY CONFUSION AND/OR MISUNDERSTANDING THAT MAY HAPPEN BECAUSE OF IT.

Link to comment
Share on other sites

Link to post
Share on other sites

Can you show a picture of the breakout board you used?

 

And just two simple questions:

- Are you sure the cable is USB 3.0 (has the TX/RX data pairs)

- Does it act differently if you rotate the USB type C cable (plug it in 'upside-down' compared to how you plugged it in previously)

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

Hi All

 

I actually got the cable made by a sub contractor, but ive personally buzz'd out the pins to make sure they are all connected correctly (to my knowledge)

 

As a result, its all covered in heat shrink and very tidy, however what i can offer is a diagram showing how its wired:

This is the USB-C plug wiring:

image.png.1983d3ae483c69acdc0efa900ec93179.png

Everything highlighted in red is exactly where the pinouts are, and the component itself is the following:

https://www.digikey.co.uk/en/products/detail/keystone-electronics/954/5638367

 

The cable used where i cut the female end off is the following:

https://uk.rs-online.com/web/p/usb-cables/1828841

And the colours of the individual cores are as follows:

RED = VBUS

WHITE= D-

GREEN = D+

BLACK = GND AND SCREEN

BLUE = TX1-

YELLOW = TX1+

PURPLE = RX1-

ORANGE = RX1+

 

To repeat, the USB 2.0 is fully working, for some reason UBS 3 just isnt?

And rotating the USB-C in the device actually stops the USB2.0 working (so the cable can only be plugged in one way)

But this is expected as i haven't wired in the send and receive 2 pairs and also data+ and data-

 

-K

 

Link to comment
Share on other sites

Link to post
Share on other sites

41 minutes ago, K_Jones_94 said:

As a result, its all covered in heat shrink and very tidy, however what i can offer is a diagram showing how its wired:

Before I comment on this, I want to ask a few questions first, just so I know I have the right information.

From what I understood, you changed a USB 3.0 A port on a device to a USB Type C port? Is that the digikey part? And you also put a USB type C plug on a cable?

Can you just provide a little bit more detail on what you exactly exchanged for USB Type C?

 

Also, did you use any resistors in relation to the USB Type C plugs?

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

32 minutes ago, minibois said:

Before I comment on this, I want to ask a few questions first, just so I know I have the right information.

From what I understood, you changed a USB 3.0 A port on a device to a USB Type C port? Is that the digikey part? And you also put a USB type C plug on a cable?

Can you just provide a little bit more detail on what you exactly exchanged for USB Type C?

 

Also, did you use any resistors in relation to the USB Type C plugs?

Hi, Firstly thanks for being active in responses.

 

Secondly.

 

I started with a USB 3.0 Type A Male to female 2 metre cable (the one i linked in the previous post)

I cut the female port off that cable, opened up the cores and then soldered those cores to the USB 3.0 Type C (digikey component)

 

I then used break out boards for each connector i have, where the pinouts are labelled and the pins where connected either side of the cable.

 

I.e tx1+ goes to tx1+ etc etc.

 

Both ends of the cable are plugs, as the aim is to plug this cable into a PC and then into a USB 3.0 Camera (which houses a USB3.0 Type C socket)

 

The end game is to be able to also then splice the USB 2.0 out of this cable and use that for a different USB 2.0 camera at the same time (2 devices in one USB 3.0 cable)

 

But for the moment, im just trying to get 3.0 working.

 

I have not used any resistors, as i thought this was purely for type c to type c cables?

 

-K

Link to comment
Share on other sites

Link to post
Share on other sites

19 minutes ago, K_Jones_94 said:

I have not used any resistors, as i thought this was purely for type c to type c cables?

Resistors are required in all USB Type C communication, not just in C to C cables.

In a C to C cable you just have a wire running from the source (PC, laptop, etc.) CC to sink (keyboard, camera, etc.) CC pins, which decides the orientation, as well as the speed and power levels. When you use a USB Type C to A cable, your cable needs to have a resistor on it and the sink device needs two resistors.

 

I'll reference information found in the USB Type C specification from the USB IF: https://www.usb.org/sites/default/files/USB Type-C Spec R2.0 - August 2019.pdf

Section 3.5.1 is the most relevant here, which describes how a USB 3.0 Type C to Type A cable should be made.

Note 2 goes over the required resistor in this cable:

Quote

Pin A5 (CC) of the USB Type-C plug shall be connected to VBUS through a resistor Rp (56 kΩ ± 5%). See Section 4.5.3.2.2 and Table 4-24 for the functional description and value of Rp.

Referring to the section 4.5.3.2.2, it shows two resistors (on CC1 and CC2) tied to GROUND are needed in the sink device (camera).

 

Furthermore, I think I need some more information on the USB Type C receptacle you're using in the USB camera. This needs to have those two resistors tied to GROUND on CC1 and CC2, but also needs some technology on the inside to detect if it should send USB 3.0 signals through the left or the right two data pairs.

While USB 2.0 pins can be connected together on the PCB (as shown below), USB 3.0 requires some extra technology on the sink device side (the camera), to decide if it should send signals through the left or right data pair.

 

IMAGE7.png.1963c7c0956f3df8784a6a2abb5d91b0.png

This is what a USB Type C connector footprint looks like on a PCB. The red boxes show that the USB 2.0 data pair (D+ and D-) are connected together, so it doesn't matter if you plug in the cable upside-down or right-side up ('flipped' and 'un-flipped' respectively), because the USB 2.0 pins go to the right place regardless.

 

As we can see in the USB Type C receptacle and plug:

IMAGE5.thumb.png.918925fbe54815f94956863f8692d6f1.png

 

USB 2.0 should be connected, regardless of orientation (connector A7 and A6 either go to receptacle A6 and A7 or B6 and B7), but with USB 3.0 you're either going to use the left or right pair and the sink device (camera) needs to be able to switch the USB 3.0 data pairs from the left to the right side depending on how the CC pins are connected.

This is why it's also so weird why USB 2.0 only works when plugged in one way, because the cable connector should always connect to a D+/D- pair on the receptacle; whether it be the top or bottom two doesn't matter.

 

The only reason I can think of why it doesn't work is either:

- the receptacle in the camera only has the data pair at the top or bottom (instead of both top and bottom)

- GROUND is only connected when plugged in with one orientation, as it appears from the breakoutboard datasheet the GROUND connections aren't all connected together, but that should be easy to test with a multimeter

 

So in short:

- You need a 56 k Ohm resistor between CC and VBUS on the cable

- You need two 5.1 k Ohm resistors, between CC1 and GROUND & CC2 and GROUND

- You need to check if your breakoutboard GROUND connections are all connected together

- You need to check the receptacle in the camera if it has USB 2.0 on both the top and bottom as well as needing to check if it actually has the functionality needed to switch between the left/right USB 3.0 data pairs (depending on orientation)

 

The USB Type C specification is quite a bit more complex than previous USB standards, so there is a lot that goes into even just making a simple cable. 

I hope this post gave you some information on what to look into, to get your mod working.

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

Firstly, thats a hell of an informative reply. You have my thanks greatly.

 

Ill give this a go in the coming days to hopefully solve this issue.

 

The odd thing about the USB 2.0 not working on the "custom" cable. Is that when i replace it with a purchased standard usba to usbc cable. The camera's usb 2.0 works in both connection flips.

 

However if doesn't with my tailor made cable.

 

I can confirm however that with both cables, checking each ground to every other ground + shield with a multimeter. They are all inter connected within the cable.

 

With the standard one, i imagine this is done through the type c plug PCB. However in my custom cables case, links in the connector.

 

Thanks again!

 

-K

Link to comment
Share on other sites

Link to post
Share on other sites

Out of curiosity - to add further to my confusion. It appears that based on what you've suggested - the reason my tailor made cable isnt working is because its missing electronic components within the plug housing somewhere along the cable.

 

Take this for instance then, because im so baffled by this one....

I took a premade usb 3.0 type a to usb 3.0 micro-b cable, and plugged it into my PC and into a camera.

 

The camera was picked up as USB 3.0 and worked with full functionality.

 

I cut the cable in half, and reconnected each core and screen as it was originally connected with the following methods:

1) solder in line

2) through a terminal block

3) twisted core ends and taped with insulation tape.

 

 

all 3 methods didn't work again afterwords...and this was a premade working cable.

 

Is anti-tamper a thing?

 

-K

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, K_Jones_94 said:

Is anti-tamper a thing?

Did you follow the length variance specification on USB 3.0 cables?

While USB 2.0 isn't that specific on having equal length differential pairs, the data pairs in USB 3.0 - because of its high speeds - can't have too much variance in it. Only a couple mm per pair, if my memory serves me right.

 

Twisting wires together would definitely create variance in data pair cable lengths and things like soldering them together/connecting through a terminal block can still have variance as well.

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/4/2022 at 9:21 PM, minibois said:

Did you follow the length variance specification on USB 3.0 cables?

While USB 2.0 isn't that specific on having equal length differential pairs, the data pairs in USB 3.0 - because of its high speeds - can't have too much variance in it. Only a couple mm per pair, if my memory serves me right.

 

Twisting wires together would definitely create variance in data pair cable lengths and things like soldering them together/connecting through a terminal block can still have variance as well.

Though i didn't pay any attention to the length, as i wasn't aware this became an issue.

 

I'll measure the cores shortly and see whats what.

 

May i ask where you found the USB specification you linked to me previously?

I haven't managed to find anything else similar to that for another USB cable im going to try make (a USB3.0 Micro-B to USB3.0-Type A)

The one you linked previously doesn't have this directly, but has two i could make into one.

 

Again, many thanks for your responses, it has helped me out big time!

 

-K

Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, K_Jones_94 said:

May i ask where you found the USB specification you linked to me previously?

The organization behind USB, is the USB IF (integrator forum). They have a host of different specifications listed, the one I have read into the most is the USB Type C specification linked earlier.

Here is their full library of datasheets: https://www.usb.org/documents?search=&items_per_page=All

You can filter the results based on USB technology (i.e. USB 2.0, 3.2, etc.) and this appears to be the most recent USB 3.2 specifitcation: https://www.usb.org/document-library/usb-32-specification-released-september-22-2017-and-ecns

While this file seems to be most relevant to USB 3.2 cables (excluding  Type C cables): https://www.usb.org/sites/default/files/CabConn_Legacy_3_1_Compliance_Rev_1_1.pdf

 

I tried looking in the documents for the requirement of TX/RX pairs being equal lengths, but I'll be honest a lot of the details in the above two documents goes a bit over my head 😅

Maybe they have mentioned those lengths in the documents, but I couldn't spot it.

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×