Table of contents
Collapse the table of content
Expand the table of content

Required HID Descriptors

Last Updated: 1/3/2017

This topic presents the required HID descriptors (and device attributes) for a Windows pen device in Windows 10 and later operating systems.

Required USB HID Descriptor

The following table shows the required USB HID descriptor. For more information, see section 6.2.1 in Device Class Definition for Human Interface Devices (HID) Version 1.11.

MemberSize in bytesDescription
bLength1Size of the descriptor
bDescriptorType1Type of descriptor
bcdHID2HID version number
bCountryCode1Country code
bNumDescriptors1Number of descriptors
bDescriptorType1Descriptor type
bDescriptorLength2Length of the descriptor

Required I²C HID Descriptor

The following table shows the required I²C HID descriptor.

MemberSize in bytesDescription
wHIDDescLength2The length of the complete HID descriptor (in Bytes).
bcdVersion2The version number, in binary coded decimal (BCD) format.
wReportDescLength2The length of the Report descriptor (in Bytes).
wReportDescRegister2The register index containing the Report descriptor.
wInputRegister2The register number to read the input report (in unsigned Bytes).
wMaxInputLength2The length of the largest input report to be read from the input register.
wOutputRegister2The register number to send the output (in unsigned Bytes).
wMaxOutputLength2The length of the largest output report to be sent.
wCommandRegister2The register number to send command requests (in unsigned Bytes).
wDataRegister2The register number to exchange data with command requests (in unsigned Bytes).
wVendorID2USB-IF assigned Vendor ID.
wDeviceID2Device ID.
wVersionID2Firmware version number.

Required Device Attributes

The following HID properties must be provided in the device attributes. The reporting of these device attributes is bus-specific. Consult the HID-specific guidance for your choice of bus.

wVendorIDVendor IDidVendor in USB Device DescriptorwVendorID in I²C HID Descriptor (see the preceding table).
wProductProduct IDidProduct in USB Device DescriptorwDeviceID in I²C HID Descriptor (see the preceding table).
wVersionIDFirmware version numberbcdDevice in USB Device DescriptorwVersionID I²C HID Descriptor (see the preceding table).
© 2017 Microsoft