5 Replies Latest reply on Dec 23, 2015 3:02 AM by kadalih_81

    CY7C65213 D- voltage level reads 1V instead of 0V

    p.karthikvenkatesh_1549956

      Hi,

         

      I am new to CY7C65213 USB-to-UART bridge controller chip.

         

      I am using it to program my NXP Microcontroller through PC's USB port.

         

      CY7C65213 connects to PC through USB connector.

         

      The output of CY7C65213 connects to UART of NXP Microcontroller.

         

      When using this setup, my Ubuntu OS was not able to detect the Cypress device as COM port, when checked using lsusb command.

         

      Earlier to this, I made sure the Driver is properly installed by connecting a working CY7C65213 module. Attached is the snapshot of proof that Driver is ok.

         

      The only difference between the working ckt and non-working ckt is - I have used different supply voltages for VCC and VCCIO pins.

         

      VCC is connected to VBUS of USB input.

         

      VCCIO is fed by 3.3V (generated using on-board LDO). The reason for this is, the MCU which is connected to the CYPRESS chip operates at 3.3V.

         

      I followed the application circuit given in "AN85514: Designing a USB-to-RS232 Solution Using Cypress's USB-to-UART LP Bridge Controller" - "Figure 5. Cypress's USB-to-UART Bridge Interface with MCU (Mixed-Powered Design)"

         

      When I measured the voltage levels at D+ and D-, I observed

         

      D+ = 3.3V

         

      D- = ~1V

         

      I know that in order for the communication to take place, the differential voltage between D+ and D- should be atleast 3V.

         

      In that case, D- should have been 0V or atleast close to 0V. But why it reads 1V ? Could this be the reason for the issue ?

         

       

         

      Note: In working module, I have connected both VCC and VCCIO to common 5V VBUS.

         

      Any help would be appreciated.

         

       

         

      Thanks and regards,

         

      Karthik

        • 1. Re: CY7C65213 D- voltage level reads 1V instead of 0V
          kadalih_81

          Hi,

             

           

             

          Have you tried connecting D+, D- of connector directly to USBDP and USBDM i.e., remove R3, R4, C10, C11 and U3? If yes, does the issue exist?

             

           

             

          I recommend you to create a tech support case at www.cypress.com/support 

             

           

             

          Thanks

             

          Haneesh

          • 2. Re: CY7C65213 D- voltage level reads 1V instead of 0V
            p.karthikvenkatesh_1549956

            Hi,

               

            I found that there was a short between pins 16(D-) and 17(3v3out). When I fixed it, the voltage I get is

               

            D+ = 2.9V

               

            D- = 0V

               

            Still the device did not get detected.

               

            There was no U3,C10,C11 in this. But R3,R4 exist.

               

            When I connect this to Windows PC, it shows an error "The last USB device you connected to this computer malfunctioned, and

               

            windows does not recognize it." Please find attached error message.

               

             

               

            Thanks and regards,

               

            Karthik

            • 3. Re: CY7C65213 D- voltage level reads 1V instead of 0V
              p.karthikvenkatesh_1549956

              Hi,

                 

              As you suggested, I removed R3 and R4 as well (along with U3, C10,C11).

                 

              So now D+ and D- are directly connected to Cypress chip's respective pins.

                 

              Ubuntu detects the device.

                 

              Could you please explain what is happening ?

                 

              What role does ESD protection diodes, series resistances and caps connected to it play with regards to detecting the device ?

                 

              Or is it because I fed 5V to VCCIO as well ? (instead of 3.3V to VCCIO and VBUS to VCC).

                 

              Thanks and regards,

                 

              Karthik

              • 4. Re: CY7C65213 D- voltage level reads 1V instead of 0V
                p.karthikvenkatesh_1549956

                Hi,

                   

                Your suggestion was so helpful.

                   

                In order to rule out  'providing different supply voltage' to VCC and VCCIO as the probable issue, I reverted back to original design as in schematic.

                   

                Now VCC = 5V and VCCIO = 3.3V

                   

                There is no ESD diode protection, series termination resistors (27ohms) and decoupling cap on D+ and D-.

                   

                This time it works.

                   

                So i would like to know why these series termination + decaps + ESD diodes cause the issue. 

                   

                Please clarify.

                   

                 

                   

                Thanks and regards,

                   

                Karthik

                • 5. Re: CY7C65213 D- voltage level reads 1V instead of 0V
                  kadalih_81

                  Hi Karthik,

                     

                   

                     

                  Glad to hear that issue is resolved !!

                     

                   

                     

                  As you have figured out, you can either give 5V supply to both VCC and VCCIO or give VCC = 5V and VCCIO = 3.3 V. 

                     

                  We do not recommend to have resistors/capacitors on D+ and D- lines which could result in voltage drop and timing issues. I suggest you to remove resistors, capacitors and use the ESD protection circuit shown in Figure-5 of "AN85514: Designing a USB-to-RS232 Solution Using Cypress's USB-to-UART LP Bridge Controller" 

                     

                   

                     

                  Thanks,

                     

                  Haneesh