Libusb-win32 Error Codes
Contents |
is a port of libusb-0.1 under Windows Brought to you by: ste_meyer, trobinso, xiaofanc Summary Files Reviews Support Wiki Mailing Lists Code
Usb_find_devices
Tickets ▾ Feature Requests Bugs Patches Support Requests News Donate Wiki libusb-win32 download Home Browse Pages Browse Labels Formatting Help Home Authors: libusb-win32 libusb-win32 is now in Bug-Fix-Only maintenance libusb-win32 windows 10 mode. It is recommended new project should migrate to libusb-1.0 API and use libusb Windows (http://libusb.info) instead. For Windows only project, you can also look at libusbK
Libusb Windows 10
below (http://libusbk.sourceforge.net/UsbK3/index.html) libusb-win32 is a port of the USB library libusb 0.1 (http://sourceforge.net/projects/libusb) to the Microsoft Windows operating systems (Windows 2000, Windows XP, Windows Vista and Windows 7; Windows 98 SE and Windows ME for versions up to 0.1.12.2 ). The library allows user space applications to access many USB device on Windows
Libusb Control Transfer Example
in a generic way without writing any line of kernel driver code. Vista/7/2008/2008R2 64 bit are supported from version 1.2.0.0 since a Microsoft KMCS accepted digital signature is embedded in the kernel driver libusb0.sys. Features: Can be used as a filter driver for existing, already installed devices. This feature allows libusb-win32 to communicate with many installed USB device. Starting with v1.2.2.0, a GUI (filter wizard) is provided and it is only to attach the filter driver to particular USB device of interests. So this should be safer to use than the older behavior which tries to attach the filter to all USB device (acting as class filters to all possible device class). It is still possible to do that by using the console version of install-filter.exe but this is only recommended to be used by developers and power users since this could potentially cause BSODs. When you use the device filter mode using the Filter Wizard GUI, you
Take note the latest version can be found in the libusb-win32 Sourceforge Trac Wiki. libusb-win32 is a port of the USB library libusb-0.1 to the Microsoft Windows operating systems (Windows 98 SE, Windows ME, Windows 2000, Windows XP, Windows Vista and Windows 7. Starting from version 1.1.14.0, libusb-win32 support of Win98SE usb_get_string_simple and WinME is dropped due to the age of these Operating systems. Vista/7 64
Libusb 1.0 Windows
bit are supported from version 1.2.0.0 since a Microsoft KMCS accepted digital signature is embedded in the kernel driver libusb0.sys. Features: Can how to install libusb windows 8 be used as a filter driver for existing, already installed devices. This feature allows libusb-win32 to communicate with almost any installed USB device. The filter driver may cause problems for certain device. Therefore it should not be http://libusb-win32.sourceforge.net/ used by normal users. Rather it should be considered more as a development tool for developers or power users of Windows. Starting with v1.2.2.0, a GUI (filter wizard) is provided and it is only to attach the filter driver to particular USB device of interests. So this should be safer to use than the older behavior which tries to attach the filter to all USB device (acting as class filters to all possible http://www.libusb.org/wiki/libusb-win32 device class). It is still possible to do that by using the console version of install-filter.exe but this is only recommended to be used by developers and power users. Can be used as a normal device driver for devices for which no driver exists (self build/developed USB hardware, etc). You can also replace the existing device driver with libusb-win32 device driver if desired. This is the preferred way to use libusb-win32. The two methods described above can used in parallel. 100% API and functional compatible with the libusb 0.1 project. Supports all USB transfer: Control, Bulk, Interrupt and Isochronous transfers. Take note libusb 0.1 does not support Isochronous Transfer under other Operating Systems like Linux. Supports all Standard Device Requests (control messages) described in chapter 9 of the USB specification. Supports vendor specific control messages. License The library (including DLL, import libraries, examples and installers) is distributed under the terms of the GNU Lesser General Public License (LGPL). The driver is distributed under the terms of the GNU General Public License (GPL). This license combination explicitly allows the use of this library in commercial, non Open Source applications. Read the licenses carefully and apply all of their requirements before including this library in a commercial application! Support If something isn't working as expected, make sure that you
a 16-bit value from little-endian to host-endian format. More... Enumerations enum libusb_standard_request { LIBUSB_REQUEST_GET_STATUS = 0x00, LIBUSB_REQUEST_CLEAR_FEATURE = 0x01, LIBUSB_REQUEST_SET_FEATURE = 0x03, LIBUSB_REQUEST_SET_ADDRESS = http://libusb.org/static/api-1.0/group__misc.html 0x05, LIBUSB_REQUEST_GET_DESCRIPTOR = 0x06, LIBUSB_REQUEST_SET_DESCRIPTOR = 0x07, LIBUSB_REQUEST_GET_CONFIGURATION = 0x08, LIBUSB_REQUEST_SET_CONFIGURATION = 0x09, LIBUSB_REQUEST_GET_INTERFACE = 0x0A, LIBUSB_REQUEST_SET_INTERFACE = 0x0B, LIBUSB_REQUEST_SYNCH_FRAME = 0x0C } http://fossies.org/linux/apcupsd/platforms/mingw/winusb/install.txt Standard requests, as defined in table 9-3 of the USB2 specifications. More... enum libusb_request_type { LIBUSB_REQUEST_TYPE_STANDARD = (0x00 << 5), LIBUSB_REQUEST_TYPE_CLASS = windows 10 (0x01 << 5), LIBUSB_REQUEST_TYPE_VENDOR = (0x02 << 5), LIBUSB_REQUEST_TYPE_RESERVED = (0x03 << 5) } Request type bits of the bmRequestType field in control transfers. More... enum libusb_request_recipient { LIBUSB_RECIPIENT_DEVICE = 0x00, LIBUSB_RECIPIENT_INTERFACE = 0x01, LIBUSB_RECIPIENT_ENDPOINT = 0x02, LIBUSB_RECIPIENT_OTHER = 0x03 } Recipient bits of the bmRequestType libusb-win32 error codes field in control transfers. More... enum libusb_error { LIBUSB_SUCCESS = 0, LIBUSB_ERROR_IO = -1, LIBUSB_ERROR_INVALID_PARAM = -2, LIBUSB_ERROR_ACCESS = -3, LIBUSB_ERROR_NO_DEVICE = -4, LIBUSB_ERROR_NOT_FOUND = -5, LIBUSB_ERROR_BUSY = -6, LIBUSB_ERROR_TIMEOUT = -7, LIBUSB_ERROR_OVERFLOW = -8, LIBUSB_ERROR_PIPE = -9, LIBUSB_ERROR_INTERRUPTED = -10, LIBUSB_ERROR_NO_MEM = -11, LIBUSB_ERROR_NOT_SUPPORTED = -12, LIBUSB_ERROR_OTHER = -99 } Error codes. More... enum libusb_capability { LIBUSB_CAP_HAS_CAPABILITY = 0 } Capabilities supported by this instance of libusb. More... Functions intlibusb_has_capability (uint32_t capability) Check at runtime if the loaded library has a given capability. More... const char *libusb_error_name (int error_code) Returns a constant NULL-terminated string with the ASCII name of a libusb error code. More... struct libusb_version *libusb_get_version (void) Returns a pointer to const struct libusb_version with the version (major, minor, micro, rc, and nano) of the running library. Detailed Descriptio
requested source page into HTML format using source code syntax highlighting with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field. 1 INSTALLING APCUPSD WINDOWS USB DRIVER 2 3 USB connected UPSes on Windows require a special driver. In most cases, 4 this driver is automatically installed when you install Apcupsd. However, 5 in some cases, you will need to install the driver by hand. 6 7 8 SUPPORTED OPERATING SYSTEMS 9 10 The USB driver supports the following operating systems: 11 12 - Windows XP Service Pack 2 13 - Windows 2003 Service Service Pack 2 14 - Windows Vista (including 64 bit) 15 - Windows 7 (including 64 bit) 16 - Windows 2008 Server (including 64 bit) 17 - Windows 8 (including 64 bit) 18 - Windows 8.1 (including 64 bit) 19 20 Notably, Windows 2000, Windows 98, and Windows ME are NOT supported. 21 22 23 TROUBLESHOOTING 24 25 - If the driver fails to start and Windows gives an "Error Code 10" this is 26 most likely because you updated the driver on "Batteries / HID UPS Battery" 27 instead of "Human Interface Devices / American Power Conversion USB UPS". To 28 fix this, uninstall the driver from the device that is giving the error code, 29 then do an update driver on the correct device. 30 31 - The driver INF has now been signed with Authenticode thanks to Jernej Simoncic 32