HID Reports

A HID report is used to transmit HID control data to and from a HIDClass device. A report descriptor defines the format of a report. Input and output reports specify control data and feature reports specify configuration data. If a device supports more than one report of the same type, each report is assigned a unique report ID. The following figure shows an example of a HID collection that contains two input reports.

Diagram illustrating an HID collection containing two input reports

This figure shows two input reports, one that contains value and button data and the other that contains only button data. In general, the number of reports within a HID collection and the number of values and buttons in a report are device-specific.

Input and Output Reports

Input and output reports specify HID control data. Input controls are sources of data relevant to an application, for example, x and y data obtained from a pointing device. Output controls are a sink for application data, for example, an LED that indicates the state of a device.

For information about reading and writing reports, see Obtaining HID Reports and Sending HID Reports.

Feature Reports

A feature report specifies configuration information for a device. A user-mode application obtains and sets feature information by using the following HIDClass support routines:

HidD_GetFeature

HidD_SetFeature

A kernel-mode driver obtains and sets feature information by using the following HID class driver IOCTLs:

IOCTL_HID_GET_FEATURE

IOCTL_HID_SET_FEATURE

 

 

Send comments about this topic to Microsoft

Build date: 4/28/2012