I've been using the USB CDC class from lpcopen for a while, but just been running into a problem when sending too much data from the PC. Basically, the USB CDC is used in a firmware-update chain and all data is forwarded to a traditional RS232 serial output to another device.
The PC-tool (which I can't modify) sends some very large messages (around 10000-20000 bytes), before waiting for a response. Unfortunately, the USB transfer speed is significantly faster than the UART-output, which means all data must be stored in an internal buffer, which is just not practical.
Is it possible to set the USB-state to "busy" or do anything else to indicate, that the USB-device is not ready for more data? The FTDI FT232 seems to solve this problem with a minimal buffer-size, so I guess it's supported in the USB-protocol somehow?
Any help would be much appreciated.