USB low-full-high speed peripherals Forum Discussions
Hi,
Im using FX2LP with endpoint 2 and 4 configured as BULK OUT double buffered 512 byte in MANUAL mode, and EP 6 and 8 configured as IN endpoint ISOCRONOUS double buffered 521 byte. Data are sent from PC, FX2LP CPU access data and commit manually all data packets to an external device accessing data through slave FIFO.
I have a strange beahviour whn PC host is sending data to OUT endpoint:
When FX2LP receive an OUT transfer from PC, ep2inout or ep4inout interrupt is triggering - depending from ep target -, and CPU make some access to fifo data, then commit data to slave fifo. Sometimes, when I have an element in fifo and when two packets are coming closely in time (about 100 uSec) CPU read data from endpoint fifo buffer but some data are from first packet, and other data are from second packet. It seems that, while CPU extracts data from endpoint fifo, data are changing. It seems that data packets is copied in fifo buffer from USB even if I have not committed packet, and endpoint is in manual mode. Before access data I verify that fifo is not empty with EP2468STAT register and I commit data only at the end of cpu accesses.
If I examine usb traffic with LeCroy T3 advisor protocol analyzer, I see that second packets has an initial NYET, then it seems ok, and only after time it receives an ACK.
I have an external microcontroller that extracts data from slave fifo, and it receive data packets correctly, then data are correct in fifo buffer, there is only problem with CPU access.
Has anyone any idea?
Thanks,
Begos
Show LessHi
I want to use like following
LONG length = 2592// custom length
Has anyone tried using the CY7C65211A as a I2C slave in VCP mode? I want to write data to it from a PSoC4 and have it behave as if it were in UART mode (ie. transparently spew it out the VCP), but using the I2C interface instead. I can't find any information on what internal registers I should write to to make this happen? I'm assuming that given you can actually configure it this way that it is in fact possible (it may not be..)
Thanks
Anthony
Show LessHi:
I want to ask : can I create two threads for the two usb device, and the two usb devices work at the same time。
I find (Home › Cypress Developer Community › Forums )
http://www.cypress.com/forum/usb-high-speed-peripherals/multiple-usb-devices-application
A developer said : you cannot communicate with two devices at the same time using CyAPI.lib.
Now, Actually, I use two usb devices, One thread one device, another thread to another device.
when I open second usb device by USBDevice->Open(1),the first device will be closed?
in the C++ helpful doc (CyAPI.chm), When Open( ) is called, it first checks to see if the CCyUSBDevice object is already opened to one of the attached devices. If so, it calls Close( ), then proceeds.
It means that, at first I can't USBDevice->Open(0) in the first thread, and then USBDevice->Open(1) in the second thread.
Hi,
Firstly say hello to all:) I want to build one kind of USB key,it has two USB connectors, when we connect it to two PCs via USB port, this two PCs can access its data simultaneously. We want to use Cypress's West Bridge Astoria as key solution. West Bridge Astoria already have one USB port, we will use another component, FX3S for example, convert P port to USB so that it have another USB port. Because this USB key want to be used under DOS or EFI or WinPE environment, my question is: for the USB port on Astoria chip, could it be recognized under DOS or EFI as normal USB key does ? or it only can be used under Windows by corresponding SW driver support ? I like to confirm before we move forward, thanks you very much in advance!
Show Lesshey:
every big shot. recently i've got some new question with my fx2lp board(slave fifo, internal clock^-^). every single time after i download my firmware into my board, i found that there is no ifclk but hi level. Have i done something wrong? what should i do to avoid this?
thanks so much!!!!
Show LessAs suggested in one of the post here that EP1IN and EP1OUT cannot be used at the same time.
I'm confused like why TRM of FX2LP has mentioned both endpoints separately unlike EP2, EP4, EP6 & EP8 which are single ones and can be used only as either IN or OUT at a time.
Show LessI recently purchased EZ-USB FX3 CYUSB3KIT-001 development kit. I use Microsoft's routine USBSamp as a USB driver, and i have written an applications. Now i use Cypress's firmware USBBulkSourceSink to test the application and driver, but communication rates up to only 4M/s or so .This rate is far from the high-speed(60M/s).Then I noticed some tips of firmware:
"The default example is not optimized for performance in USB 3.0, in order to get better performance the following changes has to be done.
1. Have only 1 endpoint (IN or OUT) .This avoids any USB host bandwidth issues.
2. Update the "Max. no. of packets in a Burst" field (1 to 15) in the "Super Speed Endpoint Companion Descriptor" in cyfxbulkdscr.c.
3. In cyfxbulksrcsink.c change the dmaCfg.size by factor of ("Max. no. of packets in a Burst" field in the "Super Speed Endpoint Companion Descriptor" + 1) for USB 3.0. The performance will be better if this is twice the size of the burst ie. (2 * ("Max. no. of packets in a Burst" field in the "Super Speed Endpoint Companion Descriptor" + 1)). When making these changes, make sure that there is enough memory available for buffering.
4. In cyfxbulksrcsink.c change epCfg.burstLen to "Max. no. of packets in a Burst" field in the "Super Speed Endpoint Companion Descriptor" + 1, before calling CyU3PSetEpConfig."
So I try this method,but i am failed! Downloading the program is unsuccessful! I do not know why!
For my example : Max. No. Of packets in a Burst value is set to 15,
dmaCfg.size value is set to 32,
epCfg.burstLen value is set to 16.
Where is wrong in this example ? How should i set up the firmware to improve communication rate? Thank you !
Show LessIs there is any utlity which converts eeprom iic file to intel hex
Hi, I'm new here.
I want to know how I can stream video from a camera (installed on Zedboard) to the USB UART, it's the first time with this kind of work so I hope someone can help me.
I just know that is possible using uvc protocol like the image Sensor Interface Using EZ-USB FX3, but I don't now how I can implement it on CY7C64225.
Thanks.
Show Less