IMPORTANT: Cypress Developer Community is transitioning on October 20th. To learn more and be prepared for this change, check out our latest announcement.
Showing results for 
Search instead for 
Did you mean: 

USB Superspeed Peripherals

Not applicable

Hello Guys,


I am presently using cypress sdk 1.2.3.


I am trying to program a slave fifo sync firmware with a FPGA.


I am observing my flags on my oscilloscope.


1st Problem: with cypress control center, when I try to transfer a file out using cypress control center.


I can see that bulk out transfer successful but no flag changes.


2nd problem. when I send data using Tranfer data out in control center we normally generate only zeroes. and I can see the zeroes recieved correctly in my FPGA. But when I send some hexadecimal (Data to send(Hex)). I recieve in FPGA only 0xFFFFFFFF all the time..(FLAGS WORK PROPERLY IN THIS CASE WHEN DATA TRANSFER OUT IS USED)


What might be the problem.


Any suggestions.




Pruthvi Raj

3 Replies
Not applicable

Hi Raj,


could you please let me know the exact details of the things that are listed below:


What is the file that you are using? what is the size of it?


What is the DMA buffer size that you are using in the firmware?


How are you doing the data transfers using "Data transfer OUT" button?. Are you changing the "Transfer Bytes count" field on the Control Center?.


I am assuming that you are transferring a file of very small size compared to DMA buffer size.


Please share all these details so that we can find out the reason for your problem.




Sai Krishna.

Not applicable

 Hello Sai Krishna,


I am trying to send the file given by cypress in slave fifo application in loopback application named "Text.txt"


DMA BUFFER SIZE at usb 3.0 superspeed is 1024 bytes and my DMA manual channel size is set to 16384 bytes


I am using data file out to send this file and normally data transfer out button.


I dont change the bytes to transfer when I am sending a file.


Apart from that my new observations are


I cannot send(or see a flag) if and only if my buffer size is 1024 bytes or a multiple of it.


Looks wierd but cant understand why. Even if I transfer one byte of data I can see my flag going high but not with 1024 bytes or any multiple of it even I see a flag if I transfer 1023 or 1025 bytes also.




Thanks for your time





Not applicable

dear sir


There is one more thing i want to know


is it necessary to have Usbfs mounted to work with libusb and Cyusb??? /proc/bus/usb/


thanks & Regards