This page lists known issues and workarounds for specific devices.
Severity: High
Not recommended for USB device applications (except high-speed host controller)
Reference: LPC54600 Errata Sheet
The LPC54600 series have a very buggy USB controller, with 17 issues listed in the errata which is more than half of the total issues.
Most severe issues are:
- USB.2: In USB high-speed device mode, the NBytes field is not correct after BULK IN transfer
- USB.5: In USB full-speed host mode, linked list on done queue is broken.
- USB.15: USB high-speed device in endpoint TX data corruption
Severity: Medium
Not recommended for USB audio applications
Reference: CH32V30X Reference Manual USBFS/USBHS controller chapter
Data corruption may occur on isochronous endpoints. Due to the lacking of FIFO for interrupt status registers, later completed transfer will overwrite INT_ST and RX_LEN register if previous transfer processing is not completed.
Other types of transfers are not affected.
Severity: Very Low
Reference: PY32F07x Reference Manual USBD chapter
The USB device controller (MUSB-like) has 5 application endpoints EP1-EP5 with fixed FIFO sizes shared between IN and OUT of the same endpoint number: EP1 = 512 B, EP2-4 = 128 B, EP5 = 64 B. This is much lower than the max ISO ep size of 1024 for high EP numbers. Place large isochronous endpoints on EP1 and size descriptors accordingly.