Somehow I got a strange warning under Windows 8 x64. The device is a USB composite device (Amontec JTAGkey-2), both interface use the WinUSB driver installed using Zadig. Not so sure if this has something to do with the fact this is a virtual machine (using VirtualBox under Mac OS X).
Mcuee@Win8X64VM /c/work/libusbx/libusbx $ ./examples/xusb.exe 0403:cff8 Using libusbx v1.0.15.10641 Opening device 0403:CFF8... libusbx: error [init_device] device '\\.\USB#VID_0403&PID_CFF8&MI_01#6&222886B8& 0&0001' is no longer connected! Reading device descriptor: length: 18 device class: 0 S/N: 3 VID:PID: 0403:CFF8 bcdDevice: 0700 iMan:iProd:iSer: 1:2:3 nb confs: 1 Reading configuration descriptors: nb interfaces: 2 interface[0]: id = 0 interface[0].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 81 max packet size: 0200 polling interval: 00 endpoint[1].address: 02 max packet size: 0200 polling interval: 00 interface[1]: id = 1 interface[1].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 83 max packet size: 0200 polling interval: 00 endpoint[1].address: 04 max packet size: 0200 polling interval: 00 Claiming interface 0... Claiming interface 1... Reading string descriptors: String (0x01): "Amontec" String (0x02): "Amontec JTAGkey-2" String (0x03): "53T9XDR4" Releasing interface 0... Releasing interface 1... Closing device... Debug Log: [timestamp] [threadID] facility level [function call] <message> -------------------------------------------------------------------------------- [ 0.003698] [000013ec] libusbx: debug [libusb_get_device_list] [ 0.003698] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [2D9] [ 0.003698] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [5A] [ 0.004693] [000013ec] libusbx: debug [get_api_type] driver(s): usbhub [ 0.004693] [000013ec] libusbx: debug [get_api_type] matched driver name against HUB API API [ 0.004693] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [145] [ 0.004693] [000013ec] libusbx: debug [get_api_type] driver(s): usbhub [ 0.004693] [000013ec] libusbx: debug [get_api_type] matched driver name against HUB API API [ 0.004693] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [261] [ 0.004693] [000013ec] libusbx: debug [windows_get_device_list] extra GUID: {05A667E4-4DFF-459E-BDA9-C44B063D81B9} [ 0.004693] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [36A] [ 0.004693] [000013ec] libusbx: debug [init_device] got bus number from ancestor #3 [ 0.004693] [000013ec] libusbx: error [init_device] device '\\.\USB#VID_0403&PID_CFF8&MI_01#6&222886B8&0&0001' is no longer connected! [ 0.004693] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [329] [ 0.004693] [000013ec] libusbx: debug [init_device] got bus number from ancestor #2 [ 0.005653] [000013ec] libusbx: debug [init_device] found 1 configurations (active conf: 1) [ 0.005653] [000013f0] libusbx: debug [windows_clock_gettime_threaded] hires timer available (Frequency: 2255622 Hz) [ 0.026156] [000013ec] libusbx: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 34 bytes) [ 0.026156] [000013ec] libusbx: debug [init_device] (bus: 1, addr: 2, depth: 1, port: 1): '\\.\USB#VID_80EE&PID_0021#5&35F564D4&0&1' [ 0.026156] [000013ec] libusbx: debug [windows_get_device_list] found existing device for session [145] (1.0) [ 0.026156] [000013ec] libusbx: debug [init_device] (bus: 1, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB#4&159A73F4&0' [ 0.026156] [000013ec] libusbx: debug [windows_get_device_list] found existing device for session [261] (2.0) [ 0.026156] [000013ec] libusbx: debug [init_device] (bus: 2, addr: 1, depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&3749A296&0' [ 0.026156] [000013ec] libusbx: debug [windows_get_device_list] extra GUID: {44A00D7B-FC9E-49BB-9312-7D75DBD0387E} [ 0.026156] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [14B] [ 0.026156] [000013ec] libusbx: debug [init_device] found 1 configurations (active conf: 1) [ 0.029086] [000013ec] libusbx: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 39 bytes) [ 0.029086] [000013ec] libusbx: debug [init_device] (bus: 1, addr: 3, depth: 1, port: 2): '\\.\USB#VID_0483&PID_3748#5&35F564D4&0&2' [ 0.029086] [000013ec] libusbx: debug [windows_get_device_list] allocating new device for session [2A1] [ 0.029086] [000013ec] libusbx: debug [init_device] found 1 configurations (active conf: 1) [ 0.048687] [000013ec] libusbx: debug [cache_config_descriptors] cached config descriptor 0 (bConfigurationValue=1, 55 bytes) [ 0.048687] [000013ec] libusbx: debug [init_device] (bus: 2, addr: 2, depth: 1, port: 1): '\\.\USB#VID_0403&PID_CFF8#53T9XDR4' [ 0.048687] [000013ec] libusbx: debug [windows_get_device_list] extra GUID: {600D37EB-4CBE-4A7A-A950-E57D093D1901} [ 0.049847] [000013ec] libusbx: debug [get_api_type] driver(s): usbccgp [ 0.049847] [000013ec] libusbx: debug [get_api_type] matched driver name against Composite API API [ 0.049847] [000013ec] libusbx: debug [windows_get_device_list] found existing device for session [2A1] (2.2) [ 0.049847] [000013ec] libusbx: debug [get_api_type] driver(s): WinUSB [ 0.049847] [000013ec] libusbx: debug [get_api_type] matched driver name against WinUSB API [ 0.049847] [000013ec] libusbx: debug [windows_get_device_list] found existing device for session [14B] (1.3) [ 0.049847] [000013ec] libusbx: debug [get_api_type] driver(s): HidUsb [ 0.049847] [000013ec] libusbx: debug [get_api_type] matched driver name against HID API API [ 0.049847] [000013ec] libusbx: debug [windows_get_device_list] found existing device for session [329] (1.2) [ 0.049847] [000013ec] libusbx: debug [windows_get_device_list] setting HID interface for [329]: [ 0.049847] [000013ec] libusbx: debug [set_hid_interface] interface[0] = \\.\HID#VID_80EE&PID_0021#6&A8E1584&0&0000#{4D1E55B2-F16F-11CF-88CB-001111000030} [ 0.050581] [000013ec] libusbx: debug [get_api_type] driver(s): WinUSB [ 0.050581] [000013ec] libusbx: debug [get_api_type] matched driver name against WinUSB API [ 0.050581] [000013ec] libusbx: debug [windows_get_device_list] setting composite interface for [2A1]: [ 0.050581] [000013ec] libusbx: debug [set_composite_interface] interface[1] = \\.\USB#VID_0403&PID_CFF8&MI_01#6&222886B8&0&0001#{05A667E4-4DFF-459E-BDA9-C44B063D81B9} [ 0.050581] [000013ec] libusbx: debug [get_api_type] driver(s): WinUSB [ 0.050581] [000013ec] libusbx: debug [get_api_type] matched driver name against WinUSB API [ 0.050581] [000013ec] libusbx: debug [get_api_type] driver(s): WinUSB [ 0.050581] [000013ec] libusbx: debug [get_api_type] matched driver name against WinUSB API [ 0.050581] [000013ec] libusbx: debug [windows_get_device_list] setting composite interface for [2A1]: [ 0.050581] [000013ec] libusbx: debug [set_composite_interface] interface[0] = \\.\USB#VID_0403&PID_CFF8&MI_00#6&222886B8&0&0000#{600D37EB-4CBE-4A7A-A950-E57D093D1901} [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 1.0 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 2.0 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 2.0 [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_open] open 2.2 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 1.2 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 1.1 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 2.1 [ 0.050581] [000013ec] libusbx: debug [libusb_unref_device] destroy device 1.3 [ 0.050581] [000013ec] libusbx: debug [libusb_get_device_descriptor] [ 0.050581] [000013ec] libusbx: debug [libusb_get_config_descriptor] index 0 [ 0.050581] [000013ec] libusbx: debug [libusb_claim_interface] interface 0 [ 0.051560] [000013ec] libusbx: debug [winusbx_claim_interface] claimed interface 0 [ 0.051560] [000013ec] libusbx: debug [libusb_get_config_descriptor] index 0 [ 0.051560] [000013ec] libusbx: debug [windows_assign_endpoints] (re)assigned endpoint 81 to interface 0 [ 0.051560] [000013ec] libusbx: debug [windows_assign_endpoints] (re)assigned endpoint 02 to interface 0 [ 0.051560] [000013ec] libusbx: debug [libusb_claim_interface] interface 1 [ 0.051560] [000013ec] libusbx: debug [winusbx_claim_interface] claimed interface 1 [ 0.051560] [000013ec] libusbx: debug [libusb_get_config_descriptor] index 0 [ 0.051560] [000013ec] libusbx: debug [windows_assign_endpoints] (re)assigned endpoint 83 to interface 1 [ 0.051560] [000013ec] libusbx: debug [windows_assign_endpoints] (re)assigned endpoint 04 to interface 1 [ 0.051560] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.051560] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.051560] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.051560] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.051560] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.051560] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.053503] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.053503] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.053503] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.053503] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.053503] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.053503] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 00000000008076F0 has callback 000000006B6057F0 [ 0.053503] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=4 [ 0.053503] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.053503] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.053503] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.053503] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.053503] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.053503] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.056436] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.056436] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.056436] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.056436] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.056436] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 16 [ 0.056436] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.056436] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=16 [ 0.056436] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.056436] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.056436] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.056436] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.056436] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.056436] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.058478] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.058478] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.058478] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.058478] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.058478] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.058478] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.058478] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=4 [ 0.058478] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.058478] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.058478] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.058478] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.058478] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.058478] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.063346] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.063346] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.063346] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.063346] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.063346] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 36 [ 0.063346] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.063346] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=36 [ 0.063346] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.063346] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.063346] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.063346] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.063346] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.063346] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.065356] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.065356] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.065356] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.065356] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.065356] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.065356] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.065356] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=4 [ 0.065356] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.065356] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.065356] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.065356] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.065356] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.065356] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.069286] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.069286] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.069286] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.069286] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.069286] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 18 [ 0.069286] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.069286] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=18 [ 0.069286] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.069286] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.069286] [000013ec] libusbx: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.069286] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.069286] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.069286] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.071230] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.071230] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.071230] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.071230] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.071230] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.071230] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.071230] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=4 [ 0.071230] [000013ec] libusbx: debug [composite_submit_control_transfer] using interface 0 [ 0.071230] [000013ec] libusbx: debug [winusbx_submit_control_transfer] will use interface 0 [ 0.071230] [000013ec] libusbx: debug [usbi_add_pollfd] add fUsing libusbx v1.0.15.10641 Opening device 0403:CFF8... Reading device descriptor: length: 18 device class: 0 S/N: 3 VID:PID: 0403:CFF8 bcdDevice: 0700 iMan:iProd:iSer: 1:2:3 nb confs: 1 Reading configuration descriptors: nb interfaces: 2 interface[0]: id = 0 interface[0].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 81 max packet size: 0200 polling interval: 00 endpoint[1].address: 02 max packet size: 0200 polling interval: 00 interface[1]: id = 1 interface[1].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 83 max packet size: 0200 polling interval: 00 endpoint[1].address: 04 max packet size: 0200 polling interval: 00 Claiming interface 0... Claiming interface 1... Reading string descriptors: String (0x01): "Amontec" String (0x02): "Amontec JTAGkey-2" String (0x03): "53T9XDR4" Releasing interface 0... Releasing interface 1... Closing device... d 1 events 1 [ 0.071230] [000013ec] libusbx: debug [libusb_get_next_timeout] next timeout in 0.999557s [ 0.071230] [000013ec] libusbx: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.071230] [000013ec] libusbx: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.073137] [000013ec] libusbx: debug [handle_events] poll() returned 1 [ 0.073137] [000013ec] libusbx: debug [windows_handle_events] checking fd 0 with revents = 0000 [ 0.073137] [000013ec] libusbx: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.073137] [000013ec] libusbx: debug [usbi_remove_pollfd] remove fd 1 [ 0.073137] [000013ec] libusbx: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 0.073137] [000013ec] libusbx: debug [windows_transfer_callback] detected endpoint stall [ 0.073137] [000013ec] libusbx: debug [usbi_handle_transfer_completion] transfer 000000000080E390 has callback 000000006B6057F0 [ 0.073137] [000013ec] libusbx: debug [ctrl_transfer_cb] actual_length=0 [ 0.073137] [000013ec] libusbx: debug [libusb_release_interface] interface 0 [ 0.073137] [000013ec] libusbx: debug [libusb_release_interface] interface 1 [ 0.073137] [000013ec] libusbx: debug [libusb_close] [ 0.073137] [000013ec] libusbx: debug [libusb_unref_device] destroy device 2.2 [ 0.073137] [000013ec] libusbx: debug [libusb_exit] [ 0.073137] [000013ec] libusbx: debug [libusb_exit] destroying default context -- Xiaofan ------------------------------------------------------------------------------ Minimize network downtime and maximize team effectiveness. Reduce network management and security costs.Learn how to hire the most talented Cisco Certified professionals. Visit the Employer Resources Portal http://www.cisco.com/web/learning/employer_resources/index.html _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel