I am working on a prototype with the above controller in device mode.
I have no problem transferring packets smaller than 64Bytes; but I am
having trouble with packets larger than 64 bytes, the size of the end
point FIFO buffer.
Currently I simply chop up the data I want to send in 64 byte chunks +
any remaining bytes and then send them out by writing to the endpoint
and then validating the buffer.
Let's say we have 75 bytes of data we want to send, the correct way
would be sending 2 bulk packets of data, the first packet containing
64 bytes and the second, 11 bytes.
Somehow, I am getting an additional Transfer that I cannot account for
in USB packet analysis. ie. Follwing the above example, I will get 64,
11 and then the previous 64 bytes.
I am not sure what might cause this problem but I think the problem
lies with validating the FIFO buffer, perhaps the buffer isn't clean
on the second transfer?