12 Replies Latest reply on Aug 11, 2018 12:47 AM by YangyangC_06

    cyusb3 driver is not working in Windows 10

      Hello,

       

      I have a custom board with CYUSB3064 + OV5640 on it. Windows 10 by default recognizes it as CX3-UVC and installs usb driver. This driver and the board are working well - I've tested the camera capturing using VLC streaming.

      Now I want to download my FW to CX3 and for this purpose I had to install cyusb3 driver from the EZ USB suite. After modifying the cyusb3.inf as described in cyusb3.pdf, deleting catalog file with hash, forcing unsigned driver, I succeed to install the driver, but I get the following error:

       

      This device cannot start. (Code 10)

      An invalid parameter was passed to a service or function.

       

      And of course the Control Center doesn't recognize any device connecte.

      What might be the problem?

        • 1. Re: cyusb3 driver is not working in Windows 10
          YangyangC_06

          Hi Micheal,

           

          Which kindl of firmware are you trying to download?Could you upload it for me to cross check?

          • 2. Re: cyusb3 driver is not working in Windows 10

            Hello,

             

            It's just a Cx3UvcOV5640 example project from the EZ USB SDK tutorial.

             

            But I'm far from downloading process. The Control Center is not recognizing my device and this is most probably because the standard windows driver is not suitable for this mission. So I've just trying to bind Cypress USB driver from the EZ USB suite. And this step fails. Device Manager of Windows 10 shows that there is a problem with the driver and the reason is as mentioned below.

            • 3. Re: cyusb3 driver is not working in Windows 10
              YangyangC_06

              Hi Micheal,

               

              As you may know that CX3 is deliveryed out with bootloader inside. When the customer connect it to PC in the first time(USB boot), it will enumerate as FX3 USB bootloader device. It is an USB vendor device so it works with driver from Cypress(cyusb3.sys)

              After you writting your UVC firmware and download it into FLASH. Set PMODE as SPI boot, CX3 will read the firmware from FLASH and tell the PC 'Hey, I am a UVC device'.  The UVC device is a kind of standard USB class device. The driver is not provided by Cypress but the OS.

               

              I am not very clear about why you modify the cyusb3.inf. I hope I can get more information from you.

              • 4. Re: cyusb3 driver is not working in Windows 10

                Hello and thank you for your support. Following is more detailed info.

                 

                I have a custom third-party board with no JTAG connection on it. My goal is to download new firmware to this board using USB. According to the SDK user guide, I can download new firmware using Control Center of the EZ USB SDK suite. When connecting the board to the PC for the first time, it was recognized by Windows as CX3-UVC

                Driver.jpg

                Now, when I run Control Center, it doesn't recognize any FX3/FX2. I assumed this happens because the driver that Control Center is using should be CyUSB3.sys:

                Control Center.jpg

                 

                Please, advise for the next steps.

                • 5. Re: cyusb3 driver is not working in Windows 10
                  YangyangC_06

                  Hi ,

                  I assumed this happens because the driver that Control Center is using should be CyUSB3.sys:

                  Control Center.jpg

                   

                  Please, advise for the next steps.

                  Yes, you are right. Control center works with Cyusb3.sys not usbvideo.sys.

                  As per your description, your device boot from FLASH or EEPROM. Please set PMODE to usb boot. Then the control center will find it.

                  • 6. Re: cyusb3 driver is not working in Windows 10

                    Thank you very much. I've succeeded to overcome all drivers issues. I'm also successfully used the Cx3UvcOV5640 example.

                    I have a question: the example allows different resolutions including HD depending the USB speed. My laptop's USB is USB3.0, so theoretically I can run all these configurations. But I fails to configure the resolution. I've found this function call in the CyCx3AppInit():

                     

                    status = CyU3PMipicsiSetIntfParams(&cfgUvcVgaNoMclk, CyFalse);

                     

                    and replaced it with

                     

                    status = CyU3PMipicsiSetIntfParams(&cfgUvc1080p30NoMclk, CyFalse);

                     

                    But this didn't have any effect. How/where should I configure the code to get 1080 resolution?

                    • 7. Re: cyusb3 driver is not working in Windows 10
                      YangyangC_06

                      You don't have to replace

                      status = CyU3PMipicsiSetIntfParams(&cfgUvcVgaNoMclk, CyFalse);

                      with

                      status = CyU3PMipicsiSetIntfParams(&cfgUvc1080p30NoMclk, CyFalse);

                       

                       

                      We provide the example project, you could just download the firmware into CX3 RAM/FLASH/EEPROM. Open the host application, choose the resolution from list, then you could view the 1080p vide stream.

                       

                       

                      • 8. Re: cyusb3 driver is not working in Windows 10

                        This is exactly what I do. I'm using VLC to stream from capture device. Unfortunately, it seems that VLC doesn't allow to choose stream resolution. Is there any other players that you can suggest to test the example?

                        • 10. Re: cyusb3 driver is not working in Windows 10
                          RNa_1426991

                          Have you tried Windows' own amcap.exe? It doesn't come packaged with Windows 10 anymore, but will be there in C:\Windows folder in Windows 7...

                          • 11. Re: cyusb3 driver is not working in Windows 10

                            OK, sorry for the delayed response, now I'm back from vacation.

                             

                            I've installed MPC-CH. You can see that I don't receive the high rate options, only 640x480:

                             

                             

                            I want to emphasize that I'm compiling the standard example Cx3UvcOV5640. So what is wrong? Why can I get 1280x720 resolution?

                            • 12. Re: cyusb3 driver is not working in Windows 10
                              YangyangC_06

                              Hi Michael,

                               

                              From the screenshot, I presume that your device enumerates as USB 2.0 device instead of USB3.0. That's why you don't have any other resolution option.

                              The reasons my be summarized below.

                              1. The defect of hardware design(USB 3.0 differential pairs).
                              2. You use a USB2.0 cable or a bad "USB3.0" cable.
                              3. You connect your device to a USB 2.0 port instead of a USB3.0 port.
                              4. You modify the defalut statement
                                  status = CyU3PConnectState(CyTrue, CyTrue);
                              

                                    as

                                  status = CyU3PConnectState(CyTrue, CyFalse);