9 Replies Latest reply on May 26, 2020 6:15 AM by SananyaM_56

    USB3.0 configuration

    kosa_4707851

      Hello

      We are currently using FX3 for USB 3.0 communication.

      I want to change the connector to TypeC. Is it possible to use a CCG controller to perform USB3.0 communication with TypeC?

       

       

      The CCG series does not have a built-in USB3.0 device, so I think it will have a configuration of FX3 + CCG.

      Does the CCG series have a built-in 2: 1 switch for Super Speed?

       

      Best Regards

      Koji

        • 1. Re: USB3.0 configuration
          SananyaM_56

          Hello Koji,

           

          No, CCG controller will not be able to act as a USB 3.0 device controller as well. You will have a FX3+CCG configuration as you mentioned if your design requires PD support i.e. more than 15W power.

          For selecting the superspeed lines as per the orientation, you will have to use an external multiplexer in case you are using a Type-C receptacle. For a Type-C plug, you can directly connect one pair of superspeed lines to FX3 and the USB host will take care of the orientation detection.

          Please refer to the KBA for more details.

           

          Best Regards,
          Sananya

          • 2. Re: USB3.0 configuration
            kosa_4707851

            Hello Sananya

             

            Thank you for your quick reply.

            I will refer to this design.

            I don't need the function of PD power supply.

             

            Thank you for your prompt reply

             

             

            I will refer to the design.

            I don't need the function of PD power supply.

             

             

            Regarding 2 in KBA, FX3 and external multiplexer are connected by one line.

            It looks like there is only output from FX3 to the external multiplexer.

             

            ・Does it mean that there is no need to input data because the front and back of the connector are judged by the host?

            ・I don't want to change the firmware as much as possible. Is it possible to change it only by correcting the comments in the KBA?

             

             

            Best Regards

            Koji

            • 3. Re: USB3.0 configuration
              SananyaM_56

              Hello Koji,

               

              If you're using a Type-C receptacle without a CCG controller as shown in the second design in the KBA, you need a GPIO to connect to the multiplexer SEL line after determining the orientation in the FX3 code. For this, you need to modify the FX3 code as shown in the comment below.

               

              Best Regards,

              Sananya

              • 4. Re: USB3.0 configuration
                kosa_4707851

                hello

                 

                It is possible only by connecting SEL and GPIO and modifying the program in the comment.

                 

                What does FX3 detect in GPIO to determine if the connector is front or back?

                 

                Best Regards

                Koji

                • 5. Re: USB3.0 configuration
                  SananyaM_56

                  Hello Koji,

                   

                  FX3 is responsible for detecting the orientation in the connector and it uses the GPIO as output to communicate that to the multiplexer. So FX3 tries to establish a connection using the first pair of superspeed lines and checks if it fails as shown in the code. CY_U3P_USB_EVENT_SS_COMP_ENTRY indicates that the 3.0 link has entered the compliance state and CY_U3P_USB_EVENT_USB3_LNKFAIL indicates that the 3.0 link between the FX3 and host has failed.

                  If either of these happen, it changes the GPIO output to select the other pair of superspeed lines through the multiplexer.

                   

                  Best Regards,

                  Sananya

                  • 6. Re: USB3.0 configuration
                    kosa_4707851

                    Hello

                     

                    About"FX3 is responsible for detecting the orientation in the connector".

                     

                    What does FX3 itself detect first to judge the front and back?

                     

                    Best Regards

                    Koji

                    • 7. Re: USB3.0 configuration
                      SananyaM_56

                      Hello Koji,

                       

                      As mentioned, FX3 first chooses one pair of superspeed lines from the connector using the MUXSEL GPIO. For example, MUXSEL is set as 0 and TX1+/-, RX1+/- lines are selected and connected to FX3 superspeed lines. FX3 then checks if the connection is proper using the event callback function. If it fails i.e. either of the events mentioned are generated, then it toggles MUXSEL to switch to the other pair of superspeed lines and establish a connection.

                       

                      Best Regards,

                      Sananya

                      • 8. Re: USB3.0 configuration
                        kosa_4707851

                        Hello Sananya

                         

                        Thank you for your polite explanation.

                         

                        For example, if an operational amplifier judgment circuit is inserted between the CC line and the switch, can it be operated without modifying the FX3 firmware?

                        (Two inputs of CC line to SEL of switch. Nothing is connected to MUXSEL of FX3.)

                         

                        Best Regards

                        Koji

                        • 9. Re: USB3.0 configuration
                          SananyaM_56

                          Hello Koji,

                           

                          Yes, you could use a comparator circuit between the cc lines and connect the output to the multiplexer select line. You wouldnt need any firmware modification on FX3 side if you use this method.

                           

                          Best Regards,

                          Sananya