USB superspeed peripherals Forum Discussions
text.format{('custom.tabs.no.results')}
Hi Team,
Due to the component unavailability of PN: CYUSB3014-BZXI We have purchased with an unauthorized vendor.
After testing we are facing a USB disconnection issue while running. I like to know if is there any option to check if the FX3 is original or china made.
Show LessI have a device with an CYUSB3014 and am trying to connect the UART to an FPGA to access the prints from the firmware. Due to limitations on the hardware, the UART is connected to GPIO 48 and 49 so I am trying to use the "16-bit Data Bus + UART + SPI + I2S" pin configuration listed in Table 7 of the FX3 datasheet however I seem to be getting inconsistent output with the following settings (meaning when I try these setting I get no output sometimes):
io_cfg.isDQ32Bit = CyFalse; /* 16-bit bus */
io_cfg.useUart = CyTrue; /* For logging */
io_cfg.useI2C = CyFalse;
io_cfg.useI2S = CyFalse;
io_cfg.useSpi = CyFalse;
io_cfg.lppMode = CY_U3P_IO_MATRIX_LPP_UART_ONLY; /* Required mode for 16-bit bus w/ UART */
io_cfg.s0Mode = CY_U3P_SPORT_INACTIVE;
io_cfg.s1Mode = CY_U3P_SPORT_INACTIVE;
io_cfg.gpioSimpleEn[0] = 0; /* No GPIOs are enabled. */
io_cfg.gpioSimpleEn[1] = 0;
io_cfg.gpioComplexEn[0] = 0;
io_cfg.gpioComplexEn[1] = 0;
However if I set "CY_U3P_IO_MATRIX_LPP_UART_ONLY" to "CY_U3P_IO_MATRIX_LPP_DEFAULT" I do get prints consistently. I have 2 questions:
1. How do I ensure I have the correct pin config (according to Table 7 of the FX3 datasheet)? I assume it is through the useUart, useI2C, useI2S, useSpi and isDQ32Bit properties but I can't find any documentation that confirms this.
2. What is the difference between "CY_U3P_IO_MATRIX_LPP_UART_ONLY" and "CY_U3P_IO_MATRIX_LPP_DEFAULT"? In reading the enum documentation it seems like I should have "CY_U3P_IO_MATRIX_LPP_UART_ONLY" since I have a 16-bit bus with only UART enabled.
Hi,
FPGA is connected to FX3 with GPIF 32 interface. And initially two endpoint are created e.g. 0x01 and 0x81 .
So, Host pc can directly communicate the FPGA though DMA channel and its work fine.
But when a "Interrupt Endpoint (0x82)" was added for sending the GPIO interrupt info to Host pc , Communication between Host pc to FPGA stopped working ?
CyU3PDebugInit() ; Function is use to create the DMA channel for interrupt.
Sending the data on Interrupt endpoint
Configuration on Interrupt endpoint
Show Less
hello.
i'm working on fx3 firmware project with CYUSB3KIT-003 configured with auto dma channel (P to U) to bulk in endpoint.
based on fx3 sdk's predefined models (synchronous slave fifo interface & BulkLedSample)
external clock based on FPGA (80Mhz), data bus 32bit.
dma buffer size: 16 * 1024 byte.
dma buffer count: 4.
independent gpif model different from predefined gpif state (FPGA sends data when ctrl pin flagged)
without any other work.
the data transmission with fpga -> fx3 -> pc 's bandwidth worked as expected (2.1Gbit/s)
but each packet had a loss ( the desired data does not come from the end of the packet. there's a missing part).
so I tried to debug the dma channel's callback but I realized that the callback function not be called.
there was a long introduction.
Question 1.
I want the action required for callback function to be called in fx3 firmware.
to commit data, I changed the dma channel to manual mod, but it not works.
that's why I didn't put in the code I needed.
Question 2.
Are there any suspicious clue for missing data?
I cannot find a clue because the flow of data cannot be debugged.
However, if there is a case that I couldn't refer to in the previous post, I would appreciate it if you could provide it...
I can send you the project file by personal email.
Best Regards,
Nifor
Hi supporting,
After downloaing the latest EZUSB-SX3_Configuration_Utility_Installer_Linux_v1_0_0_3.zip, and trying to update the CYUSB3KIT-004 but the files sx3_explorer_kit_uvc_uac_crosslink_slavefifo.zip and sx3_explorer_kit_uvc_uac_crosslink_rpi.zip are not found. Can some one help me how can I got those two files. Without that I cannot test the defautl UVC camera board. Thanks!
BR,
Winner
Show Less
I am a new programmer, and am learning about the FX3 through the SuperSpeed Device Design by Examble book, currently i am trying to replicate the visual studio examples coverered in chapter 7 using the CyAPI.lib library to develop host aplications, but i cant seem to compile them in visual studio community 2022, i keep getting the same error and im not sure wether im not linking the library properly or missing something else. i attached a screenshot of said error, can someone help me with this? please and thank you.
p.d. i am using windows 10
Show LessI have been working with FX3 USB for about 10 years now, with various success to debug.
But recently I received a new laptop with Windows 11 installed from scratch.
It works fine with the FX3 USB using release compiled code, but as soon as I try to debug it stops working.
The USB device shows up as normal, but it fails to start with the error message:
"Insufficient system resources exist to complete the API".
If I google this, they blame it on the driver... I'm using the latest driver that is included with FX3 SDK 1.3.4.
I have installed FX3 SDK 1.3.3 with eclipse since I have seen issues to debug with 1.3.4, but I'm compiling with SDK 1.3.4 (I have also tried SDK 1.3.3).
My old laptop is also running Windows 11, but it was updated from Windows 10 which seem to give a difference for some devices / apps. And there are no major issues to debug using the old laptop.
I could also mention that if I have the FX3 USB device connected at boot time, I will get the same issue. But if I connect it after boot everything works fine. I didn't have this issue with the old laptop.
Any suggestions on how I could proceed to get it working?
Show LessHello,
I'm trying to get stream AS0149 image sensor.
Output: Bayer 12bit
Resolution: 1280 x 960 @30FPS
I've verified configuration and get stream successfully on a Linux device but can't get stream with CX3.
I followed steps in https://community.infineon.com/t5/Knowledge-Base-Articles/Streaming-RAW10-Format-Input-Data-to-16-24-bit-Output-Format-in-CX3-MIPI-CSI-2/ta-p/259142 but not worked.
************************************mipicsi.c ************************************
/* as0149at_UYVY_Resolution0 : */
CyU3PMipicsiCfg_t as0149at_UYVY_Resolution0 =
{
CY_U3P_CSI_DF_YUV422_8_2, /* CyU3PMipicsiDataFormat_t dataFormat */
2, /* uint8_t numDataLanes */
2, /* uint8_t pllPrd */
93, /* uint16_t pllFbd */
CY_U3P_CSI_PLL_FRS_250_500M, /* CyU3PMipicsiPllClkFrs_t pllFrs */
CY_U3P_CSI_PLL_CLK_DIV_4, /* CyU3PMipicsiPllClkDiv_t csiRxClkDiv */
CY_U3P_CSI_PLL_CLK_DIV_4, /* CyU3PMipicsiPllClkDiv_t parClkDiv */
0, /* uint16_t mClkCtl */
CY_U3P_CSI_PLL_CLK_DIV_2, /* CyU3PMipicsiPllClkDiv_t mClkRefDiv */
1280, /* uint16_t hResolution */
250 /* uint16_t fifoDelay */
};
************************************uvcscr.c ************************************
/* Class specific Uncompressed VS format descriptor */
0x1B, /* Descriptor size */
CX3_CS_INTRFC_DESCR, /* Class-specific VS interface Type */
0x04, /* Subtype : VS_FORMAT */
0x01, /* Format desciptor index */
0x01, /* Number of Frame Descriptors that follow this descriptor: 1 */
/* GUID, globally unique identifier used to identify streaming-encoding format*/
0X55,0X59,0X56,0X59,
0X00,0X00,0X10,0X00,
0X80,0X00,0X00,0XAA,
0X00,0X38,0X9B,0X71,
0x10, /* Number of bits per pixel: 16*/
0x01, /* Optimum Frame Index for this stream: 1 (Resolution0) */
0x00, /* X dimension of the picture aspect ratio; Non-interlaced */
0x00, /* Y dimension of the pictuer aspect ratio: Non-interlaced */
0x00, /* Interlace Flags: Progressive scanning, no interlace */
0x00, /* duplication of the video stream restriction: 0 - no restriction */
/* Class specific Uncompressed VS Frame Descriptor 1 - Resolution0 */
0x1E, /* Descriptor size */
CX3_CS_INTRFC_DESCR, /* Descriptor type*/
0x05, /* Subtype: frame interface*/
0x01, /* Frame Descriptor Index: 1 */
0x00, /* No Still image capture method supported */
0x00,0x05, /* Width in pixel: 1280 */
0xc0,0x03, /* Height in pixel: 960 */
0x00,0x00,0x28,0x23, /* Min bit rate (bits/s): 1280 x 960 x No Of Bits per Pixel x FrameRate = 589824000 */
0x00,0x00,0x28,0x23, /* Max bit rate (bits/s): Fixed rate so same as Min */
0x00,0x80,0x25,0x00, /* Maximum video or still frame size in bytes(Deprecated): 1280 x 960 x 2 */
0x15,0x16,0x05,0x00, /* Default frame interval (in 100ns units): (1/30)x10^7 */
0x01, /* Frame interval type : No of discrete intervals */
0x15,0x16,0x05,0x00, /* Frame interval 3: Same as Default frame interval */
Receiver configuration
Also I can't see Hsynch and Vsynch signals.
Where am I doing wrong? Could you help me, it's kinda urgent.
Best regards.
Show LessHi.
We are not able to get the register sets for MT9M114 & MT9J003 sensors. Can you please help us with the register sets for both and sensor.c & sensor.h file for MT9J003 sensor will be great.
Thanks in advance.
Rgds,
Vino
Show LessHi, I am having the FX3 development kit that's supposed to work with the aptina MT9M114 sensor(Image sensor). we are planning to change aptina MT9J003 sensor. but I am struggling to change the register parameter.
datasheet doesn't have direct register address. kindly help me to develop the image sensor.
some registers I changed but that's are correct or not I don't know. that are below
Sensor. H
/* I2C Slave address for the image sensor MT9J003. */
#define SENSOR_ADDR_WR 0x20 /* Slave address used to write sensor registers. */
#define SENSOR_ADDR_RD 0x21 /* Slave address used to read from sensor registers. */
Sensor .c
SensorI2cBusTest (
void)
{
/* The sensor ID register can be read here to verify sensor connectivity. */
uint8_t buf[2];
/* Reading sensor ID */
if (SensorRead2B (SENSOR_ADDR_RD, 0x00, 0x00, buf) == CY_U3P_SUCCESS)
{
//if ((buf[0] == 0x24) && (buf[1] == 0x81)) //MT9M114
if ((buf[0] == 0x2C) && (buf[1] == 0x01)) //MT9J003
{
return CY_U3P_SUCCESS;
}
}
Regards
Vinohari (+91 8861223731 )
Show Less