Universal Serial Bus (USB) provides an expandable, hot-pluggable Plug and Play serial interface that ensures a standard, low-cost connection for peripheral devices such as keyboards, mice, joysticks, printers, scanners, storage devices, modems, and video conferencing cameras. Migration to USB is recommended for all peripheral devices that use legacy ports such as PS/2, serial, and parallel ports. Drivers for most USB devices should use WDF.
For information about USB standards organization, see USB Implementers Forum.
Windows Driver Stack for USB Devices
Check out these frequently asked questions from developers who are new to developing USB devices and drivers that work with Windows operating systems.
New in Windows 8
USB-related Sessions at the BUILD Conference
Programming USB Devices
Microsoft OS descriptors can be used by IHVs to store in firmware much of the information that is now typically provided to customers separately. Window retrieves that information by reading Microsoft OS descriptors, and uses it to install and configure the device without requiring any user interaction.
USB Hardware Certification and Testing
Guidelines for hardware vendors and device manufacturers to prepare their USB devices and host controllers for Windows Hardware Certification submission.
USB Power Management
USB-related Blog Posts
This feed, No Title, currently has no items to display.
Windows Driver Foundation (WDF) provides specialized input/output (I/O) targets in both User-Mode Driver Framework (UMDF) and Kernel-Mode Driver Framework (KMDF) are hardware-specific and support USB devices. You can use the USB I/O targets to write a fully functional Windows driver for a USB device that uses the Windows USB device stack.
Microsoft Visual Studio 11 Beta includes USB User-Mode Driver and USB Kernel-Mode Driver templates that generate starter code for a UMDF and KMDF USB client driver, respectively.
Accessing USB Devices from Applications
Applications can send requests to a USB device if its function driver is Winusb.sys. Such applications can use a set of functions included in the WDK to communicate with the device.
USB Device Class Whitepapers