|
From: Tim R. <ti...@pr...> - 2019-07-29 16:42:36
|
David Levy wrote:
> I still dont understand why I dont receive all data when I specifiy that the receive buffer has a size > 0x4000 on the raspberry.
>
> I made a small change to work around it, I just find the issue weird
>
> int lLen = 0;
> libusb_bulk_transfer( mHandle, aEndPoint | LIBUSB_ENDPOINT_IN, aData, aSize>0x4000? 0x4000 : aSize, &lLen, mReadTimeout );
>
> if( lLen == 0x4000 )
> {
> libusb_bulk_transfer( mHandle, aEndPoint | LIBUSB_ENDPOINT_IN, aData+0x4000, aSize - 0x4000, &lLen, mReadTimeout );
> }
How old is your libusb? There was a time, long ago, when the Linux
kernel wouldn't accept USB transfers larger than 16k, so either the
library or the application had to chop things up exactly like that, but
we're talking a very long time ago -- like 15 years. I can't explain
why you would need that today.
--
Tim Roberts, ti...@pr...
Providenza & Boekelheide, Inc.
|