hgs16 wrote: > I am using libusbx-1.0.17-win to communicate with our usb device(based on > stm32). It runs stm32 usb library adapted to behave as winusb device. > > When sending data which contains 0xffff (say 0xAAAAFFFF, which is of 4 bytes > in length), usb monitor software says USBD_STATUS_CRC (0xc0000001). Attached > the screenshot the captured results.
The screenshot shows that you're sending 12 bytes, not 4 bytes. It's not clear from the screenshot whether USB Monitor Pro knows the difference between IRP status codes and URB status codes. The problem is that the two spaces overlap. C0000120 is an IRP status code (STATUS_CANCELLED), and it is displayed correctly. C0000001 is URB_STATUS_CRC as an URB status code, but it is STATUS_UNSUCCESSFUL as an IRP status code. Because CRC errors are essentially non-existent these days, my guess is that the monitor is diagnosing the wrong code, and you're actually seeing STATUS_UNSUCCESSFUL, which means there is another code in the URB that we aren't seeing here. I notice that this is happening immediately after the first "abort" request after a series of successful transfers. My guess is that your device got into a weird state and halted the pipe, and that the actual data you used here is irrelevant. Do you have any visibility into the device to see its status at this point? -- Tim Roberts, t...@probo.com Providenza & Boekelheide, Inc. ------------------------------------------------------------------------------ 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