HID Usage Tables

Identify the types of data that HID devices can report to your driver.



Usage Pages

The types of behaviors that a HID device may support.

Undefined Usage

A constant that indicates a device's usage doesn't correspond to one of the defined behavior types.

Interaction Types

Generic Desktop

Usages related to generic desktop devices, such as mice, joysticks, and keyboards.


Usages related to devices that simulate airplane or vehicle controls.

Virtual Reality

Usages related to virtual reality controllers, such as motion trackers for a user's hand or head.


Usages for sports-related equipment, such as golf clubs or exercise machines.


Usages for game controllers.


Generic Device Controls

Usages associated with generic types of device information, such as battery level.

Keyboard or Keypad

Usages related to keyboard and keypad devices.


Usages related to the LEDs and other indicators on the device.


Usages for devices that contain user-selectable controls.


Usages for custom-defined behaviors on a device.


Usages for telephony devices, including telephone keypads and answering machines.


Usages for app-specific controls on consumer devices, such as clocks, TVs, and audio equipment.


Usages for digitizer devices, such as styluses and touch screens.

Physical Interface Device

Usages for devices with actuators or other physical interfaces.

Alphanumeric Display

Usages for alphanumeric displays on consumer devices.

Input and Text


Usages for device sensors, including biometric and electrical sensors.

Bar Code Scanner

Usages for devices that scan bar codes.

Weighing Device

Usages for scales and other devices that measure weights.

Magnetic Stripe Reader

Usages for magnetic striper readers.

Camera Control

Usages for digital cameras.


Power Devices

Usages for devices that measure or track power, such as universal power supplies or chargers.

Battery System

Usages for devices that manage a battery.

See Also

HID Usage Tables

Match Criteria

Specify the criteria that the system uses to match your driver to a device.