Hi Matthias, Thank you for the reply.
Am 23.12.2013 12:15, schrieb Matthias Bolte: > > I think there could be two reasons for this problem: > > 1) There is a bug in libusbx, your specific usage pattern triggers it > and in the end your transfer is lost. Are you using the latest > release/git version? If not you should update to check if the problem > got fixed in the meantime. I tried that with the latest releases of both libusb 1.0.9 and libusbx 1.0.17. The same problem appeared. > > 2) There is a bug in your USB device. Once you start streaming data in > (b) your device doesn't send periodic status transfers (a) anymore. My device is a Cypress PSoC 5 LP. Of course it is always possible that some bug is present in their API (or in my code), although I try to keep it as simple as possible for testing. I just check if the endpoint buffer is ready to accept new data and fill it if this is the case. > > A third reason could be a problem in the OS USB stack, but I think > that's very unlikely. On which OS did you test this? Does it happen on > different OSs, or is it specific to one OS? Originally, the problem occurred on my Beaglebone Black with Angstrom Embedded Linux (Kernel 3.8). Now I tested the code on my Win XP machine and the code seems to work as expected there, at least most of the time. But from time to time after a large bulk in transfer the periodic transfer again stop to occur. Very strange, now I have it running for many minutes without any problems... What I don't do is delete and reallocate the transfers before resubmitting them. I only configure the transfer struct to point to a new buffer where required. Could this be a problem? According to the docs, when using the asynch interface it is a benefit to reuse transfers like I do. > > To debug this further you could look at the USB traffic using > Wireshark (or other USB monitoring tools) to see where the periodic > status transfer is lost. If you can see it in Wireshark, but not in > your application then it is lost in libusbx. If you don't see it in > Wireshark then your device might not be sending it at all. Thanks for the hint. I will investigate this further. Best regards, Anguel ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel