USB superspeed peripherals Forum Discussions
Hello- I hope this is the correct forum for this if not please point me to the right place....
I have a simple EZ-USB Suite project for the FX3 created on a Win 7- it builds fine. When I try and bring the project over to a Win10 machine, clicking the Build Project button tells me there is 'Nothing To Build' . Looking at the Tool Chain Editor settings, I see the following error under the Configuration setting:
Orphaned configuration. No base extension cfg exists for ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1524826368
Under Current toolchain, I see
Orphaned toolchain ilg.gnuarmeclipse.managedbuild.cross.toolchain.elf.debug.402899216 (Cross ARM GCC)
And under Current builder I see
Orphaned builder ilg.gnuarmeclipse.managedbuild.cross.builder.1857435584 (Gnu Make Builder)
Try as I might I can not seem to fix this. Searching around indicates something about wrong plugins being installed but if I try and 'Install New Software' I do not get any options to install. This is happening on 2 different Win 10 machines after a clean install of the FX3 SDK and Dev Kit tools. The attached doc shows the Tool Chain dialogue.
Thanks for any help you can provide.
Show LessI am attempting to run something very similar to the cx3uvcov5640 example on a tegra tx1 host with one caveat, bulk mode transfer at the 5mp res at 15 fps does not reliably come across the pipe even with individual host controllers per camera on the pci bus. The temporary fix was to cut the frame rate to 7.5 by discarding every other frame. I am doing this by calling CyU3PDmaMultiChannelDiscardBuffer instead of commit then keeping track of when I need to toggle the gpif pins, this works on x86 and arm if I use gstreamer and display the image. If I use a fakesink and do not display and just read I get a bunch of CY_U3P_ERROR_INVALID_SEQUENCE errors on both the commitbuffer and discardbuffer calls only when running on arm. When running on x86 it works fine. Does anyone have any suggestions where I should start tracking this error down?
Thanks.
Show LessWe have a Superspeed Explorer Kit board that we are using with a Xilinx KC705 Eval Board. We are wanting to read the temperature and serial presence detect EEPROM from the SODIMM on the Xilinx board through the I2C of the FX3. The serial presence detect EEPROM of the SODIMM uses a preamble address of A0 for the address and then you can set the lower 3 bits of the address by how the bits are configured on the SODIMM socket. In our case they are all 0. Unfortunately it looks like the EEPROM of the Superspeed Explorer Kit uses I2C address A0 or B0 according to page 50 of the Superspeed Explorer Kit User Guide. Does anyone know of a way around this conflict ? Has anyone had a FX3 on a board with a SODIMM?
Show LessHi
Our camera have same problem while ESD test. it will be more serious on high-bandwidth.We can catch xact error when it failed;How can i do it? thank you!
I’m trying to connect 2 Explorer boards together as mentioned on page 220 of the "SuperSpeed Device Design by Example" book.
Where are the MasterFifo_Example.img and SlaveFifo_Example.img files?
Any pointer would be appreciated.
-Pat
Show LessHi,
I am unsure if this is the right place to ask this specific question, but hopefully someone knows the answer!
In Cypress EZ USB Suite's CX3 Configuration project, in the Frame Configuration, we need to set both H and V blanking values. In the example code for OV5640, H blanking is set to 50 for all resolutions and V blanking set to 5. I went through the spec. and ov's source code, and still couldn't figure out how 50 and 5 were calculated!
I am trying to port the example code to support another OV sensor, so without knowing these two values, I couldn't make the project work.
Thanks!
Show LessHi, dear friends,
I met a problem in FX3 to receive residual data in FX3:in order to achieve high speed, I set a large transfer data length for XferData() function, such as 1024*1024, but at the end of the data transfer, there will be a little amount of data smaller than 1024*1024.So when XferData() time out,I can't receive the data tail .
In addition,I want to know how many bytes in the endpoint buffer before XferData ? so I can set Xferdata second parameter with this.
here is part of my code:
BYTE * pContext=NULL;
long nBulkLen = 1024*1024;
pContext=pBulkEpIn->BeginDataXfer(pBulkBuf, nBulkLen, &oRdOvLap);
if(!pBulkEpIn->WaitForXfer(&oRdOvLap, 1000))
{
pBulkEpIn->Abort();
WaitForSingleObject(oRdOvLap.hEvent,INFINITE);
nRetCode=0x01;
TRACE("time out!\n");
//break;
}
bool recvRet = pBulkEpIn->FinishDataXfer(pBulkBuf, nBulkLen, &oRdOvLap, pContext);
//bool recvRet = pBulkEpIn->XferData(pBulkBuf,nBulkLen);
TRACE("the actual receive length = %d ,recvRet = %d\n",nBulkLen,recvRet);
Does anybody know how to solve this problem?Thank you very much and best wishes.
Show LessDear sir,
We are trying to use GPIF2 interacfe to receieve BT.656 video data format of video decoder/CMOS sensor.
Do Cypress have any GPIF2 configuration template for this kind application?
Another application is to use GPIF2 interacfe to transmit BT.656 video data to FPGA.
Do Cypress have any GPIF2 configuration template for this kind application?
If Cypress can provide those templates, it will be very helpful.
Thanks.
Rex Liao
Show LessHi,
We were using modified 'Slave FIFO' application note design. With this design, we will be performing the DMA channel destroy and create in-between our operation. During these operation, some times we are seeing the below error (but we are seeing it to work for some times as well).
This error states that, some parameters are bad. But, we are calling the same function all the times and working sometimes and not sometimes. So, please let us know what other parameters will cause this issue and probably how to solve this.
//Error
CyU3PDmaChannelCreate failed, Error code = 64
//Code Snippet
/* Create a DMA AUTO channel for U2P transfer.
* DMA size is set based on the USB speed. */
dmaCfg.size = DMA_BUF_SIZE* size ;
dmaCfg.count = CY_FX_SLFIFO_DMA_BUF_COUNT_U_2_P;
dmaCfg.prodSckId = CY_FX_PRODUCER_USB_SOCKET;
dmaCfg.consSckId = CY_FX_CONSUMER_PPORT_SOCKET;
dmaCfg.dmaMode = CY_U3P_DMA_MODE_BYTE;
/* Enabling the callback for produce event. */
dmaCfg.notification = 0;
dmaCfg.cb = NULL;
dmaCfg.prodHeader = 0;
dmaCfg.prodFooter = 0;
dmaCfg.consHeader = 0;
dmaCfg.prodAvailCount = 0;
tempDmaChannel = CyU3PDmaChannelGetHandle(CY_FX_PRODUCER_USB_SOCKET);
if(tempDmaChannel != NULL)
{
CyU3PDebugPrint (4, "CY_FX_PRODUCER_USB_SOCKET : %d socket occupied", CY_FX_PRODUCER_USB_SOCKET);
}
tempDmaChannel = CyU3PDmaChannelGetHandle(CY_FX_CONSUMER_PPORT_SOCKET);
if(tempDmaChannel != NULL)
{
CyU3PDebugPrint (4, "CY_FX_CONSUMER_PPORT_SOCKET : %d socket occupied", CY_FX_CONSUMER_PPORT_SOCKET);
}
apiRetStatus = CyU3PDmaChannelGetStatus(&glChHandleSlFifoUtoP, &dmaState, &prodXferCount, &consXferCount);
CyU3PDebugPrint (4, "CyU3PDmaChannelStatus = %d\n", dmaState);
if(dmaState != CY_U3P_DMA_NOT_CONFIGURED)
{
CyU3PDebugPrint (4, "Dma U2P channel already configured\n");
}
apiRetStatus = CyU3PDmaChannelCreate (&glChHandleSlFifoUtoP,
CY_U3P_DMA_TYPE_AUTO, &dmaCfg);
if (apiRetStatus != CY_U3P_SUCCESS)
{
CyU3PDebugPrint (4, "CyU3PDmaChannelCreate failed, Error code = %d\n", apiRetStatus);
CyFxAppErrorHandler(apiRetStatus);
}
Thanks,
KCNGP
Show LessI have a Cypress FX3 device connected to my PC, and EZ-USB FX3 SDK v1.3 installed.
Stepping with the debugger through the code of the supplied sample BulkLoop, the call to CCyUSBDevice in the line
m_selectedUSBDevice = new CCyUSBDevice(this->m_hWnd, CYUSBDRV_GUID, true);
doesn't return.
What causes the problem?
Show Less