Did you try your application with any Cypress's DVK (CYUSB3KIT-001/003)? If not, is it possible for you to try with any of the DVK and update the same? did you perform any compliance test on the custom board?
It's a costumer board, and it is difficult to bring it on a DVK, because the error only occurs with our special application which requires our complete hardware (FPGA, sensor...)
With help of the CYPRESS technical support we found that if the error appears there is an USB-UNDERRUN-event on EP0-IN (0x80). It seems the error is only on USB2.0 and only at some special (slower??) laptops
We can detect the error in the USBevent Callback and handle this in the main thread loop as follows:
- Set NAK on EP0
- Flush EP0
- Reset EP0
- Reset Endpoint Memories
- Set no NAK on EP0
After that following communication is o.k.