On Sun, 2002-05-12 at 23:22, Latha wrote: > I have a USB device which has 16 bytes FIFO at the Bulk > endpoint while the MaxPacketSize for that endpoint is 64 bytes. > Won't sending a data payload of size bigger than 16 bytes, > result in buffer overflow? > > I assume that 16 bytes FIFO is nothing but the endpoint buffer size.
There is no direct relationship between the packet size and the hardware FIFO somewhere in the device. For all we know, the device accepts 64 bytes and consumes them immediately, as they are received. There is no need for FIFO. Furthermore, many microcontrollers with USB interface have much more than 16 bytes of RAM. Therefore, the correct answer to your question lies in the hardware design of your device, and the firmware that controls it. From USB protocol point of view, if the device says it can handle 64 bytes, then it will get up to 64 bytes. What the device will do next - not USB's concern... If you know what this USB device is then you should review its datasheets and find out how the flow control is done, and where the data is buffered (if anywhere). Dmitri
signature.asc
Description: This is a digitally signed message part
