USB Communication

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

USB Communication

2,599 Views
Akshayv
Contributor II

Hi,
We were planning to implement a Dual role port operation through USB type C.
was planning to use PTN5150A in the reference design of LS1028A.
had some doubts regarding the working of PTN5150A.
-- We are planning to connect the Type C port to a USB 2.0 Laptop port for communication with the help of a USB Type c to USB 2.0 connector. In such a stage, How the Processor will be able to detect the connected port is USB 2.0..?
--- How the USB 2.0 Communication is initiated from the processor side..?
---PTN 5150A acts on the basis of CC pins. in the case of Type C to USB2.0 cable, there wont be any CC connections from the USB2.0 side.
--- Same issue comes in the case of USB 3.0 Type A to USB 3.0 Type C connector. If the USB type C port is connected to USB Type A port, there wont be any CC configuration in the USB Type A side. Hence, How will we able to detect the Highspeed Communication channel from the Cable is connected to the TX1,RX1 differential pair of the receptacle, or the TX2,RX2 pair of the receptacle.

Please respond .

---
Thanks & regards,
Akshay V
Hardware Dept.
Kalki Communication Technologies pvt Ltd.

Tags (2)
0 Kudos
Reply
3 Replies

2,577 Views
Akshayv
Contributor II

Hi Jose,

Thanks For the reply.

Some more clarifications to be attained.

 

  1. PTN5150 acts on the basis of CC lines from USB type C port. In the case of USB 2.0 to USB type C connector cable, there wont be CC in the connector cable. There will be only connections of Vcc, GND, D+, D-. this signals will be connected to Vbus, GND, D+, D- of the Type C port through the connector cable. In such a case, how will the PTN detect the USB ID, CON_DET and other signals since, the CC is not connected in the other end..?
  2. Also, How does the PTN detect whether a connected port is USB 3.0 Type A, USB 2.0 or USB Type C itself and inform the Processor to start the communication for these separate USB protocols.
  3. Also, whether in the case of USB 3.0 Type A, this RX detect will be taken care of PTN5150 itself..?

How does that work. RX is not connected to PTN.

 

Sorry for the tremendous amount of doubts.

The product design is to be finalized by clearing these bottlenecks.

Response ASAP will be appreciated.

 

---
Thanks & Regards,

Akshay V

0 Kudos
Reply

2,564 Views
reyes
NXP TechSupport
NXP TechSupport

Hi Akshay V,

Please see below answers to the questions.

 

I also attached 3 schematics, this is our EVM design, which convers USB-A (receptacle) to a Type-C (Receptacle).  I think customer can quickly reference to this design. You can think about the USB-A receptacle as USB-A plug.  This is similar application design as your use case.

 

Let me know if you prefer to want to have a call with the Applications Engineer to clarify these questions. If Yes, please propose a date/time for the call (Apps Engineer is located in Bay Area, CA, USA).

 

 

  1. PTN5150 acts on the basis of CC lines from USB type C port. In the case of USB 2.0 to USB type C connector cable, there wont be CC in the connector cable. There will be only connections of Vcc, GND, D+, D-. this signals will be connected to Vbus, GND, D+, D- of the Type C port through the connector cable. In such a case, how will the PTN detect the USB ID, CON_DET and other signals since, the CC is not connected in the other end..?

PTN5150 EVM block diagram.png

  • Let’s use the block diagram from the PTN5150 EVM as an example.
  • Yes, from Type-A’s point of view, there are only VBus, GND, USB2_D+/-, USB3_SSTX/SSRX signal. 
  • However, on the Type-C side, you will see that there are additional CC1/CC2 lines on the receptacle.  You will need to connect these CC1/CC2 lines to PTN5150’s CC1/CC2 pins.  When something (either a host, or a device) is connected to the type-C connector (through a cable), that host or device’s type-C port will have corresponding CC1/CC2 with Rp or Rd resistors.  Eventually, host/device side’s Rp/Rd will connect to PTN5150’s Rp/Rd, and the role of PTN5150 will be determined based on what is being connected externally.
  • If PTN5150 presents a Rp, and external connection is a Rd, then PTN5150 is the host role (DFP), and the external connection is a device role (UFP)
    • When connected, CON_DET = 1
    • Because PTN5150 is a DFP, ID pin will output as 0
    • Now, because PTN5150 is the host, it would need to supply 5V VBus to the type-C connector, you will see that there is a load switch (NX5P3090 source) to  provide power to the type-C connector.  We now consider the type-A side as the host soc side, and it should have some 5V power available at the load switch input.
  • If PTN5150 presents a Rd, and external connection is a Rp, then PTN5150 is the device role (UFP), and the external connection is a host role (DFP)
    • When connected, CON_DET = 1
    • Because PTN5150 is a UFP, ID pin will output as 1
    • Now, because PTN5150 is the device, it can basically sink or take power from VBus (the power will be provided by the external host side connected), you will see that there is another load switch (NX5P3090 sink) to  take VBus power from the type-C connector into the Type-A side.  We now consider the Type-A side as the device soc side.
  • If there is nothing plug into the Type-C receptacle, PTN5150’s CC lines will do DRP toggle.
    • CON_DET = 0
    • ID = 1 (externally pulled up.  Open drain)
    • By definition of Type-C, when there is no connection, there should be no VBus showing on the Type-C connector.  So both load switches (source and sink) are turned off.

 

  1. Also, How does the PTN detect whether a connected port is USB 3.0 Type A, USB 2.0 or USB Type C itself and inform the Processor to start the communication for these separate USB protocols.
  • For USB2.0, you see that the D+/- signals are directly connected to Type-C’s A7/A8(top side)/B7/B8 (bottom side) pins.  So whatever is connected on the Type-C side and the Type-A side will start the communication when connected.
  • For USB3.0, you will see that USB3 signals from Type-A side will need to be routed (using either a MUX design, like CBTL02043, or an active redriver, like PTN36043A) to the Type-C side’s either SSTX1/RX1 or SSTX2/RX2, depending on which CC orientation is detected.  On PTN5150A, there is also a pin called “EXT_SEL” to indicate which CC pin is connected to the external.  The mux/redriver will be configured by the EXT_SEL pin for configuration.  After the MUX is configured, then the host side and device side will start the RX detect procedure.
  • For USB2/3, the communicate will basically start when VBus is provided from one side (host side) to the other (device side).  So when there is no connection, CON_DET pin from PTN5150 will output 0, and no load switch will the configured to pass power from one side to the other side.
  • Of course, in this example, it is a little confusing that what happened to ID pin.  In reality, if you want to design a DRP adapter, you should NOT consider to use Type-A plug.  The reason is that when you use a type-A plug, it can only plug into a host pc (yes, you can also find some device that has a type-A port, but not too common).  By the definition of a host port, the VBus is always hot.  So you can basically only use this design in a DFP configuration, (by connecting the PORT pin of PTN5150 to high), and the ID pin output will always be 1. If you want to design a DRP adapter, it is better to use a micro USB2/3 plug that has the ID pin (and you basically connect the ID pin output from PTN5150A to this ID pin on the plug) to indicate to the OTG port if it should act as a host or device, and also determine the VBus direction as well. (please refer to PTN36043_APP_BRD.pdf page 2 for that design).  The reason we did not continue with the OTG plug design  is that it is going to be limited to mobile phone applications (you don’t see any PC or actual device with micro B connectors), so it is not very practical for us.  So on the new design, we expect the user to know what they are dealing with.  If Type-C side is plug into a host, then Type-A side will need to plug into a device through a A-to-B or A-to-MicroB cable.  If Type-C side is plug into a device, then Type-A side will need to plug into a host through a A-to-A cable (yes, you can still find these cables on amazon, but a lot of them have the wrong connection.  So we need to be very careful about what we are buying here.)

 

  1. Also, whether in the case of USB 3.0 Type A, this RX detect will be taken care of PTN5150 itself..?
  • No, the RX detect is done on the USB3 SSTX/SSRX lines, it is part of the USB3 protocol to detect if there is something connected on the other side.  So it has nothing to do with PTN5150.

Regards,

Jose

 

0 Kudos
Reply

2,584 Views
reyes
NXP TechSupport
NXP TechSupport

Hi,

Answering your questions:

  1. We are planning to connect the Type C port to a USB 2.0 Laptop port for communication with the help of a USB Type c to USB 2.0 connector. In such a stage, How the processor will be able to detect the connected port is USB 2.0..?

[A1] Upon connection, the CC line will identify if your system will be either a USB2 host, or device. If you are a USB2 host, you will see the ID pin output of PTN5150 to go down to 0.  And for USB2 device role, ID pin will stay high.  Also, upon a valid connection, the CON_DET pin will go high.  When disconnect, CON_DET will go low.

 

No Connection

When PTN5150 is connected as DFP (host mode)

When PTN5150 is connected as UFP (device mode)

CON_DET

0

1

1

ID (external pull up)

1

0

1

 

 

  1. How the USB 2.0 Communication is initiated from the processor side..?

[A2] You can use CON_DET output to identify there is a connection established, and based on ID output state, you can initialize your process as host or device

 

  1. PTN 5150A acts on the basis of CC pins. in the case of Type C to USB2.0 cable, there wont be any CC connections from the USB2.0 side.

[A3] That is correct.  However, just like a USB OTG cable, you have a ID pin to identify if this port will be a host or device role.  And based on the role, your device will need to either provide 5V power (if ID pin is 0), or sink 5V power if ID pin is 1.

Upon USB2 connection, I think there is pull up resistor on D- line to identify that there is a connection. So this will serve as the connection indication

 

  1. Same issue comes in the case of USB 3.0 Type A to USB 3.0 Type C connector. If the USB type C port is connected to USB Type A port, there wont be any CC configuration in the USB Type A side. Hence, How will we able to detect the Highspeed Communication channel from the Cable is connected to the TX1,RX1 differential pair of the receptacle, or the TX2,RX2 pair of the receptacle.

[A4] For USB3, there is a mechanism called RX detect to detect if there is any far end termination (basically to check if a device is connected on the other side of the cable).  If there is nothing detected, then it will keep trying to do the RX detect until terminations are found, then it will start the high speed communication.

 

Regards,

Jose

0 Kudos
Reply