CX3 Application Software / USB Driver: Frequently Asked Questions – KBA91298

Version: *B

 

Answer:

 

  1.  

    Question

      

    Does Cypress have an Android UVC driver for CX3? 

      

    Answer

      

    CX3 device firmware follows the UVC standard and binds with the standard UVC driver available with the Android OS. So users don’t require any external driver for connecting CX3 based USB camera.

  2.  

    Question

      

    I am unable to download the application firmware image into the I2C EPROM or to SPI flash in CX3 Reference Design Kit with FX3 SDK 1.3.0. How do I fix this? 

      

    Answer

      

    The CyBootProgrammer.img file in the “Cypress\EZ-USB FX3 SDK\1.3\bin” folder that is part of SDK 1.3.0 has some compatibility issues with CX3.This issue is fixed in the FX3 SDK Version 1.3.1, available in cypress website for free download. Alternatively, you can build the \Cypress\EZ-USB FX3 SDK\1.3\firmware\basic_examples\cyfxflashprog project and rename the .img file to CyBootProgrammer.img and place it in the path, Cypress\EZ-USB FX3 SDK\1.3\bin. 

  3.  

    Question

      

    How do I configure the MIPI CSI-2 controller in CX3 to suit various image sensors?

      

    Answer

      

    The General Programmable Interface (GPIF)- II interface in CX3 has a fixed configuration. Therefore, FX3’s “GPIF II Designer” tool is not applicable for CX3. The MIPI CSI-2 controller in CX3 can be configured to suit the image sensor. Use the CX3 Receiver Configuration Tool to configure the MIPI CSI-2 controller in CX3. This tool is an Eclipse plug-in, which is part of the FX3 SDK installation. 

      
        
    1. Select the CX3 project in the project explorer of the Eclipse IDE.
    2.   
    3. Select File > New > Other.
    4.   
    5. Select CX3 Configuration from the drop-down list of option Cypress and click Next.
    6.   
    7. Choose the appropriate option as per your requirement. The following options are available:      
            
      • Create new MIPI Receiver Configuration Project The tool now supports generating a complete firmware project for CX3 based on the UVC framework. This option should be used to create a complete project. 
      •     
      • Add only the MIPI Configuration file. This option should be used when the UVC project for CX3 is already available and when you want to create only a MIPI configuration. 
      •    
        
    8.   
    9. Enter a project name if you are creating a new project or select an existing project if you are creating a MIPI configuration only and click Finish.    

      A configuration file with the extension “.cycx” is added to the CX3 project. This opens in the Eclipse window. 

        
    10.  
      Do the following to edit the MIPI configuration parameters:   
        
    1. In the CX3 Configuration Tool, change the Image Sensor Configuration and CX3 Receiver Configuration parameters as required.
    2.   
    3. Enter a Configuration Name under CX3 Configuration Summary.
    4.   
    5. Click Save.
    6.   
    7. Go to the “cyu3mipicsi.c” tab of the Configuration Tool, and do one of the following:     
            
      • Click Export to File to generate a new .c file containing the MIPI configuration structure.
      •     
      • Click Copy to Clip Board to copy the MIPI configuration structure to an existing file (.h or .c) of the CX3 Project
      •    
          See section 4.4 “Using the CSI Configuration Utility” of the “EzUsbSuite_UG.pdf” file for more details about the configuration utility and project creation. The document will be available at the following directory:      
            
      • C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\doc\firmware\ EzUsbSuite_UG.pdf for 64 bit operating system
      •     
      • C:\Program Files\Cypress\EZ-USB FX3 SDK\1.3\doc\firmware\ EzUsbSuite_UG.pdf for 32-bit operating system
      •    
        
    8.  
  4.  

    Question

      

    I built the CX3 example firmware provided with CX3 RDK / FX3 SDK. It works only in the low-resolution modes (640 x 480 or 1280 x 720) mode. It is not streaming video in 1920 x 1080 mode. How do I fix this? 

      

    Answer

      

    You should select the “Release” mode when you build the project. If you select the “debug” mode, the image file generated may not work at higher resolutions. The “Release” build of firmware is optimized for performance. Therefore, it is always recommended to use the “Release” build for applications involving higher data throughputs. 

  5.  

    Question 

      

    I can see only the 640 x 480 as the supported resolution in the UVC player such as e-CamVIEW, AMCAP, VirtualDub, or VLC player. I cannot find the 1280 x 720 and 1920 x 1080 modes. How do I fix this? 

      

    Answer: 

      

    Ensure that the CX3 RDK is connected to a USB 3.0 port (the blue-color USB connector). If the CX3 RDK is connected to a USB 2.0 port, the 720p and 1080p resolutions are not available.

  6.  

    Question

      

    What are the USB drivers supported by CX3?

      

    Answer:

      

    CX3 firmware examples provided along with FX3 SDK support the standard UVC drivers (UVC 1.0 and UVC 1.1) that come with the operating system. If the application requires a custom driver, contact cypress technical support by creating a support case.

  7.  

    Question

      

    Does CX3 support isochronous transfer with UVC drivers on the Windows platform?

      

    Answer:

      

    YES. CX3 can support isochronous transfer as per the UVC spec. For Hi-Speed USB, the windows UVC drivers support a maximum throughput of 24.576MBps (3*1024/125us, refer Isochronous transfer section in UVC spec). For SuperSpeed USB, Windows 10 UVC Drivers support bandwidth that can be higher than 350MBps based on the Burst length selected. But UVC Drivers on Windows 7 and earlier versions support maximum isochronous throughput of 24.576MBps, same as the Hi-Speed bandwidth.