USB-HID (Human Interface Device) Driver

Posted on  by 



HID Related Specifications and Tools

Device Class Definition HID

The abbreviation for Human Interface Device is HID. And in computer, the HID means USB-HID. It is usually a human input or output device such as USB-HID TouchPad, USB Pen, USB keyboard, USB mouse, etc. Download USB Human Interface Device for Windows to hID driver. This package supports the following driver models: USB Human Interface Device; Full Specifications. What's new in version 2005-04-15.

The Device Class Definition for HID 1.11 is intended to supplement the USB Specification and provide HID manufacturers with the information necessary to build USB-compatible devices. It also specifies how the HID class driver should extract data from USB devices. The primary and underlying goals of the HID class definition are to:

  • A human interface device or HID is a type of computer device that interacts directly with, and most often takes input from, humans and may deliver output to humans. USB Ports will also add to that list, even if currently unused.
  • This video show How to Start or Stop Human Interface Device Service in Windows 10 Pro. I use Dell Inspiron 14 3000 Series in this tutorial.
Driver
  • be as compact as possible to save device data space
  • allow the software application to skip unknown information
  • be extensible and robust
  • support nesting and collections
  • be self-describing to allow generic software applications

HID Usage Tables

The HID Usage Tables 1.21 document defines constants that can be interpreted by an application to identify the purpose and meaning of a data field in a HID report.

Usages are also used to define the meaning of groups of related data items. This is accomplished by the hierarchical assignment of usage information to collections.

Usages identify the purpose of a collection and the items it contains. Each Input, Output, Feature, and/or Collection data item within a Collection item can be assigned a purpose with its own usage item. Usages assigned to a collection apply to the items within the collection.

Usb-hid (human interface device) driver driverUsb-hid (human interface device) driver driver

The HID Usage Tables document contains extensions to the tables defined in the USB Device Class Definition for Human Interface Devices. All usages pages, except the Keyboard table, are replicated in the Usage Table document. The Usage Table document identifies the extensions to the Keyboard usage table.

Note: For keyboards, look at the usage table sections in both the HID Specification and the HID Usage Table document!

Approved Usage Table Review Requests

Usb-hidUsb-hid (human interface device) driver driver

The following HID Usage Table Review Requests have been approved for implementation by the USB Device Working Group HID Committee. These Review requests assign enumeration values and recommended meaning to new Usages allocated after the publication of the HID Usage Tables v1.21. Please note that the creation of a new Usage does not imply support for that Usage by any USB HID Host vendor. Integrated Usage Table Review Requests.

Review Request 99: Voice Dictation Usage64.26 KB-->

Usb-hid (human Interface Device) Drivers Download

Human Interface Devices (HID) is a device class definition to replace PS/2-style connectors with a generic USB driver to support HID devices such as keyboards, mice, game controllers, etc. Prior to HID, devices could only utilize strictly-defined protocols for mice and keyboards. Hardware innovation required either overloading data in an existing protocol or creating non-standard hardware with its own specialized driver. HID provided support for these “boot mode” devices while adding support for hardware innovation through extensible, standardized and easily-programmable interfaces.

HID devices today include a broad range of devices such as alphanumeric displays, bar code readers, volume controls on speakers/headsets, auxiliary displays, sensors and many others. Many hardware vendors also use HID for their proprietary devices.

HID began with USB but was designed to be bus-agnostic. It was designed for low latency, low bandwidth devices but with flexibility to specify the rate in the underlying transport. The specification for HID over USB was ratified by the USB-IF in 1996 and support over additional transports followed soon after. Details on currently supported transports can be found in HID Transports Supported in Windows. 3rd-party, vendor-specific transports are also allowed via custom transport drivers.

HID Concepts

HID consists of two fundamental concepts, a Report Descriptor, and Reports. Reports are the actual data that is exchanged between a device and a software client. The Report Descriptor describes the format and meaning the data that the device supports.

Reports

Applications and HID devices exchange data through Reports. There are three Report types: Input Reports, Output Reports, and Feature Reports.

Report TypeDescription
Input ReportData sent from the HID device to the application, typically when the state of a control changes.
Output ReportData sent from the application to the HID device, for example to the LEDs on a keyboard.
Feature ReportData that can be manually read and/or written, and are typically related to configuration information.

Each Top Level Collection defined in a Report Descriptor can contain zero (0) or more reports of each type.

Usage Tables

Usb-hid (human Interface Device) Driver Driver

The USB-IF working group publishes HID Usage Tables that are part of the Report Descriptors that describe what HID devices are allowed to do. These HID Usage Tables contain a list with descriptions of Usages, which describe the intended meaning and use of a particular item described in the Report Descriptor. For example, a Usage is defined for the left button of a mouse. The Report Descriptor can define where in a Report an application can find the current state of the mouse’s left button. The Usage Tables are broken up into several name spaces, called Usage Pages. Each Usage Page describes a set of related Usages to help organize the document. The combination of a Usage Page and Usage define the Usage ID that uniquely identifies a specific Usage in the Usage Tables.

See also

USB-IF HID Specifications.





Coments are closed