USB superspeed peripherals Forum Discussions
text.format{('custom.tabs.no.results')}
What should be the expected maximum sustained throughput via a USB3 5Gbps connection when using the FX3 device as a video endpoint? We would connect the FX3 to an FPGA, and the FPGA could feed the FX3 the maximum of 32 bits @ 100 MHz (3.2 Gbps).
In other words, can the FX3 and the USB3 bus be configured to actually keep up with a 3.2 Gbps transfer rate for streaming video across USB3? If not, what should be our design goal for maximum sustained video transfer?
Show Less
Hi,
I'm using C# streamer code to catch all the status of the stream,
Just like the status that the streamer present in the UI (picture below).
But I there is a different when I config the FX3 for low packet size,
In the C# streamer there is "0" in the " Transfer Rate (KBps) "
But In the C++ there is a "60" in the " Transfer Rate (KBps) "
I'm using the code on the next location,
C# -- C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\application\c_sharp\streamer
C++ -- C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\application\cpp\streamer
Can you direct me to the main different in the code that make the different in the "KBps"?
And maybe explain how it works?
(on the right C#, on the Left C++)
Thanks,
EliW.
Show LessDear sir,
I want to use GPIF 32bit bus width in my design and UART for debug, spi flash for booting. but it seems that SPI flash memory signals can not be mapped because they are shared with UART_RX and UART_TX when 32bit gpif is used.
How to deal with this case: 32bit width gpif,uart debug and spi flash booting are working at the same time?
David
Show LessHello,
We have a custom board with FX3 that receives image from a sensor with a resolution of 3848x2168 at 13.3fps (RAW12).
We have managed to see the video coming from the sensor with AMCAP and with our custom software. But it seems that, sometimes, the received image is glitched on the initial columns (See "ProperImageCamTool.jpg" and "FailingImageCamTool.jpg").
These screenshots are both using the same firmware, the glitch appears just after unplugging and plugging again to our USB3.0 port.
With a quick look it seems like the last pixels of each row have been moved to the first pixels of each row. But, with further debugging we've managed to see that the first row of pixels has 5 pixels that correspond to the last 5 pixels of the last row of the ... ¿previous frame?. And from there, all the first 5 pixels of each row are a representation of the last 5 pixels from the previous row. (See PixelZoom.jpg).
Have you ever experienced something like this? What can be causing this missalignment of pixels and how can we solve it?
As for our system we have configured the DMA buffers as:
/* UVC Video Streaming Endpoint Packet Size */
#define CY_FX_EP_BULK_VIDEO_PKT_SIZE (0x400)
/* UVC Video Streaming Endpoint Packet Count */
#define CY_FX_EP_BULK_VIDEO_PKTS_COUNT (0x30)
/* DMA buffer size used for video streaming. */
#define CY_FX_UVC_STREAM_BUF_SIZE (CY_FX_EP_BULK_VIDEO_PKTS_COUNT * CY_FX_EP_BULK_VIDEO_PKT_SIZE) //CY_FX_EP_BULK_VIDEO_PKTS_COUNT /* 16 KB */
The descriptors as:
0x08, 0x0F, // Width in pixel
0x78, 0x08, // Height in pixel
0x00,0x0E,0xCC,0x52, // Min bit rate bits/s.
0x00,0x0E,0xCC,0x52, // Max bit rate bits/s.
0x80,0x97,0xFE,0x00, // Maximum video or still frame size in bytes(Deprecated)
0x2D,0xE6,0x0A,0x00, // 14fps
0x01,
0x2D,0xE6,0x0A,0x00,
and the glProbeCtrl as:
0x2D,0xE6,0x0A,0x00, // 14fps
...
0x80,0x97,0xFE,0x00,
Show LessHi,
I have picked up a task to re-spin a design using the CYUSB3014, completed several years ago. All the people involved in the original design have since left the company.
I've looked at the firmware and tried to compile it using the latest SDK. I get two linker errors.
I can't many mentions of these calls anywhere in the documentation supplied with the SDK or online. I assume the API has moved on, though I can't find a note of their deprecation either.
The two calls are :
CyFx3SetCpuFreq(uint32)
CyU3PUsb2Resume()
I can find one mention of the CyU3PUsbResume function in the "EZ-USB FX3 SDK Troubleshooting Guide, V1.3.4" but sadly it does not say what library it exists in or where it is defined.
Is there an older SDK I should be using or are there new ways to achieve the same function?
Show LessHi,
I would like to use the CYUSB3KIT-003 board.
The CYUSB301X datasheet defined that GPIF II can operate at 100MHz at 32bit data bus.
When I look on the CYUSB3KIT-003 layout file I can see a big stub between connector J6 and SRAM memory U5.
Does the 32 bit GPIF II bus can operate at 100MHz with that stub when the CYUSB3KIT-003 connected to FPGA (signals goes from U2 to J6 and than to the FPGA and the trace between J6 and U5 is big stub)?
Did you worked at this mode?
What is the usage of the SRAM (U5) on the board? Is it for easy way to test transactions from PC to memory?
Regards
Roni
Show LessI want to pass the FX3 Compliance Test. There is a statement in the KBA at the URL below that "cyfxbulksrcsink" should be used, so I am trying to use it.
https://community.infineon.com/t5/Knowledge-Base-Articles/FX3-FAQs-KBA224051/ta-p/257566
I want to enter Loopback Mode by checking the Jitter Tolerance of RX. What should I do? Do you have a sample FW?
Thanks,
Tetsuo
Hello,
I am trying to experiment with the examples in AN65974 to buffer my FPGA board using FX3. However, I did not find the links to project files (firmware images and Verilog designs) by any chance. Would someone kindly point where to download it?
Thank you.
Show LessHello,
I am using an electroencephalogram (EEG) that uses a CyUSB.sys driver. I am looking to get the incoming EEG data into MATLAB. I have used the code below and am getting this error. I also do not know what to do even if this code worked, how to get data into MATLAB in real-time is even the bigger challenge I am facing.
Error
Message: Arithmetic operation resulted in an overflow.
Source: CyUSB
HelpLink:
Code:
try
CyUSBdll = NET.addAssembly('C:\Cypress\Cypress Suite USB 3.4.7\CyUSB.NET\bin\CyUSB.dll');
catch error
error.message
if(isa(error,'NET.NetException'))
e.ExceptionObject
else
disp('CyUSB.dll already loaded');
return;
end
end
usbDevices = CyUSB.USBDeviceList(CyUSB.CyConst.DEVICES_CYUSB);
PS: I am a psychology student and do know much about drivers and all.
Show LessHi,
We are developing a USB3.0 camera with FX3(CYUSB3014), the camera consist of one image sensor, one FPGA and one FX3. The camera works well on several host PC we have when using 1m usb3.0 cable, and no frame loss, but when we using 2m usb3.0 cable, on a host PC, only several images can be received first, then the host cannot receive any image, we change the 2m cable to 1m cable, on the same PC, the camera works correctly, furthermore, we change to another host PC with the same 2m usb3.0 cable and the camera, the camera works correctly too. So I have some questions:
1, When use 2m cable, for FX3, what is the different with using 1m cable?
2, Could it be a software issue?
Show Less