USB superspeed peripherals Forum Discussions
Hi all,
I decided the example I'd like to follow through is the back to back master/slave as outlined in AN87216 .
The AN states on page 1 "Firmware source code and GPIF II state machines for both master and slave FX3 kits are attached to this application note." The AN also lists table 4 (below). I have the latest SDK (1.3.4) and GPIF II designer, but I don't see these filenames anywhere. Also, what does it mean "the files in the attachment to this Application Note"?
The Infineon page for USB Super-Speed Code Examples lists the AN87216 , as shown below. All the references are circular and the location of the code remains a mystery to me.
scroll down to AN87216 .....
Click on this and the application note opens as PDF. Where is the associated folder mentioned in same PDF? What am I missing?
cheers,
Paul
Show Less
Hi, I'm engineer developing camera modules using FX3 controller.
I'm configuring FX3 GPIF-II interface for some image sensor now.
The sensor support resolution as 2560x721x30FPS.
And data bus line is 10 lines and PCLK from sensor is 120Mhz.
But the FX3 is not support PCLK over 100 Mhz, isn,t it?
So I'm figuring out solving this problem.
If the PCLK is over 100Mhz, what problem is occured?
How can I solve this problem?
Please give me the solution.
Show LessHello,
We would like to make use of the Cypress CyUSB3 Driver Resell opportunity for Windows 10. Which information do you need to be able to proceed?
Show LessHello,
We want to certificate driver by resell process.
Could you please confirm below information?
publisher display name : 주식회사 휴톤
MPN ID : 6558010
os : win 10 x64, win 10 x86
driver version : 1.2.3.20
chip : fx3
Thank you
Show LessHello everybody,
I'm using Qt Creator 7.0.1 based on Qt 6.2.3 (MVSC 2019, 64bits)
I got several issues while trying to build my project.
CyAPI.lib(CyAPI.obj):-1: erreur : LNK2019: symbole externe non r‚solu __imp_UnregisterDeviceNotification r‚f‚renc‚ dans la fonction "public: void __cdecl CCyUSBDevice::DestroyHandle(void)" (?DestroyHandle@CCyUSBDevice@@QEAAXXZ)
CyAPI.lib(CyAPI.obj):-1: erreur : LNK2019: symbole externe non r‚solu __imp_RegisterDeviceNotificationA r‚f‚renc‚ dans la fonction "private: bool __cdecl CCyUSBDevice::RegisterForPnpEvents(void *)" (?RegisterForPnpEvents@CCyUSBDevice@@AEAA_NPEAX@Z)
CyAPI.lib(CyAPI.obj):-1: erreur : LNK2019: symbole externe non r‚solu __imp_MessageBoxA r‚f‚renc‚ dans la fonction "int `public: bool __cdecl CCyUSBDevice::Open(unsigned char)'::`1'::catch$0" (?catch$0@?0??Open@CCyUSBDevice@@QEAA_NE@Z@4HA)
Do you know what is missing ?
my .pro file possess these libraries
LIBS += "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\library\cpp\lib\x64\CyAPI.lib"
LIBS += "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x64\SetupAPI.Lib"
LIBS += "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\lib\x64\legacy_stdio_definitions.lib"
INCLUDEPATH += "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\library\cpp\inc"
Show Less
Hi
I have CYUSB3014, and i willing to i2c working in slave fifo,because we want to transfer USB data and i2C data at the same time .
Is this can possible?If it's can do it, could you please let me know example source code like bulkloop or slavefifo ?
Thank you
Show LessI follow Adding Communication Device Class Interface to FX3 Firmware - KBA229099. and added all the codes into cyfxslfifousbdscr.c and cyfxslfifosync.c. When i try it out at my host-PC, windows 10 device manager can detect the cypress bootloader but the USB-Serial-device did not show up in device-manager-other device.
i am using the example from SlaveFifoSync.rar in https://community.infineon.com/t5/Knowledge-Base-Articles/Adding-Communication-Device-Class-Interface-to-FX3-Firmware-KBA229099/ta-p/259825
do i need to add the codebelow from https://community.infineon.com/t5/Resource-Library/SlaveFiFoSync-example-with-a-CDC-debug-console/ta-p/246083, into cyfxslfifosync.c
void SwitchConsoles(void)
{
CyU3PReturnStatus_t Status;
// Only proceed if USB connection is up
if (glIsApplicationActive)
{
// Tear down DMA channels that need to be reassigned
CyU3PDmaChannelDestroy(&CDCtoCPU_Handle);
// Switch console
UsingUARTConsole = !UsingUARTConsole;
CyU3PDebugPrint(4, "Switching console to %s", UsingUARTConsole ? "UART" : "USB");
CyU3PThreadSleep(100); // Delay to allow message to get to the user
// Disconnect the current console
CyU3PDebugDeInit();
CyU3PThreadSleep(100); // Delay to allow Debug thread to complete and all buffers returned
// Connect up the new Console out - this is simpler than the I2C case since the USB socket is an infinite sink
Status = CyU3PDebugInit(UsingUARTConsole ? CY_U3P_LPP_SOCKET_UART_CONS : CY_FX_EP_CONSUMER_CDC_SOCKET, 8);
CheckStatus("DebugInit", Status);
CyU3PDebugPreamble(CyFalse); // Skip preamble, debug info is targeted for a person
// Say hello on the new console
CyU3PDebugPrint(4, "Console is now %s", UsingUARTConsole ? "UART" : "USB" );
// Now connect up Console In
Status = InitializeDebugConsoleIn(UsingUARTConsole);
CheckStatus("InitializeDebugConsoleIn", Status);
// Connect CDC_Loopback if necessary
}
else CyU3PDebugPrint(4, "USB not active, cannot switch consoles\n");
}
CyU3PReturnStatus_t InitializeDebugConsoleIn(CyBool_t UsingUART)
{
CyU3PDebugPrint(4, "\nSetting up USB_CDC Console In");
CyU3PMemSet((uint8_t *)&dmaConfig, 0, sizeof(dmaConfig));
dmaConfig.size = EpSize[CyU3PUsbGetSpeed()];
dmaConfig.count = 2;
dmaConfig.prodSckId = CY_FX_EP_PRODUCER_CDC_SOCKET;
dmaConfig.consSckId = CY_U3P_CPU_SOCKET_CONS;
dmaConfig.dmaMode = CY_U3P_DMA_MODE_BYTE;
dmaConfig.notification = CY_U3P_DMA_CB_PROD_EVENT;
dmaConfig.cb = CDC_CharsReceived;
Status = CyU3PDmaChannelCreate(&CDCtoCPU_Handle, CY_U3P_DMA_TYPE_MANUAL_IN, &dmaConfig);
CheckStatus("CreateCDC_ConsoleInDmaChannel", Status);
if (Status != CY_U3P_SUCCESS) CyU3PDmaChannelDestroy(&CDCtoCPU_Handle);
else
{
Status = CyU3PDmaChannelSetXfer(&CDCtoCPU_Handle, 0);
CheckStatus("ConsoleInEnabled", Status);
}
}
return Status;
}
Show Less
As per Infineon's latest USB Product Roadmap, there has been mention of WLCSP package of FX3 Controller. I am attaching the latest Product Roadmap.
This package is almost half the size of standard BGA package. But there is no information on this WLCSP package on Infineon website.
Please check and let us know if this package is still under considerations or not? If yes then please help in providing details for this package.
Thanks & Regards,
Sunny Watts
Show LessI encounter an issue while trying to build a code using CyAPI.lib in Visual Studio Community 2022.
I've followed the setup :
1. Added the path to the headers in my project options (The #include "CyAPI.h" works)
2. Added the path to CyAPI.lib in my project options (linker)
3. Added the setupapi.lib in my project options (linker)
I encounter the following message :
LNK2019 symbole externe non résolu sprintf référencé dans la fonction "public: void __cdecl CCyUSBDevice::UsbdStatusString(unsigned long,char *)" (?UsbdStatusString@CCyUSBDevice@@QEAAXKPEAD@Z) ConsoleApplication2 C:\Users\Christophe.Siebentha\source\repos\ConsoleApplication2\ConsoleApplication2\CyAPI.lib(CyAPI.obj) 1
Show LessHi,
I have developed a board with 4x CX3 (CYUSB3065) connected into a USB 3.2 x1 Gen1 HUB 5 Gbps (Texas Instruments TUSB8042A). The upstream port of the USB HUB is connected to my laptop (USB 3.1 Gen 2, 10Gbps). To each CX3 circuit, I'm connecting a 12 MP 10 fps RAW8 image sensor. The CX3s use bulk endpoint for video streaming.
Unfortunately, when I stream at high resolution from 3 or 4 CX3 at the same time, I am getting timeouts on V4L2:
[ WARN:0] global /io/opencv/modules/videoio/src/cap_v4l.cpp (998) tryIoctl VIDEOIO(V4L2:/dev/video8): select() timeout.
Moreover, using usbtop utility, I could see that the transfer speed for the cameras that get timeouts drop to 0 Kbps. However, with 1 or 2 CX3 streaming at the same time, it works good. Streaming all 4x cameras at lower resolutions also works. I suspect of a USB bandwidth problem and I am wondering what can I do to solve the issue. I tried different USB3 HUBs with no success. The only way to make 4 cameras stream at high res at the same time without timeouts is by using two different host ports. This means using 2 custom boards, each with 2x CX3 streaming at high res.
Do you have any suggestion on what I could try next? Can isochronous endpoints for video streaming help in here?
Best regards,
Kevin Segovia
Show Less