Drivers for the Supported USB Device Classes
This topic lists the Microsoft-provided class drivers for the supported USB device classes.
Device classes are categories of devices with similar characteristics and that perform common functions. Microsoft supports several device classes defined by the USB Device Working Group (DWG). For the supported device classes, Windows includes many class drivers that implement the common functionality of device classes as described in device class specifications. Each class driver serves as the client driver for all devices in that class. If a connected USB device belongs to a class that is supported by the operating system, it automatically loads the class driver, and the device functions with no additional driver required. Hardware vendors should not write drivers for the supported device classes.
Windows class drivers might not support all of the features that are described in a DWG class specification. If some of the device's capabilities are not implemented by the class driver, vendors should provide supplementary drivers that work in conjunction with the client class driver to support the entire range of functionality provided by the device.
For general information about device classes and class specifications, see the USB Technology website.
For the current list of USB class specifications and class codes, visit the USB DWG website.
Currently, Microsoft provides class drivers for the following classes of USB devices:
Device class | Class driver | Windows support | Description |
---|---|---|---|
Audio Class | Usbaudio.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides support for the USB audio device class by means of the Usbaudio.sys driver. For more information, see "USBAudio Class System Driver" in Kernel-Mode WDM Audio Components. For more information about Windows audio support, see the Audio Device Technologies for Windows website. |
Bluetooth Class | Bthusb.sys | Windows 7 Windows Vista Windows XP | Microsoft provides the Bthusb.sys miniport driver to manage USB Bluetooth radios. For more information, see Bluetooth Design Guide. |
Communications Device Class (CDC) | Usb8023.sys | Windows 7 Windows Server 2008 Windows Vista | Starting with Windows Vista, you can enable CDC and Wireless Mobile CDC (WMCDC) support by setting a registry value, as described in Support for the Wireless Mobile Communication Device Class. When CDC support is enabled, the USB Common Class Generic Parent Driver enumerates interface collections that correspond to CDC and WMCDC Control Models, and assigns physical device objects (PDO) to these collections. Prior to Windows Vista, support for CDC is limited to the RNDIS-specific implementation of the Abstract Control Model (ACM) with a vendor-unique protocol (bInterfaceProtocol) value of 0xFF. The RNDIS facility centers the management of all 802-style network cards in a single class driver, mdismp.sys. For a detailed discussion of remote NDIS, see Overview of Remote NDIS. The mapping of remote NDIS to USB is implemented in the Usb8023.sys driver. For further information about networking support in Windows, see the Networking and Wireless Technologies website. |
Content Security Class | None | None | Microsoft does not currently supply a class driver that implements content security. However, some content security functionality is implemented within the USB Generic Parent Driver (Usbccgp.sys). For more information, see Content Security Features in Usbccgp.sys. |
Imaging Class | Usbscan.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP | Microsoft provides the Usbscan.sys driver that manages USB digital cameras and scanners for Windows XP and later operating systems. This driver implements the USB component of the Windows Imaging Architecture (WIA). For more information about WIA, see Windows Image Acquisition Drivers and the Windows Imaging Component website. For a description of the role that Usbscan.sys plays in the WIA, see WIA Core Components. |
Hub Device Class | Usbhub.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides the Usbhub.sys driver for managing USB hubs. For more information about the relationship between the hub class driver and the USB stack, see USB Driver Stack Architecture. |
Human Interface Device (HID) Class | Hidclass.sys Hidusb.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides the HID Class Driver (Hidclass.sys) and the miniclass driver (Hidusb.sys) to operate devices that comply with the USB HID Standard. For more information, see Interactive Input Device Architecture. For further information about Windows support for input hardware, see the Input and HID - Architecture and Driver Support website. |
Mass Storage Class | Usbstor.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides the Usbstor.sys port driver to manage USB mass storage devices with Microsoft's native storage class drivers. For an example device stack that is managed by this driver, see Device Object Example for a USB Mass Storage Device. For information about Windows storage support, see the Storage Technologies website. |
Media Transfer Protocol Devices | Wpdusb.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP | Microsoft provides the Wpdusb.sys driver to manage portable devices that support the Media Transfer Protocol. For more information, see WPD Design Guide. |
Printer Class | Usbprint.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides the Usbprint.sys class driver that manages USB printers. For information about implementation of the printer class in Windows, see the Printing - Architecture and Driver Support website. |
Smart Card Class | Usbccid.sys | Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 | Microsoft provides the Usbccid.sys mini-class driver to manage USB smart card readers. For more information about smart card drivers in Windows, see Smart Card Design Guide. Note that for Windows Server 2003, Windows XP, and Windows 2000, special instructions are required for loading this driver because it might have been released later than the operating system. |
Video Class | Usbvideo.sys | Windows Vista Windows XP | Microsoft provides USB video class support by means of the Usbvideo.sys driver. For more information, see "USB Video Class Driver" under AVStream Minidrivers. Note that for Windows XP, special instructions are required for loading this driver because it might have been released later than the operating system. |
Related topics