USB superspeed peripherals Forum Discussions
Hello, Infineon,
We are working with a ascella dev kit in a high speed USB communication application. We managed to have our application running with the camera that comes included with the ascella kit, OV13850. However, we would like to, instead of having OV13850, just connect the OV5640 sensor to the CSI-2 lane (removing the THP7312 Image Signal Processor from the loop), and use your application https://github.com/surgical-robots/cycx3_uvc_ov5640 that is native for the Denebola kit, get images from the OV5640 and port our application to this camera.
However, we have had no success in getting running this configuration. We believe that this should run out of the box, is this the case? Or is there something that we need to change and didn't take into account?
Thanks!
Angel.
PS: FYI: @JayakrishnaT_76 @mgraziano
Show LessI am running SDK example UsbSpiRegMode where I need to debug it as per my requirement. I created a debug configuration according to the defined process in EzUsbSuite_UG and then when I run it as debug, it give me the error as:
Please suggest. Thanks.
Best Regards.
Show LessWant to try the example given by the SuperSpeed Explorer Kit User's Guide. But cannot locate the streamer.exe in directory
EZ-USB FX3/1.3/application/cpp/streamer/x86/Release
as recommended by the document.
There is an app in that directory called 'streamer', but it does not run properly on Window10. The streamer solution under ../x86/ was built with VS2008 and VS2015. They don't run in my VS2019, hence cannot rebuild the executive it. Where can I get an updated streamer.exe. Or anyone has experience in building a new streamer.exe using VS2019 ? Advice would be very appreciated.
-
Show LessWe have a need to get a driver/firmware package through Microsoft Hardware Lab Kit (HLK) testing in order to certify for Windows 11. One of the tests that the playlist puts out is a new one called the "Static Tools Logo Test", which is relatively new. For this test, a developer has to use the Static Driver Verification tool that is in Visual Studio (if the WDK is installed) and run it on the driver code. Doing so is a necessary step for generating a "DVL" file that the test requires to be present on the client computer when the HLK runs the test.
At this point, I have done the following:
1) Downloaded the latest FX3 source that I could find from this page (1.3.4 for Windows).
2) After some minor fixing of redeclared items in the code, I was able to compile the code in Visual Studio 2019 and was able to verify that the compiled "cyusb3.sys" file was working fine.
3) I then attempted to run the Static Driver Verification tool on the code. However, the tool will not complete without error. I also suspect that there would be things needed to be fixed in the code in order to pass the Static Tools Logo Test (there should be no "must-fix" items).
Is there a newer driver/source for the FX3 that would have these issues corrected (allow running of the Static Driver Verification Tool)?
(Note: Initially, I posted this in the wrong section of the forums (Re: Static Tools Logo Test - Cypress Developer Community), but am moving the discussion here and closing out that other thread.)
Thanks for any help you can provide.
Show LessHello,
I have an hardware that uses CYUSB3014 and connects to a Linux application only using a USB interface. I want to send a signal to the application that indicates the binary state of a sensor. I have been told that there is a way to do this using hardware from FTDI (they call it bit-banging), but I want to know if it is possible to do the same using the hardware I already have implemented.
If it is possible, how can I implement it is a way that the application can monitor the state of the sensor?
Thank you for your help.
Best regards,
RSar
Show LessCan GPIF FLAGs A and B (pins 21,22) be controlled with the below Drive Strength configurations?
G7 VIO1 I/O GPIO[21] CTL[4] FLAGA
G6 VIO1 I/O GPIO[22] CTL[5] FLAGB
If yes , can you provide an example please?
Drive Strength
Quarter Strength
Three Quarter Strength
Half Strength
Full Strength
Show Less目前项目中有用到CYUSB3014这颗芯片,使用IIC的EPPROM来配置3014,由于目前EPPROM缺料想换颗IIC的EPPROM,但是目前发现更换IIC的EPPROM后将固件通过3014写入到EPPROM时会出错,用示波器抓出的波形前期都是正常的写入操作(EPPROM有ACK信号),但是最后出现如下波形,想问下这大概是什么原因,另外更换IIC的EPPROM有什么注意事项吗
Show LessHi,
We are using the FX3 driver files and currently installing it using the driver installer. Now we have a plan to silently install the driver files. Do we need to show any license agreement for the FX3 driver before starting the silent installation or is it ok to silently install the FX3 driver files?
Thanks,
Dhivya
Show LessHi infineon team,
I am trying to port my old code build using 1.3.1 SDK to 1.3.4 SDK .I used multi thread in my program. when i opened my DFU program and click read firmware version my device got disconnected and reenumerated . i am using the same code which is working properly in 1.3.1 build . but when build in 1.3.4 SDK this issue araises.
After debugging i found that program stuck inside a thread and not coming out of it .kindly help me to resolve this issue
regards ,
raki
Show LessI am struggling with getting stale GPIF data on the FX3 following host-side glitches or program crashes. Presently, I configure 2 DMA channels from the GPIF and ping-pong back and forth from them to stream image data, which works. However, if the host-side program crashes, and then is restarted, I get random data from the previous acquisition.
For example, if I configure a CY_U3P_DMA_TYPE_MANUAL_MANY_TO_ONE transfer, I can tag each buffer with a sequentially increasing number in the call back. if I start a transfer with Begin/Wait/FinishDataXfer and then print the number sent on the host I get:
1 2 3 4 5 .... 4096 (each buffer I sent shows up in order at the host)
If instead I do Begin/Wait/FinishDataXfer and then close the program mid transfer, then launch it again, I get:
3387 3388 3389 3390 3391 3392 1 2 3 ... (I get 6 buffers from the previous aborted transfer and then the new data)
This is shifting my image data and causing all kinds of data problems in the host application.
I tried flushing the USB/DMA on start:
/* Place the EP in NAK mode before cleaning up the pipe. */
CyU3PUsbSetEpNak (CY_FX_EP_CONSUMER, CyTrue);
CyU3PBusyWait (125);
apiRetStatus = CyU3PDmaMultiChannelReset (&glDmaChHandleMulti);
if (apiRetStatus != CY_U3P_SUCCESS)
{
CyU3PDebugPrint (4, "CyU3PDmaMultiChannelReset failed, Error code = 0x%x\n", apiRetStatus);
CyFxAppErrorHandler(apiRetStatus);
}
//flush any stale data in the USB endpoint
CyU3PUsbFlushEp (CY_FX_EP_CONSUMER);
CyU3PUsbResetEp (CY_FX_EP_CONSUMER); //not sure if required?
//Completely reset the entire GPIF state to be safe
apiRetStatus = CyU3PGpifLoad (&CyFxGpifConfig);
if (apiRetStatus != CY_U3P_SUCCESS)
{
CyU3PDebugPrint (4, "CyU3PGpifLoad failed, error code = %d\n", apiRetStatus);
CyFxAppErrorHandler (apiRetStatus);
}
//reconfigure the DMA
apiRetStatus = CyU3PDmaMultiChannelSetXfer (&glDmaChHandleMulti, CY_FX_GPIFTOUSB_DMA_TX_SIZE, 0);
if (apiRetStatus != CY_U3P_SUCCESS)
{
CyU3PDebugPrint (4, "CyU3PDmaChannelSetXfer failed, Error code = %d\n", apiRetStatus);
CyFxAppErrorHandler(apiRetStatus);
}
//remove NAK, not sure if I needed to do this?
CyU3PUsbSetEpNak (CY_FX_EP_CONSUMER, CyFalse);
CyU3PBusyWait (125);
//begin the GPIF state machine and start streaming data
apiRetStatus = CyU3PGpifSMStart(START, ALPHA_START);
However, I still get ~6 stale buffers if a transfer doesn't complete. Is there something else I need to reset on the FX3? Does the host side save USB data even after the receiving process terminates?
Show Less