You are here

FX3 Short Length Packet | Cypress Semiconductor

FX3 Short Length Packet

Summary: 2 Replies, Latest post by Stan on 23 May 2017 11:35 AM PDT
Verified Answers: 0
Last post
Log in to post new comments.
sbertrand_1682031's picture
34 posts


In my FX3 firmware I am using the CYU3P_USBEP_SLP_EVT Sort Length Packet event to determine the end of the USB transfer.

I am able to do so in USB SS but under USB High Speed the event is not generated and my firmware reports transfer failure.

My firmware also use the ZLP event. This event is generated in USB SS and USB High Speed.

I have tested with the Cypress Control Center tool as well as with my WinUSB interface. The data is transferred but the SLP event is not generated.

I have use the JTAG debugger of the SuperSpeed Explorer Kit and the following function are called :

  • USB High Speed
    • ZLP - API Callback called from CyU3PUibEPEvtHandler (Line 1863)
    • SLP - The JTAG Break point is not reached - CyU3PUibEPEvtHandler (Line 1868)
  • USB Super Speed
    • ZLP - API callback callbed from CyU3PUibProtEpIntrEvtHandler (line 2028 )
    • SLP - API callback callbed from CyU3PUibProtEpIntrEvtHandler (line 2031 )

Under USB High Speed, the SLP interrupt is enabled: DEV_EPO_CS=0x60344A00. The EP interrupt is enabled since I get the ZLP Event.


nisa's picture
Cypress Employee
380 posts

Just to be clear, you are sure that your data is not a multiple of High speed EP max size? In SS, probably you have set the EP max to 1024, but in high speed it can be upto 512 for bulk. Please check if your data is not a multiple of this. What is your data size and EPmax settings of the device? 

sbertrand_1682031's picture
34 posts

Yes I am sure. I checked with the Cypress Control Center.

Log in to post new comments.