Drivers Bacharach USB Devices



Bacharach-->

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.

The USB-IF is a Special Interest Groups (SIGs) that maintains the Official USB Specification, test specifications and tools.

Windows operating systems include native support for USB host controllers, hubs, and devices and systems that comply with the official USB specification. Windows also provides programming interfaces that you can use to develop device drivers and applications that communicate with a USB device.

USB in WindowsWindows 10: What's new for USB

Overview of new features and improvements in USB in Windows 10.

USB FAQ

Frequently asked questions from driver developers about the USB stack and features that are supported in USB.

Microsoft OS Descriptors for USB Devices

Windows defines MS OS descriptors that allows better enumeration when connected to system running Windows operating system

Microsoft-provided USB driversUSB device-side drivers in Windows

A set of drivers for handling common function logic for USB devices.

USB host-side drivers in Windows

Microsoft provides a core stack of drivers that interoperate with devices that are connected to EHCI and xHCI controllers.

USB-IF device class drivers

Windows provides in-box device class drivers for many USB-IF approved device classes, audio, mass storage, and so on.

USB generic function driver–WinUSB

Windows provides Winusb.sys that can be loaded as a function driver for a custom device and a function of a composite device.

USB generic parent driver for composite devices–Usbccgp

Parent driver for USB devices with multiple functions. Usbccgp creates physical device objects (PDOs) for each of those functions. Those individual PDOs are managed by their respective USB function drivers, which could be the Winusb.sys driver or a USB device class driver.

WDF extension for developing USB drivers
  • USB connector manager class extension (UcmCx) reference
  • USB host controller (UCX) reference
  • USB function class extension (UFX) reference
Testing USB devices with Windows

Get information about the tools that you can use to test your USB hardware or software, capture traces of operations and other system events, and observe how the USB driver stack responds to a request sent by a client driver or an application.

Read an overview of tests in the Hardware Certification Kit that enable hardware vendors and device manufacturers to prepare their USB devices and host controllers for Windows Hardware Certification submission.

Other Resources for USB

Official USB Specification

Provides complete technical details for the USB protocol.

Microsoft Windows USB Core Team Blog

Check out posts written by the Microsoft USB Team. The blog focuses on the Windows USB driver stack that works with various USB Host controllers and USB hubs found in Windows PC. A useful resource for USB client driver developers and USB hardware designers understand the driver stack implementation, resolve common issues, and explain how to use tools for gathering traces and log files.

OSR Online Lists - ntdev

Discussion list managed by OSR Online for kernel-mode driver developers.

Windows Dev-Center for Hardware Development

Miscellaneous resources based on frequently asked questions from developers who are new to developing USB devices and drivers that work with Windows operating systems.

USB-related videos

UWP apps for USB devicesUnderstanding USB 3.0 in Windows 8Building great USB 3.0 devicesUSB Debugging Innovations in Windows 8 (Part I, II, & III)

USB hardware for learning

MUTT devices

MUTT and SuperMUTT devices and the accompanying software package are integrated into the HCK suite of USB tests. They provide automated testing that can be used during the development cycle of USB controllers, devices and systems, especially stress testing.

OSR USB FX2 Learning Kit

If you are new to USB driver development. The kit is the most suitable to study USB samples included in this documentation set. You can get the learning kit from OSR Online Store.

Write a USB client driver (KMDF, UMDF)

Introduces you to USB driver development. Provides information about choosing the most appropriate model for providing a USB driver for your device. This section also includes tutorials about writing your first user-mode and kernel-mode USB drivers by using the USB templates included with Microsoft Visual Studio.

Write a USB host controller driver

If you are developing an xHCI host controller that is not compliant with the specification or developing a custom non-xHCI hardware (such as a virtual host controller), you can write a host controller driver that communicates with UCX. For example, consider a wireless dock that supports USB devices. The PC communicates with USB devices through the wireless dock by using USB over TCP as a transport.

  • USB host controller (UCX) reference
Write a function controller driver for a USB device

You can develop a controller driver that handles all USB data transfers and commands sent by the host to the device. This driver communicates with the Microsoft-provided USB function controller extension (UFX).

USB function class extension (UFX) reference

Write a USB Type-C connector driver

Windows 10 introduces support for the new USB connector: USB Type-C. You can write a driver for the connector that communicates with the Microsoft-provided class extension module: UcmCx to handle scenarios related to Type-C connectors such as, which ports support Type-C, which ports support power delivery.

USB connector manager class extension (UcmCx) reference

Write a USB dual-role controller driver

USB Dual Role controllers are now supported in Windows 10. Windows includes in-box client drivers for ChipIdea and Synopsys controllers. For other controllers, Microsoft provides a set of programming interfaces that allow the dual-role class extension (UrsCx) and its client driver to communicate with each other to handle the role-switching capability of a dual-role controller.

For more information about this feature, see:

USB dual-role controller driver programming reference

Write a USB driver for emulated devices

Windows 10 introduces support for emulated devices. Now you can develop an emulated Universal Serial Bus (USB) host controller driver and a connected virtual USB device. Both components are combined into a single KMDF driver that communicates with the Microsoft-provided USB device emulation class extension (UdeCx).

Emulated USB host controller driver programming reference

Write a UWP app

Provides step-by-step instructions about implementing USB features in a UWP app. To write such an app for a USB device you need Visual Studio and Microsoft Windows Software Development Kit (SDK) .

Write a Windows desktop app

Describes how an application can call WinUSB Functions to communicate with a USB device.

WinUSB functions

Common programming scenarios

List of common tasks that a driver or an app performs in order to communicate with a USB device. Get quick info about the programming interfaces you need for each task.

USB samples

Development tools

Download kits and tools for Windows
  • Check Device Manager to see if the Apple Mobile Device USB driver is installed. Follow these steps to open Device Manager: Press the Windows and R key on your keyboard to open the Run command. In the Run window, enter devmgmt.msc, then click OK. Device Manager should open. Locate and expand the Universal Serial Bus controllers section.
  • Intel Android device USB driver is a collection of drivers for managing Android devices powered by Intel Atom processors from the computer. The pack ensures that your operating system will recognize and interact with any Atom-based smartphone or tablet connect to the PC through a USB cable.

Virtual COM port (VCP) drivers cause the USB device to appear as an additional COM port available to the PC. Application software can access the USB device in the same way as it would access a standard COM port.

-->

Important

This topic is for programmers. If you are a customer experiencing USB problems, see Troubleshoot common USB problems

Drivers Bacharach Usb Devices Wireless Adapter

This topic lists the Microsoft-provided drivers for the supported USB device classes.

  • Microsoft-provided drivers for USB-IF approved device classes.
  • For composite devices, use USB Generic Parent Driver (Usbccgp.sys) that creates physical device objects (PDOs) for each function.
  • For non-composite devices or a function of a composite device, use WinUSB (Winusb.sys).

Drivers Bacharach USB Devices

If you are installing USB drivers: You do not need to download USB device class drivers. They are installed automatically. These drivers and their installation files are included in Windows. They are available in the WindowsSystem32DriverStoreFileRepository folder. The drivers are updated through Windows Update.

If you are writing a custom driver: Before writing a driver for your USB device, determine whether a Microsoft-provided driver meets the device requirements. If a Microsoft-provided driver is not available for the USB device class to which your device belongs, then consider using generic drivers, Winusb.sys or Usbccgp.sys. Write a driver only when necessary. More guidelines are included in Choosing a driver model for developing a USB client driver.

USB Device classes

USB Device classes are categories of devices with similar characteristics and that perform common functions. Those classes and their specifications are defined by the USB-IF. Each device class is identified by USB-IF approved class, subclass, and protocol codes, all of which are provided by the IHV in device descriptors in the firmware. Microsoft provides in-box drivers for several of those device classes, called USB device class drivers. If a device that belongs to a supported device class is connected to a system, Windows 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 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 class driver to support the entire range of functionality provided by the device.

For general information about USB-IF approved device classes see the USB Common Class Specification

Drivers bacharach usb devices wireless adapter

The current list of USB class specifications and class codes is documented in the USB-IF Defined Class Code List.

Device setup classes

Windows categorizes devices by device setup classes, which indicate the functionality of the device.

Microsoft defines setup classes for most devices. IHVs and OEMs can define new device setup classes, but only if none of the existing classes apply. For more information, see System-Defined Device Setup Classes.

Two important device setup classes for USB devices are as follows:

  • USBDevice {88BAE032-5A81-49f0-BC3D-A4FF138216D6}: IHVs must use this class for custom devices that do not belong to another class. This class is not used for USB host controllers and hubs.

  • USB {36fc9e60-c465-11cf-8056-444553540000}: IHVs must not use this class for their custom devices. This is reserved for USB host controllers and USB hubs.

The device setup classes are different from USB device classes discussed earlier. For example, an audio device has a USB device class code of 01h in its descriptor. When connected to a system, Windows loads the Microsoft-provided class driver, Usbaudio.sys. In Device Manager, the device is shown under is Sound, video and game controllers, which indicates that the device setup class is Media.

DevicesDevices

Microsoft-provided USB device class drivers

USB-IF class codeDevice setup classMicrosoft-provided driver and INFWindows supportDescription
Audio (01h)Media
{4d36e96c-e325-11ce-bfc1-08002be10318}
Usbaudio.sys

Wdma_usb.inf

Windows 10 for desktop editions (Home, Pro, Enterprise, and Education)
Windows 10 Mobile
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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.
Communications and CDC Control (02h)
Ports
{4D36E978-E325-11CE-BFC1-08002BE10318}
Usbser.sys
Usbser.inf
Windows 10 for desktop editions
Windows 10 Mobile
In Windows 10, a new INF, Usbser.inf, has been added that loads Usbser.sys automatically as the function driver.

For more information, see USB serial driver (Usbser.sys)

Modem
{4D36E96D-E325-11CE-BFC1-08002BE10318}

Note Supports Subclass 02h (ACM)

Usbser.sys
Custom INF that references mdmcpq.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
In Windows 8.1 and earlier versions, Usbser.sys is not automatically loaded. To load the driver, you need to write an INF that references the modem INF (mdmcpq.inf) and includes [Install] and [Needs] sections.

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.

Net
{4d36e972-e325-11ce-bfc1-08002be10318}
Note Supports Subclass 0Eh (MBIM)
wmbclass.sys
Netwmbclass.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Starting in Windows 8, Microsoft provides the wmbclass.sys driver, for mobile broadband devices. See, MB Interface Model.
HID (Human Interface Device) (03h)HIDClass
{745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Hidclass.sys
Hidusb.sys
Input.inf
Windows 10 for desktop editions
Windows 10 Mobile
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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 HID Architecture and Minidrivers and the HID class driver. For further information about Windows support for input hardware, see the Input and HID - Architecture and Driver Support website.
Physical (05h)---Recommended driver: WinUSB (Winusb.sys)
Image (06h)Image
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbscan.sys
Sti.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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.
Printer (07h)USB

Note Usbprint.sys enumerates printer devices under the device set up class: Printer

{4d36e979-e325-11ce-bfc1-08002be10318}.

Usbprint.sys
Usbprint.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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.
Mass Storage (08h)
USBUsbstor.sysWindows 10 for desktop editions
Windows 10 Mobile
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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.
SCSIAdapter

{4d36e97b-e325-11ce-bfc1-08002be10318}

SubClass (06) and Protocol (62)
Uaspstor.sys
Uaspstor.inf
Windows 10 for desktop editions
Windows 10 Mobile
Windows 8.1
Windows 8
Uaspstor.sys is the class driver for SuperSpeed USB devices that support bulk stream endpoints. For more information see:
Hub (09h)USB

{36fc9e60-c465-11cf-8056-444553540000}

Usbhub.sys
Usb.inf
Windows 10 for desktop editions
Windows 10 Mobile
Windows 8.1
Windows 8
Windows 7
Windows Server 2008
Windows Vista
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 host-side drivers in Windows.
Usbhub3.sys
Usbhub3.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Microsoft provides the Usbhub3.sys driver for managing SuperSpeed (USB 3.0) USB hubs.

The driver is loaded when a SuperSpeed hub is attached to an xHCI controller. See USB host-side drivers in Windows.

CDC-Data (0Ah)---Recommended driver: WinUSB (Winusb.sys)
Smart Card (0Bh)SmartCardReader

{50dd5230-ba8a-11d1-bf5d-0000f805f530}

Usbccid.sys (Obsolete)Windows 10 for desktop editions
Windows 7
Windows Server 2008
Windows Vista
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.

Note Usbccid.sys driver has been replaced by UMDF driver, WUDFUsbccidDriver.dll.

WUDFUsbccidDriver.dll
WUDFUsbccidDriver.inf
Windows 8.1
Windows 8
WUDFUsbccidDriver.dll is a user-mode driver for USB CCID Smart Card Reader devices.
Content Security (0Dh)---Recommended driver: USB Generic Parent Driver (Usbccgp.sys). Some content security functionality is implemented in Usbccgp.sys. See Content Security Features in Usbccgp.sys.
Video (0Eh)Image
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbvideo.sys

Usbvideo.inf

211 Horse Shoe Lake Drive, Suite 112 Bayers Lake Park, Halifax, NS B3S-0B9. Northern Micro and Microsoft Surface: Your Ally in Building Bridges. We believe that when walls are built around systems, sometimes people get stuck there too. Luckily, technology is making bricks and mortar less relevant. Productivity is no longer directly tied to being under one roof. Driver at Northern Micro Ottawa, Canada Area 35 connections. Join to Connect Northern Micro. Hopewell Avenue Public School. Report this profile. Shop 92 Screw + Nut Drivers at Northern Tool + Equipment. Browse a variety of top brands in Screw + Nut Drivers such as Klutch, Ironton, and Milwaukee from the product experts. Drivers northern micro. Northern Gift Cards Parts Power Tools. Klutch Mini Flex Micro Driver with 9 Bits Only $ 15. Item# 219065 Quick Info.

Windows 10 for desktop editions

Windows Vista

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.

Personal Healthcare (0Fh)---Recommended driver: WinUSB (Winusb.sys)
Audio/Video Devices (10h)----
Diagnostic Device (DCh)---Recommended driver: WinUSB (Winusb.sys)
Wireless Controller (E0h)

Note Supports Subclass 01h and Protocol 01h

Bluetooth

{e0cbf06c-cd8b-4647-bb8a-263b43f0f974}

Bthusb.sys

Bth.inf

Windows 10 for desktop editions
Windows 10 Mobile
Windows 8.1
Windows 8
Windows 7
Windows Vista
Microsoft provides the Bthusb.sys miniport driver to manage USB Bluetooth radios. For more information, see Bluetooth Design Guide.
Miscellaneous (EFh)Net

{4d36e972-e325-11ce-bfc1-08002be10318}

Note Supports SubClass 04h and Protocol 01h

Rndismp.sys
Rndismp.inf
Windows 10 for desktop editions
Windows 8.1
Windows 8
Windows 7
Windows Vista
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, Rndismp.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.
Application Specific (FEh)---Recommended driver: WinUSB (Winusb.sys)
Vendor Specific (FFh)--Windows 10 for desktop editions
Windows 10 Mobile
Recommended driver: WinUSB (Winusb.sys)

Related topics