Sorry about the format of the log on my earlier message, here is a better formatted one:
--------------------------------------------------------------------------------
[ 1.203064] [00001464] libusb: debug [libusb_get_device_list]
'listdevs.exe': Loaded 'C:\Windows\System32\devobj.dll', Exports loaded.
[ 1.218075] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [3DF]
[ 1.219075] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [1EA]
[ 1.219075] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [19D]
[ 1.220075] [00001464] libusb: debug [get_api_type] driver(s): usbhub
[ 1.220075] [00001464] libusb: debug [get_api_type] matched driver name against HUB API
[ 1.220075] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [36E]
[ 1.221076] [00001464] libusb: debug [get_api_type] driver(s): USBHUB3
[ 1.221076] [00001464] libusb: debug [get_api_type] matched driver name against HUB API
[ 1.221076] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [174]
[ 1.221076] [00001464] libusb: debug [get_api_type] driver(s): usbhub
[ 1.222077] [00001464] libusb: debug [get_api_type] matched driver name against HUB API
[ 1.222077] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [90]
[ 1.222077] [00001464] libusb: debug [get_api_type] driver(s): usbhub
[ 1.222077] [00001464] libusb: debug [get_api_type] matched driver name against HUB API
[ 1.222077] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [358]
[ 1.223078] [00001464] libusb: debug [get_api_type] driver(s): usbhub
[ 1.223078] [00001464] libusb: debug [get_api_type] matched driver name against HUB API
[ 1.223078] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [64]
[ 1.224078] [00001464] libusb: debug [windows_get_device_list] found existing device for session [90] (0.0)
[ 1.224078] [00001464] libusb: debug [init_device] (bus: 1, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&13D5D5E&0'
[ 1.224078] [00001464] libusb: debug [windows_get_device_list] found existing device for session [174] (0.0)
[ 1.224078] [00001464] libusb: debug [init_device] (bus: 2, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB30#4&2109F25B&0&0'
[ 1.225080] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [276]
[ 1.225080] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.225080] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 34 bytes)
[ 1.225080] [00001464] libusb: debug [init_device] (bus: 2, addr: 3, depth: 1, port: 4): '\\.\USB#VID_03F0&PID_034A&MI_01#6&31180F1&0&0001'
[ 1.226080] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [1D6]
[ 1.226080] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.226080] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 59 bytes)
[ 1.226080] [00001464] libusb: debug [init_device] (bus: 2, addr: 2, depth: 1, port: 3): '\\.\USB#VID_03F0&PID_034A&MI_00#6&31180F1&0&0000'
[ 1.226080] [00001464] libusb: debug [windows_get_device_list] found existing device for session [36E] (0.0)
[ 1.287595] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.288851] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 25 bytes)
[ 1.288851] [00001464] libusb: debug [init_device] (bus: 1, addr: 2, depth: 1, port: 1): '\\.\USB#VID_8087&PID_8008#5&323647F0&4&1'
[ 1.289851] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [29B]
[ 1.289851] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.289851] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 34 bytes)
[ 1.289851] [00001464] libusb: debug [init_device] (bus: 2, addr: 3, depth: 1, port: 4): '\\.\USB#VID_03F0&PID_094A#5&11249855&0&4'
[ 1.290852] [00001464] libusb: debug [windows_get_device_list] found existing device for session [64] (0.0)
[ 1.290852] [00001464] libusb: debug [init_device] (bus: 3, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&3CF1FE8&0'
[ 1.290852] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [271]
[ 1.291853] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.291853] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 59 bytes)
[ 1.291853] [00001464] libusb: debug [init_device] (bus: 2, addr: 2, depth: 1, port: 3): '\\.\USB#VID_03F0&PID_034A#5&11249855&0&3'
[ 1.291853] [00001464] libusb: debug [windows_get_device_list] found existing device for session [358] (0.0)
[ 1.354289] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 1)
[ 1.354289] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 25 bytes)
[ 1.355292] [00001464] libusb: debug [init_device] (bus: 3, addr: 2, depth: 1, port: 1): '\\.\USB#VID_8087&PID_8000#5&37AE6513&4&1'
[ 1.355292] [00001464] libusb: debug [discovered_devs_append] need to increase capacity
[ 1.355292] [00001464] libusb: debug [windows_get_device_list] extra GUID: {4B384764-BE4F-246C-A848-4F338F96A2C8}
[ 1.355292] [00001464] libusb: debug [windows_get_device_list] allocating new device for session [A7]
[ 1.356292] [00001464] libusb: debug [init_device] found 1 configurations (active conf: 3)
[ 1.356292] [00001464] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=3, 39 bytes)
[ 1.356292] [00001464] libusb: debug [init_device] (bus: 2, addr: 30, depth: 1, port: 7): '\\.\USB#VID_0525&PID_A4A4#5&11249855&0&7'
[ 1.357293] [00001464] libusb: debug [get_api_type] driver(s): HidUsb
[ 1.357293] [00001464] libusb: debug [get_api_type] matched driver name against HID API
[ 1.358294] [00001464] libusb: debug [windows_get_device_list] found existing device for session [29B] (2.3)
[ 1.358294] [00001464] libusb: debug [get_api_type] driver(s): usbccgp
[ 1.358294] [00001464] libusb: debug [get_api_type] matched driver name against Composite API
[ 1.358294] [00001464] libusb: debug [windows_get_device_list] found existing device for session [271] (2.2)
[ 1.358294] [00001464] libusb: debug [get_api_type] driver(s): libusb0
[ 1.359294] [00001464] libusb: debug [get_api_type] matched driver name against libusb0
[ 1.359294] [00001464] libusb: debug [windows_get_device_list] found existing device for session [A7] (2.30)
[ 1.359294] [00001464] libusb: debug [windows_get_device_list] setting HID interface for [29B]:
[ 1.359294] [00001464] libusb: debug [set_hid_interface] interface[0] = \\.\HID#VID_03F0&PID_094A#6&292C14BD&0&0000#{4D1E55B2-F16F-11CF-88CB-001111000030}
[ 1.360295] [00001464] libusb: debug [get_api_type] driver(s): libusb0
[ 1.360295] [00001464] libusb: debug [get_api_type] matched driver name against libusb0
[ 1.360295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.360295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.361295] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.362296] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.362296] [00001464] libusb: debug [libusb_get_device_descriptor]
[ 1.362296] [00001464] libusb: debug [libusb_open] open 2.30
[ 1.362296] [00001464] libusb: debug [libusb_alloc_transfer] transfer 000002431533CF58
[ 1.362296] [00001464] libusb: debug [libusb_submit_transfer] transfer 000002431533CF58
[ 1.363297] [00001464] libusb: debug [libusb_claim_interface] interface 0
[ 1.363297] [00001464] libusb: debug [winusbx_claim_interface] claimed interface 0
[ 1.363297] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0
[ 1.363297] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0
[ 1.363297] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0
[ 1.364298] [00001464] libusb: debug [auto_claim] auto-claimed interface 0 for control request
[ 1.364298] [00001464] libusb: debug [winusbx_submit_control_transfer] will use interface 0
[ 1.662796] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 1.662796] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.699938s
[ 1.662796] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.663796] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.663796] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 700ms
[ 1.663796] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.664797] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001
[ 1.664797] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.664797] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 255
[ 1.664797] [00001464] libusb: debug [libusb_release_interface] interface 0
[ 1.665802] [00001464] libusb: debug [auto_release] auto-released interface 0
[ 1.665802] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 000002431533CF58 has callback 00007FF695BA7B20
[ 1.665802] [00001464] libusb: debug [sync_transfer_cb] actual_length=255
[ 1.665802] [00001464] libusb: debug [libusb_free_transfer] transfer 000002431533CF58
[ 1.666797] [00001464] libusb: debug [libusb_alloc_transfer] transfer 000002431533CF58
[ 1.666797] [00001464] libusb: debug [libusb_submit_transfer] transfer 000002431533CF58
[ 1.666797] [00001464] libusb: debug [libusb_claim_interface] interface 0
[ 1.666797] [00001464] libusb: debug [winusbx_claim_interface] claimed interface 0
[ 1.666797] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0
[ 1.667798] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0
[ 1.667798] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0
[ 1.667798] [00001464] libusb: debug [auto_claim] auto-claimed interface 0 for control request
[ 1.667798] [00001464] libusb: debug [winusbx_submit_control_transfer] will use interface 0
[ 1.862685] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 1.863684] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.803178s
[ 1.863684] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.863684] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.864685] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 804ms
[ 1.864685] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.864685] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001
[ 1.864685] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.864685] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 255
[ 1.865686] [00001464] libusb: debug [libusb_release_interface] interface 0
[ 1.865686] [00001464] libusb: debug [auto_release] auto-released interface 0
[ 1.865686] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 000002431533CF58 has callback 00007FF695BA7B20
[ 1.865686] [00001464] libusb: debug [sync_transfer_cb] actual_length=255
[ 1.865686] [00001464] libusb: debug [libusb_free_transfer] transfer 000002431533CF58
[ 1.865686] [00001464] libusb: debug [libusb_unref_device] destroy device 2.3
[ 1.866688] [00001464] libusb: debug [libusb_unref_device] destroy device 2.2
[ 1.866688] [00001464] libusb: debug [libusb_unref_device] destroy device 1.2
[ 1.866688] [00001464] libusb: debug [libusb_unref_device] destroy device 1.1
[ 1.866688] [00001464] libusb: debug [libusb_unref_device] destroy device 1.0
[ 1.866688] [00001464] libusb: debug [libusb_unref_device] destroy device 2.3
[ 1.867687] [00001464] libusb: debug [libusb_unref_device] destroy device 2.2
[ 1.867687] [00001464] libusb: debug [libusb_unref_device] destroy device 3.2
[ 1.867687] [00001464] libusb: debug [libusb_unref_device] destroy device 3.1
[ 1.867687] [00001464] libusb: debug [libusb_unref_device] destroy device 3.0
[ 1.867687] [00001464] libusb: debug [libusb_set_configuration] configuration 3
[ 1.868687] [00001464] libusb: debug [libusb_alloc_transfer] transfer 000002431533D7B8
[ 1.868687] [00001464] libusb: debug [libusb_submit_transfer] transfer 000002431533D7B8
[ 1.868687] [00001464] libusb: debug [libusb_claim_interface] interface 0
[ 1.868687] [00001464] libusb: debug [winusbx_claim_interface] claimed interface 0
[ 1.868687] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0
[ 1.868687] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0
[ 1.869688] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0
[ 1.869688] [00001464] libusb: debug [auto_claim] auto-claimed interface 0 for control request
[ 1.869688] [00001464] libusb: debug [winusbx_submit_control_transfer] will use interface 0
[ 1.869688] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 1.869688] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.998792s
[ 1.869688] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.870688] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.870688] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 999ms
[ 1.870688] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.870688] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001
[ 1.870688] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.871691] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 0
[ 1.871691] [00001464] libusb: debug [libusb_release_interface] interface 0
[ 1.871691] [00001464] libusb: debug [auto_release] auto-released interface 0
[ 1.871691] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 000002431533D7B8 has callback 00007FF695BA7B20
[ 1.871691] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.871691] [00001464] libusb: debug [libusb_free_transfer] transfer 000002431533D7B8
[ 1.872690] [00001464] libusb: debug [libusb_claim_interface] interface 0
[ 1.872690] [00001464] libusb: debug [winusbx_claim_interface] claimed interface 0
[ 1.872690] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0
[ 1.872690] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0
[ 1.872690] [00001464] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0
[ 1.873692] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.873692] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.873692] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 81 with interface 0
[ 1.873692] [00001464] libusb: debug [winusbx_submit_bulk_transfer] reading 64 bytes
[ 1.873692] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 1.873692] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.874692] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.874692] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.874692] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.874692] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.874692] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001
[ 1.875693] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.875693] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.875693] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.875693] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.875693] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.875693] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.878695] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.878695] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.878695] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.878695] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.879696] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.879696] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.879696] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.879696] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.879696] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.880696] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.880696] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.880696] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.880696] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.880696] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.881697] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.881697] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.881697] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.881697] [00001464] libusb: debug [libusb_clear_halt] endpoint 2
[ 1.881697] [00001464] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0
[ 1.882697] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.882697] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.882697] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.882697] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.882697] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.883698] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.883698] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.883698] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.883698] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.883698] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.884699] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.884699] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.884699] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.884699] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.884699] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.884699] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.885700] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.885700] [00001464] libusb: debug [libusb_clear_halt] endpoint 2
[ 1.885700] [00001464] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0
[ 1.887701] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.887701] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.887701] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.887701] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.888703] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.888703] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.888703] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.888703] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.888703] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.888703] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.889703] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.889703] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.889703] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.889703] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.889703] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.890703] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.890703] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.890703] [00001464] libusb: debug [libusb_clear_halt] endpoint 2
[ 1.890703] [00001464] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0
[ 1.892705] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.892705] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.892705] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.892705] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.892705] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.893705] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.893705] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.893705] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.893705] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.893705] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.894706] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.894706] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.894706] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.894706] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.894706] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.894706] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.895707] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.895707] [00001464] libusb: debug [libusb_clear_halt] endpoint 2
[ 1.895707] [00001464] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0
[ 1.897708] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.897708] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.897708] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.898710] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.898710] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.898710] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999094s
[ 1.898710] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.898710] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.899710] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.899710] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.899710] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.900710] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.900710] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.900710] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.900710] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.900710] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.901712] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
[ 1.901712] [00001464] libusb: debug [libusb_clear_halt] endpoint 2
[ 1.901712] [00001464] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0
[ 1.902713] [00001464] libusb: debug [libusb_alloc_transfer] transfer 0000024315335478
[ 1.902713] [00001464] libusb: debug [libusb_submit_transfer] transfer 0000024315335478
[ 1.902713] [00001464] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0
[ 1.902713] [00001464] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes
[ 1.902713] [00001464] libusb: debug [usbi_add_pollfd] add fd 1 events 4
[ 1.903713] [00001464] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s
[ 1.903713] [00001464] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 1.903713] [00001464] libusb: debug [handle_events] poll fds modified, reallocating
[ 1.903713] [00001464] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms
[ 1.903713] [00001464] libusb: debug [handle_events] poll() returned 1
[ 1.904713] [00001464] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004
[ 1.904713] [00001464] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 1.904713] [00001464] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0
[ 1.904713] [00001464] libusb: debug [windows_transfer_callback] detected endpoint stall
[ 1.904713] [00001464] libusb: debug [usbi_handle_transfer_completion] transfer 0000024315335478 has callback 00007FF695BA7B20
[ 1.904713] [00001464] libusb: debug [sync_transfer_cb] actual_length=0
[ 1.905714] [00001464] libusb: debug [libusb_free_transfer] transfer 0000024315335478
Kind Regards,
Christopher Flordeliza
-----Original Message-----
From: Christopher Flordeliza [mailto:***@nojapower.com.au]
Sent: Monday, 17 July 2017 4:25 PM
To: Pete Batard <***@akeo.ie>; libusb-***@lists.sourceforge.net
Subject: Re: [libusb] Unable to clear LIBUSB_ERROR_PIPE on first run after installing the device driver
Dear Pete,
1. 0525:A4A4 - According to http://www.linux-usb.org/usb.ids your device is a Netchip Technology 'Linux-USB user-mode bulk source/sink'... and from what you indicate, this appears to be a custom device. Can you tell us more about its purpose and the kind of features its firmware provides? What is this ultimately meant to be used for?
The device is an auto-recloser (basically a circuit braker that is capable of automatically closing a breaker openned by a fault condition). We are devolping an application that sends commands to this device via the USB.
2. I think we may have to clarify your statement that "(you) are using VFAT to mount the USB", because if your device provides a mass-storage layer, and you are therefore replacing the default mass-storage driver from Windows when you're installing libusb0.sys, you may be asking for trouble... But then again, I have very little idea what your device does or how it is meant to behave, so I may be off mark on that.
My mistake on this one, the device's firmware is using GadgetFs to read and write on the device endpoints. Device is running embedded linux (uCLinux/ColdFire). We send commands to the device via the USB.
3. As I tried to indicate in my previous e-mail (albeit in a manner that attempted to serve two purposes), please indicate what happens if you use WinUSB as a driver instead of libusb0/libusb-win32. When used against libusb, the libusb0 driver should be considered *unstable* and its use with libusb has actually been discouraged for some time. So if you are using the libusb0.sys/libusb-win32 driver, on account that it has "libusb" in its name, don't. The recommended driver to use with libusb is the WinUSB driver from Microsoft, which is the default choice of Zadig (for this very precise reason). So, once again, I will ask you to report what happens if you use WinUSB instead of libusb0.sys. Or you can also try with an USBDk enabled version of the library. Currently there are quite a few ways you can access devices with libusb, so if you encounter an issue, you should attempt to use a different access mode to better identify where the issue may be located. Oh, and for the record, LibUsbDotNet also supports WinUSB as its driver, so your other applications should not be impacted by this switch.
Yes you are right libusb0 is not recommended for libusb as stated in libusb wiki, unfortunately the original developer of the application we are now developing used libusb0 (no one knows what is the reason). I will talk to my superior to consider changing the driver to WinUsb. I tried using the WinUSB as you recommended and the stalled issue is not occurring (tested the other applications using WinUSB as driver, it seems they are functioning as expected). Based from this and what you said in this email and what is stated in the LibUsb wiki I think I have enough reason to ask my superiors to change the driver.
As requested, here is the log when using libusb0.sys.
[Program Output]
--------------- 000001 ---------------
2017.07.17 15:22:01 >> USB device ready for use!
Serial No: 0311213090240
Bus No: 2
Port No: 7
[WARNING] Endpoint (2) halted!
[WARNING] Endpoint (2) halted!
[WARNING] Endpoint (2) halted!
[WARNING] Endpoint (2) halted!
[WARNING] Endpoint (2) halted!
2017.07.17 15:22:01 >> [ERROR] Endpoint(2) is still halted after trying 5x to clear it
[LIBUSBDEBUG LOG]
[ 0.000000] [000000ec] libusb: debug [libusb_init] created default context [ 0.000000] [000000ec] libusb: debug [libusb_init] libusb v1.0.21.11156 [ 0.000000] [000000ec] libusb: debug [windows_init] Windows 8 64-bit [ 0.000000] [000000ec] libusb: debug [setup_cancel_io] Will use CancelIoEx for I/O cancellation
'listdevs.exe': Loaded 'C:\Windows\System32\cfgmgr32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\ucrtbase.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\advapi32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\msvcrt.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\sechost.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\rpcrt4.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\ole32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\combase.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\bcryptprimitives.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\gdi32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\gdi32full.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\msvcp_win.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\user32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\win32u.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\imm32.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\setupapi.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\libusbK.dll', Exports loaded.
[ 0.610809] [000000ec] libusb: debug [winusbx_init] using libusbK DLL for universal access [ 0.610809] [000000ec] libusb: debug [winusbx_init] libusbK version: 3.0.7.0
'listdevs.exe': Loaded 'C:\Windows\System32\wintrust.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\msasn1.dll', Exports loaded.
'listdevs.exe': Loaded 'C:\Windows\System32\crypt32.dll', Exports loaded.
AllK required contiguous memory = 534200 (64bit)
8 HotK Handles: HandleSize 2112 PoolSize 16912 (bytes)
64 LstK Handles: HandleSize 64 PoolSize 4112 (bytes)
1024 LstInfoK Handles: HandleSize 64 PoolSize 65552 (bytes)
64 UsbK Handles: HandleSize 96 PoolSize 6160 (bytes)
32 DevK Handles: HandleSize 112 PoolSize 3600 (bytes)
4096 OvlK Handles: HandleSize 104 PoolSize 426000 (bytes)
64 OvlPoolK Handles: HandleSize 96 PoolSize 6160 (bytes)
32 StmK Handles: HandleSize 176 PoolSize 5648 (bytes)
Dynamically allocated as needed:
KLST_DEVINFO = 2596 bytes each
[ 0.673319] [000000ec] libusb: debug [winusbx_init] initalized sub API libusbK [ 0.673319] [000000ec] libusb: debug [winusbx_init] initalized sub API libusb0
'listdevs.exe': Loaded 'C:\Windows\System32\winusb.dll', Exports loaded.
[ 0.688947] [000000ec] libusb: debug [winusbx_init] initalized sub API WinUSB
'listdevs.exe': Loaded 'C:\Windows\System32\hid.dll', Exports loaded.
[ 0.704575] [000000ec] libusb: debug [windows_init_clock] hires timer available (Frequency: 3312647 Hz) [ 0.704575] [000000ec] libusb: debug [windows_init_clock] timer thread will run on core #0 [ 0.704575] [000000ec] libusb: debug [htab_create] using 1021 entries hash table [ 0.704575] [000000ec] libusb: debug [usbi_add_pollfd] add fd 0 events 1 [ 0.704575] [000000ec] libusb: debug [libusb_get_device_list]
'listdevs.exe': Loaded 'C:\Windows\System32\devobj.dll', Exports loaded.
[ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [3DF] [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [1EA] [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [19D] [ 0.720203] [000000ec] libusb: debug [get_api_type] driver(s): usbhub [ 0.720203] [000000ec] libusb: debug [get_api_type] matched driver name against HUB API [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [36E] [ 0.720203] [000000ec] libusb: debug [get_api_type] driver(s): USBHUB3 [ 0.720203] [000000ec] libusb: debug [get_api_type] matched driver name against HUB API [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [174] [ 0.720203] [000000ec] libusb: debug [get_api_type] driver(s): usbhub [ 0.720203] [000000ec] libusb: debug [get_api_type] matched driver name against HUB API [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [90] [ 0.720203] [000000ec] libusb: debug [get_api_type] driver(s): usbhub [ 0.720203] [000000ec] libusb: debug [get_api_type] matched driver name against HUB API [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [358] [ 0.720203] [000000ec] libusb: debug [get_api_type] driver(s): usbhub [ 0.720203] [000000ec] libusb: debug [get_api_type] matched driver name against HUB API [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [64] [ 0.720203] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [90] (0.0) [ 0.735831] [000000ec] libusb: debug [init_device] (bus: 1, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&13D5D5E&0'
[ 0.735831] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [174] (0.0) [ 0.735831] [000000ec] libusb: debug [init_device] (bus: 2, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB30#4&2109F25B&0&0'
[ 0.735831] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [276] [ 0.735831] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.735831] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 34 bytes) [ 0.735831] [000000ec] libusb: debug [init_device] (bus: 2, addr: 3, depth: 1, port: 4): '\\.\USB#VID_03F0&PID_034A&MI_01#6&31180F1&0&0001'
[ 0.735831] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [1D6] [ 0.735831] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.735831] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 59 bytes) [ 0.735831] [000000ec] libusb: debug [init_device] (bus: 2, addr: 2, depth: 1, port: 3): '\\.\USB#VID_03F0&PID_034A&MI_00#6&31180F1&0&0000'
[ 0.735831] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [36E] (0.0) [ 0.800736] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.800736] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 25 bytes) [ 0.800736] [000000ec] libusb: debug [init_device] (bus: 1, addr: 2, depth: 1, port: 1): '\\.\USB#VID_8087&PID_8008#5&323647F0&4&1'
[ 0.800736] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [29B] [ 0.800736] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.800736] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 34 bytes) [ 0.800736] [000000ec] libusb: debug [init_device] (bus: 2, addr: 3, depth: 1, port: 4): '\\.\USB#VID_03F0&PID_094A#5&11249855&0&4'
[ 0.800736] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [64] (0.0) [ 0.800736] [000000ec] libusb: debug [init_device] (bus: 3, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&3CF1FE8&0'
[ 0.800736] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [271] [ 0.800736] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.800736] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 59 bytes) [ 0.800736] [000000ec] libusb: debug [init_device] (bus: 2, addr: 2, depth: 1, port: 3): '\\.\USB#VID_03F0&PID_034A#5&11249855&0&3'
[ 0.800736] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [358] (0.0) [ 0.867266] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 1) [ 0.867266] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 25 bytes) [ 0.867266] [000000ec] libusb: debug [init_device] (bus: 3, addr: 2, depth: 1, port: 1): '\\.\USB#VID_8087&PID_8000#5&37AE6513&4&1'
[ 0.867266] [000000ec] libusb: debug [discovered_devs_append] need to increase capacity [ 0.867266] [000000ec] libusb: debug [windows_get_device_list] extra GUID: {4B384764-BE4F-246C-A848-4F338F96A2C8}
[ 0.867266] [000000ec] libusb: debug [windows_get_device_list] allocating new device for session [A7] [ 0.867266] [000000ec] libusb: debug [init_device] found 1 configurations (active conf: 3) [ 0.867266] [000000ec] libusb: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=3, 39 bytes) [ 0.867266] [000000ec] libusb: debug [init_device] (bus: 2, addr: 24, depth: 1, port: 7): '\\.\USB#VID_0525&PID_A4A4#5&11249855&0&7'
[ 0.867266] [000000ec] libusb: debug [get_api_type] driver(s): HidUsb [ 0.867266] [000000ec] libusb: debug [get_api_type] matched driver name against HID API [ 0.867266] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [29B] (2.3) [ 0.867266] [000000ec] libusb: debug [get_api_type] driver(s): usbccgp [ 0.867266] [000000ec] libusb: debug [get_api_type] matched driver name against Composite API [ 0.867266] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [271] (2.2) [ 0.867266] [000000ec] libusb: debug [get_api_type] driver(s): libusb0 [ 0.867266] [000000ec] libusb: debug [get_api_type] matched driver name against libusb0 [ 0.867266] [000000ec] libusb: debug [windows_get_device_list] found existing device for session [A7] (2.24) [ 0.867266] [000000ec] libusb: debug [windows_get_device_list] setting HID interface for [29B]:
[ 0.867266] [000000ec] libusb: debug [set_hid_interface] interface[0] = \\.\HID#VID_03F0&PID_094A#6&292C14BD&0&0000#{4D1E55B2-F16F-11CF-88CB-001111000030}
[ 0.867266] [000000ec] libusb: debug [get_api_type] driver(s): libusb0 [ 0.867266] [000000ec] libusb: debug [get_api_type] matched driver name against libusb0 [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_get_device_descriptor] [ 0.867266] [000000ec] libusb: debug [libusb_open] open 2.24 [ 0.867266] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C84309CF58 [ 0.867266] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C84309CF58 [ 0.867266] [000000ec] libusb: debug [libusb_claim_interface] interface 0 [ 0.867266] [000000ec] libusb: debug [winusbx_claim_interface] claimed interface 0 [ 0.867266] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0 [ 0.867266] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0 [ 0.867266] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0 [ 0.867266] [000000ec] libusb: debug [auto_claim] auto-claimed interface 0 for control request [ 0.867266] [000000ec] libusb: debug [winusbx_submit_control_transfer] will use interface 0 [ 1.101426] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 1.101426] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.773595s [ 1.101426] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.101426] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.101426] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 774ms [ 1.101426] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.101426] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 1.101426] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.101426] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 255 [ 1.101426] [000000ec] libusb: debug [libusb_release_interface] interface 0 [ 1.101426] [000000ec] libusb: debug [auto_release] auto-released interface 0 [ 1.101426] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C84309CF58 has callback 00007FF68A7B7A50 [ 1.101426] [000000ec] libusb: debug [sync_transfer_cb] actual_length=255 [ 1.101426] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C84309CF58 [ 1.101426] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C84309CF58 [ 1.101426] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C84309CF58 [ 1.101426] [000000ec] libusb: debug [libusb_claim_interface] interface 0 [ 1.101426] [000000ec] libusb: debug [winusbx_claim_interface] claimed interface 0 [ 1.101426] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0 [ 1.101426] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0 [ 1.101426] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0 [ 1.101426] [000000ec] libusb: debug [auto_claim] auto-claimed interface 0 for control request [ 1.101426] [000000ec] libusb: debug [winusbx_submit_control_transfer] will use interface 0 [ 1.303961] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 1.303961] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.801171s [ 1.303961] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.303961] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.303961] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 802ms [ 1.303961] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.303961] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 1.303961] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.303961] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 255 [ 1.303961] [000000ec] libusb: debug [libusb_release_interface] interface 0 [ 1.303961] [000000ec] libusb: debug [auto_release] auto-released interface 0 [ 1.303961] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C84309CF58 has callback 00007FF68A7B7A50 [ 1.303961] [000000ec] libusb: debug [sync_transfer_cb] actual_length=255 [ 1.303961] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C84309CF58 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 2.3 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 2.2 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 1.2 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 1.1 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 1.0 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 2.3 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 2.2 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 3.2 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 3.1 [ 1.303961] [000000ec] libusb: debug [libusb_unref_device] destroy device 3.0 [ 1.303961] [000000ec] libusb: debug [libusb_set_configuration] configuration 3 [ 1.303961] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C84309D7B8 [ 1.303961] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C84309D7B8 [ 1.303961] [000000ec] libusb: debug [libusb_claim_interface] interface 0 [ 1.303961] [000000ec] libusb: debug [winusbx_claim_interface] claimed interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0 [ 1.303961] [000000ec] libusb: debug [auto_claim] auto-claimed interface 0 for control request [ 1.303961] [000000ec] libusb: debug [winusbx_submit_control_transfer] will use interface 0 [ 1.303961] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 1.303961] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.998490s [ 1.303961] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.303961] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.303961] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 999ms [ 1.303961] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.303961] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 1.303961] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.303961] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 0 [ 1.303961] [000000ec] libusb: debug [libusb_release_interface] interface 0 [ 1.303961] [000000ec] libusb: debug [auto_release] auto-released interface 0 [ 1.303961] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C84309D7B8 has callback 00007FF68A7B7A50 [ 1.303961] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.303961] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C84309D7B8 [ 1.303961] [000000ec] libusb: debug [libusb_claim_interface] interface 0 [ 1.303961] [000000ec] libusb: debug [winusbx_claim_interface] claimed interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0 [ 1.303961] [000000ec] libusb: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 0 [ 1.303961] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.303961] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.303961] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 81 with interface 0 [ 1.303961] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] reading 64 bytes [ 1.303961] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 1.303961] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999094s [ 1.303961] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.303961] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.303961] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.303961] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.319589] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 1.319589] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.319589] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.319589] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.319589] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.319589] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.319589] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.319589] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999094s [ 1.319589] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.319589] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.319589] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.319589] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.319589] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.319589] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.319589] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.319589] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.319589] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [libusb_clear_halt] endpoint 2 [ 1.319589] [000000ec] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0 [ 1.319589] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.319589] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.319589] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.319589] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999094s [ 1.319589] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.319589] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.319589] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.319589] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.319589] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.319589] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.319589] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.319589] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.319589] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.319589] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.319589] [000000ec] libusb: debug [libusb_clear_halt] endpoint 2 [ 1.319589] [000000ec] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.335218] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.335218] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.998490s [ 1.335218] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.335218] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.335218] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 999ms [ 1.335218] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.335218] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.335218] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.335218] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.335218] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.335218] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_clear_halt] endpoint 2 [ 1.335218] [000000ec] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.335218] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.335218] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s [ 1.335218] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.335218] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.335218] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.335218] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.335218] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.335218] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.335218] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.335218] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.335218] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_clear_halt] endpoint 2 [ 1.335218] [000000ec] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.335218] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.335218] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.335218] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999397s [ 1.335218] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.335218] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.335218] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.335218] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.335218] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.335218] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.335218] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.335218] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.335218] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.335218] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478 [ 1.335218] [000000ec] libusb: debug [libusb_clear_halt] endpoint 2 [ 1.335218] [000000ec] libusb: debug [winusbx_clear_halt] matched endpoint 02 with interface 0 [ 1.350845] [000000ec] libusb: debug [libusb_alloc_transfer] transfer 000002C843095478 [ 1.350845] [000000ec] libusb: debug [libusb_submit_transfer] transfer 000002C843095478 [ 1.350845] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] matched endpoint 02 with interface 0 [ 1.350845] [000000ec] libusb: debug [winusbx_submit_bulk_transfer] writing 24 bytes [ 1.350845] [000000ec] libusb: debug [usbi_add_pollfd] add fd 1 events 4 [ 1.350845] [000000ec] libusb: debug [libusb_get_next_timeout] next timeout in 0.999396s [ 1.350845] [000000ec] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 1.350845] [000000ec] libusb: debug [handle_events] poll fds modified, reallocating [ 1.350845] [000000ec] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 1.350845] [000000ec] libusb: debug [handle_events] poll() returned 1 [ 1.350845] [000000ec] libusb: debug [windows_handle_events] checking fd 1 with revents = 0004 [ 1.350845] [000000ec] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 1.350845] [000000ec] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 1.350845] [000000ec] libusb: debug [windows_transfer_callback] detected endpoint stall [ 1.350845] [000000ec] libusb: debug [usbi_handle_transfer_completion] transfer 000002C843095478 has callback 00007FF68A7B7A50 [ 1.350845] [000000ec] libusb: debug [sync_transfer_cb] actual_length=0 [ 1.350845] [000000ec] libusb: debug [libusb_free_transfer] transfer 000002C843095478
Thank you very much for your and the communities support and time, we appreciated it very much.
Kindest Regards,
Christopher
-----Original Message-----
From: Pete Batard [mailto:***@akeo.ie]
Sent: Monday, 17 July 2017 11:34 AM
To: libusb-***@lists.sourceforge.net
Subject: Re: [libusb] Unable to clear LIBUSB_ERROR_PIPE on first run after installing the device driver
Hi Christopher,
A debug log would have been nice. Since you have control over the app, you can produce debug logging, which can be invaluable in identifying issues.
But anyway, here's what I'd like to point out (without even taking a look at your code, as I don't think I'll ever have time to properly look at it).
1. 0525:A4A4 - According to http://www.linux-usb.org/usb.ids your device is a Netchip Technology 'Linux-USB user-mode bulk source/sink'... and from what you indicate, this appears to be a custom device. Can you tell us more about its purpose and the kind of features its firmware provides? What is this ultimately meant to be used for?
2. I think we may have to clarify your statement that "(you) are using VFAT to mount the USB", because if your device provides a mass-storage layer, and you are therefore replacing the default mass-storage driver from Windows when you're installing libusb0.sys, you may be asking for trouble... But then again, I have very little idea what your device does or how it is meant to behave, so I may be off mark on that.
3. As I tried to indicate in my previous e-mail (albeit in a manner that attempted to serve two purposes), please indicate what happens if you use WinUSB as a driver instead of libusb0/libusb-win32. When used against libusb, the libusb0 driver should be considered *unstable* and its use with libusb has actually been discouraged for some time. So if you are using the libusb0.sys/libusb-win32 driver, on account that it has "libusb" in its name, don't. The recommended driver to use with libusb is the WinUSB driver from Microsoft, which is the default choice of Zadig (for this very precise reason). So, once again, I will ask you to report what happens if you use WinUSB instead of libusb0.sys. Or you can also try with an USBDk enabled version of the library. Currently there are quite a few ways you can access devices with libusb, so if you encounter an issue, you should attempt to use a different access mode to better identify where the issue may be located. Oh, and for the record, LibUsbDotNet also supports WinUSB as its driver, so your other applications should not be impacted by this switch.
4. Also, as I tried to point out, can you please test with the xusb sample application and report what you get? Something like 'xusb -d 0525:A4A4' (which produces debug output) may help tell us more...
Regards,
/Pete
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________
libusb-devel mailing list
libusb-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusb-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________
libusb-devel mailing list
libusb-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusb-devel