/*++

Copyright (c) Microsoft Corporation. All rights reserved.

Module Name:

    HIDUSAGE.H

Abstract:

   Public Definitions of HID USAGES for HID Usage Tables 1.6

Environment:

    Kernel & user mode

--*/

#ifndef __HIDUSAGE_H__
#define __HIDUSAGE_H__

//
// Usage Pages
//

typedef USHORT USAGE, *PUSAGE;

typedef LONG USAGE_VALUE, *PUSAGE_VALUE;

#define HID_USAGE_PAGE_UNDEFINED                        ((USAGE) 0x0000)
#define HID_USAGE_PAGE_ARCADE                           ((USAGE) 0x0091)
#define HID_USAGE_PAGE_ALPHANUMERIC                     ((USAGE) 0x0014)
#define HID_USAGE_PAGE_BARCODE_SCANNER                  ((USAGE) 0x008C)
#define HID_USAGE_PAGE_BATTERY_SYSTEM                   ((USAGE) 0x0085)
#define HID_USAGE_PAGE_BRAILLE_DISPLAY                  ((USAGE) 0x0041)
#define HID_USAGE_PAGE_BUTTON                           ((USAGE) 0x0009)
#define HID_USAGE_PAGE_CAMERA_CONTROL                   ((USAGE) 0x0090)
#define HID_USAGE_PAGE_CONSUMER                         ((USAGE) 0x000C)
#define HID_USAGE_PAGE_DIGITIZER                        ((USAGE) 0x000D)
#define HID_USAGE_PAGE_EYE_AND_HEAD_TRACKERS            ((USAGE) 0x0012)
#define HID_USAGE_PAGE_FIDO_ALLIANCE                    ((USAGE) 0xF1D0)
#define HID_USAGE_PAGE_GAME                             ((USAGE) 0x0005)
#define HID_USAGE_PAGE_GAMING_DEVICE                    ((USAGE) 0x0092)
#define HID_USAGE_PAGE_GENERIC                          ((USAGE) 0x0001)
#define HID_USAGE_PAGE_GENERIC_DEVICE                   ((USAGE) 0x0006)
#define HID_USAGE_PAGE_HAPTICS                          ((USAGE) 0x000E)
#define HID_USAGE_PAGE_KEYBOARD                         ((USAGE) 0x0007)
#define HID_USAGE_PAGE_LED                              ((USAGE) 0x0008)
#define HID_USAGE_PAGE_LIGHTING_ILLUMINATION            ((USAGE) 0x0059)
#define HID_USAGE_PAGE_MAGNETIC_STRIPE_READER           ((USAGE) 0x008E)
#define HID_USAGE_PAGE_MEDICAL_INSTRUMENT               ((USAGE) 0x0040)
#define HID_USAGE_PAGE_MICROSOFT_BLUETOOTH_HANDSFREE    ((USAGE) 0xFFF3)
#define HID_USAGE_PAGE_MONITOR                          ((USAGE) 0x0080)
#define HID_USAGE_PAGE_MONITOR_ENUMERATED               ((USAGE) 0x0081)
#define HID_USAGE_PAGE_ORDINAL                          ((USAGE) 0x000A)
#define HID_USAGE_PAGE_PID                              ((USAGE) 0x000F)
#define HID_USAGE_PAGE_POWER                            ((USAGE) 0x0084)
#define HID_USAGE_PAGE_WEIGHING_DEVICE                  ((USAGE) 0x008D)
#define HID_USAGE_PAGE_SENSOR                           ((USAGE) 0x0020)
#define HID_USAGE_PAGE_SIMULATION                       ((USAGE) 0x0002)
#define HID_USAGE_PAGE_SOC                              ((USAGE) 0x0011)
#define HID_USAGE_PAGE_SPORT                            ((USAGE) 0x0004)
#define HID_USAGE_PAGE_TELEPHONY                        ((USAGE) 0x000B)
#define HID_USAGE_PAGE_UNICODE                          ((USAGE) 0x0010)
#define HID_USAGE_PAGE_VESA_VIRTUAL_CONTROLS            ((USAGE) 0x0082)
#define HID_USAGE_PAGE_VR                               ((USAGE) 0x0003)

#define HID_USAGE_PAGE_VENDOR_DEFINED_BEGIN             ((USAGE) 0xFF00)
#define HID_USAGE_PAGE_VENDOR_DEFINED_END               ((USAGE) 0xFFFF)

// UsageId of 0 is undefined for every UsagePage
#define HID_USAGE_UNDEFINED                             ((USAGE) 0x0000)

//
// Arcade Page (0x91)
//
#define HID_USAGE_ARCADE_GENERAL_PURPOSE_IO_CARD                 ((USAGE) 0x0001)
#define HID_USAGE_ARCADE_COIN_DOOR                               ((USAGE) 0x0002)
#define HID_USAGE_ARCADE_WATCHDOG_TIMER                          ((USAGE) 0x0003)
#define HID_USAGE_ARCADE_GENERAL_PURPOSE_ANALOG_INPUT_STATE      ((USAGE) 0x0030)
#define HID_USAGE_ARCADE_GENERAL_PURPOSE_DIGITAL_INPUT_STATE     ((USAGE) 0x0031)
#define HID_USAGE_ARCADE_GENERAL_PURPOSE_OPTICAL_INPUT_STATE     ((USAGE) 0x0032)
#define HID_USAGE_ARCADE_GENERAL_PURPOSE_DIGITAL_OUTPUT_STATE    ((USAGE) 0x0033)
#define HID_USAGE_ARCADE_NUMBER_OF_COIN_DOORS                    ((USAGE) 0x0034)
#define HID_USAGE_ARCADE_COIN_DRAWER_DROP_COUNT                  ((USAGE) 0x0035)
#define HID_USAGE_ARCADE_COIN_DRAWER_START                       ((USAGE) 0x0036)
#define HID_USAGE_ARCADE_COIN_DRAWER_SERVICE                     ((USAGE) 0x0037)
#define HID_USAGE_ARCADE_COIN_DRAWER_TILT                        ((USAGE) 0x0038)
#define HID_USAGE_ARCADE_COIN_DOOR_TEST                          ((USAGE) 0x0039)
#define HID_USAGE_ARCADE_COIN_DOOR_LOCKOUT                       ((USAGE) 0x0040)
#define HID_USAGE_ARCADE_WATCHDOG_TIMEOUT                        ((USAGE) 0x0041)
#define HID_USAGE_ARCADE_WATCHDOG_ACTION                         ((USAGE) 0x0042)
#define HID_USAGE_ARCADE_WATCHDOG_REBOOT                         ((USAGE) 0x0043)
#define HID_USAGE_ARCADE_WATCHDOG_RESTART                        ((USAGE) 0x0044)
#define HID_USAGE_ARCADE_ALARM_INPUT                             ((USAGE) 0x0045)
#define HID_USAGE_ARCADE_COIN_DOOR_COUNTER                       ((USAGE) 0x0046)
#define HID_USAGE_ARCADE_IO_DIRECTION_MAPPING                    ((USAGE) 0x0047)
#define HID_USAGE_ARCADE_SET_IO_DIRECTION_MAPPING                ((USAGE) 0x0048)
#define HID_USAGE_ARCADE_EXTENDED_OPTICAL_INPUT_STATE            ((USAGE) 0x0049)
#define HID_USAGE_ARCADE_PIN_PAD_INPUT_STATE                     ((USAGE) 0x004A)
#define HID_USAGE_ARCADE_PIN_PAD_STATUS                          ((USAGE) 0x004B)
#define HID_USAGE_ARCADE_PIN_PAD_OUTPUT                          ((USAGE) 0x004C)
#define HID_USAGE_ARCADE_PIN_PAD_COMMAND                         ((USAGE) 0x004D)

//
// Alphanumeric/Auxiliary Display Page (0x14)
//
#define HID_USAGE_ALPHANUMERIC_ALPHANUMERIC_DISPLAY            ((USAGE) 0x0001)
#define HID_USAGE_ALPHANUMERIC_BITMAPPED_DISPLAY               ((USAGE) 0x0002)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_ATTRIBUTES_REPORT       ((USAGE) 0x0020)
#define HID_USAGE_ALPHANUMERIC_ASCII_CHARACTER_SET             ((USAGE) 0x0021)
#define HID_USAGE_ALPHANUMERIC_DATA_READ_BACK                  ((USAGE) 0x0022)
#define HID_USAGE_ALPHANUMERIC_FONT_READ_BACK                  ((USAGE) 0x0023)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_CONTROL_REPORT          ((USAGE) 0x0024)
#define HID_USAGE_ALPHANUMERIC_CLEAR_DISPLAY                   ((USAGE) 0x0025)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_ENABLE                  ((USAGE) 0x0026)
#define HID_USAGE_ALPHANUMERIC_SCREEN_SAVER_DELAY              ((USAGE) 0x0027)
#define HID_USAGE_ALPHANUMERIC_SCREEN_SAVER_ENABLE             ((USAGE) 0x0028)
#define HID_USAGE_ALPHANUMERIC_VERTICAL_SCROLL                 ((USAGE) 0x0029)
#define HID_USAGE_ALPHANUMERIC_HORIZONTAL_SCROLL               ((USAGE) 0x002A)
#define HID_USAGE_ALPHANUMERIC_CHARACTER_REPORT                ((USAGE) 0x002B)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_DATA                    ((USAGE) 0x002C)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_STATUS                  ((USAGE) 0x002D)
#define HID_USAGE_ALPHANUMERIC_STATUS_NOT_READY                ((USAGE) 0x002E)
#define HID_USAGE_ALPHANUMERIC_STATUS_READY                    ((USAGE) 0x002F)
#define HID_USAGE_ALPHANUMERIC_ERR_NOT_A_LOADABLE_CHARACTER    ((USAGE) 0x0030)
#define HID_USAGE_ALPHANUMERIC_ERR_FONT_DATA_CANNOT_BE_READ    ((USAGE) 0x0031)
#define HID_USAGE_ALPHANUMERIC_CURSOR_POSITION_REPORT          ((USAGE) 0x0032)
#define HID_USAGE_ALPHANUMERIC_ROW                             ((USAGE) 0x0033)
#define HID_USAGE_ALPHANUMERIC_COLUMN                          ((USAGE) 0x0034)
#define HID_USAGE_ALPHANUMERIC_ROWS                            ((USAGE) 0x0035)
#define HID_USAGE_ALPHANUMERIC_COLUMNS                         ((USAGE) 0x0036)
#define HID_USAGE_ALPHANUMERIC_CURSOR_PIXEL_POSITIONING        ((USAGE) 0x0037)
#define HID_USAGE_ALPHANUMERIC_CURSOR_MODE                     ((USAGE) 0x0038)
#define HID_USAGE_ALPHANUMERIC_CURSOR_ENABLE                   ((USAGE) 0x0039)
#define HID_USAGE_ALPHANUMERIC_CURSOR_BLINK                    ((USAGE) 0x003A)
#define HID_USAGE_ALPHANUMERIC_FONT_REPORT                     ((USAGE) 0x003B)
#define HID_USAGE_ALPHANUMERIC_FONT_DATA                       ((USAGE) 0x003C)
#define HID_USAGE_ALPHANUMERIC_CHAR_WIDTH                      ((USAGE) 0x003D)
#define HID_USAGE_ALPHANUMERIC_CHAR_HEIGHT                     ((USAGE) 0x003E)
#define HID_USAGE_ALPHANUMERIC_CHAR_SPACING_HORIZONTAL         ((USAGE) 0x003F)
#define HID_USAGE_ALPHANUMERIC_CHAR_SPACING_VERTICAL           ((USAGE) 0x0040)
#define HID_USAGE_ALPHANUMERIC_UNICODE_CHAR_SET                ((USAGE) 0x0041)
#define HID_USAGE_ALPHANUMERIC_FONT_7_SEGMENT                  ((USAGE) 0x0042)
#define HID_USAGE_ALPHANUMERIC_7_SEGMENT_DIRECT_MAP            ((USAGE) 0x0043)
#define HID_USAGE_ALPHANUMERIC_FONT_14_SEGMENT                 ((USAGE) 0x0044)
#define HID_USAGE_ALPHANUMERIC_14_SEGMENT_DIRECT_MAP           ((USAGE) 0x0045)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_BRIGHTNESS              ((USAGE) 0x0046)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_CONTRAST                ((USAGE) 0x0047)
#define HID_USAGE_ALPHANUMERIC_CHARACTER_ATTRIBUTE             ((USAGE) 0x0048)
#define HID_USAGE_ALPHANUMERIC_ATTRIBUTE_READBACK              ((USAGE) 0x0049)
#define HID_USAGE_ALPHANUMERIC_ATTRIBUTE_DATA                  ((USAGE) 0x004A)
#define HID_USAGE_ALPHANUMERIC_CHAR_ATTR_ENHANCE               ((USAGE) 0x004B)
#define HID_USAGE_ALPHANUMERIC_CHAR_ATTR_UNDERLINE             ((USAGE) 0x004C)
#define HID_USAGE_ALPHANUMERIC_CHAR_ATTR_BLINK                 ((USAGE) 0x004D)
#define HID_USAGE_ALPHANUMERIC_BITMAP_SIZE_X                   ((USAGE) 0x0080)
#define HID_USAGE_ALPHANUMERIC_BITMAP_SIZE_Y                   ((USAGE) 0x0081)
#define HID_USAGE_ALPHANUMERIC_MAX_BLIT_SIZE                   ((USAGE) 0x0082)
#define HID_USAGE_ALPHANUMERIC_BIT_DEPTH_FORMAT                ((USAGE) 0x0083)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_ORIENTATION             ((USAGE) 0x0084)
#define HID_USAGE_ALPHANUMERIC_PALETTE_REPORT                  ((USAGE) 0x0085)
#define HID_USAGE_ALPHANUMERIC_PALETTE_DATA_SIZE               ((USAGE) 0x0086)
#define HID_USAGE_ALPHANUMERIC_PALETTE_DATA_OFFSET             ((USAGE) 0x0087)
#define HID_USAGE_ALPHANUMERIC_PALETTE_DATA                    ((USAGE) 0x0088)
#define HID_USAGE_ALPHANUMERIC_BLIT_REPORT                     ((USAGE) 0x008A)
#define HID_USAGE_ALPHANUMERIC_BLIT_RECTANGLE_X1               ((USAGE) 0x008B)
#define HID_USAGE_ALPHANUMERIC_BLIT_RECTANGLE_Y1               ((USAGE) 0x008C)
#define HID_USAGE_ALPHANUMERIC_BLIT_RECTANGLE_X2               ((USAGE) 0x008D)
#define HID_USAGE_ALPHANUMERIC_BLIT_RECTANGLE_Y2               ((USAGE) 0x008E)
#define HID_USAGE_ALPHANUMERIC_BLIT_DATA                       ((USAGE) 0x008F)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON                     ((USAGE) 0x0090)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON_ID                  ((USAGE) 0x0091)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON_SIDE                ((USAGE) 0x0092)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON_OFFSET1             ((USAGE) 0x0093)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON_OFFSET2             ((USAGE) 0x0094)
#define HID_USAGE_ALPHANUMERIC_SOFT_BUTTON_REPORT              ((USAGE) 0x0095)
#define HID_USAGE_ALPHANUMERIC_SOFT_KEYS                       ((USAGE) 0x00C2)
#define HID_USAGE_ALPHANUMERIC_DISPLAY_DATA_EXTENSIONS         ((USAGE) 0x00CC)
#define HID_USAGE_ALPHANUMERIC_CHARACTER_MAPPING               ((USAGE) 0x00CF)
#define HID_USAGE_ALPHANUMERIC_UNICODE_EQUIVALENT              ((USAGE) 0x00DD)
#define HID_USAGE_ALPHANUMERIC_CHARACTER_PAGE_MAPPING          ((USAGE) 0x00DF)
#define HID_USAGE_ALPHANUMERIC_REQUEST_REPORT                  ((USAGE) 0x00FF)

//
// Barcode Scanner Page (0x8C)
//
#define HID_USAGE_BARCODE_SCANNER_BARCODE_BADGE_READER                            ((USAGE) 0x0001)
#define HID_USAGE_BARCODE_SCANNER_BARCODE_SCANNER                                 ((USAGE) 0x0002)
#define HID_USAGE_BARCODE_SCANNER_DUMB_BAR_CODE_SCANNER                           ((USAGE) 0x0003)
#define HID_USAGE_BARCODE_SCANNER_CORDLESS_SCANNER_BASE                           ((USAGE) 0x0004)
#define HID_USAGE_BARCODE_SCANNER_BAR_CODE_SCANNER_CRADLE                         ((USAGE) 0x0005)
#define HID_USAGE_BARCODE_SCANNER_ATTRIBUTE_REPORT                                ((USAGE) 0x0010)
#define HID_USAGE_BARCODE_SCANNER_SETTINGS_REPORT                                 ((USAGE) 0x0011)
#define HID_USAGE_BARCODE_SCANNER_SCANNED_DATA_REPORT                             ((USAGE) 0x0012)
#define HID_USAGE_BARCODE_SCANNER_RAW_SCANNED_DATA_REPORT                         ((USAGE) 0x0013)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_REPORT                                  ((USAGE) 0x0014)
#define HID_USAGE_BARCODE_SCANNER_STATUS_REPORT                                   ((USAGE) 0x0015)
#define HID_USAGE_BARCODE_SCANNER_UPCEAN_CONTROL_REPORT                           ((USAGE) 0x0016)
#define HID_USAGE_BARCODE_SCANNER_EAN_23_LABEL_CONTROL_REPORT                     ((USAGE) 0x0017)
#define HID_USAGE_BARCODE_SCANNER_CODE_39_CONTROL_REPORT                          ((USAGE) 0x0018)
#define HID_USAGE_BARCODE_SCANNER_INTERLEAVED_2_OF_5_CONTROL_REPORT               ((USAGE) 0x0019)
#define HID_USAGE_BARCODE_SCANNER_STANDARD_2_OF_5_CONTROL_REPORT                  ((USAGE) 0x001A)
#define HID_USAGE_BARCODE_SCANNER_MSI_PLESSEY_CONTROL_REPORT                      ((USAGE) 0x001B)
#define HID_USAGE_BARCODE_SCANNER_CODABAR_CONTROL_REPORT                          ((USAGE) 0x001C)
#define HID_USAGE_BARCODE_SCANNER_CODE_128_CONTROL_REPORT                         ((USAGE) 0x001D)
#define HID_USAGE_BARCODE_SCANNER_MISC_1D_CONTROL_REPORT                          ((USAGE) 0x001E)
#define HID_USAGE_BARCODE_SCANNER_2D_CONTROL_REPORT                               ((USAGE) 0x001F)
#define HID_USAGE_BARCODE_SCANNER_AIMINGPOINTER_MODE                              ((USAGE) 0x0030)
#define HID_USAGE_BARCODE_SCANNER_BAR_CODE_PRESENT_SENSOR                         ((USAGE) 0x0031)
#define HID_USAGE_BARCODE_SCANNER_CLASS_1A_LASER                                  ((USAGE) 0x0032)
#define HID_USAGE_BARCODE_SCANNER_CLASS_2_LASER                                   ((USAGE) 0x0033)
#define HID_USAGE_BARCODE_SCANNER_HEATER_PRESENT                                  ((USAGE) 0x0034)
#define HID_USAGE_BARCODE_SCANNER_CONTACT_SCANNER                                 ((USAGE) 0x0035)
#define HID_USAGE_BARCODE_SCANNER_ELECTRONIC_ARTICLE_SURVEILLANCE_NOTIFICATION    ((USAGE) 0x0036)
#define HID_USAGE_BARCODE_SCANNER_CONSTANT_ELECTRONIC_ARTICLE_SURVEILLANCE        ((USAGE) 0x0037)
#define HID_USAGE_BARCODE_SCANNER_ERROR_INDICATION                                ((USAGE) 0x0038)
#define HID_USAGE_BARCODE_SCANNER_FIXED_BEEPER                                    ((USAGE) 0x0039)
#define HID_USAGE_BARCODE_SCANNER_GOOD_DECODE_INDICATION                          ((USAGE) 0x003A)
#define HID_USAGE_BARCODE_SCANNER_HANDS_FREE_SCANNING                             ((USAGE) 0x003B)
#define HID_USAGE_BARCODE_SCANNER_INTRINSICALLY_SAFE                              ((USAGE) 0x003C)
#define HID_USAGE_BARCODE_SCANNER_KLASSE_EINS_LASER                               ((USAGE) 0x003D)
#define HID_USAGE_BARCODE_SCANNER_LONG_RANGE_SCANNER                              ((USAGE) 0x003E)
#define HID_USAGE_BARCODE_SCANNER_MIRROR_SPEED_CONTROL                            ((USAGE) 0x003F)
#define HID_USAGE_BARCODE_SCANNER_NOT_ON_FILE_INDICATION                          ((USAGE) 0x0040)
#define HID_USAGE_BARCODE_SCANNER_PROGRAMMABLE_BEEPER                             ((USAGE) 0x0041)
#define HID_USAGE_BARCODE_SCANNER_TRIGGERLESS                                     ((USAGE) 0x0042)
#define HID_USAGE_BARCODE_SCANNER_WAND                                            ((USAGE) 0x0043)
#define HID_USAGE_BARCODE_SCANNER_WATER_RESISTANT                                 ((USAGE) 0x0044)
#define HID_USAGE_BARCODE_SCANNER_MULTIRANGE_SCANNER                              ((USAGE) 0x0045)
#define HID_USAGE_BARCODE_SCANNER_PROXIMITY_SENSOR                                ((USAGE) 0x0046)
#define HID_USAGE_BARCODE_SCANNER_FRAGMENT_DECODING                               ((USAGE) 0x004D)
#define HID_USAGE_BARCODE_SCANNER_SCANNER_READ_CONFIDENCE                         ((USAGE) 0x004E)
#define HID_USAGE_BARCODE_SCANNER_DATA_PREFIX                                     ((USAGE) 0x004F)
#define HID_USAGE_BARCODE_SCANNER_PREFIX_AIMI                                     ((USAGE) 0x0050)
#define HID_USAGE_BARCODE_SCANNER_PREFIX_NONE                                     ((USAGE) 0x0051)
#define HID_USAGE_BARCODE_SCANNER_PREFIX_PROPRIETARY                              ((USAGE) 0x0052)
#define HID_USAGE_BARCODE_SCANNER_ACTIVE_TIME                                     ((USAGE) 0x0055)
#define HID_USAGE_BARCODE_SCANNER_AIMING_LASER_PATTERN                            ((USAGE) 0x0056)
#define HID_USAGE_BARCODE_SCANNER_BAR_CODE_PRESENT                                ((USAGE) 0x0057)
#define HID_USAGE_BARCODE_SCANNER_BEEPER_STATE                                    ((USAGE) 0x0058)
#define HID_USAGE_BARCODE_SCANNER_LASER_ON_TIME                                   ((USAGE) 0x0059)
#define HID_USAGE_BARCODE_SCANNER_LASER_STATE                                     ((USAGE) 0x005A)
#define HID_USAGE_BARCODE_SCANNER_LOCKOUT_TIME                                    ((USAGE) 0x005B)
#define HID_USAGE_BARCODE_SCANNER_MOTOR_STATE                                     ((USAGE) 0x005C)
#define HID_USAGE_BARCODE_SCANNER_MOTOR_TIMEOUT                                   ((USAGE) 0x005D)
#define HID_USAGE_BARCODE_SCANNER_POWER_ON_RESET_SCANNER                          ((USAGE) 0x005E)
#define HID_USAGE_BARCODE_SCANNER_PREVENT_READ_OF_BARCODES                        ((USAGE) 0x005F)
#define HID_USAGE_BARCODE_SCANNER_INITIATE_BARCODE_READ                           ((USAGE) 0x0060)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_STATE                                   ((USAGE) 0x0061)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_MODE                                    ((USAGE) 0x0062)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_MODE_BLINKING_LASER_ON                  ((USAGE) 0x0063)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_MODE_CONTINUOUS_LASER_ON                ((USAGE) 0x0064)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_MODE_LASER_ON_WHILE_PULLED              ((USAGE) 0x0065)
#define HID_USAGE_BARCODE_SCANNER_TRIGGER_MODE_LASER_STAYS_ON_AFTER_RELEASE       ((USAGE) 0x0066)
#define HID_USAGE_BARCODE_SCANNER_COMMIT_PARAMETERS_TO_NVM                        ((USAGE) 0x006D)
#define HID_USAGE_BARCODE_SCANNER_PARAMETER_SCANNING                              ((USAGE) 0x006E)
#define HID_USAGE_BARCODE_SCANNER_PARAMETERS_CHANGED                              ((USAGE) 0x006F)
#define HID_USAGE_BARCODE_SCANNER_SET_PARAMETER_DEFAULT_VALUES                    ((USAGE) 0x0070)
#define HID_USAGE_BARCODE_SCANNER_SCANNER_IN_CRADLE                               ((USAGE) 0x0075)
#define HID_USAGE_BARCODE_SCANNER_SCANNER_IN_RANGE                                ((USAGE) 0x0076)
#define HID_USAGE_BARCODE_SCANNER_AIM_DURATION                                    ((USAGE) 0x007A)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_LAMP_DURATION                         ((USAGE) 0x007B)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_LAMP_INTENSITY                        ((USAGE) 0x007C)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_LED                                   ((USAGE) 0x007D)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_TONE_FREQUENCY                        ((USAGE) 0x007E)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_TONE_LENGTH                           ((USAGE) 0x007F)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_TONE_VOLUME                           ((USAGE) 0x0080)
#define HID_USAGE_BARCODE_SCANNER_NO_READ_MESSAGE                                 ((USAGE) 0x0082)
#define HID_USAGE_BARCODE_SCANNER_NOT_ON_FILE_VOLUME                              ((USAGE) 0x0083)
#define HID_USAGE_BARCODE_SCANNER_POWERUP_BEEP                                    ((USAGE) 0x0084)
#define HID_USAGE_BARCODE_SCANNER_SOUND_ERROR_BEEP                                ((USAGE) 0x0085)
#define HID_USAGE_BARCODE_SCANNER_SOUND_GOOD_READ_BEEP                            ((USAGE) 0x0086)
#define HID_USAGE_BARCODE_SCANNER_SOUND_NOT_ON_FILE_BEEP                          ((USAGE) 0x0087)
#define HID_USAGE_BARCODE_SCANNER_GOOD_READ_WHEN_TO_WRITE                         ((USAGE) 0x0088)
#define HID_USAGE_BARCODE_SCANNER_GRWTI_AFTER_DECODE                              ((USAGE) 0x0089)
#define HID_USAGE_BARCODE_SCANNER_GRWTI_BEEPLAMP_AFTER_TRANSMIT                   ((USAGE) 0x008A)
#define HID_USAGE_BARCODE_SCANNER_GRWTI_NO_BEEPLAMP_USE_AT_ALL                    ((USAGE) 0x008B)
#define HID_USAGE_BARCODE_SCANNER_BOOKLAND_EAN                                    ((USAGE) 0x0091)
#define HID_USAGE_BARCODE_SCANNER_CONVERT_EAN_8_TO_13_TYPE                        ((USAGE) 0x0092)
#define HID_USAGE_BARCODE_SCANNER_CONVERT_UPC_A_TO_EAN13                          ((USAGE) 0x0093)
#define HID_USAGE_BARCODE_SCANNER_CONVERT_UPCE_TO_A                               ((USAGE) 0x0094)
#define HID_USAGE_BARCODE_SCANNER_EAN13                                           ((USAGE) 0x0095)
#define HID_USAGE_BARCODE_SCANNER_EAN8                                            ((USAGE) 0x0096)
#define HID_USAGE_BARCODE_SCANNER_EAN99_128_MANDATORY                             ((USAGE) 0x0097)
#define HID_USAGE_BARCODE_SCANNER_EAN99_P5128_OPTIONAL                            ((USAGE) 0x0098)
#define HID_USAGE_BARCODE_SCANNER_ENABLE_EAN_TWO_LABEL                            ((USAGE) 0x0099)
#define HID_USAGE_BARCODE_SCANNER_UPCEAN                                          ((USAGE) 0x009A)
#define HID_USAGE_BARCODE_SCANNER_UPCEAN_COUPON_CODE                              ((USAGE) 0x009B)
#define HID_USAGE_BARCODE_SCANNER_UPCEAN_PERIODICALS                              ((USAGE) 0x009C)
#define HID_USAGE_BARCODE_SCANNER_UPCA                                            ((USAGE) 0x009D)
#define HID_USAGE_BARCODE_SCANNER_UPCA_WITH_128_MANDATORY                         ((USAGE) 0x009E)
#define HID_USAGE_BARCODE_SCANNER_UPCA_WITH_128_OPTIONAL                          ((USAGE) 0x009F)
#define HID_USAGE_BARCODE_SCANNER_UPCA_WITH_P5_OPTIONAL                           ((USAGE) 0x00A0)
#define HID_USAGE_BARCODE_SCANNER_UPCE                                            ((USAGE) 0x00A1)
#define HID_USAGE_BARCODE_SCANNER_UPCE1                                           ((USAGE) 0x00A2)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL                                      ((USAGE) 0x00A9)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_AUTODISCRIMINATE_2                   ((USAGE) 0x00AA)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_ONLY_DECODE_WITH_2                   ((USAGE) 0x00AB)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_IGNORE_2                             ((USAGE) 0x00AC)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_AUTODISCRIMINATE_5                   ((USAGE) 0x00AD)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_ONLY_DECODE_WITH_5                   ((USAGE) 0x00AE)
#define HID_USAGE_BARCODE_SCANNER_PERIODICAL_IGNORE_5                             ((USAGE) 0x00AF)
#define HID_USAGE_BARCODE_SCANNER_CHECK                                           ((USAGE) 0x00B0)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DISABLE_PRICE                             ((USAGE) 0x00B1)
#define HID_USAGE_BARCODE_SCANNER_CHECK_ENABLE_4_DIGIT_PRICE                      ((USAGE) 0x00B2)
#define HID_USAGE_BARCODE_SCANNER_CHECK_ENABLE_5_DIGIT_PRICE                      ((USAGE) 0x00B3)
#define HID_USAGE_BARCODE_SCANNER_CHECK_ENABLE_EUROPEAN_4_DIGIT_PRICE             ((USAGE) 0x00B4)
#define HID_USAGE_BARCODE_SCANNER_CHECK_ENABLE_EUROPEAN_5_DIGIT_PRICE             ((USAGE) 0x00B5)
#define HID_USAGE_BARCODE_SCANNER_EAN_TWO_LABEL                                   ((USAGE) 0x00B7)
#define HID_USAGE_BARCODE_SCANNER_EAN_THREE_LABEL                                 ((USAGE) 0x00B8)
#define HID_USAGE_BARCODE_SCANNER_EAN_8_FLAG_DIGIT_1                              ((USAGE) 0x00B9)
#define HID_USAGE_BARCODE_SCANNER_EAN_8_FLAG_DIGIT_2                              ((USAGE) 0x00BA)
#define HID_USAGE_BARCODE_SCANNER_EAN_8_FLAG_DIGIT_3                              ((USAGE) 0x00BB)
#define HID_USAGE_BARCODE_SCANNER_EAN_13_FLAG_DIGIT_1                             ((USAGE) 0x00BC)
#define HID_USAGE_BARCODE_SCANNER_EAN_13_FLAG_DIGIT_2                             ((USAGE) 0x00BD)
#define HID_USAGE_BARCODE_SCANNER_EAN_13_FLAG_DIGIT_3                             ((USAGE) 0x00BE)
#define HID_USAGE_BARCODE_SCANNER_ADD_EAN_23_LABEL_DEFINITION                     ((USAGE) 0x00BF)
#define HID_USAGE_BARCODE_SCANNER_CLEAR_ALL_EAN_23_LABEL_DEFINITIONS              ((USAGE) 0x00C0)
#define HID_USAGE_BARCODE_SCANNER_CODABAR                                         ((USAGE) 0x00C3)
#define HID_USAGE_BARCODE_SCANNER_CODE_128                                        ((USAGE) 0x00C4)
#define HID_USAGE_BARCODE_SCANNER_CODE_39                                         ((USAGE) 0x00C7)
#define HID_USAGE_BARCODE_SCANNER_CODE_93                                         ((USAGE) 0x00C8)
#define HID_USAGE_BARCODE_SCANNER_FULL_ASCII_CONVERSION                           ((USAGE) 0x00C9)
#define HID_USAGE_BARCODE_SCANNER_INTERLEAVED_2_OF_5                              ((USAGE) 0x00CA)
#define HID_USAGE_BARCODE_SCANNER_ITALIAN_PHARMACY_CODE                           ((USAGE) 0x00CB)
#define HID_USAGE_BARCODE_SCANNER_MSIPLESSEY                                      ((USAGE) 0x00CC)
#define HID_USAGE_BARCODE_SCANNER_STANDARD_2_OF_5_IATA                            ((USAGE) 0x00CD)
#define HID_USAGE_BARCODE_SCANNER_STANDARD_2_OF_5                                 ((USAGE) 0x00CE)
#define HID_USAGE_BARCODE_SCANNER_TRANSMIT_STARTSTOP                              ((USAGE) 0x00D3)
#define HID_USAGE_BARCODE_SCANNER_TRIOPTIC                                        ((USAGE) 0x00D4)
#define HID_USAGE_BARCODE_SCANNER_UCCEAN128                                       ((USAGE) 0x00D5)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT                                     ((USAGE) 0x00D6)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_DISABLE                             ((USAGE) 0x00D7)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_OPCC      ((USAGE) 0x00D8)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_USS       ((USAGE) 0x00D9)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_OPCC         ((USAGE) 0x00DA)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_USS          ((USAGE) 0x00DB)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_ONE_MSI_PLESSEY              ((USAGE) 0x00DC)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_ENABLE_TWO_MSI_PLESSEY              ((USAGE) 0x00DD)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_CODABAR_ENABLE                      ((USAGE) 0x00DE)
#define HID_USAGE_BARCODE_SCANNER_CHECK_DIGIT_CODE_39_ENABLE                      ((USAGE) 0x00DF)
#define HID_USAGE_BARCODE_SCANNER_TRANSMIT_CHECK_DIGIT                            ((USAGE) 0x00F0)
#define HID_USAGE_BARCODE_SCANNER_DISABLE_CHECK_DIGIT_TRANSMIT                    ((USAGE) 0x00F1)
#define HID_USAGE_BARCODE_SCANNER_ENABLE_CHECK_DIGIT_TRANSMIT                     ((USAGE) 0x00F2)
#define HID_USAGE_BARCODE_SCANNER_SYMBOLOGY_IDENTIFIER_1                          ((USAGE) 0x00FB)
#define HID_USAGE_BARCODE_SCANNER_SYMBOLOGY_IDENTIFIER_2                          ((USAGE) 0x00FC)
#define HID_USAGE_BARCODE_SCANNER_SYMBOLOGY_IDENTIFIER_3                          ((USAGE) 0x00FD)
#define HID_USAGE_BARCODE_SCANNER_DECODED_DATA                                    ((USAGE) 0x00FE)
#define HID_USAGE_BARCODE_SCANNER_DECODE_DATA_CONTINUED                           ((USAGE) 0x00FF)
#define HID_USAGE_BARCODE_SCANNER_BAR_SPACE_DATA                                  ((USAGE) 0x0100)
#define HID_USAGE_BARCODE_SCANNER_SCANNER_DATA_ACCURACY                           ((USAGE) 0x0101)
#define HID_USAGE_BARCODE_SCANNER_RAW_DATA_POLARITY                               ((USAGE) 0x0102)
#define HID_USAGE_BARCODE_SCANNER_POLARITY_INVERTED_BAR_CODE                      ((USAGE) 0x0103)
#define HID_USAGE_BARCODE_SCANNER_POLARITY_NORMAL_BAR_CODE                        ((USAGE) 0x0104)
#define HID_USAGE_BARCODE_SCANNER_MINIMUM_LENGTH_TO_DECODE                        ((USAGE) 0x0106)
#define HID_USAGE_BARCODE_SCANNER_MAXIMUM_LENGTH_TO_DECODE                        ((USAGE) 0x0107)
#define HID_USAGE_BARCODE_SCANNER_DISCRETE_LENGTH_TO_DECODE_1                     ((USAGE) 0x0108)
#define HID_USAGE_BARCODE_SCANNER_DISCRETE_LENGTH_TO_DECODE_2                     ((USAGE) 0x0109)
#define HID_USAGE_BARCODE_SCANNER_DATA_LENGTH_METHOD                              ((USAGE) 0x010A)
#define HID_USAGE_BARCODE_SCANNER_DL_METHOD_READ_ANY                              ((USAGE) 0x010B)
#define HID_USAGE_BARCODE_SCANNER_DL_METHOD_CHECK_IN_RANGE                        ((USAGE) 0x010C)
#define HID_USAGE_BARCODE_SCANNER_DL_METHOD_CHECK_FOR_DISCRETE                    ((USAGE) 0x010D)
#define HID_USAGE_BARCODE_SCANNER_AZTEC_CODE                                      ((USAGE) 0x0110)
#define HID_USAGE_BARCODE_SCANNER_BC412                                           ((USAGE) 0x0111)
#define HID_USAGE_BARCODE_SCANNER_CHANNEL_CODE                                    ((USAGE) 0x0112)
#define HID_USAGE_BARCODE_SCANNER_CODE_16                                         ((USAGE) 0x0113)
#define HID_USAGE_BARCODE_SCANNER_CODE_32                                         ((USAGE) 0x0114)
#define HID_USAGE_BARCODE_SCANNER_CODE_49                                         ((USAGE) 0x0115)
#define HID_USAGE_BARCODE_SCANNER_CODE_ONE                                        ((USAGE) 0x0116)
#define HID_USAGE_BARCODE_SCANNER_COLORCODE                                       ((USAGE) 0x0117)
#define HID_USAGE_BARCODE_SCANNER_DATA_MATRIX                                     ((USAGE) 0x0118)
#define HID_USAGE_BARCODE_SCANNER_MAXICODE                                        ((USAGE) 0x0119)
#define HID_USAGE_BARCODE_SCANNER_MICROPDF                                        ((USAGE) 0x011A)
#define HID_USAGE_BARCODE_SCANNER_PDF417                                          ((USAGE) 0x011B)
#define HID_USAGE_BARCODE_SCANNER_POSICODE                                        ((USAGE) 0x011C)
#define HID_USAGE_BARCODE_SCANNER_QR_CODE                                         ((USAGE) 0x011D)
#define HID_USAGE_BARCODE_SCANNER_SUPERCODE                                       ((USAGE) 0x011E)
#define HID_USAGE_BARCODE_SCANNER_ULTRACODE                                       ((USAGE) 0x011F)
#define HID_USAGE_BARCODE_SCANNER_USD5_SLUG_CODE                                  ((USAGE) 0x0120)
#define HID_USAGE_BARCODE_SCANNER_VERICODE                                        ((USAGE) 0x0121)

//
// Battery System Page (0x85)
//
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_BATTERY_MODE         ((USAGE) 0x0001)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_BATTERY_STATUS       ((USAGE) 0x0002)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_ALARM_WARNING        ((USAGE) 0x0003)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_CHARGER_MODE         ((USAGE) 0x0004)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_CHARGER_STATUS       ((USAGE) 0x0005)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_CHARGER_SPEC_INFO    ((USAGE) 0x0006)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_SELECTOR_STATE       ((USAGE) 0x0007)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_SELECTOR_PRESETS     ((USAGE) 0x0008)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_SELECTOR_INFO        ((USAGE) 0x0009)
#define HID_USAGE_BATTERY_SYSTEM_OPTIONAL_MFG_FUNCTION_1            ((USAGE) 0x0010)
#define HID_USAGE_BATTERY_SYSTEM_OPTIONAL_MFG_FUNCTION_2            ((USAGE) 0x0011)
#define HID_USAGE_BATTERY_SYSTEM_OPTIONAL_MFG_FUNCTION_3            ((USAGE) 0x0012)
#define HID_USAGE_BATTERY_SYSTEM_OPTIONAL_MFG_FUNCTION_4            ((USAGE) 0x0013)
#define HID_USAGE_BATTERY_SYSTEM_OPTIONAL_MFG_FUNCTION_5            ((USAGE) 0x0014)
#define HID_USAGE_BATTERY_SYSTEM_CONNECTION_TO_SM_BUS               ((USAGE) 0x0015)
#define HID_USAGE_BATTERY_SYSTEM_OUTPUT_CONNECTION                  ((USAGE) 0x0016)
#define HID_USAGE_BATTERY_SYSTEM_CHARGER_CONNECTION                 ((USAGE) 0x0017)
#define HID_USAGE_BATTERY_SYSTEM_BATTERY_INSERTION                  ((USAGE) 0x0018)
#define HID_USAGE_BATTERY_SYSTEM_USE_NEXT                           ((USAGE) 0x0019)
#define HID_USAGE_BATTERY_SYSTEM_OK_TO_USE                          ((USAGE) 0x001A)
#define HID_USAGE_BATTERY_SYSTEM_BATTERY_SUPPORTED                  ((USAGE) 0x001B)
#define HID_USAGE_BATTERY_SYSTEM_SELECTOR_REVISION                  ((USAGE) 0x001C)
#define HID_USAGE_BATTERY_SYSTEM_CHARGING_INDICATOR                 ((USAGE) 0x001D)
#define HID_USAGE_BATTERY_SYSTEM_MANUFACTURER_ACCESS                ((USAGE) 0x0028)
#define HID_USAGE_BATTERY_SYSTEM_REMAINING_CAPACITY_LIMIT           ((USAGE) 0x0029)
#define HID_USAGE_BATTERY_SYSTEM_REMAINING_TIME_LIMIT               ((USAGE) 0x002A)
#define HID_USAGE_BATTERY_SYSTEM_AT_RATE                            ((USAGE) 0x002B)
#define HID_USAGE_BATTERY_SYSTEM_CAPACITY_MODE                      ((USAGE) 0x002C)
#define HID_USAGE_BATTERY_SYSTEM_BROADCAST_TO_CHARGER               ((USAGE) 0x002D)
#define HID_USAGE_BATTERY_SYSTEM_PRIMARY_BATTERY                    ((USAGE) 0x002E)
#define HID_USAGE_BATTERY_SYSTEM_CHARGE_CONTROLLER                  ((USAGE) 0x002F)
#define HID_USAGE_BATTERY_SYSTEM_TERMINATE_CHARGE                   ((USAGE) 0x0040)
#define HID_USAGE_BATTERY_SYSTEM_TERMINATE_DISCHARGE                ((USAGE) 0x0041)
#define HID_USAGE_BATTERY_SYSTEM_BELOW_REMAINING_CAPACITY_LIMIT     ((USAGE) 0x0042)
#define HID_USAGE_BATTERY_SYSTEM_REMAINING_TIME_LIMIT_EXPIRED       ((USAGE) 0x0043)
#define HID_USAGE_BATTERY_SYSTEM_CHARGING                           ((USAGE) 0x0044)
#define HID_USAGE_BATTERY_SYSTEM_DISCHARGING                        ((USAGE) 0x0045)
#define HID_USAGE_BATTERY_SYSTEM_FULLY_CHARGED                      ((USAGE) 0x0046)
#define HID_USAGE_BATTERY_SYSTEM_FULLY_DISCHARGED                   ((USAGE) 0x0047)
#define HID_USAGE_BATTERY_SYSTEM_CONDITIONING_FLAG                  ((USAGE) 0x0048)
#define HID_USAGE_BATTERY_SYSTEM_AT_RATE_OK                         ((USAGE) 0x0049)
#define HID_USAGE_BATTERY_SYSTEM_SMART_BATTERY_ERROR_CODE           ((USAGE) 0x004A)
#define HID_USAGE_BATTERY_SYSTEM_NEED_REPLACEMENT                   ((USAGE) 0x004B)
#define HID_USAGE_BATTERY_SYSTEM_AT_RATE_TIME_TO_FULL               ((USAGE) 0x0060)
#define HID_USAGE_BATTERY_SYSTEM_AT_RATE_TIME_TO_EMPTY              ((USAGE) 0x0061)
#define HID_USAGE_BATTERY_SYSTEM_AVERAGE_CURRENT                    ((USAGE) 0x0062)
#define HID_USAGE_BATTERY_SYSTEM_MAX_ERROR                          ((USAGE) 0x0063)
#define HID_USAGE_BATTERY_SYSTEM_RELATIVE_STATE_OF_CHARGE           ((USAGE) 0x0064)
#define HID_USAGE_BATTERY_SYSTEM_ABSOLUTE_STATE_OF_CHARGE           ((USAGE) 0x0065)
#define HID_USAGE_BATTERY_SYSTEM_REMAINING_CAPACITY                 ((USAGE) 0x0066)
#define HID_USAGE_BATTERY_SYSTEM_FULL_CHARGE_CAPACITY               ((USAGE) 0x0067)
#define HID_USAGE_BATTERY_SYSTEM_RUN_TIME_TO_EMPTY                  ((USAGE) 0x0068)
#define HID_USAGE_BATTERY_SYSTEM_AVERAGE_TIME_TO_EMPTY              ((USAGE) 0x0069)
#define HID_USAGE_BATTERY_SYSTEM_AVERAGE_TIME_TO_FULL               ((USAGE) 0x006A)
#define HID_USAGE_BATTERY_SYSTEM_CYCLE_COUNT                        ((USAGE) 0x006B)
#define HID_USAGE_BATTERY_SYSTEM_BATTERY_PACK_MODEL_LEVEL           ((USAGE) 0x0080)
#define HID_USAGE_BATTERY_SYSTEM_INTERNAL_CHARGE_CONTROLLER         ((USAGE) 0x0081)
#define HID_USAGE_BATTERY_SYSTEM_PRIMARY_BATTERY_SUPPORT            ((USAGE) 0x0082)
#define HID_USAGE_BATTERY_SYSTEM_DESIGN_CAPACITY                    ((USAGE) 0x0083)
#define HID_USAGE_BATTERY_SYSTEM_SPECIFICATION_INFO                 ((USAGE) 0x0084)
#define HID_USAGE_BATTERY_SYSTEM_MANUFACTURE_DATE                   ((USAGE) 0x0085)
#define HID_USAGE_BATTERY_SYSTEM_SERIAL_NUMBER                      ((USAGE) 0x0086)
#define HID_USAGE_BATTERY_SYSTEM_IMANUFACTURER_NAME                 ((USAGE) 0x0087)
#define HID_USAGE_BATTERY_SYSTEM_IDEVICE_NAME                       ((USAGE) 0x0088)
#define HID_USAGE_BATTERY_SYSTEM_IDEVICE_CHEMISTRY                  ((USAGE) 0x0089)
#define HID_USAGE_BATTERY_SYSTEM_MANUFACTURER_DATA                  ((USAGE) 0x008A)
#define HID_USAGE_BATTERY_SYSTEM_RECHARGABLE                        ((USAGE) 0x008B)
#define HID_USAGE_BATTERY_SYSTEM_WARNING_CAPACITY_LIMIT             ((USAGE) 0x008C)
#define HID_USAGE_BATTERY_SYSTEM_CAPACITY_GRANULARITY_1             ((USAGE) 0x008D)
#define HID_USAGE_BATTERY_SYSTEM_CAPACITY_GRANULARITY_2             ((USAGE) 0x008E)
#define HID_USAGE_BATTERY_SYSTEM_IOEM_INFORMATION                   ((USAGE) 0x008F)
#define HID_USAGE_BATTERY_SYSTEM_INHIBIT_CHARGE                     ((USAGE) 0x00C0)
#define HID_USAGE_BATTERY_SYSTEM_ENABLE_POLLING                     ((USAGE) 0x00C1)
#define HID_USAGE_BATTERY_SYSTEM_RESET_TO_ZERO                      ((USAGE) 0x00C2)
#define HID_USAGE_BATTERY_SYSTEM_AC_PRESENT                         ((USAGE) 0x00D0)
#define HID_USAGE_BATTERY_SYSTEM_BATTERY_PRESENT                    ((USAGE) 0x00D1)
#define HID_USAGE_BATTERY_SYSTEM_POWER_FAIL                         ((USAGE) 0x00D2)
#define HID_USAGE_BATTERY_SYSTEM_ALARM_INHIBITED                    ((USAGE) 0x00D3)
#define HID_USAGE_BATTERY_SYSTEM_THERMISTOR_UNDER_RANGE             ((USAGE) 0x00D4)
#define HID_USAGE_BATTERY_SYSTEM_THERMISTOR_HOT                     ((USAGE) 0x00D5)
#define HID_USAGE_BATTERY_SYSTEM_THERMISTOR_COLD                    ((USAGE) 0x00D6)
#define HID_USAGE_BATTERY_SYSTEM_THERMISTOR_OVER_RANGE              ((USAGE) 0x00D7)
#define HID_USAGE_BATTERY_SYSTEM_VOLTAGE_OUT_OF_RANGE               ((USAGE) 0x00D8)
#define HID_USAGE_BATTERY_SYSTEM_CURRENT_OUT_OF_RANGE               ((USAGE) 0x00D9)
#define HID_USAGE_BATTERY_SYSTEM_CURRENT_NOT_REGULATED              ((USAGE) 0x00DA)
#define HID_USAGE_BATTERY_SYSTEM_VOLTAGE_NOT_REGULATED              ((USAGE) 0x00DB)
#define HID_USAGE_BATTERY_SYSTEM_MASTER_MODE                        ((USAGE) 0x00DC)
#define HID_USAGE_BATTERY_SYSTEM_CHARGER_SELECTOR_SUPPORT           ((USAGE) 0x00F0)
#define HID_USAGE_BATTERY_SYSTEM_CHARGER_SPEC                       ((USAGE) 0x00F1)
#define HID_USAGE_BATTERY_SYSTEM_LEVEL_2                            ((USAGE) 0x00F2)
#define HID_USAGE_BATTERY_SYSTEM_LEVEL_3                            ((USAGE) 0x00F3)

//
// Braille Display Page (0x41)
//
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DISPLAY                 ((USAGE) 0x0001)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_ROW                     ((USAGE) 0x0002)
#define HID_USAGE_BRAILLE_DISPLAY_8_DOT_BRAILLE_CELL              ((USAGE) 0x0003)
#define HID_USAGE_BRAILLE_DISPLAY_6_DOT_BRAILLE_CELL              ((USAGE) 0x0004)
#define HID_USAGE_BRAILLE_DISPLAY_NUMBER_OF_BRAILLE_CELLS         ((USAGE) 0x0005)
#define HID_USAGE_BRAILLE_DISPLAY_SCREEN_READER_CONTROL           ((USAGE) 0x0006)
#define HID_USAGE_BRAILLE_DISPLAY_SCREEN_READER_IDENTIFIER        ((USAGE) 0x0007)
#define HID_USAGE_BRAILLE_DISPLAY_ROUTER_SET_1                    ((USAGE) 0x00FA)
#define HID_USAGE_BRAILLE_DISPLAY_ROUTER_SET_2                    ((USAGE) 0x00FB)
#define HID_USAGE_BRAILLE_DISPLAY_ROUTER_SET_3                    ((USAGE) 0x00FC)
#define HID_USAGE_BRAILLE_DISPLAY_ROUTER_KEY                      ((USAGE) 0x0100)
#define HID_USAGE_BRAILLE_DISPLAY_ROW_ROUTER_KEY                  ((USAGE) 0x0101)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_BUTTONS                 ((USAGE) 0x0200)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_1          ((USAGE) 0x0201)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_2          ((USAGE) 0x0202)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_3          ((USAGE) 0x0203)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_4          ((USAGE) 0x0204)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_5          ((USAGE) 0x0205)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_6          ((USAGE) 0x0206)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_7          ((USAGE) 0x0207)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_DOT_8          ((USAGE) 0x0208)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_SPACE          ((USAGE) 0x0209)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_LEFT_SPACE     ((USAGE) 0x020A)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_KEYBOARD_RIGHT_SPACE    ((USAGE) 0x020B)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_FACE_CONTROLS           ((USAGE) 0x020C)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_LEFT_CONTROLS           ((USAGE) 0x020D)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_RIGHT_CONTROLS          ((USAGE) 0x020E)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_TOP_CONTROLS            ((USAGE) 0x020F)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_JOYSTICK_CENTER         ((USAGE) 0x0210)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_JOYSTICK_UP             ((USAGE) 0x0211)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_JOYSTICK_DOWN           ((USAGE) 0x0212)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_JOYSTICK_LEFT           ((USAGE) 0x0213)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_JOYSTICK_RIGHT          ((USAGE) 0x0214)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DPAD_CENTER             ((USAGE) 0x0215)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DPAD_UP                 ((USAGE) 0x0216)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DPAD_DOWN               ((USAGE) 0x0217)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DPAD_LEFT               ((USAGE) 0x0218)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_DPAD_RIGHT              ((USAGE) 0x0219)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_PAN_LEFT                ((USAGE) 0x021A)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_PAN_RIGHT               ((USAGE) 0x021B)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_ROCKER_UP               ((USAGE) 0x021C)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_ROCKER_DOWN             ((USAGE) 0x021D)
#define HID_USAGE_BRAILLE_DISPLAY_BRAILLE_ROCKER_PRESS            ((USAGE) 0x021E)

//
// Button Page (0x09)
//
// There is no need to label these Usages.
// As a convenience for strongly-typed scenarios, below macro is provided.
//
#define HID_USAGE_BUTTON_ID(id)    ((USAGE) id)

//
// Camera Control Page (0x90)
//
#define HID_USAGE_CAMERA_AUTO_FOCUS    ((USAGE) 0x0020)
#define HID_USAGE_CAMERA_SHUTTER       ((USAGE) 0x0021)

//
// Consumer Page (0x0C)
//
#define HID_USAGE_CONSUMERCTRL                                           ((USAGE) 0x0001)
#define HID_USAGE_CONSUMER_NUMERIC_KEY_PAD                               ((USAGE) 0x0002)
#define HID_USAGE_CONSUMER_PROGRAMMABLE_BUTTONS                          ((USAGE) 0x0003)
#define HID_USAGE_CONSUMER_MICROPHONE                                    ((USAGE) 0x0004)
#define HID_USAGE_CONSUMER_HEADPHONE                                     ((USAGE) 0x0005)
#define HID_USAGE_CONSUMER_GRAPHIC_EQUALIZER                             ((USAGE) 0x0006)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT                            ((USAGE) 0x0007)
#define HID_USAGE_CONSUMER_10                                            ((USAGE) 0x0020)
#define HID_USAGE_CONSUMER_100                                           ((USAGE) 0x0021)
#define HID_USAGE_CONSUMER_AMPM                                          ((USAGE) 0x0022)
#define HID_USAGE_CONSUMER_POWER                                         ((USAGE) 0x0030)
#define HID_USAGE_CONSUMER_RESET                                         ((USAGE) 0x0031)
#define HID_USAGE_CONSUMER_SLEEP                                         ((USAGE) 0x0032)
#define HID_USAGE_CONSUMER_SLEEP_AFTER                                   ((USAGE) 0x0033)
#define HID_USAGE_CONSUMER_SLEEP_MODE                                    ((USAGE) 0x0034)
#define HID_USAGE_CONSUMER_ILLUMINATION                                  ((USAGE) 0x0035)
#define HID_USAGE_CONSUMER_FUNCTION_BUTTONS                              ((USAGE) 0x0036)
#define HID_USAGE_CONSUMER_MENU                                          ((USAGE) 0x0040)
#define HID_USAGE_CONSUMER_MENU_PICK                                     ((USAGE) 0x0041)
#define HID_USAGE_CONSUMER_MENU_UP                                       ((USAGE) 0x0042)
#define HID_USAGE_CONSUMER_MENU_DOWN                                     ((USAGE) 0x0043)
#define HID_USAGE_CONSUMER_MENU_LEFT                                     ((USAGE) 0x0044)
#define HID_USAGE_CONSUMER_MENU_RIGHT                                    ((USAGE) 0x0045)
#define HID_USAGE_CONSUMER_MENU_ESCAPE                                   ((USAGE) 0x0046)
#define HID_USAGE_CONSUMER_MENU_VALUE_INCREASE                           ((USAGE) 0x0047)
#define HID_USAGE_CONSUMER_MENU_VALUE_DECREASE                           ((USAGE) 0x0048)
#define HID_USAGE_CONSUMER_DATA_ON_SCREEN                                ((USAGE) 0x0060)
#define HID_USAGE_CONSUMER_CLOSED_CAPTION                                ((USAGE) 0x0061)
#define HID_USAGE_CONSUMER_CLOSED_CAPTION_SELECT                         ((USAGE) 0x0062)
#define HID_USAGE_CONSUMER_VCRTV                                         ((USAGE) 0x0063)
#define HID_USAGE_CONSUMER_BROADCAST_MODE                                ((USAGE) 0x0064)
#define HID_USAGE_CONSUMER_SNAPSHOT                                      ((USAGE) 0x0065)
#define HID_USAGE_CONSUMER_STILL                                         ((USAGE) 0x0066)
#define HID_USAGE_CONSUMER_PICTUREINPICTURE_TOGGLE                       ((USAGE) 0x0067)
#define HID_USAGE_CONSUMER_PICTUREINPICTURE_SWAP                         ((USAGE) 0x0068)
#define HID_USAGE_CONSUMER_RED_MENU_BUTTON                               ((USAGE) 0x0069)
#define HID_USAGE_CONSUMER_GREEN_MENU_BUTTON                             ((USAGE) 0x006A)
#define HID_USAGE_CONSUMER_BLUE_MENU_BUTTON                              ((USAGE) 0x006B)
#define HID_USAGE_CONSUMER_YELLOW_MENU_BUTTON                            ((USAGE) 0x006C)
#define HID_USAGE_CONSUMER_ASPECT                                        ((USAGE) 0x006D)
#define HID_USAGE_CONSUMER_3D_MODE_SELECT                                ((USAGE) 0x006E)
#define HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS_INCREMENT                  ((USAGE) 0x006F)
#define HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS_DECREMENT                  ((USAGE) 0x0070)
#define HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS                            ((USAGE) 0x0071)
#define HID_USAGE_CONSUMER_DISPLAY_BACKLIGHT_TOGGLE                      ((USAGE) 0x0072)
#define HID_USAGE_CONSUMER_DISPLAY_SET_BRIGHTNESS_TO_MINIMUM             ((USAGE) 0x0073)
#define HID_USAGE_CONSUMER_DISPLAY_SET_BRIGHTNESS_TO_MAXIMUM             ((USAGE) 0x0074)
#define HID_USAGE_CONSUMER_DISPLAY_SET_AUTO_BRIGHTNESS                   ((USAGE) 0x0075)
#define HID_USAGE_CONSUMER_CAMERA_ACCESS_ENABLED                         ((USAGE) 0x0076)
#define HID_USAGE_CONSUMER_CAMERA_ACCESS_DISABLED                        ((USAGE) 0x0077)
#define HID_USAGE_CONSUMER_CAMERA_ACCESS_TOGGLE                          ((USAGE) 0x0078)
#define HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_INCREMENT                 ((USAGE) 0x0079)
#define HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_DECREMENT                 ((USAGE) 0x007A)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_LEVEL                  ((USAGE) 0x007B)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_OOC                        ((USAGE) 0x007C)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_MINIMUM                ((USAGE) 0x007D)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_MAXIMUM                ((USAGE) 0x007E)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_AUTO                       ((USAGE) 0x007F)
#define HID_USAGE_CONSUMER_SELECTION                                     ((USAGE) 0x0080)
#define HID_USAGE_CONSUMER_ASSIGN_SELECTION                              ((USAGE) 0x0081)
#define HID_USAGE_CONSUMER_MODE_STEP                                     ((USAGE) 0x0082)
#define HID_USAGE_CONSUMER_RECALL_LAST                                   ((USAGE) 0x0083)
#define HID_USAGE_CONSUMER_ENTER_CHANNEL                                 ((USAGE) 0x0084)
#define HID_USAGE_CONSUMER_ORDER_MOVIE                                   ((USAGE) 0x0085)
#define HID_USAGE_CONSUMER_CHANNEL                                       ((USAGE) 0x0086)
#define HID_USAGE_CONSUMER_MEDIA_SELECTION                               ((USAGE) 0x0087)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_COMPUTER                         ((USAGE) 0x0088)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_TV                               ((USAGE) 0x0089)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_WWW                              ((USAGE) 0x008A)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_DVD                              ((USAGE) 0x008B)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_TELEPHONE                        ((USAGE) 0x008C)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_PROGRAM_GUIDE                    ((USAGE) 0x008D)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_VIDEO_PHONE                      ((USAGE) 0x008E)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_GAMES                            ((USAGE) 0x008F)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_MESSAGES                         ((USAGE) 0x0090)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_CD                               ((USAGE) 0x0091)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_VCR                              ((USAGE) 0x0092)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_TUNER                            ((USAGE) 0x0093)
#define HID_USAGE_CONSUMER_QUIT                                          ((USAGE) 0x0094)
#define HID_USAGE_CONSUMER_HELP                                          ((USAGE) 0x0095)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_TAPE                             ((USAGE) 0x0096)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_CABLE                            ((USAGE) 0x0097)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_SATELLITE                        ((USAGE) 0x0098)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_SECURITY                         ((USAGE) 0x0099)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_HOME                             ((USAGE) 0x009A)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_CALL                             ((USAGE) 0x009B)
#define HID_USAGE_CONSUMER_CHANNEL_INCREMENT                             ((USAGE) 0x009C)
#define HID_USAGE_CONSUMER_CHANNEL_DECREMENT                             ((USAGE) 0x009D)
#define HID_USAGE_CONSUMER_MEDIA_SELECT_SAP                              ((USAGE) 0x009E)
#define HID_USAGE_CONSUMER_VCR_PLUS                                      ((USAGE) 0x00A0)
#define HID_USAGE_CONSUMER_ONCE                                          ((USAGE) 0x00A1)
#define HID_USAGE_CONSUMER_DAILY                                         ((USAGE) 0x00A2)
#define HID_USAGE_CONSUMER_WEEKLY                                        ((USAGE) 0x00A3)
#define HID_USAGE_CONSUMER_MONTHLY                                       ((USAGE) 0x00A4)
#define HID_USAGE_CONSUMER_PLAY                                          ((USAGE) 0x00B0)
#define HID_USAGE_CONSUMER_PAUSE                                         ((USAGE) 0x00B1)
#define HID_USAGE_CONSUMER_RECORD                                        ((USAGE) 0x00B2)
#define HID_USAGE_CONSUMER_FAST_FORWARD                                  ((USAGE) 0x00B3)
#define HID_USAGE_CONSUMER_REWIND                                        ((USAGE) 0x00B4)
#define HID_USAGE_CONSUMER_SCAN_NEXT_TRACK                               ((USAGE) 0x00B5)
#define HID_USAGE_CONSUMER_SCAN_PREV_TRACK                               ((USAGE) 0x00B6)
#define HID_USAGE_CONSUMER_STOP                                          ((USAGE) 0x00B7)
#define HID_USAGE_CONSUMER_EJECT                                         ((USAGE) 0x00B8)
#define HID_USAGE_CONSUMER_RANDOM_PLAY                                   ((USAGE) 0x00B9)
#define HID_USAGE_CONSUMER_SELECT_DISC                                   ((USAGE) 0x00BA)
#define HID_USAGE_CONSUMER_ENTER_DISC                                    ((USAGE) 0x00BB)
#define HID_USAGE_CONSUMER_REPEAT                                        ((USAGE) 0x00BC)
#define HID_USAGE_CONSUMER_TRACKING                                      ((USAGE) 0x00BD)
#define HID_USAGE_CONSUMER_TRACK_NORMAL                                  ((USAGE) 0x00BE)
#define HID_USAGE_CONSUMER_SLOW_TRACKING                                 ((USAGE) 0x00BF)
#define HID_USAGE_CONSUMER_FRAME_FORWARD                                 ((USAGE) 0x00C0)
#define HID_USAGE_CONSUMER_FRAME_BACK                                    ((USAGE) 0x00C1)
#define HID_USAGE_CONSUMER_MARK                                          ((USAGE) 0x00C2)
#define HID_USAGE_CONSUMER_CLEAR_MARK                                    ((USAGE) 0x00C3)
#define HID_USAGE_CONSUMER_REPEAT_FROM_MARK                              ((USAGE) 0x00C4)
#define HID_USAGE_CONSUMER_RETURN_TO_MARK                                ((USAGE) 0x00C5)
#define HID_USAGE_CONSUMER_SEARCH_MARK_FORWARD                           ((USAGE) 0x00C6)
#define HID_USAGE_CONSUMER_SEARCH_MARK_BACKWARDS                         ((USAGE) 0x00C7)
#define HID_USAGE_CONSUMER_COUNTER_RESET                                 ((USAGE) 0x00C8)
#define HID_USAGE_CONSUMER_SHOW_COUNTER                                  ((USAGE) 0x00C9)
#define HID_USAGE_CONSUMER_TRACKING_INCREMENT                            ((USAGE) 0x00CA)
#define HID_USAGE_CONSUMER_TRACKING_DECREMENT                            ((USAGE) 0x00CB)
#define HID_USAGE_CONSUMER_STOPEJECT                                     ((USAGE) 0x00CC)
#define HID_USAGE_CONSUMER_PLAY_PAUSE                                    ((USAGE) 0x00CD)
#define HID_USAGE_CONSUMER_PLAYSKIP                                      ((USAGE) 0x00CE)
#define HID_USAGE_CONSUMER_VOICE_COMMAND                                 ((USAGE) 0x00CF)
#define HID_USAGE_CONSUMER_GAMEDVR_OPEN_GAMEBAR                          ((USAGE) 0x00D0)
#define HID_USAGE_CONSUMER_GAMEDVR_TOGGLE_RECORD                         ((USAGE) 0x00D1)
#define HID_USAGE_CONSUMER_GAMEDVR_RECORD_CLIP                           ((USAGE) 0x00D2)
#define HID_USAGE_CONSUMER_GAMEDVR_SCREENSHOT                            ((USAGE) 0x00D3)
#define HID_USAGE_CONSUMER_GAMEDVR_TOGGLE_INDICATOR                      ((USAGE) 0x00D4)
#define HID_USAGE_CONSUMER_GAMEDVR_TOGGLE_MICROPHONE                     ((USAGE) 0x00D5)
#define HID_USAGE_CONSUMER_GAMEDVR_TOGGLE_CAMERA                         ((USAGE) 0x00D6)
#define HID_USAGE_CONSUMER_GAMEDVR_TOGGLE_BROADCAST                      ((USAGE) 0x00D7)
#define HID_USAGE_CONSUMER_START_OR_STOP_VOICE_DICTATION_SESSION         ((USAGE) 0x00D8)
#define HID_USAGE_CONSUMER_INVOKEDISMISS_EMOJI_PICKER                    ((USAGE) 0x00D9)
#define HID_USAGE_CONSUMER_VOLUME                                        ((USAGE) 0x00E0)
#define HID_USAGE_CONSUMER_BALANCE                                       ((USAGE) 0x00E1)
#define HID_USAGE_CONSUMER_MUTE                                          ((USAGE) 0x00E2)
#define HID_USAGE_CONSUMER_BASS                                          ((USAGE) 0x00E3)
#define HID_USAGE_CONSUMER_TREBLE                                        ((USAGE) 0x00E4)
#define HID_USAGE_CONSUMER_BASS_BOOST                                    ((USAGE) 0x00E5)
#define HID_USAGE_CONSUMER_SURROUND_MODE                                 ((USAGE) 0x00E6)
#define HID_USAGE_CONSUMER_LOUDNESS                                      ((USAGE) 0x00E7)
#define HID_USAGE_CONSUMER_MPX                                           ((USAGE) 0x00E8)
#define HID_USAGE_CONSUMER_VOLUME_INCREMENT                              ((USAGE) 0x00E9)
#define HID_USAGE_CONSUMER_VOLUME_DECREMENT                              ((USAGE) 0x00EA)
#define HID_USAGE_CONSUMER_SPEED_SELECT                                  ((USAGE) 0x00F0)
#define HID_USAGE_CONSUMER_PLAYBACK_SPEED                                ((USAGE) 0x00F1)
#define HID_USAGE_CONSUMER_STANDARD_PLAY                                 ((USAGE) 0x00F2)
#define HID_USAGE_CONSUMER_LONG_PLAY                                     ((USAGE) 0x00F3)
#define HID_USAGE_CONSUMER_EXTENDED_PLAY                                 ((USAGE) 0x00F4)
#define HID_USAGE_CONSUMER_SLOW                                          ((USAGE) 0x00F5)
#define HID_USAGE_CONSUMER_FAN_ENABLE                                    ((USAGE) 0x0100)
#define HID_USAGE_CONSUMER_FAN_SPEED                                     ((USAGE) 0x0101)
#define HID_USAGE_CONSUMER_LIGHT_ENABLE                                  ((USAGE) 0x0102)
#define HID_USAGE_CONSUMER_LIGHT_ILLUMINATION_LEVEL                      ((USAGE) 0x0103)
#define HID_USAGE_CONSUMER_CLIMATE_CONTROL_ENABLE                        ((USAGE) 0x0104)
#define HID_USAGE_CONSUMER_ROOM_TEMPERATURE                              ((USAGE) 0x0105)
#define HID_USAGE_CONSUMER_SECURITY_ENABLE                               ((USAGE) 0x0106)
#define HID_USAGE_CONSUMER_FIRE_ALARM                                    ((USAGE) 0x0107)
#define HID_USAGE_CONSUMER_POLICE_ALARM                                  ((USAGE) 0x0108)
#define HID_USAGE_CONSUMER_PROXIMITY                                     ((USAGE) 0x0109)
#define HID_USAGE_CONSUMER_MOTION                                        ((USAGE) 0x010A)
#define HID_USAGE_CONSUMER_DURESS_ALARM                                  ((USAGE) 0x010B)
#define HID_USAGE_CONSUMER_HOLDUP_ALARM                                  ((USAGE) 0x010C)
#define HID_USAGE_CONSUMER_MEDICAL_ALARM                                 ((USAGE) 0x010D)
#define HID_USAGE_CONSUMER_BALANCE_RIGHT                                 ((USAGE) 0x0150)
#define HID_USAGE_CONSUMER_BALANCE_LEFT                                  ((USAGE) 0x0151)
#define HID_USAGE_CONSUMER_BASS_INCREMENT                                ((USAGE) 0x0152)
#define HID_USAGE_CONSUMER_BASS_DECREMENT                                ((USAGE) 0x0153)
#define HID_USAGE_CONSUMER_TREBLE_INCREMENT                              ((USAGE) 0x0154)
#define HID_USAGE_CONSUMER_TREBLE_DECREMENT                              ((USAGE) 0x0155)
#define HID_USAGE_CONSUMER_SPEAKER_SYSTEM                                ((USAGE) 0x0160)
#define HID_USAGE_CONSUMER_CHANNEL_LEFT                                  ((USAGE) 0x0161)
#define HID_USAGE_CONSUMER_CHANNEL_RIGHT                                 ((USAGE) 0x0162)
#define HID_USAGE_CONSUMER_CHANNEL_CENTER                                ((USAGE) 0x0163)
#define HID_USAGE_CONSUMER_CHANNEL_FRONT                                 ((USAGE) 0x0164)
#define HID_USAGE_CONSUMER_CHANNEL_CENTER_FRONT                          ((USAGE) 0x0165)
#define HID_USAGE_CONSUMER_CHANNEL_SIDE                                  ((USAGE) 0x0166)
#define HID_USAGE_CONSUMER_CHANNEL_SURROUND                              ((USAGE) 0x0167)
#define HID_USAGE_CONSUMER_CHANNEL_LOW_FREQUENCY_ENHANCEMENT             ((USAGE) 0x0168)
#define HID_USAGE_CONSUMER_CHANNEL_TOP                                   ((USAGE) 0x0169)
#define HID_USAGE_CONSUMER_CHANNEL_UNKNOWN                               ((USAGE) 0x016A)
#define HID_USAGE_CONSUMER_SUBCHANNEL                                    ((USAGE) 0x0170)
#define HID_USAGE_CONSUMER_SUBCHANNEL_INCREMENT                          ((USAGE) 0x0171)
#define HID_USAGE_CONSUMER_SUBCHANNEL_DECREMENT                          ((USAGE) 0x0172)
#define HID_USAGE_CONSUMER_ALTERNATE_AUDIO_INCREMENT                     ((USAGE) 0x0173)
#define HID_USAGE_CONSUMER_ALTERNATE_AUDIO_DECREMENT                     ((USAGE) 0x0174)
#define HID_USAGE_CONSUMER_APPLICATION_LAUNCH_BUTTONS                    ((USAGE) 0x0180)
#define HID_USAGE_CONSUMER_AL_LAUNCH_BUTTON_CONFIGURATION_TOOL           ((USAGE) 0x0181)
#define HID_USAGE_CONSUMER_AL_PROGRAMMABLE_BUTTON_CONFIGURATION          ((USAGE) 0x0182)
#define HID_USAGE_CONSUMER_AL_CONFIGURATION                              ((USAGE) 0x0183)
#define HID_USAGE_CONSUMER_AL_WORD_PROCESSOR                             ((USAGE) 0x0184)
#define HID_USAGE_CONSUMER_AL_TEXT_EDITOR                                ((USAGE) 0x0185)
#define HID_USAGE_CONSUMER_AL_SPREADSHEET                                ((USAGE) 0x0186)
#define HID_USAGE_CONSUMER_AL_GRAPHICS_EDITOR                            ((USAGE) 0x0187)
#define HID_USAGE_CONSUMER_AL_PRESENTATION_APP                           ((USAGE) 0x0188)
#define HID_USAGE_CONSUMER_AL_DATABASE_APP                               ((USAGE) 0x0189)
#define HID_USAGE_CONSUMER_AL_EMAIL                                      ((USAGE) 0x018A)
#define HID_USAGE_CONSUMER_AL_NEWSREADER                                 ((USAGE) 0x018B)
#define HID_USAGE_CONSUMER_AL_VOICEMAIL                                  ((USAGE) 0x018C)
#define HID_USAGE_CONSUMER_AL_CONTACTSADDRESS_BOOK                       ((USAGE) 0x018D)
#define HID_USAGE_CONSUMER_AL_CALENDARSCHEDULE                           ((USAGE) 0x018E)
#define HID_USAGE_CONSUMER_AL_TASKPROJECT_MANAGER                        ((USAGE) 0x018F)
#define HID_USAGE_CONSUMER_AL_LOGJOURNALTIMECARD                         ((USAGE) 0x0190)
#define HID_USAGE_CONSUMER_AL_CHECKBOOKFINANCE                           ((USAGE) 0x0191)
#define HID_USAGE_CONSUMER_AL_CALCULATOR                                 ((USAGE) 0x0192)
#define HID_USAGE_CONSUMER_AL_AV_CAPTUREPLAYBACK                         ((USAGE) 0x0193)
#define HID_USAGE_CONSUMER_AL_BROWSER                                    ((USAGE) 0x0194)
#define HID_USAGE_CONSUMER_AL_LANWAN_BROWSER                             ((USAGE) 0x0195)
#define HID_USAGE_CONSUMER_AL_INTERNET_BROWSER                           ((USAGE) 0x0196)
#define HID_USAGE_CONSUMER_AL_REMOTE_NETWORKINGISP_CONNECT               ((USAGE) 0x0197)
#define HID_USAGE_CONSUMER_AL_NETWORK_CONFERENCE                         ((USAGE) 0x0198)
#define HID_USAGE_CONSUMER_AL_NETWORK_CHAT                               ((USAGE) 0x0199)
#define HID_USAGE_CONSUMER_AL_TELEPHONYDIALER                            ((USAGE) 0x019A)
#define HID_USAGE_CONSUMER_AL_LOGON                                      ((USAGE) 0x019B)
#define HID_USAGE_CONSUMER_AL_LOGOFF                                     ((USAGE) 0x019C)
#define HID_USAGE_CONSUMER_AL_LOGONLOGOFF                                ((USAGE) 0x019D)
#define HID_USAGE_CONSUMER_AL_TERMINAL_LOCKSCREENSAVER                   ((USAGE) 0x019E)
#define HID_USAGE_CONSUMER_AL_CONTROL_PANEL                              ((USAGE) 0x019F)
#define HID_USAGE_CONSUMER_AL_COMMAND_LINE_PROCESSORRUN                  ((USAGE) 0x01A0)
#define HID_USAGE_CONSUMER_AL_PROCESSTASK_MANAGER                        ((USAGE) 0x01A1)
#define HID_USAGE_CONSUMER_AL_SELECT_TASKAPPLICATION                     ((USAGE) 0x01A2)
#define HID_USAGE_CONSUMER_AL_NEXT_TASKAPPLICATION                       ((USAGE) 0x01A3)
#define HID_USAGE_CONSUMER_AL_PREVIOUS_TASKAPPLICATION                   ((USAGE) 0x01A4)
#define HID_USAGE_CONSUMER_AL_PREEMPTIVE_HALT_TASKAPPLICATION            ((USAGE) 0x01A5)
#define HID_USAGE_CONSUMER_AL_INTEGRATED_HELP_CENTER                     ((USAGE) 0x01A6)
#define HID_USAGE_CONSUMER_AL_DOCUMENTS                                  ((USAGE) 0x01A7)
#define HID_USAGE_CONSUMER_AL_THESAURUS                                  ((USAGE) 0x01A8)
#define HID_USAGE_CONSUMER_AL_DICTIONARY                                 ((USAGE) 0x01A9)
#define HID_USAGE_CONSUMER_AL_DESKTOP                                    ((USAGE) 0x01AA)
#define HID_USAGE_CONSUMER_AL_SPELL_CHECK                                ((USAGE) 0x01AB)
#define HID_USAGE_CONSUMER_AL_GRAMMAR_CHECK                              ((USAGE) 0x01AC)
#define HID_USAGE_CONSUMER_AL_WIRELESS_STATUS                            ((USAGE) 0x01AD)
#define HID_USAGE_CONSUMER_AL_KEYBOARD_LAYOUT                            ((USAGE) 0x01AE)
#define HID_USAGE_CONSUMER_AL_VIRUS_PROTECTION                           ((USAGE) 0x01AF)
#define HID_USAGE_CONSUMER_AL_ENCRYPTION                                 ((USAGE) 0x01B0)
#define HID_USAGE_CONSUMER_AL_SCREEN_SAVER                               ((USAGE) 0x01B1)
#define HID_USAGE_CONSUMER_AL_ALARMS                                     ((USAGE) 0x01B2)
#define HID_USAGE_CONSUMER_AL_CLOCK                                      ((USAGE) 0x01B3)
#define HID_USAGE_CONSUMER_AL_FILE_BROWSER                               ((USAGE) 0x01B4)
#define HID_USAGE_CONSUMER_AL_POWER_STATUS                               ((USAGE) 0x01B5)
#define HID_USAGE_CONSUMER_AL_IMAGE_BROWSER                              ((USAGE) 0x01B6)
#define HID_USAGE_CONSUMER_AL_AUDIO_BROWSER                              ((USAGE) 0x01B7)
#define HID_USAGE_CONSUMER_AL_MOVIE_BROWSER                              ((USAGE) 0x01B8)
#define HID_USAGE_CONSUMER_AL_DIGITAL_RIGHTS_MANAGER                     ((USAGE) 0x01B9)
#define HID_USAGE_CONSUMER_AL_DIGITAL_WALLET                             ((USAGE) 0x01BA)
#define HID_USAGE_CONSUMER_AL_INSTANT_MESSAGING                          ((USAGE) 0x01BC)
#define HID_USAGE_CONSUMER_AL_OEM_FEATURES_TIPSTUTORIAL_BROWSER          ((USAGE) 0x01BD)
#define HID_USAGE_CONSUMER_AL_OEM_HELP                                   ((USAGE) 0x01BE)
#define HID_USAGE_CONSUMER_AL_ONLINE_COMMUNITY                           ((USAGE) 0x01BF)
#define HID_USAGE_CONSUMER_AL_ENTERTAINMENT_CONTENT_BROWSER              ((USAGE) 0x01C0)
#define HID_USAGE_CONSUMER_AL_ONLINE_SHOPPING_BROWSER                    ((USAGE) 0x01C1)
#define HID_USAGE_CONSUMER_AL_SMARTCARD_INFORMATIONHELP                  ((USAGE) 0x01C2)
#define HID_USAGE_CONSUMER_AL_MARKET_MONITORFINANCE_BROWSER              ((USAGE) 0x01C3)
#define HID_USAGE_CONSUMER_AL_CUSTOMIZED_CORPORATE_NEWS_BROWSER          ((USAGE) 0x01C4)
#define HID_USAGE_CONSUMER_AL_ONLINE_ACTIVITY_BROWSER                    ((USAGE) 0x01C5)
#define HID_USAGE_CONSUMER_AL_SEARCH                                     ((USAGE) 0x01C6)
#define HID_USAGE_CONSUMER_AL_AUDIO_PLAYER                               ((USAGE) 0x01C7)
#define HID_USAGE_CONSUMER_AL_MESSAGE_STATUS                             ((USAGE) 0x01C8)
#define HID_USAGE_CONSUMER_AL_CONTACT_SYNC                               ((USAGE) 0x01C9)
#define HID_USAGE_CONSUMER_AL_NAVIGATION                                 ((USAGE) 0x01CA)
#define HID_USAGE_CONSUMER_AL_CONTEXTAWARE_DESKTOP_ASSISTANT             ((USAGE) 0x01CB)
#define HID_USAGE_CONSUMER_GENERIC_GUI_APPLICATION_CONTROLS              ((USAGE) 0x0200)
#define HID_USAGE_CONSUMER_AC_NEW                                        ((USAGE) 0x0201)
#define HID_USAGE_CONSUMER_AC_OPEN                                       ((USAGE) 0x0202)
#define HID_USAGE_CONSUMER_AC_CLOSE                                      ((USAGE) 0x0203)
#define HID_USAGE_CONSUMER_AC_EXIT                                       ((USAGE) 0x0204)
#define HID_USAGE_CONSUMER_AC_MAXIMIZE                                   ((USAGE) 0x0205)
#define HID_USAGE_CONSUMER_AC_MINIMIZE                                   ((USAGE) 0x0206)
#define HID_USAGE_CONSUMER_AC_SAVE                                       ((USAGE) 0x0207)
#define HID_USAGE_CONSUMER_AC_PRINT                                      ((USAGE) 0x0208)
#define HID_USAGE_CONSUMER_AC_PROPERTIES                                 ((USAGE) 0x0209)
#define HID_USAGE_CONSUMER_AC_UNDO                                       ((USAGE) 0x021A)
#define HID_USAGE_CONSUMER_AC_COPY                                       ((USAGE) 0x021B)
#define HID_USAGE_CONSUMER_AC_CUT                                        ((USAGE) 0x021C)
#define HID_USAGE_CONSUMER_AC_PASTE                                      ((USAGE) 0x021D)
#define HID_USAGE_CONSUMER_AC_SELECT_ALL                                 ((USAGE) 0x021E)
#define HID_USAGE_CONSUMER_AC_FIND                                       ((USAGE) 0x021F)
#define HID_USAGE_CONSUMER_AC_FIND_AND_REPLACE                           ((USAGE) 0x0220)
#define HID_USAGE_CONSUMER_AC_SEARCH                                     ((USAGE) 0x0221)
#define HID_USAGE_CONSUMER_AC_GOTO                                       ((USAGE) 0x0222)
#define HID_USAGE_CONSUMER_AC_HOME                                       ((USAGE) 0x0223)
#define HID_USAGE_CONSUMER_AC_BACK                                       ((USAGE) 0x0224)
#define HID_USAGE_CONSUMER_AC_FORWARD                                    ((USAGE) 0x0225)
#define HID_USAGE_CONSUMER_AC_STOP                                       ((USAGE) 0x0226)
#define HID_USAGE_CONSUMER_AC_REFRESH                                    ((USAGE) 0x0227)
#define HID_USAGE_CONSUMER_AC_PREVIOUS                                   ((USAGE) 0x0228)
#define HID_USAGE_CONSUMER_AC_NEXT                                       ((USAGE) 0x0229)
#define HID_USAGE_CONSUMER_AC_BOOKMARKS                                  ((USAGE) 0x022A)
#define HID_USAGE_CONSUMER_AC_HISTORY                                    ((USAGE) 0x022B)
#define HID_USAGE_CONSUMER_AC_SUBSCRIPTIONS                              ((USAGE) 0x022C)
#define HID_USAGE_CONSUMER_AC_ZOOM_IN                                    ((USAGE) 0x022D)
#define HID_USAGE_CONSUMER_AC_ZOOM_OUT                                   ((USAGE) 0x022E)
#define HID_USAGE_CONSUMER_AC_ZOOM                                       ((USAGE) 0x022F)
#define HID_USAGE_CONSUMER_AC_FULL_SCREEN_VIEW                           ((USAGE) 0x0230)
#define HID_USAGE_CONSUMER_AC_NORMAL_VIEW                                ((USAGE) 0x0231)
#define HID_USAGE_CONSUMER_AC_VIEW_TOGGLE                                ((USAGE) 0x0232)
#define HID_USAGE_CONSUMER_AC_SCROLL_UP                                  ((USAGE) 0x0233)
#define HID_USAGE_CONSUMER_AC_SCROLL_DOWN                                ((USAGE) 0x0234)
#define HID_USAGE_CONSUMER_AC_SCROLL                                     ((USAGE) 0x0235)
#define HID_USAGE_CONSUMER_AC_PAN_LEFT                                   ((USAGE) 0x0236)
#define HID_USAGE_CONSUMER_AC_PAN_RIGHT                                  ((USAGE) 0x0237)
#define HID_USAGE_CONSUMER_AC_PAN                                        ((USAGE) 0x0238)
#define HID_USAGE_CONSUMER_AC_NEW_WINDOW                                 ((USAGE) 0x0239)
#define HID_USAGE_CONSUMER_AC_TILE_HORIZONTALLY                          ((USAGE) 0x023A)
#define HID_USAGE_CONSUMER_AC_TILE_VERTICALLY                            ((USAGE) 0x023B)
#define HID_USAGE_CONSUMER_AC_FORMAT                                     ((USAGE) 0x023C)
#define HID_USAGE_CONSUMER_AC_EDIT                                       ((USAGE) 0x023D)
#define HID_USAGE_CONSUMER_AC_BOLD                                       ((USAGE) 0x023E)
#define HID_USAGE_CONSUMER_AC_ITALICS                                    ((USAGE) 0x023F)
#define HID_USAGE_CONSUMER_AC_UNDERLINE                                  ((USAGE) 0x0240)
#define HID_USAGE_CONSUMER_AC_STRIKETHROUGH                              ((USAGE) 0x0241)
#define HID_USAGE_CONSUMER_AC_SUBSCRIPT                                  ((USAGE) 0x0242)
#define HID_USAGE_CONSUMER_AC_SUPERSCRIPT                                ((USAGE) 0x0243)
#define HID_USAGE_CONSUMER_AC_ALL_CAPS                                   ((USAGE) 0x0244)
#define HID_USAGE_CONSUMER_AC_ROTATE                                     ((USAGE) 0x0245)
#define HID_USAGE_CONSUMER_AC_RESIZE                                     ((USAGE) 0x0246)
#define HID_USAGE_CONSUMER_AC_FLIP_HORIZONTAL                            ((USAGE) 0x0247)
#define HID_USAGE_CONSUMER_AC_FLIP_VERTICAL                              ((USAGE) 0x0248)
#define HID_USAGE_CONSUMER_AC_MIRROR_HORIZONTAL                          ((USAGE) 0x0249)
#define HID_USAGE_CONSUMER_AC_MIRROR_VERTICAL                            ((USAGE) 0x024A)
#define HID_USAGE_CONSUMER_AC_FONT_SELECT                                ((USAGE) 0x024B)
#define HID_USAGE_CONSUMER_AC_FONT_COLOR                                 ((USAGE) 0x024C)
#define HID_USAGE_CONSUMER_AC_FONT_SIZE                                  ((USAGE) 0x024D)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_LEFT                               ((USAGE) 0x024E)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_CENTER_H                           ((USAGE) 0x024F)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_RIGHT                              ((USAGE) 0x0250)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_BLOCK_H                            ((USAGE) 0x0251)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_TOP                                ((USAGE) 0x0252)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_CENTER_V                           ((USAGE) 0x0253)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_BOTTOM                             ((USAGE) 0x0254)
#define HID_USAGE_CONSUMER_AC_JUSTIFY_BLOCK_V                            ((USAGE) 0x0255)
#define HID_USAGE_CONSUMER_AC_INDENT_DECREASE                            ((USAGE) 0x0256)
#define HID_USAGE_CONSUMER_AC_INDENT_INCREASE                            ((USAGE) 0x0257)
#define HID_USAGE_CONSUMER_AC_NUMBERED_LIST                              ((USAGE) 0x0258)
#define HID_USAGE_CONSUMER_AC_RESTART_NUMBERING                          ((USAGE) 0x0259)
#define HID_USAGE_CONSUMER_AC_BULLETED_LIST                              ((USAGE) 0x025A)
#define HID_USAGE_CONSUMER_AC_PROMOTE                                    ((USAGE) 0x025B)
#define HID_USAGE_CONSUMER_AC_DEMOTE                                     ((USAGE) 0x025C)
#define HID_USAGE_CONSUMER_AC_YES                                        ((USAGE) 0x025D)
#define HID_USAGE_CONSUMER_AC_NO                                         ((USAGE) 0x025E)
#define HID_USAGE_CONSUMER_AC_CANCEL                                     ((USAGE) 0x025F)
#define HID_USAGE_CONSUMER_AC_CATALOG                                    ((USAGE) 0x0260)
#define HID_USAGE_CONSUMER_AC_BUYCHECKOUT                                ((USAGE) 0x0261)
#define HID_USAGE_CONSUMER_AC_ADD_TO_CART                                ((USAGE) 0x0262)
#define HID_USAGE_CONSUMER_AC_EXPAND                                     ((USAGE) 0x0263)
#define HID_USAGE_CONSUMER_AC_EXPAND_ALL                                 ((USAGE) 0x0264)
#define HID_USAGE_CONSUMER_AC_COLLAPSE                                   ((USAGE) 0x0265)
#define HID_USAGE_CONSUMER_AC_COLLAPSE_ALL                               ((USAGE) 0x0266)
#define HID_USAGE_CONSUMER_AC_PRINT_PREVIEW                              ((USAGE) 0x0267)
#define HID_USAGE_CONSUMER_AC_PASTE_SPECIAL                              ((USAGE) 0x0268)
#define HID_USAGE_CONSUMER_AC_INSERT_MODE                                ((USAGE) 0x0269)
#define HID_USAGE_CONSUMER_AC_DELETE                                     ((USAGE) 0x026A)
#define HID_USAGE_CONSUMER_AC_LOCK                                       ((USAGE) 0x026B)
#define HID_USAGE_CONSUMER_AC_UNLOCK                                     ((USAGE) 0x026C)
#define HID_USAGE_CONSUMER_AC_PROTECT                                    ((USAGE) 0x026D)
#define HID_USAGE_CONSUMER_AC_UNPROTECT                                  ((USAGE) 0x026E)
#define HID_USAGE_CONSUMER_AC_ATTACH_COMMENT                             ((USAGE) 0x026F)
#define HID_USAGE_CONSUMER_AC_DELETE_COMMENT                             ((USAGE) 0x0270)
#define HID_USAGE_CONSUMER_AC_VIEW_COMMENT                               ((USAGE) 0x0271)
#define HID_USAGE_CONSUMER_AC_SELECT_WORD                                ((USAGE) 0x0272)
#define HID_USAGE_CONSUMER_AC_SELECT_SENTENCE                            ((USAGE) 0x0273)
#define HID_USAGE_CONSUMER_AC_SELECT_PARAGRAPH                           ((USAGE) 0x0274)
#define HID_USAGE_CONSUMER_AC_SELECT_COLUMN                              ((USAGE) 0x0275)
#define HID_USAGE_CONSUMER_AC_SELECT_ROW                                 ((USAGE) 0x0276)
#define HID_USAGE_CONSUMER_AC_SELECT_TABLE                               ((USAGE) 0x0277)
#define HID_USAGE_CONSUMER_AC_SELECT_OBJECT                              ((USAGE) 0x0278)
#define HID_USAGE_CONSUMER_AC_REDOREPEAT                                 ((USAGE) 0x0279)
#define HID_USAGE_CONSUMER_AC_SORT                                       ((USAGE) 0x027A)
#define HID_USAGE_CONSUMER_AC_SORT_ASCENDING                             ((USAGE) 0x027B)
#define HID_USAGE_CONSUMER_AC_SORT_DESCENDING                            ((USAGE) 0x027C)
#define HID_USAGE_CONSUMER_AC_FILTER                                     ((USAGE) 0x027D)
#define HID_USAGE_CONSUMER_AC_SET_CLOCK                                  ((USAGE) 0x027E)
#define HID_USAGE_CONSUMER_AC_VIEW_CLOCK                                 ((USAGE) 0x027F)
#define HID_USAGE_CONSUMER_AC_SELECT_TIME_ZONE                           ((USAGE) 0x0280)
#define HID_USAGE_CONSUMER_AC_EDIT_TIME_ZONES                            ((USAGE) 0x0281)
#define HID_USAGE_CONSUMER_AC_SET_ALARM                                  ((USAGE) 0x0282)
#define HID_USAGE_CONSUMER_AC_CLEAR_ALARM                                ((USAGE) 0x0283)
#define HID_USAGE_CONSUMER_AC_SNOOZE_ALARM                               ((USAGE) 0x0284)
#define HID_USAGE_CONSUMER_AC_RESET_ALARM                                ((USAGE) 0x0285)
#define HID_USAGE_CONSUMER_AC_SYNCHRONIZE                                ((USAGE) 0x0286)
#define HID_USAGE_CONSUMER_AC_SENDRECEIVE                                ((USAGE) 0x0287)
#define HID_USAGE_CONSUMER_AC_SEND_TO                                    ((USAGE) 0x0288)
#define HID_USAGE_CONSUMER_AC_REPLY                                      ((USAGE) 0x0289)
#define HID_USAGE_CONSUMER_AC_REPLY_ALL                                  ((USAGE) 0x028A)
#define HID_USAGE_CONSUMER_AC_FORWARD_MSG                                ((USAGE) 0x028B)
#define HID_USAGE_CONSUMER_AC_SEND                                       ((USAGE) 0x028C)
#define HID_USAGE_CONSUMER_AC_ATTACH_FILE                                ((USAGE) 0x028D)
#define HID_USAGE_CONSUMER_AC_UPLOAD                                     ((USAGE) 0x028E)
#define HID_USAGE_CONSUMER_AC_DOWNLOAD_SAVE_TARGET_AS                    ((USAGE) 0x028F)
#define HID_USAGE_CONSUMER_AC_SET_BORDERS                                ((USAGE) 0x0290)
#define HID_USAGE_CONSUMER_AC_INSERT_ROW                                 ((USAGE) 0x0291)
#define HID_USAGE_CONSUMER_AC_INSERT_COLUMN                              ((USAGE) 0x0292)
#define HID_USAGE_CONSUMER_AC_INSERT_FILE                                ((USAGE) 0x0293)
#define HID_USAGE_CONSUMER_AC_INSERT_PICTURE                             ((USAGE) 0x0294)
#define HID_USAGE_CONSUMER_AC_INSERT_OBJECT                              ((USAGE) 0x0295)
#define HID_USAGE_CONSUMER_AC_INSERT_SYMBOL                              ((USAGE) 0x0296)
#define HID_USAGE_CONSUMER_AC_SAVE_AND_CLOSE                             ((USAGE) 0x0297)
#define HID_USAGE_CONSUMER_AC_RENAME                                     ((USAGE) 0x0298)
#define HID_USAGE_CONSUMER_AC_MERGE                                      ((USAGE) 0x0299)
#define HID_USAGE_CONSUMER_AC_SPLIT                                      ((USAGE) 0x029A)
#define HID_USAGE_CONSUMER_AC_DISRIBUTE_HORIZONTALLY                     ((USAGE) 0x029B)
#define HID_USAGE_CONSUMER_AC_DISTRIBUTE_VERTICALLY                      ((USAGE) 0x029C)
#define HID_USAGE_CONSUMER_AC_NEXT_KEYBOARD_LAYOUT_SELECT                ((USAGE) 0x029D)
#define HID_USAGE_CONSUMER_AC_NAVIGATION_GUIDANCE                        ((USAGE) 0x029E)
#define HID_USAGE_CONSUMER_AC_DESKTOP_SHOW_ALL_WINDOWS                   ((USAGE) 0x029F)
#define HID_USAGE_CONSUMER_AC_SOFT_KEY_LEFT                              ((USAGE) 0x02A0)
#define HID_USAGE_CONSUMER_AC_SOFT_KEY_RIGHT                             ((USAGE) 0x02A1)
#define HID_USAGE_CONSUMER_AC_DESKTOP_SHOW_ALL_APPLICATIONS              ((USAGE) 0x02A2)
#define HID_USAGE_CONSUMER_AC_IDLE_KEEP_ALIVE                            ((USAGE) 0x02B0)
#define HID_USAGE_CONSUMER_EXTENDED_KEYBOARD_ATTRIBUTES_COLLECTION       ((USAGE) 0x02C0)
#define HID_USAGE_CONSUMER_KEYBOARD_FORM_FACTOR                          ((USAGE) 0x02C1)
#define HID_USAGE_CONSUMER_KEYBOARD_KEY_TYPE                             ((USAGE) 0x02C2)
#define HID_USAGE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT                      ((USAGE) 0x02C3)
#define HID_USAGE_CONSUMER_VENDOR_SPECIFIC_KEYBOARD_PHYSICAL_LAYOUT      ((USAGE) 0x02C4)
#define HID_USAGE_CONSUMER_KEYBOARD_IETF_LANGUAGE_TAG_INDEX              ((USAGE) 0x02C5)
#define HID_USAGE_CONSUMER_IMPLEMENTED_KEYBOARD_INPUT_ASSIST_CONTROLS    ((USAGE) 0x02C6)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_PREVIOUS                ((USAGE) 0x02C7)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_NEXT                    ((USAGE) 0x02C8)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_PREVIOUS_GROUP          ((USAGE) 0x02C9)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_NEXT_GROUP              ((USAGE) 0x02CA)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_ACCEPT                  ((USAGE) 0x02CB)
#define HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_CANCEL                  ((USAGE) 0x02CC)
#define HID_USAGE_CONSUMER_PRIVACY_SCREEN_TOGGLE                         ((USAGE) 0x02D0)
#define HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_DECREMENT                ((USAGE) 0x02D1)
#define HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_INCREMENT                ((USAGE) 0x02D2)
#define HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_MINIMUM                  ((USAGE) 0x02D3)
#define HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_MAXIMUM                  ((USAGE) 0x02D4)
#define HID_USAGE_CONSUMER_CONTACT_EDITED                                ((USAGE) 0x0500)
#define HID_USAGE_CONSUMER_CONTACT_ADDED                                 ((USAGE) 0x0501)
#define HID_USAGE_CONSUMER_CONTACT_RECORD_ACTIVE                         ((USAGE) 0x0502)
#define HID_USAGE_CONSUMER_CONTACT_INDEX                                 ((USAGE) 0x0503)
#define HID_USAGE_CONSUMER_CONTACT_NICKNAME                              ((USAGE) 0x0504)
#define HID_USAGE_CONSUMER_CONTACT_FIRST_NAME                            ((USAGE) 0x0505)
#define HID_USAGE_CONSUMER_CONTACT_LAST_NAME                             ((USAGE) 0x0506)
#define HID_USAGE_CONSUMER_CONTACT_FULL_NAME                             ((USAGE) 0x0507)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_PERSONAL                 ((USAGE) 0x0508)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_BUSINESS                 ((USAGE) 0x0509)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_MOBILE                   ((USAGE) 0x050A)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_PAGER                    ((USAGE) 0x050B)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_FAX                      ((USAGE) 0x050C)
#define HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_OTHER                    ((USAGE) 0x050D)
#define HID_USAGE_CONSUMER_CONTACT_EMAIL_PERSONAL                        ((USAGE) 0x050E)
#define HID_USAGE_CONSUMER_CONTACT_EMAIL_BUSINESS                        ((USAGE) 0x050F)
#define HID_USAGE_CONSUMER_CONTACT_EMAIL_OTHER                           ((USAGE) 0x0510)
#define HID_USAGE_CONSUMER_CONTACT_EMAIL_MAIN                            ((USAGE) 0x0511)
#define HID_USAGE_CONSUMER_CONTACT_SPEED_DIAL_NUMBER                     ((USAGE) 0x0512)
#define HID_USAGE_CONSUMER_CONTACT_STATUS_FLAG                           ((USAGE) 0x0513)
#define HID_USAGE_CONSUMER_CONTACT_MISC                                  ((USAGE) 0x0514)
#define HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_NEXT                      ((USAGE) 0x0515)
#define HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_PREVIOUS                  ((USAGE) 0x0516)
#define HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_LEVEL_SUGGESTION           ((USAGE) 0x0517)

#define HID_VALUE_CONSUMER_KEYBOARD_FORM_FACTOR_UNKNOWN                 ((USAGE_VALUE) 0x0000)
#define HID_VALUE_CONSUMER_KEYBOARD_FORM_FACTOR_FULL_SIZE               ((USAGE_VALUE) 0x0001)
#define HID_VALUE_CONSUMER_KEYBOARD_FORM_FACTOR_COMPACT                 ((USAGE_VALUE) 0x0002)

#define HID_VALUE_CONSUMER_KEYBOARD_KEY_TYPE_UNKNOWN                    ((USAGE_VALUE) 0x0000)
#define HID_VALUE_CONSUMER_KEYBOARD_KEY_TYPE_FULL_TRAVEL                ((USAGE_VALUE) 0x0001)
#define HID_VALUE_CONSUMER_KEYBOARD_KEY_TYPE_LOW_TRAVEL                 ((USAGE_VALUE) 0x0002)
#define HID_VALUE_CONSUMER_KEYBOARD_KEY_TYPE_ZERO_TRAVEL                ((USAGE_VALUE) 0x0003)

#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_UNKNOWN             ((USAGE_VALUE) 0x0000)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_US_101              ((USAGE_VALUE) 0x0001)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_KOREA_103           ((USAGE_VALUE) 0x0002)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_EUROPE_102          ((USAGE_VALUE) 0x0003)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_BRAZIL_104          ((USAGE_VALUE) 0x0004)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_JAPAN_106           ((USAGE_VALUE) 0x0005)
#define HID_VALUE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT_VENDOR              ((USAGE_VALUE) 0x0006)

//
// Digitizers Page (0x0D)
//
#define HID_USAGE_DIGITIZER_DIGITIZER                                         ((USAGE) 0x0001)
#define HID_USAGE_DIGITIZER_PEN                                               ((USAGE) 0x0002)
#define HID_USAGE_DIGITIZER_LIGHT_PEN                                         ((USAGE) 0x0003)
#define HID_USAGE_DIGITIZER_TOUCH_SCREEN                                      ((USAGE) 0x0004)
#define HID_USAGE_DIGITIZER_TOUCH_PAD                                         ((USAGE) 0x0005)
#define HID_USAGE_DIGITIZER_WHITE_BOARD                                       ((USAGE) 0x0006)
#define HID_USAGE_DIGITIZER_COORD_MEASURING                                   ((USAGE) 0x0007)
#define HID_USAGE_DIGITIZER_3D_DIGITIZER                                      ((USAGE) 0x0008)
#define HID_USAGE_DIGITIZER_STEREO_PLOTTER                                    ((USAGE) 0x0009)
#define HID_USAGE_DIGITIZER_ARTICULATED_ARM                                   ((USAGE) 0x000A)
#define HID_USAGE_DIGITIZER_ARMATURE                                          ((USAGE) 0x000B)
#define HID_USAGE_DIGITIZER_MULTI_POINT                                       ((USAGE) 0x000C)
#define HID_USAGE_DIGITIZER_FREE_SPACE_WAND                                   ((USAGE) 0x000D)
#define HID_USAGE_DIGITIZER_DEVICE_CONFIGURATION                              ((USAGE) 0x000E)
#define HID_USAGE_DIGITIZER_HEAT_MAP                                          ((USAGE) 0x000F)
#define HID_USAGE_DIGITIZER_STYLUS                                            ((USAGE) 0x0020)
#define HID_USAGE_DIGITIZER_PUCK                                              ((USAGE) 0x0021)
#define HID_USAGE_DIGITIZER_FINGER                                            ((USAGE) 0x0022)
#define HID_USAGE_DIGITIZER_DEVICE_SETTINGS                                   ((USAGE) 0x0023)
#define HID_USAGE_DIGITIZER_CHARACTER_GESTURE                                 ((USAGE) 0x0024)
#define HID_USAGE_DIGITIZER_TIP_PRESSURE                                      ((USAGE) 0x0030)
#define HID_USAGE_DIGITIZER_BARREL_PRESSURE                                   ((USAGE) 0x0031)
#define HID_USAGE_DIGITIZER_IN_RANGE                                          ((USAGE) 0x0032)
#define HID_USAGE_DIGITIZER_TOUCH                                             ((USAGE) 0x0033)
#define HID_USAGE_DIGITIZER_UNTOUCH                                           ((USAGE) 0x0034)
#define HID_USAGE_DIGITIZER_TAP                                               ((USAGE) 0x0035)
#define HID_USAGE_DIGITIZER_QUALITY                                           ((USAGE) 0x0036)
#define HID_USAGE_DIGITIZER_DATA_VALID                                        ((USAGE) 0x0037)
#define HID_USAGE_DIGITIZER_TRANSDUCER_INDEX                                  ((USAGE) 0x0038)
#define HID_USAGE_DIGITIZER_TABLET_FUNC_KEYS                                  ((USAGE) 0x0039)
#define HID_USAGE_DIGITIZER_PROG_CHANGE_KEYS                                  ((USAGE) 0x003A)
#define HID_USAGE_DIGITIZER_BATTERY_STRENGTH                                  ((USAGE) 0x003B)
#define HID_USAGE_DIGITIZER_INVERT                                            ((USAGE) 0x003C)
#define HID_USAGE_DIGITIZER_X_TILT                                            ((USAGE) 0x003D)
#define HID_USAGE_DIGITIZER_Y_TILT                                            ((USAGE) 0x003E)
#define HID_USAGE_DIGITIZER_AZIMUTH                                           ((USAGE) 0x003F)
#define HID_USAGE_DIGITIZER_ALTITUDE                                          ((USAGE) 0x0040)
#define HID_USAGE_DIGITIZER_TWIST                                             ((USAGE) 0x0041)
#define HID_USAGE_DIGITIZER_TIP_SWITCH                                        ((USAGE) 0x0042)
#define HID_USAGE_DIGITIZER_SECONDARY_TIP_SWITCH                              ((USAGE) 0x0043)
#define HID_USAGE_DIGITIZER_BARREL_SWITCH                                     ((USAGE) 0x0044)
#define HID_USAGE_DIGITIZER_ERASER                                            ((USAGE) 0x0045)
#define HID_USAGE_DIGITIZER_TABLET_PICK                                       ((USAGE) 0x0046)
#define HID_USAGE_DIGITIZER_TOUCH_VALID                                       ((USAGE) 0x0047)
#define HID_USAGE_DIGITIZER_WIDTH                                             ((USAGE) 0x0048)
#define HID_USAGE_DIGITIZER_HEIGHT                                            ((USAGE) 0x0049)
#define HID_USAGE_DIGITIZER_CONTACT_IDENTIFIER                                ((USAGE) 0x0051)
#define HID_USAGE_DIGITIZER_DEVICE_MODE                                       ((USAGE) 0x0052)
#define HID_USAGE_DIGITIZER_DEVICE_IDENTIFIER                                 ((USAGE) 0x0053)
#define HID_USAGE_DIGITIZER_CONTACT_COUNT                                     ((USAGE) 0x0054)
#define HID_USAGE_DIGITIZER_CONTACT_COUNT_MAXIMUM                             ((USAGE) 0x0055)
#define HID_USAGE_DIGITIZER_SCAN_TIME                                         ((USAGE) 0x0056)
#define HID_USAGE_DIGITIZER_SURFACE_SWITCH                                    ((USAGE) 0x0057)
#define HID_USAGE_DIGITIZER_BUTTON_SWITCH                                     ((USAGE) 0x0058)
#define HID_USAGE_DIGITIZER_PAD_TYPE                                          ((USAGE) 0x0059)
#define HID_USAGE_DIGITIZER_SECONDARY_BARREL_SWITCH                           ((USAGE) 0x005A)
#define HID_USAGE_DIGITIZER_TRANSDUCER_SERIAL                                 ((USAGE) 0x005B)
#define HID_USAGE_DIGITIZER_PREFERRED_COLOR                                   ((USAGE) 0x005C)
#define HID_USAGE_DIGITIZER_PREFERRED_COLOR_IS_LOCKED                         ((USAGE) 0x005D)
#define HID_USAGE_DIGITIZER_PREFERRED_LINE_WIDTH                              ((USAGE) 0x005E)
#define HID_USAGE_DIGITIZER_PREFERRED_LINE_WIDTH_IS_LOCKED                    ((USAGE) 0x005F)
#define HID_USAGE_DIGITIZER_LATENCY_MODE                                      ((USAGE) 0x0060)
#define HID_USAGE_DIGITIZER_GESTURE_CHARACTER_QUALITY                         ((USAGE) 0x0061)
#define HID_USAGE_DIGITIZER_CHARACTER_GESTURE_DATA_LENGTH                     ((USAGE) 0x0062)
#define HID_USAGE_DIGITIZER_CHARACTER_GESTURE_DATA                            ((USAGE) 0x0063)
#define HID_USAGE_DIGITIZER_GESTURE_CHARACTER_ENCODING                        ((USAGE) 0x0064)
#define HID_USAGE_DIGITIZER_UTF8_CHARACTER_GESTURE_ENCODING                   ((USAGE) 0x0065)
#define HID_USAGE_DIGITIZER_UTF16_LITTLE_ENDIAN_CHARACTER_GESTURE_ENCODING    ((USAGE) 0x0066)
#define HID_USAGE_DIGITIZER_UTF16_BIG_ENDIAN_CHARACTER_GESTURE_ENCODING       ((USAGE) 0x0067)
#define HID_USAGE_DIGITIZER_UTF32_LITTLE_ENDIAN_CHARACTER_GESTURE_ENCODING    ((USAGE) 0x0068)
#define HID_USAGE_DIGITIZER_UTF32_BIG_ENDIAN_CHARACTER_GESTURE_ENCODING       ((USAGE) 0x0069)
#define HID_USAGE_DIGITIZER_HEAT_MAP_PROTOCOL_VENDOR_ID                       ((USAGE) 0x006A)
#define HID_USAGE_DIGITIZER_HEAT_MAP_PROTOCOL_VERSION                         ((USAGE) 0x006B)
#define HID_USAGE_DIGITIZER_HEAT_MAP_FRAME_DATA                               ((USAGE) 0x006C)
#define HID_USAGE_DIGITIZER_GESTURE_CHARACTER_ENABLE                          ((USAGE) 0x006D)
#define HID_USAGE_DIGITIZER_TRANSDUCER_SERIAL_PART2                           ((USAGE) 0x006E)
#define HID_USAGE_DIGITIZER_NO_PREFERRED_COLOR                                ((USAGE) 0x006F)
#define HID_USAGE_DIGITIZER_PREFERRED_LINE_STYLE                              ((USAGE) 0x0070)
#define HID_USAGE_DIGITIZER_PREFERRED_LINE_STYLE_IS_LOCKED                    ((USAGE) 0x0071)
#define HID_USAGE_DIGITIZER_INK                                               ((USAGE) 0x0072)
#define HID_USAGE_DIGITIZER_PENCIL                                            ((USAGE) 0x0073)
#define HID_USAGE_DIGITIZER_HIGHLIGHTER                                       ((USAGE) 0x0074)
#define HID_USAGE_DIGITIZER_CHISEL_MARKER                                     ((USAGE) 0x0075)
#define HID_USAGE_DIGITIZER_BRUSH                                             ((USAGE) 0x0076)
#define HID_USAGE_DIGITIZER_NO_PREFERENCE                                     ((USAGE) 0x0077)
#define HID_USAGE_DIGITIZER_DIGITIZER_DIAGNOSTIC                              ((USAGE) 0x0080)
#define HID_USAGE_DIGITIZER_DIGITIZER_ERROR                                   ((USAGE) 0x0081)
#define HID_USAGE_DIGITIZER_ERR_NORMAL_STATUS                                 ((USAGE) 0x0082)
#define HID_USAGE_DIGITIZER_ERR_TRANSDUCERS_EXCEEDED                          ((USAGE) 0x0083)
#define HID_USAGE_DIGITIZER_ERR_FULL_TRANS_FEATURES_UNAVAILABLE               ((USAGE) 0x0084)
#define HID_USAGE_DIGITIZER_ERR_CHARGE_LOW                                    ((USAGE) 0x0085)
#define HID_USAGE_DIGITIZER_TRANSDUCER_SOFTWARE_INFO                          ((USAGE) 0x0090)
#define HID_USAGE_DIGITIZER_TRANSDUCER_VENDOR                                 ((USAGE) 0x0091)
#define HID_USAGE_DIGITIZER_TRANSDUCER_PRODUCT                                ((USAGE) 0x0092)
#define HID_USAGE_DIGITIZER_DEVICE_SUPPORTED_PROTOCOLS                        ((USAGE) 0x0093)
#define HID_USAGE_DIGITIZER_TRANSDUCER_SUPPORTED_PROTOCOLS                    ((USAGE) 0x0094)
#define HID_USAGE_DIGITIZER_NO_PROTOCOL                                       ((USAGE) 0x0095)
#define HID_USAGE_DIGITIZER_WACOM_AES_PROTOCOL                                ((USAGE) 0x0096)
#define HID_USAGE_DIGITIZER_USI_PROTOCOL                                      ((USAGE) 0x0097)
#define HID_USAGE_DIGITIZER_MICROSOFT_PEN_PROTOCOL                            ((USAGE) 0x0098)
#define HID_USAGE_DIGITIZER_SUPPORTED_REPORT_RATES                            ((USAGE) 0x00A0)
#define HID_USAGE_DIGITIZER_REPORT_RATE                                       ((USAGE) 0x00A1)
#define HID_USAGE_DIGITIZER_TRANSDUCER_CONNECTED                              ((USAGE) 0x00A2)
#define HID_USAGE_DIGITIZER_SWITCH_DISABLED                                   ((USAGE) 0x00A3)
#define HID_USAGE_DIGITIZER_SWITCH_UNIMPLEMENTED                              ((USAGE) 0x00A4)
#define HID_USAGE_DIGITIZER_TRANSDUCER_SWITCHES                               ((USAGE) 0x00A5)
#define HID_USAGE_DIGITIZER_TRANSDUCER_INDEX_SELECTOR                         ((USAGE) 0x00A6)
#define HID_USAGE_DIGITIZER_BUTTON_PRESS_THRESHOLD                            ((USAGE) 0x00B0)

//
// Eye and Head Trackers Page (0x12)
//
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_EYE_TRACKER                    ((USAGE) 0x0001)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_HEAD_TRACKER                   ((USAGE) 0x0002)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_TRACKING_DATA                  ((USAGE) 0x0010)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CAPABILITIES                   ((USAGE) 0x0011)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CONFIGURATION                  ((USAGE) 0x0012)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_STATUS                         ((USAGE) 0x0013)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CONTROL                        ((USAGE) 0x0014)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_SENSOR_TIMESTAMP               ((USAGE) 0x0020)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_POSITION_X                     ((USAGE) 0x0021)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_POSITION_Y                     ((USAGE) 0x0022)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_POSITION_Z                     ((USAGE) 0x0023)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_GAZE_POINT                     ((USAGE) 0x0024)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_LEFT_EYE_POSITION              ((USAGE) 0x0025)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_RIGHT_EYE_POSITION             ((USAGE) 0x0026)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_HEAD_POSITION                  ((USAGE) 0x0027)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_HEAD_DIRECTION_POINT           ((USAGE) 0x0028)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_ROTATION_ABOUT_X_AXIS          ((USAGE) 0x0029)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_ROTATION_ABOUT_Y_AXIS          ((USAGE) 0x002A)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_ROTATION_ABOUT_Z_AXIS          ((USAGE) 0x002B)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_TRACKER_QUALITY                ((USAGE) 0x0100)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_MINIMUM_TRACKING_DISTANCE      ((USAGE) 0x0101)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_OPTIMUM_TRACKING_DISTANCE      ((USAGE) 0x0102)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_MAXIMUM_TRACKING_DISTANCE      ((USAGE) 0x0103)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_MAXIMUM_SCREEN_PLANE_WIDTH     ((USAGE) 0x0104)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_MAXIMUM_SCREEN_PLANE_HEIGHT    ((USAGE) 0x0105)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_DISPLAY_MANUFACTURER_ID        ((USAGE) 0x0200)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_DISPLAY_PRODUCT_ID             ((USAGE) 0x0201)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_DISPLAY_SERIAL_NUMBER          ((USAGE) 0x0202)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_DISPLAY_MANUFACTURER_DATE      ((USAGE) 0x0203)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CALIBRATED_SCREEN_WIDTH        ((USAGE) 0x0204)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CALIBRATED_SCREEN_HEIGHT       ((USAGE) 0x0205)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_SAMPLING_FREQUENCY             ((USAGE) 0x0300)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_CONFIGURATION_STATUS           ((USAGE) 0x0301)
#define HID_USAGE_EYE_AND_HEAD_TRACKERS_DEVICE_MODE_REQUEST            ((USAGE) 0x0400)

//
// FIDO Alliance Page (0xF1D0)
//
#define HID_USAGE_FIDO_ALLIANCE_U2F_AUTHENTICATOR_DEVICE    ((USAGE) 0x0001)
#define HID_USAGE_FIDO_ALLIANCE_INPUT_REPORT_DATA           ((USAGE) 0x0020)
#define HID_USAGE_FIDO_ALLIANCE_OUTPUT_REPORT_DATA          ((USAGE) 0x0021)

//
// Game Controls Page (0x05)
//
#define HID_USAGE_GAME_3D_GAME_CONTROLLER     ((USAGE) 0x0001)
#define HID_USAGE_GAME_PINBALL_DEVICE         ((USAGE) 0x0002)
#define HID_USAGE_GAME_GUN_DEVICE             ((USAGE) 0x0003)
#define HID_USAGE_GAME_POV                    ((USAGE) 0x0020)
#define HID_USAGE_GAME_TURN_RIGHT_LEFT        ((USAGE) 0x0021)
#define HID_USAGE_GAME_PITCH_FORWARD_BACK     ((USAGE) 0x0022)
#define HID_USAGE_GAME_ROLL_RIGHT_LEFT        ((USAGE) 0x0023)
#define HID_USAGE_GAME_MOVE_RIGHT_LEFT        ((USAGE) 0x0024)
#define HID_USAGE_GAME_MOVE_FORWARD_BACK      ((USAGE) 0x0025)
#define HID_USAGE_GAME_MOVE_UP_DOWN           ((USAGE) 0x0026)
#define HID_USAGE_GAME_LEAN_RIGHT_LEFT        ((USAGE) 0x0027)
#define HID_USAGE_GAME_LEAN_FORWARD_BACK      ((USAGE) 0x0028)
#define HID_USAGE_GAME_POV_HEIGHT             ((USAGE) 0x0029)
#define HID_USAGE_GAME_FLIPPER                ((USAGE) 0x002A)
#define HID_USAGE_GAME_SECONDARY_FLIPPER      ((USAGE) 0x002B)
#define HID_USAGE_GAME_BUMP                   ((USAGE) 0x002C)
#define HID_USAGE_GAME_NEW_GAME               ((USAGE) 0x002D)
#define HID_USAGE_GAME_SHOOT_BALL             ((USAGE) 0x002E)
#define HID_USAGE_GAME_PLAYER                 ((USAGE) 0x002F)
#define HID_USAGE_GAME_GUN_BOLT               ((USAGE) 0x0030)
#define HID_USAGE_GAME_GUN_CLIP               ((USAGE) 0x0031)
#define HID_USAGE_GAME_GUN_SELECTOR           ((USAGE) 0x0032)
#define HID_USAGE_GAME_GUN_SINGLE_SHOT        ((USAGE) 0x0033)
#define HID_USAGE_GAME_GUN_BURST              ((USAGE) 0x0034)
#define HID_USAGE_GAME_GUN_AUTOMATIC          ((USAGE) 0x0035)
#define HID_USAGE_GAME_GUN_SAFETY             ((USAGE) 0x0036)
#define HID_USAGE_GAME_GAMEPAD_FIRE_JUMP      ((USAGE) 0x0037)
#define HID_USAGE_GAME_GAMEPAD_TRIGGER        ((USAGE) 0x0039)
#define HID_USAGE_GAME_FORMFITTING_GAMEPAD    ((USAGE) 0x003A)

//
// Gaming Device Page (0x92)
//
// There is no need to label these usages.
//

//
// Generic Desktop Page (0x01)
//
#define HID_USAGE_GENERIC_POINTER                                       ((USAGE) 0x0001)
#define HID_USAGE_GENERIC_MOUSE                                         ((USAGE) 0x0002)
#define HID_USAGE_GENERIC_JOYSTICK                                      ((USAGE) 0x0004)
#define HID_USAGE_GENERIC_GAMEPAD                                       ((USAGE) 0x0005)
#define HID_USAGE_GENERIC_KEYBOARD                                      ((USAGE) 0x0006)
#define HID_USAGE_GENERIC_KEYPAD                                        ((USAGE) 0x0007)
#define HID_USAGE_GENERIC_MULTI_AXIS_CONTROLLER                         ((USAGE) 0x0008)
#define HID_USAGE_GENERIC_TABLET_PC_SYSTEM_CTL                          ((USAGE) 0x0009)
#define HID_USAGE_GENERIC_WATER_COOLING_DEVICE                          ((USAGE) 0x000A)
#define HID_USAGE_GENERIC_COMPUTER_CHASSIS_DEVICE                       ((USAGE) 0x000B)
#define HID_USAGE_GENERIC_WIRELESS_RADIO_CONTROLS                       ((USAGE) 0x000C)
#define HID_USAGE_GENERIC_PORTABLE_DEVICE_CONTROL                       ((USAGE) 0x000D)
#define HID_USAGE_GENERIC_INTERACTIVE_CONTROL                           ((USAGE) 0x000E)
#define HID_USAGE_GENERIC_SPATIAL_CONTROLLER                            ((USAGE) 0x000F)
#define HID_USAGE_GENERIC_ASSISTIVE_CONTROL                             ((USAGE) 0x0010)
#define HID_USAGE_GENERIC_DEVICE_DOCK                                   ((USAGE) 0x0011)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE                               ((USAGE) 0x0012)
#define HID_USAGE_GENERIC_CALL_STATE_MANAGEMENT_CONTROL                 ((USAGE) 0x0013)
#define HID_USAGE_GENERIC_X                                             ((USAGE) 0x0030)
#define HID_USAGE_GENERIC_Y                                             ((USAGE) 0x0031)
#define HID_USAGE_GENERIC_Z                                             ((USAGE) 0x0032)
#define HID_USAGE_GENERIC_RX                                            ((USAGE) 0x0033)
#define HID_USAGE_GENERIC_RY                                            ((USAGE) 0x0034)
#define HID_USAGE_GENERIC_RZ                                            ((USAGE) 0x0035)
#define HID_USAGE_GENERIC_SLIDER                                        ((USAGE) 0x0036)
#define HID_USAGE_GENERIC_DIAL                                          ((USAGE) 0x0037)
#define HID_USAGE_GENERIC_WHEEL                                         ((USAGE) 0x0038)
#define HID_USAGE_GENERIC_HATSWITCH                                     ((USAGE) 0x0039)
#define HID_USAGE_GENERIC_COUNTED_BUFFER                                ((USAGE) 0x003A)
#define HID_USAGE_GENERIC_BYTE_COUNT                                    ((USAGE) 0x003B)
#define HID_USAGE_GENERIC_MOTION_WAKEUP                                 ((USAGE) 0x003C)
#define HID_USAGE_GENERIC_START                                         ((USAGE) 0x003D)
#define HID_USAGE_GENERIC_SELECT                                        ((USAGE) 0x003E)
#define HID_USAGE_GENERIC_VX                                            ((USAGE) 0x0040)
#define HID_USAGE_GENERIC_VY                                            ((USAGE) 0x0041)
#define HID_USAGE_GENERIC_VZ                                            ((USAGE) 0x0042)
#define HID_USAGE_GENERIC_VBRX                                          ((USAGE) 0x0043)
#define HID_USAGE_GENERIC_VBRY                                          ((USAGE) 0x0044)
#define HID_USAGE_GENERIC_VBRZ                                          ((USAGE) 0x0045)
#define HID_USAGE_GENERIC_VNO                                           ((USAGE) 0x0046)
#define HID_USAGE_GENERIC_FEATURE_NOTIFICATION                          ((USAGE) 0x0047)
#define HID_USAGE_GENERIC_RESOLUTION_MULTIPLIER                         ((USAGE) 0x0048)
#define HID_USAGE_GENERIC_QX                                            ((USAGE) 0x0049)
#define HID_USAGE_GENERIC_QY                                            ((USAGE) 0x004A)
#define HID_USAGE_GENERIC_QZ                                            ((USAGE) 0x004B)
#define HID_USAGE_GENERIC_QW                                            ((USAGE) 0x004C)
#define HID_USAGE_GENERIC_SYSTEM_CTL                                    ((USAGE) 0x0080)
#define HID_USAGE_GENERIC_SYSCTL_POWER                                  ((USAGE) 0x0081)
#define HID_USAGE_GENERIC_SYSCTL_SLEEP                                  ((USAGE) 0x0082)
#define HID_USAGE_GENERIC_SYSCTL_WAKE                                   ((USAGE) 0x0083)
#define HID_USAGE_GENERIC_SYSCTL_CONTEXT_MENU                           ((USAGE) 0x0084)
#define HID_USAGE_GENERIC_SYSCTL_MAIN_MENU                              ((USAGE) 0x0085)
#define HID_USAGE_GENERIC_SYSCTL_APP_MENU                               ((USAGE) 0x0086)
#define HID_USAGE_GENERIC_SYSCTL_HELP_MENU                              ((USAGE) 0x0087)
#define HID_USAGE_GENERIC_SYSCTL_MENU_EXIT                              ((USAGE) 0x0088)
#define HID_USAGE_GENERIC_SYSCTL_MENU_SELECT                            ((USAGE) 0x0089)
#define HID_USAGE_GENERIC_SYSCTL_MENU_RIGHT                             ((USAGE) 0x008A)
#define HID_USAGE_GENERIC_SYSCTL_MENU_LEFT                              ((USAGE) 0x008B)
#define HID_USAGE_GENERIC_SYSCTL_MENU_UP                                ((USAGE) 0x008C)
#define HID_USAGE_GENERIC_SYSCTL_MENU_DOWN                              ((USAGE) 0x008D)
#define HID_USAGE_GENERIC_SYSCTL_COLD_RESTART                           ((USAGE) 0x008E)
#define HID_USAGE_GENERIC_SYSCTL_WARM_RESTART                           ((USAGE) 0x008F)
#define HID_USAGE_GENERIC_DPAD_UP                                       ((USAGE) 0x0090)
#define HID_USAGE_GENERIC_DPAD_DOWN                                     ((USAGE) 0x0091)
#define HID_USAGE_GENERIC_DPAD_RIGHT                                    ((USAGE) 0x0092)
#define HID_USAGE_GENERIC_DPAD_LEFT                                     ((USAGE) 0x0093)
#define HID_USAGE_GENERIC_INDEX_TRIGGER                                 ((USAGE) 0x0094)
#define HID_USAGE_GENERIC_PALM_TRIGGER                                  ((USAGE) 0x0095)
#define HID_USAGE_GENERIC_THUMBSTICK                                    ((USAGE) 0x0096)
#define HID_USAGE_GENERIC_SYSCTL_FN                                     ((USAGE) 0x0097)
#define HID_USAGE_GENERIC_SYSCTL_FN_LOCK                                ((USAGE) 0x0098)
#define HID_USAGE_GENERIC_SYSCTL_FN_LOCK_INDICATOR                      ((USAGE) 0x0099)
#define HID_USAGE_GENERIC_SYSCTL_DISMISS_NOTIFICATION                   ((USAGE) 0x009A)
#define HID_USAGE_GENERIC_SYSTEM_DO_NOT_DISTURB                         ((USAGE) 0x009B)
#define HID_USAGE_GENERIC_SYSCTL_DOCK                                   ((USAGE) 0x00A0)
#define HID_USAGE_GENERIC_SYSCTL_UNDOCK                                 ((USAGE) 0x00A1)
#define HID_USAGE_GENERIC_SYSCTL_SETUP                                  ((USAGE) 0x00A2)
#define HID_USAGE_GENERIC_SYSCTL_SYS_BREAK                              ((USAGE) 0x00A3)
#define HID_USAGE_GENERIC_SYSCTL_SYS_DBG_BREAK                          ((USAGE) 0x00A4)
#define HID_USAGE_GENERIC_SYSCTL_APP_BREAK                              ((USAGE) 0x00A5)
#define HID_USAGE_GENERIC_SYSCTL_APP_DBG_BREAK                          ((USAGE) 0x00A6)
#define HID_USAGE_GENERIC_SYSCTL_MUTE                                   ((USAGE) 0x00A7)
#define HID_USAGE_GENERIC_SYSCTL_HIBERNATE                              ((USAGE) 0x00A8)
#define HID_USAGE_GENERIC_SYSCTL_MICROPHONE_MUTE                        ((USAGE) 0x00A9)
#define HID_USAGE_GENERIC_SYSCTL_ACCESSIBILITY_BINDING                  ((USAGE) 0x00AA)
#define HID_USAGE_GENERIC_SYSCTL_DISP_INVERT                            ((USAGE) 0x00B0)
#define HID_USAGE_GENERIC_SYSCTL_DISP_INTERNAL                          ((USAGE) 0x00B1)
#define HID_USAGE_GENERIC_SYSCTL_DISP_EXTERNAL                          ((USAGE) 0x00B2)
#define HID_USAGE_GENERIC_SYSCTL_DISP_BOTH                              ((USAGE) 0x00B3)
#define HID_USAGE_GENERIC_SYSCTL_DISP_DUAL                              ((USAGE) 0x00B4)
#define HID_USAGE_GENERIC_SYSCTL_DISP_TOGGLE                            ((USAGE) 0x00B5)
#define HID_USAGE_GENERIC_SYSCTL_DISP_SWAP                              ((USAGE) 0x00B6)
#define HID_USAGE_GENERIC_SYSCTL_DISP_AUTOSCALE                         ((USAGE) 0x00B7)
#define HID_USAGE_GENERIC_SENSOR_ZONE                                   ((USAGE) 0x00C0)
#define HID_USAGE_GENERIC_RPM                                           ((USAGE) 0x00C1)
#define HID_USAGE_GENERIC_COOLANT_LEVEL                                 ((USAGE) 0x00C2)
#define HID_USAGE_GENERIC_COOLANT_CRITICAL_LEVEL                        ((USAGE) 0x00C3)
#define HID_USAGE_GENERIC_COOLANT_PUMP                                  ((USAGE) 0x00C4)
#define HID_USAGE_GENERIC_CHASSIS_ENCLOSURE                             ((USAGE) 0x00C5)
#define HID_USAGE_GENERIC_WIRELESS_RADIO_BUTTON                         ((USAGE) 0x00C6)
#define HID_USAGE_GENERIC_WIRELESS_RADIO_LED                            ((USAGE) 0x00C7)
#define HID_USAGE_GENERIC_WIRELESS_RADIO_SLIDER_SWITCH                  ((USAGE) 0x00C8)
#define HID_USAGE_GENERIC_SYSTEM_DISPLAY_ROTATION_LOCK_BUTTON           ((USAGE) 0x00C9)
#define HID_USAGE_GENERIC_SYSTEM_DISPLAY_ROTATION_LOCK_SLIDER_SWITCH    ((USAGE) 0x00CA)
#define HID_USAGE_GENERIC_CONTROL_ENABLE                                ((USAGE) 0x00CB)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_UNIQUE_ID                     ((USAGE) 0x00D0)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_VENDOR_ID                     ((USAGE) 0x00D1)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_PRIMARY_USAGE_PAGE            ((USAGE) 0x00D2)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_PRIMARY_USAGE_ID              ((USAGE) 0x00D3)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_DOCKING_STATE                 ((USAGE) 0x00D4)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_DISPLAY_OCCLUSION             ((USAGE) 0x00D5)
#define HID_USAGE_GENERIC_DOCKABLE_DEVICE_OBJECT_TYPE                   ((USAGE) 0x00D6)
#define HID_USAGE_GENERIC_CALL_ACTIVE_LED                               ((USAGE) 0x00E0)
#define HID_USAGE_GENERIC_CALL_MUTE_TOGGLE                              ((USAGE) 0x00E1)
#define HID_USAGE_GENERIC_CALL_MUTE_LED                                 ((USAGE) 0x00E2)

//
// Generic Device Controls Page (0x06)
//
#define HID_USAGE_GENERIC_DEVICE_BACKGROUNDNONUSER_CONTROLS    ((USAGE) 0x0001)
#define HID_USAGE_GENERIC_DEVICE_BATTERY_STRENGTH              ((USAGE) 0x0020)
#define HID_USAGE_GENERIC_DEVICE_WIRELESS_CHANNEL              ((USAGE) 0x0021)
#define HID_USAGE_GENERIC_DEVICE_WIRELESS_ID                   ((USAGE) 0x0022)
#define HID_USAGE_GENERIC_DEVICE_DISCOVER_WIRELESS_CONTROL     ((USAGE) 0x0023)
#define HID_USAGE_GENERIC_DEVICE_SECURITY_CODE_CHAR_ENTERED    ((USAGE) 0x0024)
#define HID_USAGE_GENERIC_DEVICE_SECURITY_CODE_CHAR_ERASED     ((USAGE) 0x0025)
#define HID_USAGE_GENERIC_DEVICE_SECURITY_CODE_CLEARED         ((USAGE) 0x0026)
#define HID_USAGE_GENERIC_DEVICE_SEQUENCE_ID                   ((USAGE) 0x0027)
#define HID_USAGE_GENERIC_DEVICE_SEQUENCE_ID_RESET             ((USAGE) 0x0028)
#define HID_USAGE_GENERIC_DEVICE_RF_SIGNAL_STRENGTH            ((USAGE) 0x0029)
#define HID_USAGE_GENERIC_DEVICE_SOFTWARE_VERSION              ((USAGE) 0x002A)
#define HID_USAGE_GENERIC_DEVICE_PROTOCOL_VERSION              ((USAGE) 0x002B)
#define HID_USAGE_GENERIC_DEVICE_HARDWARE_VERSION              ((USAGE) 0x002C)
#define HID_USAGE_GENERIC_DEVICE_MAJOR                         ((USAGE) 0x002D)
#define HID_USAGE_GENERIC_DEVICE_MINOR                         ((USAGE) 0x002E)
#define HID_USAGE_GENERIC_DEVICE_REVISION                      ((USAGE) 0x002F)
#define HID_USAGE_GENERIC_DEVICE_HANDEDNESS                    ((USAGE) 0x0030)
#define HID_USAGE_GENERIC_DEVICE_EITHER_HAND                   ((USAGE) 0x0031)
#define HID_USAGE_GENERIC_DEVICE_LEFT_HAND                     ((USAGE) 0x0032)
#define HID_USAGE_GENERIC_DEVICE_RIGHT_HAND                    ((USAGE) 0x0033)
#define HID_USAGE_GENERIC_DEVICE_BOTH_HANDS                    ((USAGE) 0x0034)
#define HID_USAGE_GENERIC_DEVICE_GRIP_POSE_OFFSET              ((USAGE) 0x0040)
#define HID_USAGE_GENERIC_DEVICE_POINTER_POSE_OFFSET           ((USAGE) 0x0041)

//
// Haptics Page (0x0E)
//
#define HID_USAGE_HAPTICS_SIMPLE_CONTROLLER                    ((USAGE) 0x0001)
#define HID_USAGE_HAPTICS_WAVEFORM_LIST                        ((USAGE) 0x0010)
#define HID_USAGE_HAPTICS_DURATION_LIST                        ((USAGE) 0x0011)
#define HID_USAGE_HAPTICS_AUTO_TRIGGER                         ((USAGE) 0x0020)
#define HID_USAGE_HAPTICS_MANUAL_TRIGGER                       ((USAGE) 0x0021)
#define HID_USAGE_HAPTICS_AUTO_ASSOCIATED_CONTROL              ((USAGE) 0x0022)
#define HID_USAGE_HAPTICS_INTENSITY                            ((USAGE) 0x0023)
#define HID_USAGE_HAPTICS_REPEAT_COUNT                         ((USAGE) 0x0024)
#define HID_USAGE_HAPTICS_RETRIGGER_PERIOD                     ((USAGE) 0x0025)
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_PAGE                 ((USAGE) 0x0026)
#define HID_USAGE_HAPTICS_WAVEFORM_VENDOR_ID                   ((USAGE) 0x0027)
#define HID_USAGE_HAPTICS_WAVEFORM_CUTOFF_TIME                 ((USAGE) 0x0028)
#define HID_USAGE_HAPTICS_WAVEFORM_NONE                        ((USAGE) 0x1001)
#define HID_USAGE_HAPTICS_WAVEFORM_STOP                        ((USAGE) 0x1002)
#define HID_USAGE_HAPTICS_WAVEFORM_CLICK                       ((USAGE) 0x1003)
#define HID_USAGE_HAPTICS_WAVEFORM_BUZZ                        ((USAGE) 0x1004)
#define HID_USAGE_HAPTICS_WAVEFORM_RUMBLE                      ((USAGE) 0x1005)
#define HID_USAGE_HAPTICS_WAVEFORM_PRESS                       ((USAGE) 0x1006)
#define HID_USAGE_HAPTICS_WAVEFORM_RELEASE                     ((USAGE) 0x1007)
#define HID_USAGE_HAPTICS_WAVEFORM_HOVER                       ((USAGE) 0x1008)
#define HID_USAGE_HAPTICS_WAVEFORM_SUCCESS                     ((USAGE) 0x1009)
#define HID_USAGE_HAPTICS_WAVEFORM_ERROR                       ((USAGE) 0x100A)
#define HID_USAGE_HAPTICS_WAVEFORM_INK_CONTINUOUS              ((USAGE) 0x100B)
#define HID_USAGE_HAPTICS_WAVEFORM_PENCIL_CONTINUOUS           ((USAGE) 0x100C)
#define HID_USAGE_HAPTICS_WAVEFORM_MARKER_CONTINUOUS           ((USAGE) 0x100D)
#define HID_USAGE_HAPTICS_WAVEFORM_CHISEL_MARKER_CONTINUOUS    ((USAGE) 0x100E)
#define HID_USAGE_HAPTICS_WAVEFORM_BRUSH_CONTINUOUS            ((USAGE) 0x100F)
#define HID_USAGE_HAPTICS_WAVEFORM_ERASER_CONTINUOUS           ((USAGE) 0x1010)
#define HID_USAGE_HAPTICS_WAVEFORM_SPARKLE_CONTINUOUS          ((USAGE) 0x1011)

//
// Keyboard/Keypad Page (0x07)
//
#define HID_USAGE_KEYBOARD_NOEVENT                            ((USAGE) 0x0000)
#define HID_USAGE_KEYBOARD_ROLLOVER                           ((USAGE) 0x0001)
#define HID_USAGE_KEYBOARD_POSTFAIL                           ((USAGE) 0x0002)
#define HID_USAGE_KEYBOARD_UNDEFINED                          ((USAGE) 0x0003)
#define HID_USAGE_KEYBOARD_aA                                 ((USAGE) 0x0004)
#define HID_USAGE_KEYBOARD_bB                                 ((USAGE) 0x0005)
#define HID_USAGE_KEYBOARD_cC                                 ((USAGE) 0x0006)
#define HID_USAGE_KEYBOARD_dD                                 ((USAGE) 0x0007)
#define HID_USAGE_KEYBOARD_eE                                 ((USAGE) 0x0008)
#define HID_USAGE_KEYBOARD_fF                                 ((USAGE) 0x0009)
#define HID_USAGE_KEYBOARD_gG                                 ((USAGE) 0x000A)
#define HID_USAGE_KEYBOARD_hH                                 ((USAGE) 0x000B)
#define HID_USAGE_KEYBOARD_iI                                 ((USAGE) 0x000C)
#define HID_USAGE_KEYBOARD_jJ                                 ((USAGE) 0x000D)
#define HID_USAGE_KEYBOARD_kK                                 ((USAGE) 0x000E)
#define HID_USAGE_KEYBOARD_lL                                 ((USAGE) 0x000F)
#define HID_USAGE_KEYBOARD_mM                                 ((USAGE) 0x0010)
#define HID_USAGE_KEYBOARD_nN                                 ((USAGE) 0x0011)
#define HID_USAGE_KEYBOARD_oO                                 ((USAGE) 0x0012)
#define HID_USAGE_KEYBOARD_pP                                 ((USAGE) 0x0013)
#define HID_USAGE_KEYBOARD_qQ                                 ((USAGE) 0x0014)
#define HID_USAGE_KEYBOARD_rR                                 ((USAGE) 0x0015)
#define HID_USAGE_KEYBOARD_sS                                 ((USAGE) 0x0016)
#define HID_USAGE_KEYBOARD_tT                                 ((USAGE) 0x0017)
#define HID_USAGE_KEYBOARD_uU                                 ((USAGE) 0x0018)
#define HID_USAGE_KEYBOARD_vV                                 ((USAGE) 0x0019)
#define HID_USAGE_KEYBOARD_wW                                 ((USAGE) 0x001A)
#define HID_USAGE_KEYBOARD_xX                                 ((USAGE) 0x001B)
#define HID_USAGE_KEYBOARD_yY                                 ((USAGE) 0x001C)
#define HID_USAGE_KEYBOARD_zZ                                 ((USAGE) 0x001D)
#define HID_USAGE_KEYBOARD_ONE                                ((USAGE) 0x001E)
#define HID_USAGE_KEYBOARD_TWO_AND_AT                         ((USAGE) 0x001F)
#define HID_USAGE_KEYBOARD_THREE_AND_HASH                     ((USAGE) 0x0020)
#define HID_USAGE_KEYBOARD_FOUR_AND_DOLLAR                    ((USAGE) 0x0021)
#define HID_USAGE_KEYBOARD_FIVE_AND_PERCENT                   ((USAGE) 0x0022)
#define HID_USAGE_KEYBOARD_SIX_AND_CARET                      ((USAGE) 0x0023)
#define HID_USAGE_KEYBOARD_SEVEN_AND_AMPERSAND                ((USAGE) 0x0024)
#define HID_USAGE_KEYBOARD_EIGHT_AND_STAR                     ((USAGE) 0x0025)
#define HID_USAGE_KEYBOARD_NINE_AND_LEFT_BRACKET              ((USAGE) 0x0026)
#define HID_USAGE_KEYBOARD_ZERO                               ((USAGE) 0x0027)
#define HID_USAGE_KEYBOARD_RETURN                             ((USAGE) 0x0028)
#define HID_USAGE_KEYBOARD_ESCAPE                             ((USAGE) 0x0029)
#define HID_USAGE_KEYBOARD_DELETE                             ((USAGE) 0x002A)
#define HID_USAGE_KEYBOARD_TAB                                ((USAGE) 0x002B)
#define HID_USAGE_KEYBOARD_SPACEBAR                           ((USAGE) 0x002C)
#define HID_USAGE_KEYBOARD_DASH_AND_UNDERSCORE                ((USAGE) 0x002D)
#define HID_USAGE_KEYBOARD_EQUALS_AND_PLUS                    ((USAGE) 0x002E)
#define HID_USAGE_KEYBOARD_LEFT_BRACE                         ((USAGE) 0x002F)
#define HID_USAGE_KEYBOARD_RIGHT_BRACE                        ((USAGE) 0x0030)
#define HID_USAGE_KEYBOARD_BACKSLASH_AND_PIPE                 ((USAGE) 0x0031)
#define HID_USAGE_KEYBOARD_NONUS_HASH_AND_TILDE               ((USAGE) 0x0032)
#define HID_USAGE_KEYBOARD_SEMICOLON_AND_COLON                ((USAGE) 0x0033)
#define HID_USAGE_KEYBOARD_LEFT_APOS_AND_DOUBLE               ((USAGE) 0x0034)
#define HID_USAGE_KEYBOARD_GRAVE_ACCENT_AND_TILDE             ((USAGE) 0x0035)
#define HID_USAGE_KEYBOARD_COMMA_AND_LESSTHAN                 ((USAGE) 0x0036)
#define HID_USAGE_KEYBOARD_PERIOD_AND_GREATERTHAN             ((USAGE) 0x0037)
#define HID_USAGE_KEYBOARD_FORWARDSLASH_AND_QUESTIONMARK      ((USAGE) 0x0038)
#define HID_USAGE_KEYBOARD_CAPS_LOCK                          ((USAGE) 0x0039)
#define HID_USAGE_KEYBOARD_F1                                 ((USAGE) 0x003A)
#define HID_USAGE_KEYBOARD_F2                                 ((USAGE) 0x003B)
#define HID_USAGE_KEYBOARD_F3                                 ((USAGE) 0x003C)
#define HID_USAGE_KEYBOARD_F4                                 ((USAGE) 0x003D)
#define HID_USAGE_KEYBOARD_F5                                 ((USAGE) 0x003E)
#define HID_USAGE_KEYBOARD_F6                                 ((USAGE) 0x003F)
#define HID_USAGE_KEYBOARD_F7                                 ((USAGE) 0x0040)
#define HID_USAGE_KEYBOARD_F8                                 ((USAGE) 0x0041)
#define HID_USAGE_KEYBOARD_F9                                 ((USAGE) 0x0042)
#define HID_USAGE_KEYBOARD_F10                                ((USAGE) 0x0043)
#define HID_USAGE_KEYBOARD_F11                                ((USAGE) 0x0044)
#define HID_USAGE_KEYBOARD_F12                                ((USAGE) 0x0045)
#define HID_USAGE_KEYBOARD_PRINT_SCREEN                       ((USAGE) 0x0046)
#define HID_USAGE_KEYBOARD_SCROLL_LOCK                        ((USAGE) 0x0047)
#define HID_USAGE_KEYBOARD_PAUSE                              ((USAGE) 0x0048)
#define HID_USAGE_KEYBOARD_INSERT                             ((USAGE) 0x0049)
#define HID_USAGE_KEYBOARD_HOME                               ((USAGE) 0x004A)
#define HID_USAGE_KEYBOARD_PAGEUP                             ((USAGE) 0x004B)
#define HID_USAGE_KEYBOARD_DELETE_FORWARD                     ((USAGE) 0x004C)
#define HID_USAGE_KEYBOARD_END                                ((USAGE) 0x004D)
#define HID_USAGE_KEYBOARD_PAGEDOWN                           ((USAGE) 0x004E)
#define HID_USAGE_KEYBOARD_RIGHTARROW                         ((USAGE) 0x004F)
#define HID_USAGE_KEYBOARD_LEFTARROW                          ((USAGE) 0x0050)
#define HID_USAGE_KEYBOARD_DOWNARROW                          ((USAGE) 0x0051)
#define HID_USAGE_KEYBOARD_UPARROW                            ((USAGE) 0x0052)
#define HID_USAGE_KEYBOARD_NUM_LOCK                           ((USAGE) 0x0053)
#define HID_USAGE_KEYBOARD_KEYPAD_FORWARDSLASH                ((USAGE) 0x0054)
#define HID_USAGE_KEYBOARD_KEYPAD_STAR                        ((USAGE) 0x0055)
#define HID_USAGE_KEYBOARD_DASH                               ((USAGE) 0x0056)
#define HID_USAGE_KEYBOARD_KEYPAD_PLUS                        ((USAGE) 0x0057)
#define HID_USAGE_KEYBOARD_KEYPAD_ENTER                       ((USAGE) 0x0058)
#define HID_USAGE_KEYBOARD_KEYPAD_ONE_AND_END                 ((USAGE) 0x0059)
#define HID_USAGE_KEYBOARD_KEYPAD_TWO_AND_DOWN_ARROW          ((USAGE) 0x005A)
#define HID_USAGE_KEYBOARD_KEYPAD_THREE_AND_PAGEDN            ((USAGE) 0x005B)
#define HID_USAGE_KEYBOARD_KEYPAD_FOUR_AND_LEFT_ARROW         ((USAGE) 0x005C)
#define HID_USAGE_KEYBOARD_KEYPAD_FIVE                        ((USAGE) 0x005D)
#define HID_USAGE_KEYBOARD_KEYPAD_SIX_AND_RIGHT_ARROW         ((USAGE) 0x005E)
#define HID_USAGE_KEYBOARD_KEYPAD_SEVEN_AND_HOME              ((USAGE) 0x005F)
#define HID_USAGE_KEYBOARD_KEYPAD_EIGHT_AND_UP_ARROW          ((USAGE) 0x0060)
#define HID_USAGE_KEYBOARD_KEYPAD_NINE_AND_PAGEUP             ((USAGE) 0x0061)
#define HID_USAGE_KEYBOARD_KEYPAD_ZERO_AND_INSERT             ((USAGE) 0x0062)
#define HID_USAGE_KEYBOARD_KEYPAD_PERIOD_AND_DELETE           ((USAGE) 0x0063)
#define HID_USAGE_KEYBOARD_NONUS_BACKSLASH_AND_PIPE           ((USAGE) 0x0064)
#define HID_USAGE_KEYBOARD_APPLICATION                        ((USAGE) 0x0065)
#define HID_USAGE_KEYBOARD_POWER                              ((USAGE) 0x0066)
#define HID_USAGE_KEYBOARD_KEYPAD_EQUALS                      ((USAGE) 0x0067)
#define HID_USAGE_KEYBOARD_F13                                ((USAGE) 0x0068)
#define HID_USAGE_KEYBOARD_F14                                ((USAGE) 0x0069)
#define HID_USAGE_KEYBOARD_F15                                ((USAGE) 0x006A)
#define HID_USAGE_KEYBOARD_F16                                ((USAGE) 0x006B)
#define HID_USAGE_KEYBOARD_F17                                ((USAGE) 0x006C)
#define HID_USAGE_KEYBOARD_F18                                ((USAGE) 0x006D)
#define HID_USAGE_KEYBOARD_F19                                ((USAGE) 0x006E)
#define HID_USAGE_KEYBOARD_F20                                ((USAGE) 0x006F)
#define HID_USAGE_KEYBOARD_F21                                ((USAGE) 0x0070)
#define HID_USAGE_KEYBOARD_F22                                ((USAGE) 0x0071)
#define HID_USAGE_KEYBOARD_F23                                ((USAGE) 0x0072)
#define HID_USAGE_KEYBOARD_F24                                ((USAGE) 0x0073)
#define HID_USAGE_KEYBOARD_EXECUTE                            ((USAGE) 0x0074)
#define HID_USAGE_KEYBOARD_HELP                               ((USAGE) 0x0075)
#define HID_USAGE_KEYBOARD_MENU                               ((USAGE) 0x0076)
#define HID_USAGE_KEYBOARD_SELECT                             ((USAGE) 0x0077)
#define HID_USAGE_KEYBOARD_STOP                               ((USAGE) 0x0078)
#define HID_USAGE_KEYBOARD_AGAIN                              ((USAGE) 0x0079)
#define HID_USAGE_KEYBOARD_UNDO                               ((USAGE) 0x007A)
#define HID_USAGE_KEYBOARD_CUT                                ((USAGE) 0x007B)
#define HID_USAGE_KEYBOARD_COPY                               ((USAGE) 0x007C)
#define HID_USAGE_KEYBOARD_PASTE                              ((USAGE) 0x007D)
#define HID_USAGE_KEYBOARD_FIND                               ((USAGE) 0x007E)
#define HID_USAGE_KEYBOARD_MUTE                               ((USAGE) 0x007F)
#define HID_USAGE_KEYBOARD_VOLUME_UP                          ((USAGE) 0x0080)
#define HID_USAGE_KEYBOARD_VOLUME_DOWN                        ((USAGE) 0x0081)
#define HID_USAGE_KEYBOARD_LOCKING_CAPS_LOCK                  ((USAGE) 0x0082)
#define HID_USAGE_KEYBOARD_LOCKING_NUM_LOCK                   ((USAGE) 0x0083)
#define HID_USAGE_KEYBOARD_LOCKING_SCROLL_LOCK                ((USAGE) 0x0084)
#define HID_USAGE_KEYBOARD_KEYPAD_COMMA                       ((USAGE) 0x0085)
#define HID_USAGE_KEYBOARD_KEYPAD_EQUAL_SIGN                  ((USAGE) 0x0086)
#define HID_USAGE_KEYBOARD_INTERNATIONAL1                     ((USAGE) 0x0087)
#define HID_USAGE_KEYBOARD_INTERNATIONAL2                     ((USAGE) 0x0088)
#define HID_USAGE_KEYBOARD_INTERNATIONAL3                     ((USAGE) 0x0089)
#define HID_USAGE_KEYBOARD_INTERNATIONAL4                     ((USAGE) 0x008A)
#define HID_USAGE_KEYBOARD_INTERNATIONAL5                     ((USAGE) 0x008B)
#define HID_USAGE_KEYBOARD_INTERNATIONAL6                     ((USAGE) 0x008C)
#define HID_USAGE_KEYBOARD_INTERNATIONAL7                     ((USAGE) 0x008D)
#define HID_USAGE_KEYBOARD_INTERNATIONAL8                     ((USAGE) 0x008E)
#define HID_USAGE_KEYBOARD_INTERNATIONAL9                     ((USAGE) 0x008F)
#define HID_USAGE_KEYBOARD_LANG1                              ((USAGE) 0x0090)
#define HID_USAGE_KEYBOARD_LANG2                              ((USAGE) 0x0091)
#define HID_USAGE_KEYBOARD_LANG3                              ((USAGE) 0x0092)
#define HID_USAGE_KEYBOARD_LANG4                              ((USAGE) 0x0093)
#define HID_USAGE_KEYBOARD_LANG5                              ((USAGE) 0x0094)
#define HID_USAGE_KEYBOARD_LANG6                              ((USAGE) 0x0095)
#define HID_USAGE_KEYBOARD_LANG7                              ((USAGE) 0x0096)
#define HID_USAGE_KEYBOARD_LANG8                              ((USAGE) 0x0097)
#define HID_USAGE_KEYBOARD_LANG9                              ((USAGE) 0x0098)
#define HID_USAGE_KEYBOARD_ALTERNATE_ERASE                    ((USAGE) 0x0099)
#define HID_USAGE_KEYBOARD_SYSREQ_ATTENTION                   ((USAGE) 0x009A)
#define HID_USAGE_KEYBOARD_CANCEL                             ((USAGE) 0x009B)
#define HID_USAGE_KEYBOARD_CLEAR                              ((USAGE) 0x009C)
#define HID_USAGE_KEYBOARD_PRIOR                              ((USAGE) 0x009D)
#define HID_USAGE_KEYBOARD_RETURN_NO_ENTER                    ((USAGE) 0x009E)
#define HID_USAGE_KEYBOARD_SEPARATOR                          ((USAGE) 0x009F)
#define HID_USAGE_KEYBOARD_OUT                                ((USAGE) 0x00A0)
#define HID_USAGE_KEYBOARD_OPER                               ((USAGE) 0x00A1)
#define HID_USAGE_KEYBOARD_CLEAR_AGAIN                        ((USAGE) 0x00A2)
#define HID_USAGE_KEYBOARD_CRSEL_PROPS                        ((USAGE) 0x00A3)
#define HID_USAGE_KEYBOARD_EXSEL                              ((USAGE) 0x00A4)
#define HID_USAGE_KEYBOARD_KEYPAD_DOUBLE_0                    ((USAGE) 0x00B0)
#define HID_USAGE_KEYBOARD_KEYPAD_TRIPLE_0                    ((USAGE) 0x00B1)
#define HID_USAGE_KEYBOARD_THOUSANDS_SEPARATOR                ((USAGE) 0x00B2)
#define HID_USAGE_KEYBOARD_DECIMAL_SEPARATOR                  ((USAGE) 0x00B3)
#define HID_USAGE_KEYBOARD_CURRENCY_UNIT                      ((USAGE) 0x00B4)
#define HID_USAGE_KEYBOARD_CURRENCY_SUBUNIT                   ((USAGE) 0x00B5)
#define HID_USAGE_KEYBOARD_KEYPAD_LEFT_BRACKET                ((USAGE) 0x00B6)
#define HID_USAGE_KEYBOARD_KEYPAD_RIGHT_BRACKET               ((USAGE) 0x00B7)
#define HID_USAGE_KEYBOARD_KEYPAD_LEFT_BRACE                  ((USAGE) 0x00B8)
#define HID_USAGE_KEYBOARD_KEYPAD_RIGHT_BRACE                 ((USAGE) 0x00B9)
#define HID_USAGE_KEYBOARD_KEYPAD_TAB                         ((USAGE) 0x00BA)
#define HID_USAGE_KEYBOARD_KEYPAD_BACKSPACE                   ((USAGE) 0x00BB)
#define HID_USAGE_KEYBOARD_KEYPAD_A                           ((USAGE) 0x00BC)
#define HID_USAGE_KEYBOARD_KEYPAD_B                           ((USAGE) 0x00BD)
#define HID_USAGE_KEYBOARD_KEYPAD_C                           ((USAGE) 0x00BE)
#define HID_USAGE_KEYBOARD_KEYPAD_D                           ((USAGE) 0x00BF)
#define HID_USAGE_KEYBOARD_KEYPAD_E                           ((USAGE) 0x00C0)
#define HID_USAGE_KEYBOARD_KEYPAD_F                           ((USAGE) 0x00C1)
#define HID_USAGE_KEYBOARD_KEYPAD_XOR                         ((USAGE) 0x00C2)
#define HID_USAGE_KEYBOARD_KEYPAD_CARET                       ((USAGE) 0x00C3)
#define HID_USAGE_KEYBOARD_KEYPAD_PERCENTAGE                  ((USAGE) 0x00C4)
#define HID_USAGE_KEYBOARD_KEYPAD_LESS                        ((USAGE) 0x00C5)
#define HID_USAGE_KEYBOARD_KEYPAD_GREATER                     ((USAGE) 0x00C6)
#define HID_USAGE_KEYBOARD_KEYPAD_AMPERSAND                   ((USAGE) 0x00C7)
#define HID_USAGE_KEYBOARD_KEYPAD_DOUBLE_AMPERSAND            ((USAGE) 0x00C8)
#define HID_USAGE_KEYBOARD_KEYPAD_BAR                         ((USAGE) 0x00C9)
#define HID_USAGE_KEYBOARD_KEYPAD_DOUBLE_BAR                  ((USAGE) 0x00CA)
#define HID_USAGE_KEYBOARD_KEYPAD_COLON                       ((USAGE) 0x00CB)
#define HID_USAGE_KEYBOARD_KEYPAD_HASH                        ((USAGE) 0x00CC)
#define HID_USAGE_KEYBOARD_KEYPAD_SPACE                       ((USAGE) 0x00CD)
#define HID_USAGE_KEYBOARD_KEYPAD_AT                          ((USAGE) 0x00CE)
#define HID_USAGE_KEYBOARD_KEYPAD_BANG                        ((USAGE) 0x00CF)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_STORE                ((USAGE) 0x00D0)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_RECALL               ((USAGE) 0x00D1)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_CLEAR                ((USAGE) 0x00D2)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_ADD                  ((USAGE) 0x00D3)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_SUBTRACT             ((USAGE) 0x00D4)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_MULTIPLY             ((USAGE) 0x00D5)
#define HID_USAGE_KEYBOARD_KEYPAD_MEMORY_DIVIDE               ((USAGE) 0x00D6)
#define HID_USAGE_KEYBOARD_KEYPAD_PLUS_MINUS                  ((USAGE) 0x00D7)
#define HID_USAGE_KEYBOARD_KEYPAD_CLEAR                       ((USAGE) 0x00D8)
#define HID_USAGE_KEYBOARD_KEYPAD_CLEAR_ENTRY                 ((USAGE) 0x00D9)
#define HID_USAGE_KEYBOARD_KEYPAD_BINARY                      ((USAGE) 0x00DA)
#define HID_USAGE_KEYBOARD_KEYPAD_OCTAL                       ((USAGE) 0x00DB)
#define HID_USAGE_KEYBOARD_KEYPAD_DECIMAL                     ((USAGE) 0x00DC)
#define HID_USAGE_KEYBOARD_KEYPAD_HEXADECIMAL                 ((USAGE) 0x00DD)
#define HID_USAGE_KEYBOARD_LCTRL                              ((USAGE) 0x00E0)
#define HID_USAGE_KEYBOARD_LSHFT                              ((USAGE) 0x00E1)
#define HID_USAGE_KEYBOARD_LALT                               ((USAGE) 0x00E2)
#define HID_USAGE_KEYBOARD_LGUI                               ((USAGE) 0x00E3)
#define HID_USAGE_KEYBOARD_RCTRL                              ((USAGE) 0x00E4)
#define HID_USAGE_KEYBOARD_RSHFT                              ((USAGE) 0x00E5)
#define HID_USAGE_KEYBOARD_RALT                               ((USAGE) 0x00E6)
#define HID_USAGE_KEYBOARD_RGUI                               ((USAGE) 0x00E7)

//
// LED Page (0x08)
//
#define HID_USAGE_LED_NUM_LOCK                ((USAGE) 0x0001)
#define HID_USAGE_LED_CAPS_LOCK               ((USAGE) 0x0002)
#define HID_USAGE_LED_SCROLL_LOCK             ((USAGE) 0x0003)
#define HID_USAGE_LED_COMPOSE                 ((USAGE) 0x0004)
#define HID_USAGE_LED_KANA                    ((USAGE) 0x0005)
#define HID_USAGE_LED_POWER                   ((USAGE) 0x0006)
#define HID_USAGE_LED_SHIFT                   ((USAGE) 0x0007)
#define HID_USAGE_LED_DO_NOT_DISTURB          ((USAGE) 0x0008)
#define HID_USAGE_LED_MUTE                    ((USAGE) 0x0009)
#define HID_USAGE_LED_TONE_ENABLE             ((USAGE) 0x000A)
#define HID_USAGE_LED_HIGH_CUT_FILTER         ((USAGE) 0x000B)
#define HID_USAGE_LED_LOW_CUT_FILTER          ((USAGE) 0x000C)
#define HID_USAGE_LED_EQUALIZER_ENABLE        ((USAGE) 0x000D)
#define HID_USAGE_LED_SOUND_FIELD_ON          ((USAGE) 0x000E)
#define HID_USAGE_LED_SURROUND_FIELD_ON       ((USAGE) 0x000F)
#define HID_USAGE_LED_REPEAT                  ((USAGE) 0x0010)
#define HID_USAGE_LED_STEREO                  ((USAGE) 0x0011)
#define HID_USAGE_LED_SAMPLING_RATE_DETECT    ((USAGE) 0x0012)
#define HID_USAGE_LED_SPINNING                ((USAGE) 0x0013)
#define HID_USAGE_LED_CAV                     ((USAGE) 0x0014)
#define HID_USAGE_LED_CLV                     ((USAGE) 0x0015)
#define HID_USAGE_LED_RECORDING_FORMAT_DET    ((USAGE) 0x0016)
#define HID_USAGE_LED_OFF_HOOK                ((USAGE) 0x0017)
#define HID_USAGE_LED_RING                    ((USAGE) 0x0018)
#define HID_USAGE_LED_MESSAGE_WAITING         ((USAGE) 0x0019)
#define HID_USAGE_LED_DATA_MODE               ((USAGE) 0x001A)
#define HID_USAGE_LED_BATTERY_OPERATION       ((USAGE) 0x001B)
#define HID_USAGE_LED_BATTERY_OK              ((USAGE) 0x001C)
#define HID_USAGE_LED_BATTERY_LOW             ((USAGE) 0x001D)
#define HID_USAGE_LED_SPEAKER                 ((USAGE) 0x001E)
#define HID_USAGE_LED_HEAD_SET                ((USAGE) 0x001F)
#define HID_USAGE_LED_HOLD                    ((USAGE) 0x0020)
#define HID_USAGE_LED_MICROPHONE              ((USAGE) 0x0021)
#define HID_USAGE_LED_COVERAGE                ((USAGE) 0x0022)
#define HID_USAGE_LED_NIGHT_MODE              ((USAGE) 0x0023)
#define HID_USAGE_LED_SEND_CALLS              ((USAGE) 0x0024)
#define HID_USAGE_LED_CALL_PICKUP             ((USAGE) 0x0025)
#define HID_USAGE_LED_CONFERENCE              ((USAGE) 0x0026)
#define HID_USAGE_LED_STAND_BY                ((USAGE) 0x0027)
#define HID_USAGE_LED_CAMERA_ON               ((USAGE) 0x0028)
#define HID_USAGE_LED_CAMERA_OFF              ((USAGE) 0x0029)
#define HID_USAGE_LED_ON_LINE                 ((USAGE) 0x002A)
#define HID_USAGE_LED_OFF_LINE                ((USAGE) 0x002B)
#define HID_USAGE_LED_BUSY                    ((USAGE) 0x002C)
#define HID_USAGE_LED_READY                   ((USAGE) 0x002D)
#define HID_USAGE_LED_PAPER_OUT               ((USAGE) 0x002E)
#define HID_USAGE_LED_PAPER_JAM               ((USAGE) 0x002F)
#define HID_USAGE_LED_REMOTE                  ((USAGE) 0x0030)
#define HID_USAGE_LED_FORWARD                 ((USAGE) 0x0031)
#define HID_USAGE_LED_REVERSE                 ((USAGE) 0x0032)
#define HID_USAGE_LED_STOP                    ((USAGE) 0x0033)
#define HID_USAGE_LED_REWIND                  ((USAGE) 0x0034)
#define HID_USAGE_LED_FAST_FORWARD            ((USAGE) 0x0035)
#define HID_USAGE_LED_PLAY                    ((USAGE) 0x0036)
#define HID_USAGE_LED_PAUSE                   ((USAGE) 0x0037)
#define HID_USAGE_LED_RECORD                  ((USAGE) 0x0038)
#define HID_USAGE_LED_ERROR                   ((USAGE) 0x0039)
#define HID_USAGE_LED_SELECTED_INDICATOR      ((USAGE) 0x003A)
#define HID_USAGE_LED_IN_USE_INDICATOR        ((USAGE) 0x003B)
#define HID_USAGE_LED_MULTI_MODE_INDICATOR    ((USAGE) 0x003C)
#define HID_USAGE_LED_INDICATOR_ON            ((USAGE) 0x003D)
#define HID_USAGE_LED_INDICATOR_FLASH         ((USAGE) 0x003E)
#define HID_USAGE_LED_INDICATOR_SLOW_BLINK    ((USAGE) 0x003F)
#define HID_USAGE_LED_INDICATOR_FAST_BLINK    ((USAGE) 0x0040)
#define HID_USAGE_LED_INDICATOR_OFF           ((USAGE) 0x0041)
#define HID_USAGE_LED_FLASH_ON_TIME           ((USAGE) 0x0042)
#define HID_USAGE_LED_SLOW_BLINK_ON_TIME      ((USAGE) 0x0043)
#define HID_USAGE_LED_SLOW_BLINK_OFF_TIME     ((USAGE) 0x0044)
#define HID_USAGE_LED_FAST_BLINK_ON_TIME      ((USAGE) 0x0045)
#define HID_USAGE_LED_FAST_BLINK_OFF_TIME     ((USAGE) 0x0046)
#define HID_USAGE_LED_INDICATOR_COLOR         ((USAGE) 0x0047)
#define HID_USAGE_LED_RED                     ((USAGE) 0x0048)
#define HID_USAGE_LED_GREEN                   ((USAGE) 0x0049)
#define HID_USAGE_LED_AMBER                   ((USAGE) 0x004A)
#define HID_USAGE_LED_GENERIC_INDICATOR       ((USAGE) 0x004B)
#define HID_USAGE_LED_SYSTEM_SUSPEND          ((USAGE) 0x004C)
#define HID_USAGE_LED_EXTERNAL_POWER          ((USAGE) 0x004D)
#define HID_USAGE_LED_INDICATOR_BLUE          ((USAGE) 0x004E)
#define HID_USAGE_LED_INDICATOR_ORANGE        ((USAGE) 0x004F)
#define HID_USAGE_LED_GOOD_STATUS             ((USAGE) 0x0050)
#define HID_USAGE_LED_WARNING_STATUS          ((USAGE) 0x0051)
#define HID_USAGE_LED_RGB_LED                 ((USAGE) 0x0052)
#define HID_USAGE_LED_RED_LED_CHANNEL         ((USAGE) 0x0053)
#define HID_USAGE_LED_BLUE_LED_CHANNEL        ((USAGE) 0x0054)
#define HID_USAGE_LED_GREEN_LED_CHANNEL       ((USAGE) 0x0055)
#define HID_USAGE_LED_LED_INTENSITY           ((USAGE) 0x0056)
#define HID_USAGE_LED_SYSTEM_MICROPHONE_MUTE  ((USAGE) 0x0057)
#define HID_USAGE_LED_PLAYER_INDICATOR        ((USAGE) 0x0060)
#define HID_USAGE_LED_PLAYER_1                ((USAGE) 0x0061)
#define HID_USAGE_LED_PLAYER_2                ((USAGE) 0x0062)
#define HID_USAGE_LED_PLAYER_3                ((USAGE) 0x0063)
#define HID_USAGE_LED_PLAYER_4                ((USAGE) 0x0064)
#define HID_USAGE_LED_PLAYER_5                ((USAGE) 0x0065)
#define HID_USAGE_LED_PLAYER_6                ((USAGE) 0x0066)
#define HID_USAGE_LED_PLAYER_7                ((USAGE) 0x0067)
#define HID_USAGE_LED_PLAYER_8                ((USAGE) 0x0068)

//
// Lighting And Illumination Page (0x59)
//
#define HID_USAGE_LAMPARRAY                                        ((USAGE) 0x0001)
#define HID_USAGE_LAMPARRAY_ATTRBIUTES_REPORT                      ((USAGE) 0x0002)
#define HID_USAGE_LAMPARRAY_LAMP_COUNT                             ((USAGE) 0x0003)
#define HID_USAGE_LAMPARRAY_BOUNDING_BOX_WIDTH_IN_MICROMETERS      ((USAGE) 0x0004)
#define HID_USAGE_LAMPARRAY_BOUNDING_BOX_HEIGHT_IN_MICROMETERS     ((USAGE) 0x0005)
#define HID_USAGE_LAMPARRAY_BOUNDING_BOX_DEPTH_IN_MICROMETERS      ((USAGE) 0x0006)
#define HID_USAGE_LAMPARRAY_KIND                                   ((USAGE) 0x0007)
#define HID_USAGE_LAMPARRAY_MIN_UPDATE_INTERVAL_IN_MICROSECONDS    ((USAGE) 0x0008)
#define HID_USAGE_LAMPARRAY_LAMP_ATTRIBUTES_REQUEST_REPORT         ((USAGE) 0x0020)
#define HID_USAGE_LAMPARRAY_LAMP_ID                                ((USAGE) 0x0021)
#define HID_USAGE_LAMPARRAY_LAMP_ATTRIBUTES_RESPONSE_REPORT        ((USAGE) 0x0022)
#define HID_USAGE_LAMPARRAY_POSITION_X_IN_MICROMETERS              ((USAGE) 0x0023)
#define HID_USAGE_LAMPARRAY_POSITION_Y_IN_MICROMETERS              ((USAGE) 0x0024)
#define HID_USAGE_LAMPARRAY_POSITION_Z_IN_MICROMETERS              ((USAGE) 0x0025)
#define HID_USAGE_LAMPARRAY_LAMP_PURPOSES                          ((USAGE) 0x0026)
#define HID_USAGE_LAMPARRAY_UPDATE_LATENCY_IN_MICROSECONDS         ((USAGE) 0x0027)
#define HID_USAGE_LAMPARRAY_RED_LEVEL_COUNT                        ((USAGE) 0x0028)
#define HID_USAGE_LAMPARRAY_GREEN_LEVEL_COUNT                      ((USAGE) 0x0029)
#define HID_USAGE_LAMPARRAY_BLUE_LEVEL_COUNT                       ((USAGE) 0x002A)
#define HID_USAGE_LAMPARRAY_INTENSITY_LEVEL_COUNT                  ((USAGE) 0x002B)
#define HID_USAGE_LAMPARRAY_IS_PROGRAMMABLE                        ((USAGE) 0x002C)
#define HID_USAGE_LAMPARRAY_INPUT_BINDING                          ((USAGE) 0x002D)
#define HID_USAGE_LAMPARRAY_LAMP_MULTI_UPDATE_REPORT               ((USAGE) 0x0050)
#define HID_USAGE_LAMPARRAY_LAMP_RED_UPDATE_CHANNEL                ((USAGE) 0x0051)
#define HID_USAGE_LAMPARRAY_LAMP_GREEN_UPDATE_CHANNEL              ((USAGE) 0x0052)
#define HID_USAGE_LAMPARRAY_LAMP_BLUE_UPDATE_CHANNEL               ((USAGE) 0x0053)
#define HID_USAGE_LAMPARRAY_LAMP_INTENSITY_UPDATE_CHANNEL          ((USAGE) 0x0054)
#define HID_USAGE_LAMPARRAY_LAMP_UPDATE_FLAGS                      ((USAGE) 0x0055)
#define HID_USAGE_LAMPARRAY_LAMP_RANGE_UPDATE_REPORT               ((USAGE) 0x0060)
#define HID_USAGE_LAMPARRAY_LAMP_ID_START                          ((USAGE) 0x0061)
#define HID_USAGE_LAMPARRAY_LAMP_ID_END                            ((USAGE) 0x0062)
#define HID_USAGE_LAMPARRAY_CONTROL_REPORT                         ((USAGE) 0x0070)
#define HID_USAGE_LAMPARRAY_AUTONOMOUS_MODE                        ((USAGE) 0x0071)

//
// Magnetic Stripe Reader Page (0x8E)
//
#define HID_USAGE_MAGNETIC_STRIPE_READER_MSR_DEVICE_READONLY    ((USAGE) 0x0001)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_1_LENGTH         ((USAGE) 0x0011)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_2_LENGTH         ((USAGE) 0x0012)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_3_LENGTH         ((USAGE) 0x0013)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_JIS_LENGTH       ((USAGE) 0x0014)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_DATA             ((USAGE) 0x0020)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_1_DATA           ((USAGE) 0x0021)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_2_DATA           ((USAGE) 0x0022)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_3_DATA           ((USAGE) 0x0023)
#define HID_USAGE_MAGNETIC_STRIPE_READER_TRACK_JIS_DATA         ((USAGE) 0x0024)

//
// Medical Instrument Page (0x40)
//
#define HID_USAGE_MEDICAL_INSTRUMENT_MEDICAL_ULTRASOUND              ((USAGE) 0x0001)
#define HID_USAGE_MEDICAL_INSTRUMENT_VCRACQUISITION                  ((USAGE) 0x0020)
#define HID_USAGE_MEDICAL_INSTRUMENT_FREEZETHAW                      ((USAGE) 0x0021)
#define HID_USAGE_MEDICAL_INSTRUMENT_CLIP_STORE                      ((USAGE) 0x0022)
#define HID_USAGE_MEDICAL_INSTRUMENT_UPDATE                          ((USAGE) 0x0023)
#define HID_USAGE_MEDICAL_INSTRUMENT_NEXT                            ((USAGE) 0x0024)
#define HID_USAGE_MEDICAL_INSTRUMENT_SAVE                            ((USAGE) 0x0025)
#define HID_USAGE_MEDICAL_INSTRUMENT_PRINT                           ((USAGE) 0x0026)
#define HID_USAGE_MEDICAL_INSTRUMENT_MICROPHONE_ENABLE               ((USAGE) 0x0027)
#define HID_USAGE_MEDICAL_INSTRUMENT_CINE                            ((USAGE) 0x0040)
#define HID_USAGE_MEDICAL_INSTRUMENT_TRANSMIT_POWER                  ((USAGE) 0x0041)
#define HID_USAGE_MEDICAL_INSTRUMENT_VOLUME                          ((USAGE) 0x0042)
#define HID_USAGE_MEDICAL_INSTRUMENT_FOCUS                           ((USAGE) 0x0043)
#define HID_USAGE_MEDICAL_INSTRUMENT_DEPTH                           ((USAGE) 0x0044)
#define HID_USAGE_MEDICAL_INSTRUMENT_SOFT_STEP__PRIMARY              ((USAGE) 0x0060)
#define HID_USAGE_MEDICAL_INSTRUMENT_SOFT_STEP__SECONDARY            ((USAGE) 0x0061)
#define HID_USAGE_MEDICAL_INSTRUMENT_DEPTH_GAIN_COMPENSATION         ((USAGE) 0x0070)
#define HID_USAGE_MEDICAL_INSTRUMENT_ZOOM_SELECT                     ((USAGE) 0x0080)
#define HID_USAGE_MEDICAL_INSTRUMENT_ZOOM_ADJUST                     ((USAGE) 0x0081)
#define HID_USAGE_MEDICAL_INSTRUMENT_SPECTRAL_DOPPLER_MODE_SELECT    ((USAGE) 0x0082)
#define HID_USAGE_MEDICAL_INSTRUMENT_SPECTRAL_DOPPLER_ADJUST         ((USAGE) 0x0083)
#define HID_USAGE_MEDICAL_INSTRUMENT_COLOR_DOPPLER_MODE_SELECT       ((USAGE) 0x0084)
#define HID_USAGE_MEDICAL_INSTRUMENT_COLOR_DOPPLER_ADJUST            ((USAGE) 0x0085)
#define HID_USAGE_MEDICAL_INSTRUMENT_MOTION_MODE_SELECT              ((USAGE) 0x0086)
#define HID_USAGE_MEDICAL_INSTRUMENT_MOTION_MODE_ADJUST              ((USAGE) 0x0087)
#define HID_USAGE_MEDICAL_INSTRUMENT_2D_MODE_SELECT                  ((USAGE) 0x0088)
#define HID_USAGE_MEDICAL_INSTRUMENT_2D_MODE_ADJUST                  ((USAGE) 0x0089)
#define HID_USAGE_MEDICAL_INSTRUMENT_SOFT_CONTROL_SELECT             ((USAGE) 0x00A0)
#define HID_USAGE_MEDICAL_INSTRUMENT_SOFT_CONTROL_ADJUST             ((USAGE) 0x00A1)

//
// Microsoft Bluetooth Handsfree Page (0xFFF3)
//
#define HID_USAGE_MICROSOFT_BLUETOOTH_HANDSFREE_GENERAL          ((USAGE) 0x0001)
#define HID_USAGE_MICROSOFT_BLUETOOTH_HANDSFREE_DIAL_NUMBER      ((USAGE) 0x0021)
#define HID_USAGE_MICROSOFT_BLUETOOTH_HANDSFREE_DIAL_MEMORY      ((USAGE) 0x0022)
#define HID_USAGE_MICROSOFT_BLUETOOTH_HANDSFREE_CALL_SETUP       ((USAGE) 0x0024)

//
// Monitor Page (0x80)
//
#define HID_USAGE_MONITOR_MONITOR_CONTROL     ((USAGE) 0x0001)
#define HID_USAGE_MONITOR_EDID_INFORMATION    ((USAGE) 0x0002)
#define HID_USAGE_MONITOR_VDIF_INFORMATION    ((USAGE) 0x0003)
#define HID_USAGE_MONITOR_VESA_VERSION        ((USAGE) 0x0004)

//
// Monitor Enumerated Page (0x81)
//
// There is no need to label these usages.
//

//
// Ordinal Page (0x0A)
//
// There is no need to label these usages.
//

//
// Physical Input Device Page (0x0F)
//
#define HID_USAGE_PID_PHYSICAL_INPUT_DEVICE                       ((USAGE) 0x0001)
#define HID_USAGE_PID_NORMAL                                      ((USAGE) 0x0020)
#define HID_USAGE_PID_SET_EFFECT_REPORT                           ((USAGE) 0x0021)
#define HID_USAGE_PID_EFFECT_BLOCK_INDEX                          ((USAGE) 0x0022)
#define HID_USAGE_PID_PARAMETER_BLOCK_OFFSET                      ((USAGE) 0x0023)
#define HID_USAGE_PID_ROM_FLAG                                    ((USAGE) 0x0024)
#define HID_USAGE_PID_EFFECT_TYPE                                 ((USAGE) 0x0025)
#define HID_USAGE_PID_ET_CONSTANT                                 ((USAGE) 0x0026)
#define HID_USAGE_PID_ET_RAMP                                     ((USAGE) 0x0027)
#define HID_USAGE_PID_ET_CUSTOM                                   ((USAGE) 0x0028)
#define HID_USAGE_PID_ET_SQUARE                                   ((USAGE) 0x0030)
#define HID_USAGE_PID_ET_SINE                                     ((USAGE) 0x0031)
#define HID_USAGE_PID_ET_TRIANGLE                                 ((USAGE) 0x0032)
#define HID_USAGE_PID_ET_SAWTOOTH_UP                              ((USAGE) 0x0033)
#define HID_USAGE_PID_ET_SAWTOOTH_DOWN                            ((USAGE) 0x0034)
#define HID_USAGE_PID_ET_SPRING                                   ((USAGE) 0x0040)
#define HID_USAGE_PID_ET_DAMPER                                   ((USAGE) 0x0041)
#define HID_USAGE_PID_ET_INERTIA                                  ((USAGE) 0x0042)
#define HID_USAGE_PID_ET_FRICTION                                 ((USAGE) 0x0043)
#define HID_USAGE_PID_DURATION                                    ((USAGE) 0x0050)
#define HID_USAGE_PID_SAMPLE_PERIOD                               ((USAGE) 0x0051)
#define HID_USAGE_PID_GAIN                                        ((USAGE) 0x0052)
#define HID_USAGE_PID_TRIGGER_BUTTON                              ((USAGE) 0x0053)
#define HID_USAGE_PID_TRIGGER_REPEAT_INTERVAL                     ((USAGE) 0x0054)
#define HID_USAGE_PID_AXES_ENABLE                                 ((USAGE) 0x0055)
#define HID_USAGE_PID_DIRECTION_ENABLE                            ((USAGE) 0x0056)
#define HID_USAGE_PID_DIRECTION                                   ((USAGE) 0x0057)
#define HID_USAGE_PID_TYPE_SPECIFIC_BLOCK_OFFSET                  ((USAGE) 0x0058)
#define HID_USAGE_PID_BLOCK_TYPE                                  ((USAGE) 0x0059)
#define HID_USAGE_PID_SET_ENVELOPE_REPORT                         ((USAGE) 0x005A)
#define HID_USAGE_PID_ATTACK_LEVEL                                ((USAGE) 0x005B)
#define HID_USAGE_PID_ATTACK_TIME                                 ((USAGE) 0x005C)
#define HID_USAGE_PID_FADE_LEVEL                                  ((USAGE) 0x005D)
#define HID_USAGE_PID_FADE_TIME                                   ((USAGE) 0x005E)
#define HID_USAGE_PID_SET_CONDITION_REPORT                        ((USAGE) 0x005F)
#define HID_USAGE_PID_CP_OFFSET                                   ((USAGE) 0x0060)
#define HID_USAGE_PID_POSITIVE_COEFFICIENT                        ((USAGE) 0x0061)
#define HID_USAGE_PID_NEGATIVE_COEFFICIENT                        ((USAGE) 0x0062)
#define HID_USAGE_PID_POSITIVE_SATURATION                         ((USAGE) 0x0063)
#define HID_USAGE_PID_NEGATIVE_SATURATION                         ((USAGE) 0x0064)
#define HID_USAGE_PID_DEAD_BAND                                   ((USAGE) 0x0065)
#define HID_USAGE_PID_DOWNLOAD_FORCE_SAMPLE                       ((USAGE) 0x0066)
#define HID_USAGE_PID_ISOCH_CUSTOMFORCE_ENABLE                    ((USAGE) 0x0067)
#define HID_USAGE_PID_CUSTOM_FORCE_DATA_REPORT                    ((USAGE) 0x0068)
#define HID_USAGE_PID_CUSTOM_FORCE_DATA                           ((USAGE) 0x0069)
#define HID_USAGE_PID_CUSTOM_FORCE_VENDOR_DEFINED_DATA            ((USAGE) 0x006A)
#define HID_USAGE_PID_SET_CUSTOM_FORCE_REPORT                     ((USAGE) 0x006B)
#define HID_USAGE_PID_CUSTOM_FORCE_DATA_OFFSET                    ((USAGE) 0x006C)
#define HID_USAGE_PID_SAMPLE_COUNT                                ((USAGE) 0x006D)
#define HID_USAGE_PID_SET_PERIODIC_REPORT                         ((USAGE) 0x006E)
#define HID_USAGE_PID_OFFSET                                      ((USAGE) 0x006F)
#define HID_USAGE_PID_MAGNITUDE                                   ((USAGE) 0x0070)
#define HID_USAGE_PID_PHASE                                       ((USAGE) 0x0071)
#define HID_USAGE_PID_PERIOD                                      ((USAGE) 0x0072)
#define HID_USAGE_PID_SET_CONSTANT_FORCE_REPORT                   ((USAGE) 0x0073)
#define HID_USAGE_PID_SET_RAMP_FORCE_REPORT                       ((USAGE) 0x0074)
#define HID_USAGE_PID_RAMP_START                                  ((USAGE) 0x0075)
#define HID_USAGE_PID_RAMP_END                                    ((USAGE) 0x0076)
#define HID_USAGE_PID_EFFECT_OPERATION_REPORT                     ((USAGE) 0x0077)
#define HID_USAGE_PID_EFFECT_OPERATION                            ((USAGE) 0x0078)
#define HID_USAGE_PID_OP_EFFECT_START                             ((USAGE) 0x0079)
#define HID_USAGE_PID_OP_EFFECT_START_SOLO                        ((USAGE) 0x007A)
#define HID_USAGE_PID_OP_EFFECT_STOP                              ((USAGE) 0x007B)
#define HID_USAGE_PID_LOOP_COUNT                                  ((USAGE) 0x007C)
#define HID_USAGE_PID_DEVICE_GAIN_REPORT                          ((USAGE) 0x007D)
#define HID_USAGE_PID_DEVICE_GAIN                                 ((USAGE) 0x007E)
#define HID_USAGE_PID_POOL_REPORT                                 ((USAGE) 0x007F)
#define HID_USAGE_PID_RAM_POOL_SIZE                               ((USAGE) 0x0080)
#define HID_USAGE_PID_ROM_POOL_SIZE                               ((USAGE) 0x0081)
#define HID_USAGE_PID_ROM_EFFECT_BLOCK_COUNT                      ((USAGE) 0x0082)
#define HID_USAGE_PID_SIMULTANEOUS_EFFECTS_MAX                    ((USAGE) 0x0083)
#define HID_USAGE_PID_POOL_ALIGNMENT                              ((USAGE) 0x0084)
#define HID_USAGE_PID_PARAMETER_BLOCK_MOVE_REPORT                 ((USAGE) 0x0085)
#define HID_USAGE_PID_MOVE_SOURCE                                 ((USAGE) 0x0086)
#define HID_USAGE_PID_MOVE_DESTINATION                            ((USAGE) 0x0087)
#define HID_USAGE_PID_MOVE_LENGTH                                 ((USAGE) 0x0088)
#define HID_USAGE_PID_BLOCK_LOAD_REPORT                           ((USAGE) 0x0089)
#define HID_USAGE_PID_BLOCK_LOAD_STATUS                           ((USAGE) 0x008B)
#define HID_USAGE_PID_BLOCK_LOAD_SUCCESS                          ((USAGE) 0x008C)
#define HID_USAGE_PID_BLOCK_LOAD_FULL                             ((USAGE) 0x008D)
#define HID_USAGE_PID_BLOCK_LOAD_ERROR                            ((USAGE) 0x008E)
#define HID_USAGE_PID_BLOCK_HANDLE                                ((USAGE) 0x008F)
#define HID_USAGE_PID_BLOCK_FREE_REPORT                           ((USAGE) 0x0090)
#define HID_USAGE_PID_TYPE_SPECIFIC_BLOCK_HANDLE                  ((USAGE) 0x0091)
#define HID_USAGE_PID_STATE_REPORT                                ((USAGE) 0x0092)
#define HID_USAGE_PID_EFFECT_PLAYING                              ((USAGE) 0x0094)
#define HID_USAGE_PID_PID_DEVICE_CONTROL_REPORT                   ((USAGE) 0x0095)
#define HID_USAGE_PID_DEVICE_CONTROL                              ((USAGE) 0x0096)
#define HID_USAGE_PID_DC_ENABLE_ACTUATORS                         ((USAGE) 0x0097)
#define HID_USAGE_PID_DC_DISABLE_ACTUATORS                        ((USAGE) 0x0098)
#define HID_USAGE_PID_DC_STOP_ALL_EFFECTS                         ((USAGE) 0x0099)
#define HID_USAGE_PID_DC_DEVICE_RESET                             ((USAGE) 0x009A)
#define HID_USAGE_PID_DC_DEVICE_PAUSE                             ((USAGE) 0x009B)
#define HID_USAGE_PID_DC_DEVICE_CONTINUE                          ((USAGE) 0x009C)
#define HID_USAGE_PID_DEVICE_PAUSED                               ((USAGE) 0x009F)
#define HID_USAGE_PID_ACTUATORS_ENABLED                           ((USAGE) 0x00A0)
#define HID_USAGE_PID_SAFETY_SWITCH                               ((USAGE) 0x00A4)
#define HID_USAGE_PID_ACTUATOR_OVERRIDE_SWITCH                    ((USAGE) 0x00A5)
#define HID_USAGE_PID_ACTUATOR_POWER                              ((USAGE) 0x00A6)
#define HID_USAGE_PID_START_DELAY                                 ((USAGE) 0x00A7)
#define HID_USAGE_PID_PARAMETER_BLOCK_SIZE                        ((USAGE) 0x00A8)
#define HID_USAGE_PID_DEVICE_MANAGED_POOL                         ((USAGE) 0x00A9)
#define HID_USAGE_PID_SHARED_PARAMETER_BLOCKS                     ((USAGE) 0x00AA)
#define HID_USAGE_PID_CREATE_NEW_EFFECT                           ((USAGE) 0x00AB)
#define HID_USAGE_PID_RAMPOOL_AVAILABLE                           ((USAGE) 0x00AC)

//
// Power Page (0x84)
//
#define HID_USAGE_POWER_INAME                     ((USAGE) 0x0001)
#define HID_USAGE_POWER_PRESENT_STATUS            ((USAGE) 0x0002)
#define HID_USAGE_POWER_CHANGED_STATUS            ((USAGE) 0x0003)
#define HID_USAGE_POWER_UPS                       ((USAGE) 0x0004)
#define HID_USAGE_POWER_POWER_SUPPLY              ((USAGE) 0x0005)
#define HID_USAGE_POWER_BATTERY_SYSTEM            ((USAGE) 0x0010)
#define HID_USAGE_POWER_BATTERY_SYSTEM_ID         ((USAGE) 0x0011)
#define HID_USAGE_POWER_BATTERY                   ((USAGE) 0x0012)
#define HID_USAGE_POWER_BATTERY_ID                ((USAGE) 0x0013)
#define HID_USAGE_POWER_CHARGER                   ((USAGE) 0x0014)
#define HID_USAGE_POWER_CHARGER_ID                ((USAGE) 0x0015)
#define HID_USAGE_POWER_POWER_CONVERTER           ((USAGE) 0x0016)
#define HID_USAGE_POWER_POWER_CONVERTER_ID        ((USAGE) 0x0017)
#define HID_USAGE_POWER_OUTLET_SYSTEM             ((USAGE) 0x0018)
#define HID_USAGE_POWER_OUTLET_SYSTEM_ID          ((USAGE) 0x0019)
#define HID_USAGE_POWER_INPUT                     ((USAGE) 0x001A)
#define HID_USAGE_POWER_INPUT_ID                  ((USAGE) 0x001B)
#define HID_USAGE_POWER_OUTPUT                    ((USAGE) 0x001C)
#define HID_USAGE_POWER_OUTPUT_ID                 ((USAGE) 0x001D)
#define HID_USAGE_POWER_FLOW                      ((USAGE) 0x001E)
#define HID_USAGE_POWER_FLOW_ID                   ((USAGE) 0x001F)
#define HID_USAGE_POWER_OUTLET                    ((USAGE) 0x0020)
#define HID_USAGE_POWER_OUTLET_ID                 ((USAGE) 0x0021)
#define HID_USAGE_POWER_GANG                      ((USAGE) 0x0022)
#define HID_USAGE_POWER_GANG_ID                   ((USAGE) 0x0023)
#define HID_USAGE_POWER_POWER_SUMMARY             ((USAGE) 0x0024)
#define HID_USAGE_POWER_POWER_SUMMARY_ID          ((USAGE) 0x0025)
#define HID_USAGE_POWER_VOLTAGE                   ((USAGE) 0x0030)
#define HID_USAGE_POWER_CURRENT                   ((USAGE) 0x0031)
#define HID_USAGE_POWER_FREQUENCY                 ((USAGE) 0x0032)
#define HID_USAGE_POWER_APPARENT_POWER            ((USAGE) 0x0033)
#define HID_USAGE_POWER_ACTIVE_POWER              ((USAGE) 0x0034)
#define HID_USAGE_POWER_PERCENT_LOAD              ((USAGE) 0x0035)
#define HID_USAGE_POWER_TEMPERATURE               ((USAGE) 0x0036)
#define HID_USAGE_POWER_HUMIDITY                  ((USAGE) 0x0037)
#define HID_USAGE_POWER_BAD_COUNT                 ((USAGE) 0x0038)
#define HID_USAGE_POWER_CONFIG_VOLTAGE            ((USAGE) 0x0040)
#define HID_USAGE_POWER_CONFIG_CURRENT            ((USAGE) 0x0041)
#define HID_USAGE_POWER_CONFIG_FREQUENCY          ((USAGE) 0x0042)
#define HID_USAGE_POWER_CONFIG_APPARENT_POWER     ((USAGE) 0x0043)
#define HID_USAGE_POWER_CONFIG_ACTIVE_POWER       ((USAGE) 0x0044)
#define HID_USAGE_POWER_CONFIG_PERCENT_LOAD       ((USAGE) 0x0045)
#define HID_USAGE_POWER_CONFIG_TEMPERATURE        ((USAGE) 0x0046)
#define HID_USAGE_POWER_CONFIG_HUMIDITY           ((USAGE) 0x0047)
#define HID_USAGE_POWER_SWITCH_ON_CONTROL         ((USAGE) 0x0050)
#define HID_USAGE_POWER_SWITCH_OFF_CONTROL        ((USAGE) 0x0051)
#define HID_USAGE_POWER_TOGGLE_CONTROL            ((USAGE) 0x0052)
#define HID_USAGE_POWER_LOW_VOLTAGE_TRANSFER      ((USAGE) 0x0053)
#define HID_USAGE_POWER_HIGH_VOLTAGE_TRANSFER     ((USAGE) 0x0054)
#define HID_USAGE_POWER_DELAY_BEFORE_REBOOT       ((USAGE) 0x0055)
#define HID_USAGE_POWER_DELAY_BEFORE_STARTUP      ((USAGE) 0x0056)
#define HID_USAGE_POWER_DELAY_BEFORE_SHUTDOWN     ((USAGE) 0x0057)
#define HID_USAGE_POWER_TEST                      ((USAGE) 0x0058)
#define HID_USAGE_POWER_MODULE_RESET              ((USAGE) 0x0059)
#define HID_USAGE_POWER_AUDIBLE_ALARM_CONTROL     ((USAGE) 0x005A)
#define HID_USAGE_POWER_PRESENT                   ((USAGE) 0x0060)
#define HID_USAGE_POWER_GOOD                      ((USAGE) 0x0061)
#define HID_USAGE_POWER_INTERNAL_FAILURE          ((USAGE) 0x0062)
#define HID_USAGE_POWER_VOLTAG_OUT_OF_RANGE       ((USAGE) 0x0063)
#define HID_USAGE_POWER_FREQUENCY_OUT_OF_RANGE    ((USAGE) 0x0064)
#define HID_USAGE_POWER_OVERLOAD                  ((USAGE) 0x0065)
#define HID_USAGE_POWER_OVER_CHARGED              ((USAGE) 0x0066)
#define HID_USAGE_POWER_OVER_TEMPERATURE          ((USAGE) 0x0067)
#define HID_USAGE_POWER_SHUTDOWN_REQUESTED        ((USAGE) 0x0068)
#define HID_USAGE_POWER_SHUTDOWN_IMMINENT         ((USAGE) 0x0069)
#define HID_USAGE_POWER_SWITCH_ONOFF              ((USAGE) 0x006B)
#define HID_USAGE_POWER_SWITCHABLE                ((USAGE) 0x006C)
#define HID_USAGE_POWER_USED                      ((USAGE) 0x006D)
#define HID_USAGE_POWER_BOOST                     ((USAGE) 0x006E)
#define HID_USAGE_POWER_BUCK                      ((USAGE) 0x006F)
#define HID_USAGE_POWER_INITIALIZED               ((USAGE) 0x0070)
#define HID_USAGE_POWER_TESTED                    ((USAGE) 0x0071)
#define HID_USAGE_POWER_AWAITING_POWER            ((USAGE) 0x0072)
#define HID_USAGE_POWER_COMMUNICATION_LOST        ((USAGE) 0x0073)
#define HID_USAGE_POWER_IMANUFACTURER             ((USAGE) 0x00FD)
#define HID_USAGE_POWER_IPRODUCT                  ((USAGE) 0x00FE)
#define HID_USAGE_POWER_ISERIALNUMBER             ((USAGE) 0x00FF)

//
// Scales Page (0x8D)
//
#define HID_USAGE_WEIGHING_DEVICE_SCALES                                   ((USAGE) 0x0001)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_DEVICE                             ((USAGE) 0x0020)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS                              ((USAGE) 0x0021)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_I_METRIC                     ((USAGE) 0x0022)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_II_METRIC                    ((USAGE) 0x0023)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_III_METRIC                   ((USAGE) 0x0024)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_IIIL_METRIC                  ((USAGE) 0x0025)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_IV_METRIC                    ((USAGE) 0x0026)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_III_ENGLISH                  ((USAGE) 0x0027)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_IIIL_ENGLISH                 ((USAGE) 0x0028)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_IV_ENGLISH                   ((USAGE) 0x0029)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CLASS_GENERIC                      ((USAGE) 0x002A)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_ATTRIBUTE_REPORT                   ((USAGE) 0x0030)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_CONTROL_REPORT                     ((USAGE) 0x0031)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_DATA_REPORT                        ((USAGE) 0x0032)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_REPORT                      ((USAGE) 0x0033)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_WEIGHT_LIMIT_REPORT                ((USAGE) 0x0034)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATISTICS_REPORT                  ((USAGE) 0x0035)
#define HID_USAGE_WEIGHING_DEVICE_DATA_WEIGHT                              ((USAGE) 0x0040)
#define HID_USAGE_WEIGHING_DEVICE_DATA_SCALING                             ((USAGE) 0x0041)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT                              ((USAGE) 0x0050)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_MILLIGRAM                    ((USAGE) 0x0051)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_GRAM                         ((USAGE) 0x0052)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_KILOGRAM                     ((USAGE) 0x0053)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_CARATS                       ((USAGE) 0x0054)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_TAELS                        ((USAGE) 0x0055)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_GRAINS                       ((USAGE) 0x0056)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_PENNYWEIGHTS                 ((USAGE) 0x0057)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_METRIC_TON                   ((USAGE) 0x0058)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_AVOIR_TON                    ((USAGE) 0x0059)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_TROY_OUNCE                   ((USAGE) 0x005A)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_OUNCE                        ((USAGE) 0x005B)
#define HID_USAGE_WEIGHING_DEVICE_WEIGHT_UNIT_POUND                        ((USAGE) 0x005C)
#define HID_USAGE_WEIGHING_DEVICE_CALIBRATION_COUNT                        ((USAGE) 0x0060)
#define HID_USAGE_WEIGHING_DEVICE_REZERO_COUNT                             ((USAGE) 0x0061)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS                             ((USAGE) 0x0070)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_FAULT                       ((USAGE) 0x0071)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_STABLE_AT_CENTER_OF_ZERO    ((USAGE) 0x0072)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_IN_MOTION                   ((USAGE) 0x0073)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_WEIGHT_STABLE               ((USAGE) 0x0074)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_UNDER_ZERO                  ((USAGE) 0x0075)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_OVER_WEIGHT_LIMIT           ((USAGE) 0x0076)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_REQUIRES_CALIBRATION        ((USAGE) 0x0077)
#define HID_USAGE_WEIGHING_DEVICE_SCALE_STATUS_REQUIRES_REZEROING          ((USAGE) 0x0078)
#define HID_USAGE_WEIGHING_DEVICE_ZERO_SCALE                               ((USAGE) 0x0080)
#define HID_USAGE_WEIGHING_DEVICE_ENFORCED_ZERO_RETURN                     ((USAGE) 0x0081)

//
// Sensors Page (0x20)
//
#define HID_USAGE_SENSORS_SENSOR                                                      ((USAGE) 0x0001)
#define HID_USAGE_SENSORS_BIOMETRIC                                                   ((USAGE) 0x0010)
#define HID_USAGE_SENSORS_BIOMETRIC_HUMAN_PRESENCE                                    ((USAGE) 0x0011)
#define HID_USAGE_SENSORS_BIOMETRIC_HUMAN_PROXIMITY                                   ((USAGE) 0x0012)
#define HID_USAGE_SENSORS_BIOMETRIC_HUMAN_TOUCH                                       ((USAGE) 0x0013)
#define HID_USAGE_SENSORS_BIOMETRIC_BLOOD_PRESSURE                                    ((USAGE) 0x0014)
#define HID_USAGE_SENSORS_BIOMETRIC_BODY_TEMPERATURE                                  ((USAGE) 0x0015)
#define HID_USAGE_SENSORS_BIOMETRIC_HEART_RATE                                        ((USAGE) 0x0016)
#define HID_USAGE_SENSORS_BIOMETRIC_HEART_RATE_VARIABILITY                            ((USAGE) 0x0017)
#define HID_USAGE_SENSORS_BIOMETRIC_PERIPHERAL_OXYGEN_SATURATION                      ((USAGE) 0x0018)
#define HID_USAGE_SENSORS_BIOMETRIC_RESPIRATORY_RATE                                  ((USAGE) 0x0019)
#define HID_USAGE_SENSORS_ELECTRICAL                                                  ((USAGE) 0x0020)
#define HID_USAGE_SENSORS_ELECTRICAL_CAPACITANCE                                      ((USAGE) 0x0021)
#define HID_USAGE_SENSORS_ELECTRICAL_CURRENT                                          ((USAGE) 0x0022)
#define HID_USAGE_SENSORS_ELECTRICAL_POWER                                            ((USAGE) 0x0023)
#define HID_USAGE_SENSORS_ELECTRICAL_INDUCTANCE                                       ((USAGE) 0x0024)
#define HID_USAGE_SENSORS_ELECTRICAL_RESISTANCE                                       ((USAGE) 0x0025)
#define HID_USAGE_SENSORS_ELECTRICAL_VOLTAGE                                          ((USAGE) 0x0026)
#define HID_USAGE_SENSORS_ELECTRICAL_POTENTIOMETER                                    ((USAGE) 0x0027)
#define HID_USAGE_SENSORS_ELECTRICAL_FREQUENCY                                        ((USAGE) 0x0028)
#define HID_USAGE_SENSORS_ELECTRICAL_PERIOD                                           ((USAGE) 0x0029)
#define HID_USAGE_SENSORS_ENVIRONMENTAL                                               ((USAGE) 0x0030)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_ATMOSPHERIC_PRESSURE                          ((USAGE) 0x0031)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_HUMIDITY                                      ((USAGE) 0x0032)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_TEMPERATURE                                   ((USAGE) 0x0033)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_WIND_DIRECTION                                ((USAGE) 0x0034)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_WIND_SPEED                                    ((USAGE) 0x0035)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_AIR_QUALITY                                   ((USAGE) 0x0036)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_HEAT_INDEX                                    ((USAGE) 0x0037)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_SURFACE_TEMPERATURE                           ((USAGE) 0x0038)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_VOLATILE_ORGANIC_COMPOUNDS                    ((USAGE) 0x0039)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_OBJECT_PRESENCE                               ((USAGE) 0x003A)
#define HID_USAGE_SENSORS_ENVIRONMENTAL_OBJECT_PROXIMITY                              ((USAGE) 0x003B)
#define HID_USAGE_SENSORS_LIGHT                                                       ((USAGE) 0x0040)
#define HID_USAGE_SENSORS_LIGHT_AMBIENT_LIGHT                                         ((USAGE) 0x0041)
#define HID_USAGE_SENSORS_LIGHT_CONSUMER_INFRARED                                     ((USAGE) 0x0042)
#define HID_USAGE_SENSORS_LIGHT_INFRARED_LIGHT                                        ((USAGE) 0x0043)
#define HID_USAGE_SENSORS_LIGHT_VISIBLE_LIGHT                                         ((USAGE) 0x0044)
#define HID_USAGE_SENSORS_LIGHT_ULTRAVIOLET_LIGHT                                     ((USAGE) 0x0045)
#define HID_USAGE_SENSORS_LOCATION                                                    ((USAGE) 0x0050)
#define HID_USAGE_SENSORS_LOCATION_BROADCAST                                          ((USAGE) 0x0051)
#define HID_USAGE_SENSORS_LOCATION_DEAD_RECKONING                                     ((USAGE) 0x0052)
#define HID_USAGE_SENSORS_LOCATION_GPS_GLOBAL_POSITIONING_SYSTEM                      ((USAGE) 0x0053)
#define HID_USAGE_SENSORS_LOCATION_LOOKUP                                             ((USAGE) 0x0054)
#define HID_USAGE_SENSORS_LOCATION_OTHER                                              ((USAGE) 0x0055)
#define HID_USAGE_SENSORS_LOCATION_STATIC                                             ((USAGE) 0x0056)
#define HID_USAGE_SENSORS_LOCATION_TRIANGULATION                                      ((USAGE) 0x0057)
#define HID_USAGE_SENSORS_MECHANICAL                                                  ((USAGE) 0x0060)
#define HID_USAGE_SENSORS_MECHANICAL_BOOLEAN_SWITCH                                   ((USAGE) 0x0061)
#define HID_USAGE_SENSORS_MECHANICAL_BOOLEAN_SWITCH_ARRAY                             ((USAGE) 0x0062)
#define HID_USAGE_SENSORS_MECHANICAL_MULTIVALUE_SWITCH                                ((USAGE) 0x0063)
#define HID_USAGE_SENSORS_MECHANICAL_FORCE                                            ((USAGE) 0x0064)
#define HID_USAGE_SENSORS_MECHANICAL_PRESSURE                                         ((USAGE) 0x0065)
#define HID_USAGE_SENSORS_MECHANICAL_STRAIN                                           ((USAGE) 0x0066)
#define HID_USAGE_SENSORS_MECHANICAL_WEIGHT                                           ((USAGE) 0x0067)
#define HID_USAGE_SENSORS_MECHANICAL_HAPTIC_VIBRATOR                                  ((USAGE) 0x0068)
#define HID_USAGE_SENSORS_MECHANICAL_HALL_EFFECT_SWITCH                               ((USAGE) 0x0069)
#define HID_USAGE_SENSORS_MOTION                                                      ((USAGE) 0x0070)
#define HID_USAGE_SENSORS_MOTION_ACCELEROMETER_1D                                     ((USAGE) 0x0071)
#define HID_USAGE_SENSORS_MOTION_ACCELEROMETER_2D                                     ((USAGE) 0x0072)
#define HID_USAGE_SENSORS_MOTION_ACCELEROMETER_3D                                     ((USAGE) 0x0073)
#define HID_USAGE_SENSORS_MOTION_GYROMETER_1D                                         ((USAGE) 0x0074)
#define HID_USAGE_SENSORS_MOTION_GYROMETER_2D                                         ((USAGE) 0x0075)
#define HID_USAGE_SENSORS_MOTION_GYROMETER_3D                                         ((USAGE) 0x0076)
#define HID_USAGE_SENSORS_MOTION_MOTION_DETECTOR                                      ((USAGE) 0x0077)
#define HID_USAGE_SENSORS_MOTION_SPEEDOMETER                                          ((USAGE) 0x0078)
#define HID_USAGE_SENSORS_MOTION_ACCELEROMETER                                        ((USAGE) 0x0079)
#define HID_USAGE_SENSORS_MOTION_GYROMETER                                            ((USAGE) 0x007A)
#define HID_USAGE_SENSORS_MOTION_GRAVITY_VECTOR                                       ((USAGE) 0x007B)
#define HID_USAGE_SENSORS_MOTION_LINEAR_ACCELEROMETER                                 ((USAGE) 0x007C)
#define HID_USAGE_SENSORS_ORIENTATION                                                 ((USAGE) 0x0080)
#define HID_USAGE_SENSORS_ORIENTATION_COMPASS_1D                                      ((USAGE) 0x0081)
#define HID_USAGE_SENSORS_ORIENTATION_COMPASS_2D                                      ((USAGE) 0x0082)
#define HID_USAGE_SENSORS_ORIENTATION_COMPASS_3D                                      ((USAGE) 0x0083)
#define HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_1D                                 ((USAGE) 0x0084)
#define HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_2D                                 ((USAGE) 0x0085)
#define HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_3D                                 ((USAGE) 0x0086)
#define HID_USAGE_SENSORS_ORIENTATION_DISTANCE_1D                                     ((USAGE) 0x0087)
#define HID_USAGE_SENSORS_ORIENTATION_DISTANCE_2D                                     ((USAGE) 0x0088)
#define HID_USAGE_SENSORS_ORIENTATION_DISTANCE_3D                                     ((USAGE) 0x0089)
#define HID_USAGE_SENSORS_ORIENTATION_DEVICE_ORIENTATION                              ((USAGE) 0x008A)
#define HID_USAGE_SENSORS_ORIENTATION_COMPASS                                         ((USAGE) 0x008B)
#define HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER                                    ((USAGE) 0x008C)
#define HID_USAGE_SENSORS_ORIENTATION_DISTANCE                                        ((USAGE) 0x008D)
#define HID_USAGE_SENSORS_ORIENTATION_RELATIVE_ORIENTATION                            ((USAGE) 0x008E)
#define HID_USAGE_SENSORS_ORIENTATION_SIMPLE_ORIENTATION                              ((USAGE) 0x008F)
#define HID_USAGE_SENSORS_SCANNER                                                     ((USAGE) 0x0090)
#define HID_USAGE_SENSORS_SCANNER_BARCODE                                             ((USAGE) 0x0091)
#define HID_USAGE_SENSORS_SCANNER_RFID                                                ((USAGE) 0x0092)
#define HID_USAGE_SENSORS_SCANNER_NFC                                                 ((USAGE) 0x0093)
#define HID_USAGE_SENSORS_TIME                                                        ((USAGE) 0x00A0)
#define HID_USAGE_SENSORS_TIME_ALARM_TIMER                                            ((USAGE) 0x00A1)
#define HID_USAGE_SENSORS_TIME_REAL_TIME_CLOCK                                        ((USAGE) 0x00A2)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY                                           ((USAGE) 0x00B0)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY_ACTIVITY_DETECTION                        ((USAGE) 0x00B1)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY_DEVICE_POSITION                           ((USAGE) 0x00B2)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY_FLOOR_TRACKER                             ((USAGE) 0x00B3)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY_PEDOMETER                                 ((USAGE) 0x00B4)
#define HID_USAGE_SENSORS_PERSONAL_ACTIVITY_STEP_DETECTION                            ((USAGE) 0x00B5)
#define HID_USAGE_SENSORS_ORIENTATION_EXTENDED                                        ((USAGE) 0x00C0)
#define HID_USAGE_SENSORS_ORIENTATION_EXTENDED_GEOMAGNETIC_ORIENTATION                ((USAGE) 0x00C1)
#define HID_USAGE_SENSORS_ORIENTATION_EXTENDED_MAGNETOMETER                           ((USAGE) 0x00C2)
#define HID_USAGE_SENSORS_GESTURE                                                     ((USAGE) 0x00D0)
#define HID_USAGE_SENSORS_GESTURE_CHASSIS_FLIP_GESTURE                                ((USAGE) 0x00D1)
#define HID_USAGE_SENSORS_GESTURE_HINGE_FOLD_GESTURE                                  ((USAGE) 0x00D2)
#define HID_USAGE_SENSORS_OTHER                                                       ((USAGE) 0x00E0)
#define HID_USAGE_SENSORS_OTHER_CUSTOM                                                ((USAGE) 0x00E1)
#define HID_USAGE_SENSORS_OTHER_GENERIC                                               ((USAGE) 0x00E2)
#define HID_USAGE_SENSORS_OTHER_GENERIC_ENUMERATOR                                    ((USAGE) 0x00E3)
#define HID_USAGE_SENSORS_OTHER_HINGE_ANGLE                                           ((USAGE) 0x00E4)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_1                                           ((USAGE) 0x00F0)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_2                                           ((USAGE) 0x00F1)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_3                                           ((USAGE) 0x00F2)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_4                                           ((USAGE) 0x00F3)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_5                                           ((USAGE) 0x00F4)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_6                                           ((USAGE) 0x00F5)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_7                                           ((USAGE) 0x00F6)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_8                                           ((USAGE) 0x00F7)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_9                                           ((USAGE) 0x00F8)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_10                                          ((USAGE) 0x00F9)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_11                                          ((USAGE) 0x00FA)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_12                                          ((USAGE) 0x00FB)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_13                                          ((USAGE) 0x00FC)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_14                                          ((USAGE) 0x00FD)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_15                                          ((USAGE) 0x00FE)
#define HID_USAGE_SENSORS_VENDOR_RESERVED_16                                          ((USAGE) 0x00FF)
#define HID_USAGE_SENSORS_EVENT                                                       ((USAGE) 0x0200)
#define HID_USAGE_SENSORS_EVENT_SENSOR_STATE                                          ((USAGE) 0x0201)
#define HID_USAGE_SENSORS_EVENT_SENSOR_EVENT                                          ((USAGE) 0x0202)
#define HID_USAGE_SENSORS_PROPERTY                                                    ((USAGE) 0x0300)
#define HID_USAGE_SENSORS_PROPERTY_FRIENDLY_NAME                                      ((USAGE) 0x0301)
#define HID_USAGE_SENSORS_PROPERTY_PERSISTENT_UNIQUE_ID                               ((USAGE) 0x0302)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_STATUS                                      ((USAGE) 0x0303)
#define HID_USAGE_SENSORS_PROPERTY_MINIMUM_REPORT_INTERVAL                            ((USAGE) 0x0304)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_MANUFACTURER                                ((USAGE) 0x0305)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_MODEL                                       ((USAGE) 0x0306)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_SERIAL_NUMBER                               ((USAGE) 0x0307)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_DESCRIPTION                                 ((USAGE) 0x0308)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_CONNECTION_TYPE                             ((USAGE) 0x0309)
#define HID_USAGE_SENSORS_PROPERTY_SENSOR_DEVICE_PATH                                 ((USAGE) 0x030A)
#define HID_USAGE_SENSORS_PROPERTY_HARDWARE_REVISION                                  ((USAGE) 0x030B)
#define HID_USAGE_SENSORS_PROPERTY_FIRMWARE_VERSION                                   ((USAGE) 0x030C)
#define HID_USAGE_SENSORS_PROPERTY_RELEASE_DATE                                       ((USAGE) 0x030D)
#define HID_USAGE_SENSORS_PROPERTY_REPORT_INTERVAL                                    ((USAGE) 0x030E)
#define HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_ABSOLUTE                        ((USAGE) 0x030F)
#define HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_PERCENT_OF_RANGE                ((USAGE) 0x0310)
#define HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_PERCENT_RELATIVE                ((USAGE) 0x0311)
#define HID_USAGE_SENSORS_PROPERTY_ACCURACY                                           ((USAGE) 0x0312)
#define HID_USAGE_SENSORS_PROPERTY_RESOLUTION                                         ((USAGE) 0x0313)
#define HID_USAGE_SENSORS_PROPERTY_MAXIMUM                                            ((USAGE) 0x0314)
#define HID_USAGE_SENSORS_PROPERTY_MINIMUM                                            ((USAGE) 0x0315)
#define HID_USAGE_SENSORS_PROPERTY_REPORTING_STATE                                    ((USAGE) 0x0316)
#define HID_USAGE_SENSORS_PROPERTY_SAMPLING_RATE                                      ((USAGE) 0x0317)
#define HID_USAGE_SENSORS_PROPERTY_RESPONSE_CURVE                                     ((USAGE) 0x0318)
#define HID_USAGE_SENSORS_PROPERTY_POWER_STATE                                        ((USAGE) 0x0319)
#define HID_USAGE_SENSORS_PROPERTY_MAXIMUM_FIFO_EVENTS                                ((USAGE) 0x031A)
#define HID_USAGE_SENSORS_PROPERTY_REPORT_LATENCY                                     ((USAGE) 0x031B)
#define HID_USAGE_SENSORS_PROPERTY_FLUSH_FIFO_EVENTS                                  ((USAGE) 0x031C)
#define HID_USAGE_SENSORS_PROPERTY_MAXIMUM_POWER_CONSUMPTION                          ((USAGE) 0x031D)
#define HID_USAGE_SENSORS_PROPERTY_IS_PRIMARY                                         ((USAGE) 0x031E)
#define HID_USAGE_SENSORS_PROPERTY_HUMAN_PRESENCE_DETECTION_TYPE                      ((USAGE) 0x031F)
#define HID_USAGE_SENSORS_DATA_FIELD_LOCATION                                         ((USAGE) 0x0400)
#define HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ANTENNA_SEA_LEVEL                       ((USAGE) 0x0402)
#define HID_USAGE_SENSORS_DATA_FIELD_DIFFERENTIAL_REFERENCE_STATION_ID                ((USAGE) 0x0403)
#define HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ELLIPSOID_ERROR                         ((USAGE) 0x0404)
#define HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ELLIPSOID                               ((USAGE) 0x0405)
#define HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_SEA_LEVEL_ERROR                         ((USAGE) 0x0406)
#define HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_SEA_LEVEL                               ((USAGE) 0x0407)
#define HID_USAGE_SENSORS_DATA_FIELD_DIFFERENTIAL_GPS_DATA_AGE                        ((USAGE) 0x0408)
#define HID_USAGE_SENSORS_DATA_FIELD_ERROR_RADIUS                                     ((USAGE) 0x0409)
#define HID_USAGE_SENSORS_DATA_FIELD_FIX_QUALITY                                      ((USAGE) 0x040A)
#define HID_USAGE_SENSORS_DATA_FIELD_FIX_TYPE                                         ((USAGE) 0x040B)
#define HID_USAGE_SENSORS_DATA_FIELD_GEOIDAL_SEPARATION                               ((USAGE) 0x040C)
#define HID_USAGE_SENSORS_DATA_FIELD_GPS_OPERATION_MODE                               ((USAGE) 0x040D)
#define HID_USAGE_SENSORS_DATA_FIELD_GPS_SELECTION_MODE                               ((USAGE) 0x040E)
#define HID_USAGE_SENSORS_DATA_FIELD_GPS_STATUS                                       ((USAGE) 0x040F)
#define HID_USAGE_SENSORS_DATA_FIELD_POSITION_DILUTION_OF_PRECISION                   ((USAGE) 0x0410)
#define HID_USAGE_SENSORS_DATA_FIELD_HORIZONTAL_DILUTION_OF_PRECISION                 ((USAGE) 0x0411)
#define HID_USAGE_SENSORS_DATA_FIELD_VERTICAL_DILUTION_OF_PRECISION                   ((USAGE) 0x0412)
#define HID_USAGE_SENSORS_DATA_FIELD_LATITUDE                                         ((USAGE) 0x0413)
#define HID_USAGE_SENSORS_DATA_FIELD_LONGITUDE                                        ((USAGE) 0x0414)
#define HID_USAGE_SENSORS_DATA_FIELD_TRUE_HEADING                                     ((USAGE) 0x0415)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_HEADING                                 ((USAGE) 0x0416)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_VARIATION                               ((USAGE) 0x0417)
#define HID_USAGE_SENSORS_DATA_FIELD_SPEED                                            ((USAGE) 0x0418)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW                               ((USAGE) 0x0419)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_AZIMUTH                       ((USAGE) 0x041A)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_ELEVATION                     ((USAGE) 0x041B)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_IDS                           ((USAGE) 0x041C)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_PRNS                          ((USAGE) 0x041D)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_SN_RATIOS                     ((USAGE) 0x041E)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_USED_COUNT                            ((USAGE) 0x041F)
#define HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_USED_PRNS                             ((USAGE) 0x0420)
#define HID_USAGE_SENSORS_DATA_FIELD_NMEA_SENTENCE                                    ((USAGE) 0x0421)
#define HID_USAGE_SENSORS_DATA_FIELD_ADDRESS_LINE_1                                   ((USAGE) 0x0422)
#define HID_USAGE_SENSORS_DATA_FIELD_ADDRESS_LINE_2                                   ((USAGE) 0x0423)
#define HID_USAGE_SENSORS_DATA_FIELD_CITY                                             ((USAGE) 0x0424)
#define HID_USAGE_SENSORS_DATA_FIELD_STATE_OR_PROVINCE                                ((USAGE) 0x0425)
#define HID_USAGE_SENSORS_DATA_FIELD_COUNTRY_OR_REGION                                ((USAGE) 0x0426)
#define HID_USAGE_SENSORS_DATA_FIELD_POSTAL_CODE                                      ((USAGE) 0x0427)
#define HID_USAGE_SENSORS_PROPERTY_LOCATION                                           ((USAGE) 0x042A)
#define HID_USAGE_SENSORS_PROPERTY_LOCATION_DESIRED_ACCURACY                          ((USAGE) 0x042B)
#define HID_USAGE_SENSORS_DATA_FIELD_ENVIRONMENTAL                                    ((USAGE) 0x0430)
#define HID_USAGE_SENSORS_DATA_FIELD_ATMOSPHERIC_PRESSURE                             ((USAGE) 0x0431)
#define HID_USAGE_SENSORS_DATA_FIELD_RELATIVE_HUMIDITY                                ((USAGE) 0x0433)
#define HID_USAGE_SENSORS_DATA_FIELD_TEMPERATURE                                      ((USAGE) 0x0434)
#define HID_USAGE_SENSORS_DATA_FIELD_WIND_DIRECTION                                   ((USAGE) 0x0435)
#define HID_USAGE_SENSORS_DATA_FIELD_WIND_SPEED                                       ((USAGE) 0x0436)
#define HID_USAGE_SENSORS_DATA_FIELD_AIR_QUALITY_INDEX                                ((USAGE) 0x0437)
#define HID_USAGE_SENSORS_DATA_FIELD_EQUIVALENT_CO2                                   ((USAGE) 0x0438)
#define HID_USAGE_SENSORS_DATA_FIELD_VOLATILE_ORGANIC_COMPOUND_CONCENTRATION          ((USAGE) 0x0439)
#define HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PRESENCE                                  ((USAGE) 0x043A)
#define HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PROXIMITY_RANGE                           ((USAGE) 0x043B)
#define HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PROXIMITY_OUT_OF_RANGE                    ((USAGE) 0x043C)
#define HID_USAGE_SENSORS_PROPERTY_ENVIRONMENTAL                                      ((USAGE) 0x0440)
#define HID_USAGE_SENSORS_PROPERTY_REFERENCE_PRESSURE                                 ((USAGE) 0x0441)
#define HID_USAGE_SENSORS_DATA_FIELD_MOTION                                           ((USAGE) 0x0450)
#define HID_USAGE_SENSORS_DATA_FIELD_MOTION_STATE                                     ((USAGE) 0x0451)
#define HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION                                     ((USAGE) 0x0452)
#define HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_X                              ((USAGE) 0x0453)
#define HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_Y                              ((USAGE) 0x0454)
#define HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_Z                              ((USAGE) 0x0455)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY                                 ((USAGE) 0x0456)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_X_AXIS                    ((USAGE) 0x0457)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_Y_AXIS                    ((USAGE) 0x0458)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_Z_AXIS                    ((USAGE) 0x0459)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION                                 ((USAGE) 0x045A)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_X_AXIS                    ((USAGE) 0x045B)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_Y_AXIS                    ((USAGE) 0x045C)
#define HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_Z_AXIS                    ((USAGE) 0x045D)
#define HID_USAGE_SENSORS_DATA_FIELD_MOTION_SPEED                                     ((USAGE) 0x045E)
#define HID_USAGE_SENSORS_DATA_FIELD_MOTION_INTENSITY                                 ((USAGE) 0x045F)
#define HID_USAGE_SENSORS_DATA_FIELD_ORIENTATION                                      ((USAGE) 0x0470)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING                                          ((USAGE) 0x0471)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_X_AXIS                                   ((USAGE) 0x0472)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_Y_AXIS                                   ((USAGE) 0x0473)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_Z_AXIS                                   ((USAGE) 0x0474)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_COMPENSATED_MAGNETIC_NORTH               ((USAGE) 0x0475)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_COMPENSATED_TRUE_NORTH                   ((USAGE) 0x0476)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_MAGNETIC_NORTH                           ((USAGE) 0x0477)
#define HID_USAGE_SENSORS_DATA_FIELD_HEADING_TRUE_NORTH                               ((USAGE) 0x0478)
#define HID_USAGE_SENSORS_DATA_FIELD_DISTANCE                                         ((USAGE) 0x0479)
#define HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_X_AXIS                                  ((USAGE) 0x047A)
#define HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_Y_AXIS                                  ((USAGE) 0x047B)
#define HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_Z_AXIS                                  ((USAGE) 0x047C)
#define HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_OUTOFRANGE                              ((USAGE) 0x047D)
#define HID_USAGE_SENSORS_DATA_FIELD_TILT                                             ((USAGE) 0x047E)
#define HID_USAGE_SENSORS_DATA_FIELD_TILT_X_AXIS                                      ((USAGE) 0x047F)
#define HID_USAGE_SENSORS_DATA_FIELD_TILT_Y_AXIS                                      ((USAGE) 0x0480)
#define HID_USAGE_SENSORS_DATA_FIELD_TILT_Z_AXIS                                      ((USAGE) 0x0481)
#define HID_USAGE_SENSORS_DATA_FIELD_ROTATION_MATRIX                                  ((USAGE) 0x0482)
#define HID_USAGE_SENSORS_DATA_FIELD_QUATERNION                                       ((USAGE) 0x0483)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX                                    ((USAGE) 0x0484)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_X_AXIS                             ((USAGE) 0x0485)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_Y_AXIS                             ((USAGE) 0x0486)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_Z_AXIS                             ((USAGE) 0x0487)
#define HID_USAGE_SENSORS_DATA_FIELD_MAGNETOMETER_ACCURACY                            ((USAGE) 0x0488)
#define HID_USAGE_SENSORS_DATA_FIELD_SIMPLE_ORIENTATION_DIRECTION                     ((USAGE) 0x0489)
#define HID_USAGE_SENSORS_DATA_FIELD_MECHANICAL                                       ((USAGE) 0x0490)
#define HID_USAGE_SENSORS_DATA_FIELD_BOOLEAN_SWITCH_STATE                             ((USAGE) 0x0491)
#define HID_USAGE_SENSORS_DATA_FIELD_BOOLEAN_SWITCH_ARRAY_STATES                      ((USAGE) 0x0492)
#define HID_USAGE_SENSORS_DATA_FIELD_MULTIVALUE_SWITCH_VALUE                          ((USAGE) 0x0493)
#define HID_USAGE_SENSORS_DATA_FIELD_FORCE                                            ((USAGE) 0x0494)
#define HID_USAGE_SENSORS_DATA_FIELD_ABSOLUTE_PRESSURE                                ((USAGE) 0x0495)
#define HID_USAGE_SENSORS_DATA_FIELD_GAUGE_PRESSURE                                   ((USAGE) 0x0496)
#define HID_USAGE_SENSORS_DATA_FIELD_STRAIN                                           ((USAGE) 0x0497)
#define HID_USAGE_SENSORS_DATA_FIELD_WEIGHT                                           ((USAGE) 0x0498)
#define HID_USAGE_SENSORS_PROPERTY_MECHANICAL                                         ((USAGE) 0x04A0)
#define HID_USAGE_SENSORS_PROPERTY_VIBRATION_STATE                                    ((USAGE) 0x04A1)
#define HID_USAGE_SENSORS_PROPERTY_FORWARD_VIBRATION_SPEED                            ((USAGE) 0x04A2)
#define HID_USAGE_SENSORS_PROPERTY_BACKWARD_VIBRATION_SPEED                           ((USAGE) 0x04A3)
#define HID_USAGE_SENSORS_DATA_FIELD_BIOMETRIC                                        ((USAGE) 0x04B0)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PRESENCE                                   ((USAGE) 0x04B1)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PROXIMITY_RANGE                            ((USAGE) 0x04B2)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PROXIMITY_OUT_OF_RANGE                     ((USAGE) 0x04B3)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_TOUCH_STATE                                ((USAGE) 0x04B4)
#define HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE                                   ((USAGE) 0x04B5)
#define HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE_DIASTOLIC                         ((USAGE) 0x04B6)
#define HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE_SYSTOLIC                          ((USAGE) 0x04B7)
#define HID_USAGE_SENSORS_DATA_FIELD_HEART_RATE                                       ((USAGE) 0x04B8)
#define HID_USAGE_SENSORS_DATA_FIELD_RESTING_HEART_RATE                               ((USAGE) 0x04B9)
#define HID_USAGE_SENSORS_DATA_FIELD_HEARTBEAT_INTERVAL                               ((USAGE) 0x04BA)
#define HID_USAGE_SENSORS_DATA_FIELD_RESPIRATORY_RATE                                 ((USAGE) 0x04BB)
#define HID_USAGE_SENSORS_DATA_FIELD_SPO2                                             ((USAGE) 0x04BC)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_ATTENTION_DETECTED                         ((USAGE) 0x04BD)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_HEAD_AZIMUTH                               ((USAGE) 0x04BE)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_HEAD_ALTITUDE                              ((USAGE) 0x04BF)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_HEAD_ROLL                                  ((USAGE) 0x04C0)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_HEAD_PITCH                                 ((USAGE) 0x04C1)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_HEAD_YAW                                   ((USAGE) 0x04C2)
#define HID_USAGE_SENSORS_DATA_FIELD_HUMAN_CORRELATION_ID                             ((USAGE) 0x04C3)
#define HID_USAGE_SENSORS_DATA_FIELD_LIGHT                                            ((USAGE) 0x04D0)
#define HID_USAGE_SENSORS_DATA_FIELD_ILLUMINANCE                                      ((USAGE) 0x04D1)
#define HID_USAGE_SENSORS_DATA_FIELD_COLOR_TEMPERATURE                                ((USAGE) 0x04D2)
#define HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY                                     ((USAGE) 0x04D3)
#define HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY_X                                   ((USAGE) 0x04D4)
#define HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY_Y                                   ((USAGE) 0x04D5)
#define HID_USAGE_SENSORS_DATA_FIELD_CONSUMER_IR_SENTENCE_RECEIVE                     ((USAGE) 0x04D6)
#define HID_USAGE_SENSORS_DATA_FIELD_INFRARED_LIGHT                                   ((USAGE) 0x04D7)
#define HID_USAGE_SENSORS_DATA_FIELD_RED_LIGHT                                        ((USAGE) 0x04D8)
#define HID_USAGE_SENSORS_DATA_FIELD_GREEN_LIGHT                                      ((USAGE) 0x04D9)
#define HID_USAGE_SENSORS_DATA_FIELD_BLUE_LIGHT                                       ((USAGE) 0x04DA)
#define HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_A_LIGHT                              ((USAGE) 0x04DB)
#define HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_B_LIGHT                              ((USAGE) 0x04DC)
#define HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_INDEX                                ((USAGE) 0x04DD)
#define HID_USAGE_SENSORS_DATA_FIELD_NEAR_INFRARED_LIGHT                              ((USAGE) 0x04DE)
#define HID_USAGE_SENSORS_PROPERTY_LIGHT                                              ((USAGE) 0x04DF)
#define HID_USAGE_SENSORS_PROPERTY_CONSUMER_IR_SENTENCE_SEND                          ((USAGE) 0x04E0)
#define HID_USAGE_SENSORS_PROPERTY_AUTO_BRIGHTNESS_PREFERRED                          ((USAGE) 0x04E2)
#define HID_USAGE_SENSORS_PROPERTY_AUTO_COLOR_PREFERRED                               ((USAGE) 0x04E3)
#define HID_USAGE_SENSORS_DATA_FIELD_SCANNER                                          ((USAGE) 0x04F0)
#define HID_USAGE_SENSORS_DATA_FIELD_RFID_TAG_40_BIT                                  ((USAGE) 0x04F1)
#define HID_USAGE_SENSORS_DATA_FIELD_NFC_SENTENCE_RECEIVE                             ((USAGE) 0x04F2)
#define HID_USAGE_SENSORS_PROPERTY_SCANNER                                            ((USAGE) 0x04F8)
#define HID_USAGE_SENSORS_PROPERTY_NFC_SENTENCE_SEND                                  ((USAGE) 0x04F9)
#define HID_USAGE_SENSORS_DATA_FIELD_ELECTRICAL                                       ((USAGE) 0x0500)
#define HID_USAGE_SENSORS_DATA_FIELD_CAPACITANCE                                      ((USAGE) 0x0501)
#define HID_USAGE_SENSORS_DATA_FIELD_CURRENT                                          ((USAGE) 0x0502)
#define HID_USAGE_SENSORS_DATA_FIELD_ELECTRICAL_POWER                                 ((USAGE) 0x0503)
#define HID_USAGE_SENSORS_DATA_FIELD_INDUCTANCE                                       ((USAGE) 0x0504)
#define HID_USAGE_SENSORS_DATA_FIELD_RESISTANCE                                       ((USAGE) 0x0505)
#define HID_USAGE_SENSORS_DATA_FIELD_VOLTAGE                                          ((USAGE) 0x0506)
#define HID_USAGE_SENSORS_DATA_FIELD_FREQUENCY                                        ((USAGE) 0x0507)
#define HID_USAGE_SENSORS_DATA_FIELD_PERIOD                                           ((USAGE) 0x0508)
#define HID_USAGE_SENSORS_DATA_FIELD_PERCENT_OF_RANGE                                 ((USAGE) 0x0509)
#define HID_USAGE_SENSORS_DATA_FIELD_TIME                                             ((USAGE) 0x0520)
#define HID_USAGE_SENSORS_DATA_FIELD_YEAR                                             ((USAGE) 0x0521)
#define HID_USAGE_SENSORS_DATA_FIELD_MONTH                                            ((USAGE) 0x0522)
#define HID_USAGE_SENSORS_DATA_FIELD_DAY                                              ((USAGE) 0x0523)
#define HID_USAGE_SENSORS_DATA_FIELD_DAY_OF_WEEK                                      ((USAGE) 0x0524)
#define HID_USAGE_SENSORS_DATA_FIELD_HOUR                                             ((USAGE) 0x0525)
#define HID_USAGE_SENSORS_DATA_FIELD_MINUTE                                           ((USAGE) 0x0526)
#define HID_USAGE_SENSORS_DATA_FIELD_SECOND                                           ((USAGE) 0x0527)
#define HID_USAGE_SENSORS_DATA_FIELD_MILLISECOND                                      ((USAGE) 0x0528)
#define HID_USAGE_SENSORS_DATA_FIELD_TIMESTAMP                                        ((USAGE) 0x0529)
#define HID_USAGE_SENSORS_DATA_FIELD_JULIAN_DAY_OF_YEAR                               ((USAGE) 0x052A)
#define HID_USAGE_SENSORS_DATA_FIELD_TIME_SINCE_SYSTEM_BOOT                           ((USAGE) 0x052B)
#define HID_USAGE_SENSORS_PROPERTY_TIME                                               ((USAGE) 0x0530)
#define HID_USAGE_SENSORS_PROPERTY_TIME_ZONE_OFFSET_FROM_UTC                          ((USAGE) 0x0531)
#define HID_USAGE_SENSORS_PROPERTY_TIME_ZONE_NAME                                     ((USAGE) 0x0532)
#define HID_USAGE_SENSORS_PROPERTY_DAYLIGHT_SAVINGS_TIME_OBSERVED                     ((USAGE) 0x0533)
#define HID_USAGE_SENSORS_PROPERTY_TIME_TRIM_ADJUSTMENT                               ((USAGE) 0x0534)
#define HID_USAGE_SENSORS_PROPERTY_ARM_ALARM                                          ((USAGE) 0x0535)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM                                           ((USAGE) 0x0540)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_USAGE                                     ((USAGE) 0x0541)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_BOOLEAN_ARRAY                             ((USAGE) 0x0542)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE                                     ((USAGE) 0x0543)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_1                                   ((USAGE) 0x0544)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_2                                   ((USAGE) 0x0545)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_3                                   ((USAGE) 0x0546)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_4                                   ((USAGE) 0x0547)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_5                                   ((USAGE) 0x0548)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_6                                   ((USAGE) 0x0549)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_7                                   ((USAGE) 0x054A)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_8                                   ((USAGE) 0x054B)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_9                                   ((USAGE) 0x054C)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_10                                  ((USAGE) 0x054D)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_11                                  ((USAGE) 0x054E)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_12                                  ((USAGE) 0x054F)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_13                                  ((USAGE) 0x0550)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_14                                  ((USAGE) 0x0551)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_15                                  ((USAGE) 0x0552)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_16                                  ((USAGE) 0x0553)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_17                                  ((USAGE) 0x0554)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_18                                  ((USAGE) 0x0555)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_19                                  ((USAGE) 0x0556)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_20                                  ((USAGE) 0x0557)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_21                                  ((USAGE) 0x0558)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_22                                  ((USAGE) 0x0559)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_23                                  ((USAGE) 0x055A)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_24                                  ((USAGE) 0x055B)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_25                                  ((USAGE) 0x055C)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_26                                  ((USAGE) 0x055D)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_27                                  ((USAGE) 0x055E)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_28                                  ((USAGE) 0x055F)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC                                          ((USAGE) 0x0560)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID_OR_PROPERTYKEY                      ((USAGE) 0x0561)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_CATEGORY_GUID                            ((USAGE) 0x0562)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_TYPE_GUID                                ((USAGE) 0x0563)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_EVENT_PROPERTYKEY                        ((USAGE) 0x0564)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTY_PROPERTYKEY                     ((USAGE) 0x0565)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_DATA_FIELD_PROPERTYKEY                   ((USAGE) 0x0566)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_EVENT                                    ((USAGE) 0x0567)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTY                                 ((USAGE) 0x0568)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_DATA_FIELD                               ((USAGE) 0x0569)
#define HID_USAGE_SENSORS_DATA_FIELD_ENUMERATOR_TABLE_ROW_INDEX                       ((USAGE) 0x056A)
#define HID_USAGE_SENSORS_DATA_FIELD_ENUMERATOR_TABLE_ROW_COUNT                       ((USAGE) 0x056B)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID_OR_PROPERTYKEY_KIND                 ((USAGE) 0x056C)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID                                     ((USAGE) 0x056D)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTYKEY                              ((USAGE) 0x056E)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_TOP_LEVEL_COLLECTION_ID                  ((USAGE) 0x056F)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_ID                                ((USAGE) 0x0570)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_ITEM_POSITION_INDEX               ((USAGE) 0x0571)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_FIRMWARE_VARTYPE                         ((USAGE) 0x0572)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_UNIT_OF_MEASURE                          ((USAGE) 0x0573)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_UNIT_EXPONENT                            ((USAGE) 0x0574)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_SIZE                              ((USAGE) 0x0575)
#define HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_COUNT                             ((USAGE) 0x0576)
#define HID_USAGE_SENSORS_PROPERTY_GENERIC                                            ((USAGE) 0x0580)
#define HID_USAGE_SENSORS_PROPERTY_ENUMERATOR_TABLE_ROW_INDEX                         ((USAGE) 0x0581)
#define HID_USAGE_SENSORS_PROPERTY_ENUMERATOR_TABLE_ROW_COUNT                         ((USAGE) 0x0582)
#define HID_USAGE_SENSORS_DATA_FIELD_PERSONAL_ACTIVITY                                ((USAGE) 0x0590)
#define HID_USAGE_SENSORS_DATA_FIELD_ACTIVITY_TYPE                                    ((USAGE) 0x0591)
#define HID_USAGE_SENSORS_DATA_FIELD_ACTIVITY_STATE                                   ((USAGE) 0x0592)
#define HID_USAGE_SENSORS_DATA_FIELD_DEVICE_POSITION                                  ((USAGE) 0x0593)
#define HID_USAGE_SENSORS_DATA_FIELD_STEP_COUNT                                       ((USAGE) 0x0594)
#define HID_USAGE_SENSORS_DATA_FIELD_STEP_COUNT_RESET                                 ((USAGE) 0x0595)
#define HID_USAGE_SENSORS_DATA_FIELD_STEP_DURATION                                    ((USAGE) 0x0596)
#define HID_USAGE_SENSORS_DATA_FIELD_STEP_TYPE                                        ((USAGE) 0x0597)
#define HID_USAGE_SENSORS_PROPERTY_MINIMUM_ACTIVITY_DETECTION_INTERVAL                ((USAGE) 0x05A0)
#define HID_USAGE_SENSORS_PROPERTY_SUPPORTED_ACTIVITY_TYPES                           ((USAGE) 0x05A1)
#define HID_USAGE_SENSORS_PROPERTY_SUBSCRIBED_ACTIVITY_TYPES                          ((USAGE) 0x05A2)
#define HID_USAGE_SENSORS_PROPERTY_SUPPORTED_STEP_TYPES                               ((USAGE) 0x05A3)
#define HID_USAGE_SENSORS_PROPERTY_SUBSCRIBED_STEP_TYPES                              ((USAGE) 0x05A4)
#define HID_USAGE_SENSORS_PROPERTY_FLOOR_HEIGHT                                       ((USAGE) 0x05A5)
#define HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_TYPE_ID                                   ((USAGE) 0x05B0)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM                                             ((USAGE) 0x05C0)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_1                                     ((USAGE) 0x05C1)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_2                                     ((USAGE) 0x05C2)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_3                                     ((USAGE) 0x05C3)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_4                                     ((USAGE) 0x05C4)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_5                                     ((USAGE) 0x05C5)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_6                                     ((USAGE) 0x05C6)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_7                                     ((USAGE) 0x05C7)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_8                                     ((USAGE) 0x05C8)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_9                                     ((USAGE) 0x05C9)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_10                                    ((USAGE) 0x05CA)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_11                                    ((USAGE) 0x05CB)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_12                                    ((USAGE) 0x05CC)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_13                                    ((USAGE) 0x05CD)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_14                                    ((USAGE) 0x05CE)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_15                                    ((USAGE) 0x05CF)
#define HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_16                                    ((USAGE) 0x05D0)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE                                            ((USAGE) 0x05E0)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE_ANGLE                                      ((USAGE) 0x05E1)
#define HID_USAGE_SENSORS_DATA_FIELD_GESTURE_SENSOR                                   ((USAGE) 0x05F0)
#define HID_USAGE_SENSORS_DATA_FIELD_GESTURE_STATE                                    ((USAGE) 0x05F1)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_INITIAL_ANGLE                         ((USAGE) 0x05F2)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_FINAL_ANGLE                           ((USAGE) 0x05F3)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_CONTRIBUTING_PANEL                    ((USAGE) 0x05F4)
#define HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_TYPE                                  ((USAGE) 0x05F5)
#define HID_USAGE_SENSORS_SENSOR_STATE_UNDEFINED                                      ((USAGE) 0x0800)
#define HID_USAGE_SENSORS_SENSOR_STATE_READY                                          ((USAGE) 0x0801)
#define HID_USAGE_SENSORS_SENSOR_STATE_NOT_AVAILABLE                                  ((USAGE) 0x0802)
#define HID_USAGE_SENSORS_SENSOR_STATE_NO_DATA                                        ((USAGE) 0x0803)
#define HID_USAGE_SENSORS_SENSOR_STATE_INITIALIZING                                   ((USAGE) 0x0804)
#define HID_USAGE_SENSORS_SENSOR_STATE_ACCESS_DENIED                                  ((USAGE) 0x0805)
#define HID_USAGE_SENSORS_SENSOR_STATE_ERROR                                          ((USAGE) 0x0806)
#define HID_USAGE_SENSORS_SENSOR_EVENT_UNKNOWN                                        ((USAGE) 0x0810)
#define HID_USAGE_SENSORS_SENSOR_EVENT_STATE_CHANGED                                  ((USAGE) 0x0811)
#define HID_USAGE_SENSORS_SENSOR_EVENT_PROPERTY_CHANGED                               ((USAGE) 0x0812)
#define HID_USAGE_SENSORS_SENSOR_EVENT_DATA_UPDATED                                   ((USAGE) 0x0813)
#define HID_USAGE_SENSORS_SENSOR_EVENT_POLL_RESPONSE                                  ((USAGE) 0x0814)
#define HID_USAGE_SENSORS_SENSOR_EVENT_CHANGE_SENSITIVITY                             ((USAGE) 0x0815)
#define HID_USAGE_SENSORS_SENSOR_EVENT_RANGE_MAXIMUM_REACHED                          ((USAGE) 0x0816)
#define HID_USAGE_SENSORS_SENSOR_EVENT_RANGE_MINIMUM_REACHED                          ((USAGE) 0x0817)
#define HID_USAGE_SENSORS_SENSOR_EVENT_HIGH_THRESHOLD_CROSS_UPWARD                    ((USAGE) 0x0818)
#define HID_USAGE_SENSORS_SENSOR_EVENT_HIGH_THRESHOLD_CROSS_DOWNWARD                  ((USAGE) 0x0819)
#define HID_USAGE_SENSORS_SENSOR_EVENT_LOW_THRESHOLD_CROSS_UPWARD                     ((USAGE) 0x081A)
#define HID_USAGE_SENSORS_SENSOR_EVENT_LOW_THRESHOLD_CROSS_DOWNWARD                   ((USAGE) 0x081B)
#define HID_USAGE_SENSORS_SENSOR_EVENT_ZERO_THRESHOLD_CROSS_UPWARD                    ((USAGE) 0x081C)
#define HID_USAGE_SENSORS_SENSOR_EVENT_ZERO_THRESHOLD_CROSS_DOWNWARD                  ((USAGE) 0x081D)
#define HID_USAGE_SENSORS_SENSOR_EVENT_PERIOD_EXCEEDED                                ((USAGE) 0x081E)
#define HID_USAGE_SENSORS_SENSOR_EVENT_FREQUENCY_EXCEEDED                             ((USAGE) 0x081F)
#define HID_USAGE_SENSORS_SENSOR_EVENT_COMPLEX_TRIGGER                                ((USAGE) 0x0820)
#define HID_USAGE_SENSORS_CONNECTION_TYPE_PC_INTEGRATED                               ((USAGE) 0x0830)
#define HID_USAGE_SENSORS_CONNECTION_TYPE_PC_ATTACHED                                 ((USAGE) 0x0831)
#define HID_USAGE_SENSORS_CONNECTION_TYPE_PC_EXTERNAL                                 ((USAGE) 0x0832)
#define HID_USAGE_SENSORS_REPORTING_STATE_REPORT_NO_EVENTS                            ((USAGE) 0x0840)
#define HID_USAGE_SENSORS_REPORTING_STATE_REPORT_ALL_EVENTS                           ((USAGE) 0x0841)
#define HID_USAGE_SENSORS_REPORTING_STATE_REPORT_THRESHOLD_EVENTS                     ((USAGE) 0x0842)
#define HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_NO_EVENTS                           ((USAGE) 0x0843)
#define HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_ALL_EVENTS                          ((USAGE) 0x0844)
#define HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_THRESHOLD_EVENTS                    ((USAGE) 0x0845)
#define HID_USAGE_SENSORS_REPORTING_STATE_ANYTIME_SEL                                 ((USAGE) 0x0846)
#define HID_USAGE_SENSORS_POWER_STATE_UNDEFINED                                       ((USAGE) 0x0850)
#define HID_USAGE_SENSORS_POWER_STATE_D0_FULL_POWER                                   ((USAGE) 0x0851)
#define HID_USAGE_SENSORS_POWER_STATE_D1_LOW_POWER                                    ((USAGE) 0x0852)
#define HID_USAGE_SENSORS_POWER_STATE_D2_STANDBY_POWER_WITH_WAKEUP                    ((USAGE) 0x0853)
#define HID_USAGE_SENSORS_POWER_STATE_D3_SLEEP_WITH_WAKEUP                            ((USAGE) 0x0854)
#define HID_USAGE_SENSORS_POWER_STATE_D4_POWER_OFF                                    ((USAGE) 0x0855)
#define HID_USAGE_SENSORS_ACCURACY_DEFAULT                                            ((USAGE) 0x0860)
#define HID_USAGE_SENSORS_ACCURACY_HIGH                                               ((USAGE) 0x0861)
#define HID_USAGE_SENSORS_ACCURACY_MEDIUM                                             ((USAGE) 0x0862)
#define HID_USAGE_SENSORS_ACCURACY_LOW                                                ((USAGE) 0x0863)
#define HID_USAGE_SENSORS_FIX_QUALITY_NO_FIX                                          ((USAGE) 0x0870)
#define HID_USAGE_SENSORS_FIX_QUALITY_GPS                                             ((USAGE) 0x0871)
#define HID_USAGE_SENSORS_FIX_QUALITY_DGPS                                            ((USAGE) 0x0872)
#define HID_USAGE_SENSORS_FIX_TYPE_NO_FIX                                             ((USAGE) 0x0880)
#define HID_USAGE_SENSORS_FIX_TYPE_GPS_SPS_MODE_FIX_VALID                             ((USAGE) 0x0881)
#define HID_USAGE_SENSORS_FIX_TYPE_DGPS_SPS_MODE_FIX_VALID                            ((USAGE) 0x0882)
#define HID_USAGE_SENSORS_FIX_TYPE_GPS_PPS_MODE_FIX_VALID                             ((USAGE) 0x0883)
#define HID_USAGE_SENSORS_FIX_TYPE_REAL_TIME_KINEMATIC                                ((USAGE) 0x0884)
#define HID_USAGE_SENSORS_FIX_TYPE_FLOAT_RTK                                          ((USAGE) 0x0885)
#define HID_USAGE_SENSORS_FIX_TYPE_ESTIMATED_DEAD_RECKONED                            ((USAGE) 0x0886)
#define HID_USAGE_SENSORS_FIX_TYPE_MANUAL_INPUT_MODE                                  ((USAGE) 0x0887)
#define HID_USAGE_SENSORS_FIX_TYPE_SIMULATOR_MODE                                     ((USAGE) 0x0888)
#define HID_USAGE_SENSORS_GPS_OPERATION_MODE_MANUAL                                   ((USAGE) 0x0890)
#define HID_USAGE_SENSORS_GPS_OPERATION_MODE_AUTOMATIC                                ((USAGE) 0x0891)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_AUTONOMOUS                               ((USAGE) 0x08A0)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_DGPS                                     ((USAGE) 0x08A1)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_ESTIMATED_DEAD_RECKONED                  ((USAGE) 0x08A2)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_MANUAL_INPUT                             ((USAGE) 0x08A3)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_SIMULATOR                                ((USAGE) 0x08A4)
#define HID_USAGE_SENSORS_GPS_SELECTION_MODE_DATA_NOT_VALID                           ((USAGE) 0x08A5)
#define HID_USAGE_SENSORS_GPS_STATUS_DATA_VALID                                       ((USAGE) 0x08B0)
#define HID_USAGE_SENSORS_GPS_STATUS_DATA_NOT_VALID                                   ((USAGE) 0x08B1)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_SUNDAY                                          ((USAGE) 0x08C0)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_MONDAY                                          ((USAGE) 0x08C1)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_TUESDAY                                         ((USAGE) 0x08C2)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_WEDNESDAY                                       ((USAGE) 0x08C3)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_THURSDAY                                        ((USAGE) 0x08C4)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_FRIDAY                                          ((USAGE) 0x08C5)
#define HID_USAGE_SENSORS_DAY_OF_WEEK_SATURDAY                                        ((USAGE) 0x08C6)
#define HID_USAGE_SENSORS_KIND_CATEGORY                                               ((USAGE) 0x08D0)
#define HID_USAGE_SENSORS_KIND_TYPE                                                   ((USAGE) 0x08D1)
#define HID_USAGE_SENSORS_KIND_EVENT                                                  ((USAGE) 0x08D2)
#define HID_USAGE_SENSORS_KIND_PROPERTY                                               ((USAGE) 0x08D3)
#define HID_USAGE_SENSORS_KIND_DATA_FIELD                                             ((USAGE) 0x08D4)
#define HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_LOW                                   ((USAGE) 0x08E0)
#define HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_MEDIUM                                ((USAGE) 0x08E1)
#define HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_HIGH                                  ((USAGE) 0x08E2)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_NOT_ROTATED                    ((USAGE) 0x08F0)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_90_DEGREES_CCW         ((USAGE) 0x08F1)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_180_DEGREES_CCW        ((USAGE) 0x08F2)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_270_DEGREES_CCW        ((USAGE) 0x08F3)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_FACE_UP                        ((USAGE) 0x08F4)
#define HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_FACE_DOWN                      ((USAGE) 0x08F5)
#define HID_USAGE_SENSORS_VT_NULL                                                     ((USAGE) 0x0900)
#define HID_USAGE_SENSORS_VT_BOOL                                                     ((USAGE) 0x0901)
#define HID_USAGE_SENSORS_VT_UI1                                                      ((USAGE) 0x0902)
#define HID_USAGE_SENSORS_VT_I1                                                       ((USAGE) 0x0903)
#define HID_USAGE_SENSORS_VT_UI2                                                      ((USAGE) 0x0904)
#define HID_USAGE_SENSORS_VT_I2                                                       ((USAGE) 0x0905)
#define HID_USAGE_SENSORS_VT_UI4                                                      ((USAGE) 0x0906)
#define HID_USAGE_SENSORS_VT_I4                                                       ((USAGE) 0x0907)
#define HID_USAGE_SENSORS_VT_UI8                                                      ((USAGE) 0x0908)
#define HID_USAGE_SENSORS_VT_I8                                                       ((USAGE) 0x0909)
#define HID_USAGE_SENSORS_VT_R4                                                       ((USAGE) 0x090A)
#define HID_USAGE_SENSORS_VT_R8                                                       ((USAGE) 0x090B)
#define HID_USAGE_SENSORS_VT_WSTR                                                     ((USAGE) 0x090C)
#define HID_USAGE_SENSORS_VT_STR                                                      ((USAGE) 0x090D)
#define HID_USAGE_SENSORS_VT_CLSID                                                    ((USAGE) 0x090E)
#define HID_USAGE_SENSORS_VT_VECTOR_VT_UI1                                            ((USAGE) 0x090F)
#define HID_USAGE_SENSORS_VT_F16E0                                                    ((USAGE) 0x0910)
#define HID_USAGE_SENSORS_VT_F16E1                                                    ((USAGE) 0x0911)
#define HID_USAGE_SENSORS_VT_F16E2                                                    ((USAGE) 0x0912)
#define HID_USAGE_SENSORS_VT_F16E3                                                    ((USAGE) 0x0913)
#define HID_USAGE_SENSORS_VT_F16E4                                                    ((USAGE) 0x0914)
#define HID_USAGE_SENSORS_VT_F16E5                                                    ((USAGE) 0x0915)
#define HID_USAGE_SENSORS_VT_F16E6                                                    ((USAGE) 0x0916)
#define HID_USAGE_SENSORS_VT_F16E7                                                    ((USAGE) 0x0917)
#define HID_USAGE_SENSORS_VT_F16E8                                                    ((USAGE) 0x0918)
#define HID_USAGE_SENSORS_VT_F16E9                                                    ((USAGE) 0x0919)
#define HID_USAGE_SENSORS_VT_F16EA                                                    ((USAGE) 0x091A)
#define HID_USAGE_SENSORS_VT_F16EB                                                    ((USAGE) 0x091B)
#define HID_USAGE_SENSORS_VT_F16EC                                                    ((USAGE) 0x091C)
#define HID_USAGE_SENSORS_VT_F16ED                                                    ((USAGE) 0x091D)
#define HID_USAGE_SENSORS_VT_F16EE                                                    ((USAGE) 0x091E)
#define HID_USAGE_SENSORS_VT_F16EF                                                    ((USAGE) 0x091F)
#define HID_USAGE_SENSORS_VT_F32E0                                                    ((USAGE) 0x0920)
#define HID_USAGE_SENSORS_VT_F32E1                                                    ((USAGE) 0x0921)
#define HID_USAGE_SENSORS_VT_F32E2                                                    ((USAGE) 0x0922)
#define HID_USAGE_SENSORS_VT_F32E3                                                    ((USAGE) 0x0923)
#define HID_USAGE_SENSORS_VT_F32E4                                                    ((USAGE) 0x0924)
#define HID_USAGE_SENSORS_VT_F32E5                                                    ((USAGE) 0x0925)
#define HID_USAGE_SENSORS_VT_F32E6                                                    ((USAGE) 0x0926)
#define HID_USAGE_SENSORS_VT_F32E7                                                    ((USAGE) 0x0927)
#define HID_USAGE_SENSORS_VT_F32E8                                                    ((USAGE) 0x0928)
#define HID_USAGE_SENSORS_VT_F32E9                                                    ((USAGE) 0x0929)
#define HID_USAGE_SENSORS_VT_F32EA                                                    ((USAGE) 0x092A)
#define HID_USAGE_SENSORS_VT_F32EB                                                    ((USAGE) 0x092B)
#define HID_USAGE_SENSORS_VT_F32EC                                                    ((USAGE) 0x092C)
#define HID_USAGE_SENSORS_VT_F32ED                                                    ((USAGE) 0x092D)
#define HID_USAGE_SENSORS_VT_F32EE                                                    ((USAGE) 0x092E)
#define HID_USAGE_SENSORS_VT_F32EF                                                    ((USAGE) 0x092F)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_UNKNOWN                                       ((USAGE) 0x0930)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_STATIONARY                                    ((USAGE) 0x0931)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_FIDGETING                                     ((USAGE) 0x0932)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_WALKING                                       ((USAGE) 0x0933)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_RUNNING                                       ((USAGE) 0x0934)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_IN_VEHICLE                                    ((USAGE) 0x0935)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_BIKING                                        ((USAGE) 0x0936)
#define HID_USAGE_SENSORS_ACTIVITY_TYPE_IDLE                                          ((USAGE) 0x0937)
#define HID_USAGE_SENSORS_UNIT_NOT_SPECIFIED                                          ((USAGE) 0x0940)
#define HID_USAGE_SENSORS_UNIT_LUX                                                    ((USAGE) 0x0941)
#define HID_USAGE_SENSORS_UNIT_DEGREES_KELVIN                                         ((USAGE) 0x0942)
#define HID_USAGE_SENSORS_UNIT_DEGREES_CELSIUS                                        ((USAGE) 0x0943)
#define HID_USAGE_SENSORS_UNIT_PASCAL                                                 ((USAGE) 0x0944)
#define HID_USAGE_SENSORS_UNIT_NEWTON                                                 ((USAGE) 0x0945)
#define HID_USAGE_SENSORS_UNIT_METERSSECOND                                           ((USAGE) 0x0946)
#define HID_USAGE_SENSORS_UNIT_KILOGRAM                                               ((USAGE) 0x0947)
#define HID_USAGE_SENSORS_UNIT_METER                                                  ((USAGE) 0x0948)
#define HID_USAGE_SENSORS_UNIT_METERSSECONDSECOND                                     ((USAGE) 0x0949)
#define HID_USAGE_SENSORS_UNIT_FARAD                                                  ((USAGE) 0x094A)
#define HID_USAGE_SENSORS_UNIT_AMPERE                                                 ((USAGE) 0x094B)
#define HID_USAGE_SENSORS_UNIT_WATT                                                   ((USAGE) 0x094C)
#define HID_USAGE_SENSORS_UNIT_HENRY                                                  ((USAGE) 0x094D)
#define HID_USAGE_SENSORS_UNIT_OHM                                                    ((USAGE) 0x094E)
#define HID_USAGE_SENSORS_UNIT_VOLT                                                   ((USAGE) 0x094F)
#define HID_USAGE_SENSORS_UNIT_HERTZ                                                  ((USAGE) 0x0950)
#define HID_USAGE_SENSORS_UNIT_BAR                                                    ((USAGE) 0x0951)
#define HID_USAGE_SENSORS_UNIT_DEGREES_ANTICLOCKWISE                                  ((USAGE) 0x0952)
#define HID_USAGE_SENSORS_UNIT_DEGREES_CLOCKWISE                                      ((USAGE) 0x0953)
#define HID_USAGE_SENSORS_UNIT_DEGREES                                                ((USAGE) 0x0954)
#define HID_USAGE_SENSORS_UNIT_DEGREESSECOND                                          ((USAGE) 0x0955)
#define HID_USAGE_SENSORS_UNIT_DEGREESSECONDSECOND                                    ((USAGE) 0x0956)
#define HID_USAGE_SENSORS_UNIT_KNOT                                                   ((USAGE) 0x0957)
#define HID_USAGE_SENSORS_UNIT_PERCENT                                                ((USAGE) 0x0958)
#define HID_USAGE_SENSORS_UNIT_SECOND                                                 ((USAGE) 0x0959)
#define HID_USAGE_SENSORS_UNIT_MILLISECOND                                            ((USAGE) 0x095A)
#define HID_USAGE_SENSORS_UNIT_G                                                      ((USAGE) 0x095B)
#define HID_USAGE_SENSORS_UNIT_BYTES                                                  ((USAGE) 0x095C)
#define HID_USAGE_SENSORS_UNIT_MILLIGAUSS                                             ((USAGE) 0x095D)
#define HID_USAGE_SENSORS_UNIT_BITS                                                   ((USAGE) 0x095E)
#define HID_USAGE_SENSORS_ACTIVITY_STATE_NO_STATE_CHANGE                              ((USAGE) 0x0960)
#define HID_USAGE_SENSORS_ACTIVITY_STATE_START_ACTIVITY                               ((USAGE) 0x0961)
#define HID_USAGE_SENSORS_ACTIVITY_STATE_END_ACTIVITY                                 ((USAGE) 0x0962)
#define HID_USAGE_SENSORS_EXPONENT_0                                                  ((USAGE) 0x0970)
#define HID_USAGE_SENSORS_EXPONENT_1                                                  ((USAGE) 0x0971)
#define HID_USAGE_SENSORS_EXPONENT_2                                                  ((USAGE) 0x0972)
#define HID_USAGE_SENSORS_EXPONENT_3                                                  ((USAGE) 0x0973)
#define HID_USAGE_SENSORS_EXPONENT_4                                                  ((USAGE) 0x0974)
#define HID_USAGE_SENSORS_EXPONENT_5                                                  ((USAGE) 0x0975)
#define HID_USAGE_SENSORS_EXPONENT_6                                                  ((USAGE) 0x0976)
#define HID_USAGE_SENSORS_EXPONENT_7                                                  ((USAGE) 0x0977)
#define HID_USAGE_SENSORS_EXPONENT_8                                                  ((USAGE) 0x0978)
#define HID_USAGE_SENSORS_EXPONENT_9                                                  ((USAGE) 0x0979)
#define HID_USAGE_SENSORS_EXPONENT_A                                                  ((USAGE) 0x097A)
#define HID_USAGE_SENSORS_EXPONENT_B                                                  ((USAGE) 0x097B)
#define HID_USAGE_SENSORS_EXPONENT_C                                                  ((USAGE) 0x097C)
#define HID_USAGE_SENSORS_EXPONENT_D                                                  ((USAGE) 0x097D)
#define HID_USAGE_SENSORS_EXPONENT_E                                                  ((USAGE) 0x097E)
#define HID_USAGE_SENSORS_EXPONENT_F                                                  ((USAGE) 0x097F)
#define HID_USAGE_SENSORS_DEVICE_POSITION_UNKNOWN                                     ((USAGE) 0x0980)
#define HID_USAGE_SENSORS_DEVICE_POSITION_UNCHANGED                                   ((USAGE) 0x0981)
#define HID_USAGE_SENSORS_DEVICE_POSITION_ON_DESK                                     ((USAGE) 0x0982)
#define HID_USAGE_SENSORS_DEVICE_POSITION_IN_HAND                                     ((USAGE) 0x0983)
#define HID_USAGE_SENSORS_DEVICE_POSITION_MOVING_IN_BAG                               ((USAGE) 0x0984)
#define HID_USAGE_SENSORS_DEVICE_POSITION_STATIONARY_IN_BAG                           ((USAGE) 0x0985)
#define HID_USAGE_SENSORS_STEP_TYPE_UNKNOWN                                           ((USAGE) 0x0990)
#define HID_USAGE_SENSORS_STEP_TYPE_WALKING                                           ((USAGE) 0x0991)
#define HID_USAGE_SENSORS_STEP_TYPE_RUNNING                                           ((USAGE) 0x0992)
#define HID_USAGE_SENSORS_GESTURE_STATE_UNKNOWN                                       ((USAGE) 0x09A0)
#define HID_USAGE_SENSORS_GESTURE_STATE_STARTED                                       ((USAGE) 0x09A1)
#define HID_USAGE_SENSORS_GESTURE_STATE_COMPLETED                                     ((USAGE) 0x09A2)
#define HID_USAGE_SENSORS_GESTURE_STATE_CANCELLED                                     ((USAGE) 0x09A3)
#define HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_UNKNOWN                       ((USAGE) 0x09B0)
#define HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_PANEL_1                       ((USAGE) 0x09B1)
#define HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_PANEL_2                       ((USAGE) 0x09B2)
#define HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_BOTH                          ((USAGE) 0x09B3)
#define HID_USAGE_SENSORS_HINGE_FOLD_TYPE_UNKNOWN                                     ((USAGE) 0x09B4)
#define HID_USAGE_SENSORS_HINGE_FOLD_TYPE_INCREASING                                  ((USAGE) 0x09B5)
#define HID_USAGE_SENSORS_HINGE_FOLD_TYPE_DECREASING                                  ((USAGE) 0x09B6)
#define HID_USAGE_SENSORS_HUMAN_PRESENCE_DETECTION_TYPE_VENDORDEFINED_NONBIOMETRIC    ((USAGE) 0x09C0)
#define HID_USAGE_SENSORS_HUMAN_PRESENCE_DETECTION_TYPE_VENDORDEFINED_BIOMETRIC       ((USAGE) 0x09C1)
#define HID_USAGE_SENSORS_HUMAN_PRESENCE_DETECTION_TYPE_FACIAL_BIOMETRIC              ((USAGE) 0x09C2)
#define HID_USAGE_SENSORS_HUMAN_PRESENCE_DETECTION_TYPE_AUDIO_BIOMETRIC               ((USAGE) 0x09C3)
#define HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_ABSOLUTE                        ((USAGE) 0x1000)
#define HID_USAGE_SENSORS_MODIFIER_MAXIMUM                                            ((USAGE) 0x2000)
#define HID_USAGE_SENSORS_MODIFIER_MINIMUM                                            ((USAGE) 0x3000)
#define HID_USAGE_SENSORS_MODIFIER_ACCURACY                                           ((USAGE) 0x4000)
#define HID_USAGE_SENSORS_MODIFIER_RESOLUTION                                         ((USAGE) 0x5000)
#define HID_USAGE_SENSORS_MODIFIER_THRESHOLD_HIGH                                     ((USAGE) 0x6000)
#define HID_USAGE_SENSORS_MODIFIER_THRESHOLD_LOW                                      ((USAGE) 0x7000)
#define HID_USAGE_SENSORS_MODIFIER_CALIBRATION_OFFSET                                 ((USAGE) 0x8000)
#define HID_USAGE_SENSORS_MODIFIER_CALIBRATION_MULTIPLIER                             ((USAGE) 0x9000)
#define HID_USAGE_SENSORS_MODIFIER_REPORT_INTERVAL                                    ((USAGE) 0xA000)
#define HID_USAGE_SENSORS_MODIFIER_FREQUENCY_MAX                                      ((USAGE) 0xB000)
#define HID_USAGE_SENSORS_MODIFIER_PERIOD_MAX                                         ((USAGE) 0xC000)
#define HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_PERCENT_OF_RANGE                ((USAGE) 0xD000)
#define HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_PERCENT_RELATIVE                ((USAGE) 0xE000)
#define HID_USAGE_SENSORS_MODIFIER_VENDOR_RESERVED                                    ((USAGE) 0xF000)

//
// Simulation Controls Page (0x02)
//
#define HID_USAGE_SIMULATION_FLIGHT_SIMULATION_DEVICE          ((USAGE) 0x0001)
#define HID_USAGE_SIMULATION_AUTOMOBILE_SIMULATION_DEVICE      ((USAGE) 0x0002)
#define HID_USAGE_SIMULATION_TANK_SIMULATION_DEVICE            ((USAGE) 0x0003)
#define HID_USAGE_SIMULATION_SPACESHIP_SIMULATION_DEVICE       ((USAGE) 0x0004)
#define HID_USAGE_SIMULATION_SUBMARINE_SIMULATION_DEVICE       ((USAGE) 0x0005)
#define HID_USAGE_SIMULATION_SAILING_SIMULATION_DEVICE         ((USAGE) 0x0006)
#define HID_USAGE_SIMULATION_MOTORCYCLE_SIMULATION_DEVICE      ((USAGE) 0x0007)
#define HID_USAGE_SIMULATION_SPORTS_SIMULATION_DEVICE          ((USAGE) 0x0008)
#define HID_USAGE_SIMULATION_AIRPLANE_SIMULATION_DEVICE        ((USAGE) 0x0009)
#define HID_USAGE_SIMULATION_HELICOPTER_SIMULATION_DEVICE      ((USAGE) 0x000A)
#define HID_USAGE_SIMULATION_MAGIC_CARPET_SIMULATION_DEVICE    ((USAGE) 0x000B)
#define HID_USAGE_SIMULATION_BICYCLE_SIMULATION_DEVICE         ((USAGE) 0x000C)
#define HID_USAGE_SIMULATION_FLIGHT_CONTROL_STICK              ((USAGE) 0x0020)
#define HID_USAGE_SIMULATION_FLIGHT_STICK                      ((USAGE) 0x0021)
#define HID_USAGE_SIMULATION_CYCLIC_CONTROL                    ((USAGE) 0x0022)
#define HID_USAGE_SIMULATION_CYCLIC_TRIM                       ((USAGE) 0x0023)
#define HID_USAGE_SIMULATION_FLIGHT_YOKE                       ((USAGE) 0x0024)
#define HID_USAGE_SIMULATION_TRACK_CONTROL                     ((USAGE) 0x0025)
#define HID_USAGE_SIMULATION_AILERON                           ((USAGE) 0x00B0)
#define HID_USAGE_SIMULATION_AILERON_TRIM                      ((USAGE) 0x00B1)
#define HID_USAGE_SIMULATION_ANTI_TORQUE_CONTROL               ((USAGE) 0x00B2)
#define HID_USAGE_SIMULATION_AUTOPIOLOT_ENABLE                 ((USAGE) 0x00B3)
#define HID_USAGE_SIMULATION_CHAFF_RELEASE                     ((USAGE) 0x00B4)
#define HID_USAGE_SIMULATION_COLLECTIVE_CONTROL                ((USAGE) 0x00B5)
#define HID_USAGE_SIMULATION_DIVE_BRAKE                        ((USAGE) 0x00B6)
#define HID_USAGE_SIMULATION_ELECTRONIC_COUNTERMEASURES        ((USAGE) 0x00B7)
#define HID_USAGE_SIMULATION_ELEVATOR                          ((USAGE) 0x00B8)
#define HID_USAGE_SIMULATION_ELEVATOR_TRIM                     ((USAGE) 0x00B9)
#define HID_USAGE_SIMULATION_RUDDER                            ((USAGE) 0x00BA)
#define HID_USAGE_SIMULATION_THROTTLE                          ((USAGE) 0x00BB)
#define HID_USAGE_SIMULATION_FLIGHT_COMMUNICATIONS             ((USAGE) 0x00BC)
#define HID_USAGE_SIMULATION_FLARE_RELEASE                     ((USAGE) 0x00BD)
#define HID_USAGE_SIMULATION_LANDING_GEAR                      ((USAGE) 0x00BE)
#define HID_USAGE_SIMULATION_TOE_BRAKE                         ((USAGE) 0x00BF)
#define HID_USAGE_SIMULATION_TRIGGER                           ((USAGE) 0x00C0)
#define HID_USAGE_SIMULATION_WEAPONS_ARM                       ((USAGE) 0x00C1)
#define HID_USAGE_SIMULATION_WEAPONS_SELECT                    ((USAGE) 0x00C2)
#define HID_USAGE_SIMULATION_WING_FLAPS                        ((USAGE) 0x00C3)
#define HID_USAGE_SIMULATION_ACCELERATOR                       ((USAGE) 0x00C4)
#define HID_USAGE_SIMULATION_BRAKE                             ((USAGE) 0x00C5)
#define HID_USAGE_SIMULATION_CLUTCH                            ((USAGE) 0x00C6)
#define HID_USAGE_SIMULATION_SHIFTER                           ((USAGE) 0x00C7)
#define HID_USAGE_SIMULATION_STEERING                          ((USAGE) 0x00C8)
#define HID_USAGE_SIMULATION_TURRET_DIRECTION                  ((USAGE) 0x00C9)
#define HID_USAGE_SIMULATION_BARREL_ELEVATION                  ((USAGE) 0x00CA)
#define HID_USAGE_SIMULATION_DIVE_PLANE                        ((USAGE) 0x00CB)
#define HID_USAGE_SIMULATION_BALLAST                           ((USAGE) 0x00CC)
#define HID_USAGE_SIMULATION_BICYCLE_CRANK                     ((USAGE) 0x00CD)
#define HID_USAGE_SIMULATION_HANDLE_BARS                       ((USAGE) 0x00CE)
#define HID_USAGE_SIMULATION_FRONT_BRAKE                       ((USAGE) 0x00CF)
#define HID_USAGE_SIMULATION_REAR_BRAKE                        ((USAGE) 0x00D0)

//
// SoC (System on Chip) Page (0x11)
//
#define HID_USAGE_SOC_SOC_CONTROL                               ((USAGE) 0x0001)
#define HID_USAGE_SOC_FIRMWARE_TRANSFER                         ((USAGE) 0x0002)
#define HID_USAGE_SOC_FIRMWARE_FILE_ID                          ((USAGE) 0x0003)
#define HID_USAGE_SOC_FILE_OFFSET_IN_BYTES                      ((USAGE) 0x0004)
#define HID_USAGE_SOC_FILE_TRANSFER_SIZE_MAX_IN_BYTES           ((USAGE) 0x0005)
#define HID_USAGE_SOC_FILE_PAYLOAD                              ((USAGE) 0x0006)
#define HID_USAGE_SOC_FILE_PAYLOAD_SIZE_IN_BYTES                ((USAGE) 0x0007)
#define HID_USAGE_SOC_FILE_PAYLOAD_CONTAINS_LAST_BYTES          ((USAGE) 0x0008)
#define HID_USAGE_SOC_FILE_TRANSFER_STOP                        ((USAGE) 0x0009)
#define HID_USAGE_SOC_FILE_TRANSFER_TILL_END                    ((USAGE) 0x000A)

//
// Sport Controls Page (0x04)
//
#define HID_USAGE_SPORT_BASEBALL_BAT        ((USAGE) 0x0001)
#define HID_USAGE_SPORT_GOLF_CLUB           ((USAGE) 0x0002)
#define HID_USAGE_SPORT_ROWING_MACHINE      ((USAGE) 0x0003)
#define HID_USAGE_SPORT_TREADMILL           ((USAGE) 0x0004)
#define HID_USAGE_SPORT_OAR                 ((USAGE) 0x0030)
#define HID_USAGE_SPORT_SLOPE               ((USAGE) 0x0031)
#define HID_USAGE_SPORT_RATE                ((USAGE) 0x0032)
#define HID_USAGE_SPORT_STICK_SPEED         ((USAGE) 0x0033)
#define HID_USAGE_SPORT_STICK_FACE_ANGLE    ((USAGE) 0x0034)
#define HID_USAGE_SPORT_HEEL_TOE            ((USAGE) 0x0035)
#define HID_USAGE_SPORT_FOLLOW_THROUGH      ((USAGE) 0x0036)
#define HID_USAGE_SPORT_TEMPO               ((USAGE) 0x0037)
#define HID_USAGE_SPORT_STICK_TYPE          ((USAGE) 0x0038)
#define HID_USAGE_SPORT_HEIGHT              ((USAGE) 0x0039)
#define HID_USAGE_SPORT_PUTTER              ((USAGE) 0x0050)
#define HID_USAGE_SPORT_1_IRON              ((USAGE) 0x0051)
#define HID_USAGE_SPORT_2_IRON              ((USAGE) 0x0052)
#define HID_USAGE_SPORT_3_IRON              ((USAGE) 0x0053)
#define HID_USAGE_SPORT_4_IRON              ((USAGE) 0x0054)
#define HID_USAGE_SPORT_5_IRON              ((USAGE) 0x0055)
#define HID_USAGE_SPORT_6_IRON              ((USAGE) 0x0056)
#define HID_USAGE_SPORT_7_IRON              ((USAGE) 0x0057)
#define HID_USAGE_SPORT_8_IRON              ((USAGE) 0x0058)
#define HID_USAGE_SPORT_9_IRON              ((USAGE) 0x0059)
#define HID_USAGE_SPORT_10_IRON             ((USAGE) 0x005A)
#define HID_USAGE_SPORT_11_IRON             ((USAGE) 0x005B)
#define HID_USAGE_SPORT_SAND_WEDGE          ((USAGE) 0x005C)
#define HID_USAGE_SPORT_LOFT_WEDGE          ((USAGE) 0x005D)
#define HID_USAGE_SPORT_POWER_WEDGE         ((USAGE) 0x005E)
#define HID_USAGE_SPORT_1_WOOD              ((USAGE) 0x005F)
#define HID_USAGE_SPORT_3_WOOD              ((USAGE) 0x0060)
#define HID_USAGE_SPORT_5_WOOD              ((USAGE) 0x0061)
#define HID_USAGE_SPORT_7_WOOD              ((USAGE) 0x0062)
#define HID_USAGE_SPORT_9_WOOD              ((USAGE) 0x0063)

//
// Telephony Device Page (0x0B)
//
#define HID_USAGE_TELEPHONY_PHONE                          ((USAGE) 0x0001)
#define HID_USAGE_TELEPHONY_ANSWERING_MACHINE              ((USAGE) 0x0002)
#define HID_USAGE_TELEPHONY_MESSAGE_CONTROLS               ((USAGE) 0x0003)
#define HID_USAGE_TELEPHONY_HANDSET                        ((USAGE) 0x0004)
#define HID_USAGE_TELEPHONY_HEADSET                        ((USAGE) 0x0005)
#define HID_USAGE_TELEPHONY_KEYPAD                         ((USAGE) 0x0006)
#define HID_USAGE_TELEPHONY_PROGRAMMABLE_BUTTON            ((USAGE) 0x0007)
#define HID_USAGE_TELEPHONY_HOOK_SWITCH                    ((USAGE) 0x0020)
#define HID_USAGE_TELEPHONY_FLASH                          ((USAGE) 0x0021)
#define HID_USAGE_TELEPHONY_FEATURE                        ((USAGE) 0x0022)
#define HID_USAGE_TELEPHONY_HOLD                           ((USAGE) 0x0023)
#define HID_USAGE_TELEPHONY_REDIAL                         ((USAGE) 0x0024)
#define HID_USAGE_TELEPHONY_TRANSFER                       ((USAGE) 0x0025)
#define HID_USAGE_TELEPHONY_DROP                           ((USAGE) 0x0026)
#define HID_USAGE_TELEPHONY_PARK                           ((USAGE) 0x0027)
#define HID_USAGE_TELEPHONY_FORWARD_CALLS                  ((USAGE) 0x0028)
#define HID_USAGE_TELEPHONY_ALTERNATE_FUNCTION             ((USAGE) 0x0029)
#define HID_USAGE_TELEPHONY_LINE                           ((USAGE) 0x002A)
#define HID_USAGE_TELEPHONY_SPEAKER_PHONE                  ((USAGE) 0x002B)
#define HID_USAGE_TELEPHONY_CONFERENCE                     ((USAGE) 0x002C)
#define HID_USAGE_TELEPHONY_RING_ENABLE                    ((USAGE) 0x002D)
#define HID_USAGE_TELEPHONY_RING_SELECT                    ((USAGE) 0x002E)
#define HID_USAGE_TELEPHONY_PHONE_MUTE                     ((USAGE) 0x002F)
#define HID_USAGE_TELEPHONY_CALLER_ID                      ((USAGE) 0x0030)
#define HID_USAGE_TELEPHONY_SEND                           ((USAGE) 0x0031)
#define HID_USAGE_TELEPHONY_SPEED_DIAL                     ((USAGE) 0x0050)
#define HID_USAGE_TELEPHONY_STORE_NUMBER                   ((USAGE) 0x0051)
#define HID_USAGE_TELEPHONY_RECALL_NUMBER                  ((USAGE) 0x0052)
#define HID_USAGE_TELEPHONY_PHONE_DIRECTORY                ((USAGE) 0x0053)
#define HID_USAGE_TELEPHONY_VOICE_MAIL                     ((USAGE) 0x0070)
#define HID_USAGE_TELEPHONY_SCREEN_CALLS                   ((USAGE) 0x0071)
#define HID_USAGE_TELEPHONY_DO_NOT_DISTURB                 ((USAGE) 0x0072)
#define HID_USAGE_TELEPHONY_MESSAGE                        ((USAGE) 0x0073)
#define HID_USAGE_TELEPHONY_ANSWER_ONOFF                   ((USAGE) 0x0074)
#define HID_USAGE_TELEPHONY_INSIDE_DIAL_TONE               ((USAGE) 0x0090)
#define HID_USAGE_TELEPHONY_OUTSIDE_DIAL_TONE              ((USAGE) 0x0091)
#define HID_USAGE_TELEPHONY_INSIDE_RING_TONE               ((USAGE) 0x0092)
#define HID_USAGE_TELEPHONY_OUTSIDE_RING_TONE              ((USAGE) 0x0093)
#define HID_USAGE_TELEPHONY_PRIORITY_RING_TONE             ((USAGE) 0x0094)
#define HID_USAGE_TELEPHONY_INSIDE_RINGBACK                ((USAGE) 0x0095)
#define HID_USAGE_TELEPHONY_PRIORITY_RINGBACK              ((USAGE) 0x0096)
#define HID_USAGE_TELEPHONY_LINE_BUSY_TONE                 ((USAGE) 0x0097)
#define HID_USAGE_TELEPHONY_REORDER_TONE                   ((USAGE) 0x0098)
#define HID_USAGE_TELEPHONY_CALL_WAITING_TONE              ((USAGE) 0x0099)
#define HID_USAGE_TELEPHONY_CONFIRMATION_TONE_1            ((USAGE) 0x009A)
#define HID_USAGE_TELEPHONY_CONFIRMATION_TONE_2            ((USAGE) 0x009B)
#define HID_USAGE_TELEPHONY_TONES_OFF                      ((USAGE) 0x009C)
#define HID_USAGE_TELEPHONY_OUTSIDE_RINGBACK               ((USAGE) 0x009D)
#define HID_USAGE_TELEPHONY_RINGER                         ((USAGE) 0x009E)
#define HID_USAGE_TELEPHONY_PHONE_KEY_0                    ((USAGE) 0x00B0)
#define HID_USAGE_TELEPHONY_PHONE_KEY_1                    ((USAGE) 0x00B1)
#define HID_USAGE_TELEPHONY_PHONE_KEY_2                    ((USAGE) 0x00B2)
#define HID_USAGE_TELEPHONY_PHONE_KEY_3                    ((USAGE) 0x00B3)
#define HID_USAGE_TELEPHONY_PHONE_KEY_4                    ((USAGE) 0x00B4)
#define HID_USAGE_TELEPHONY_PHONE_KEY_5                    ((USAGE) 0x00B5)
#define HID_USAGE_TELEPHONY_PHONE_KEY_6                    ((USAGE) 0x00B6)
#define HID_USAGE_TELEPHONY_PHONE_KEY_7                    ((USAGE) 0x00B7)
#define HID_USAGE_TELEPHONY_PHONE_KEY_8                    ((USAGE) 0x00B8)
#define HID_USAGE_TELEPHONY_PHONE_KEY_9                    ((USAGE) 0x00B9)
#define HID_USAGE_TELEPHONY_PHONE_KEY_STAR                 ((USAGE) 0x00BA)
#define HID_USAGE_TELEPHONY_PHONE_KEY_POUND                ((USAGE) 0x00BB)
#define HID_USAGE_TELEPHONY_PHONE_KEY_A                    ((USAGE) 0x00BC)
#define HID_USAGE_TELEPHONY_PHONE_KEY_B                    ((USAGE) 0x00BD)
#define HID_USAGE_TELEPHONY_PHONE_KEY_C                    ((USAGE) 0x00BE)
#define HID_USAGE_TELEPHONY_PHONE_KEY_D                    ((USAGE) 0x00BF)
#define HID_USAGE_TELEPHONY_PHONE_CALL_HISTORY_KEY         ((USAGE) 0x00C0)
#define HID_USAGE_TELEPHONY_PHONE_CALLER_ID_KEY            ((USAGE) 0x00C1)
#define HID_USAGE_TELEPHONY_PHONE_SETTINGS_KEY             ((USAGE) 0x00C2)
#define HID_USAGE_TELEPHONY_HOST_CONTROL                   ((USAGE) 0x00F0)
#define HID_USAGE_TELEPHONY_HOST_AVAILABLE                 ((USAGE) 0x00F1)
#define HID_USAGE_TELEPHONY_HOST_CALL_ACTIVE               ((USAGE) 0x00F2)
#define HID_USAGE_TELEPHONY_ACTIVATE_HANDSET_AUDIO         ((USAGE) 0x00F3)
#define HID_USAGE_TELEPHONY_RING_TYPE                      ((USAGE) 0x00F4)
#define HID_USAGE_TELEPHONY_REDIALABLE_PHONE_NUMBER        ((USAGE) 0x00F5)
#define HID_USAGE_TELEPHONY_STOP_RING_TONE                 ((USAGE) 0x00F8)
#define HID_USAGE_TELEPHONY_PSTN_RING_TONE                 ((USAGE) 0x00F9)
#define HID_USAGE_TELEPHONY_HOST_RING_TONE                 ((USAGE) 0x00FA)
#define HID_USAGE_TELEPHONY_ALERT_SOUND_ERROR              ((USAGE) 0x00FB)
#define HID_USAGE_TELEPHONY_ALERT_SOUND_CONFIRM            ((USAGE) 0x00FC)
#define HID_USAGE_TELEPHONY_ALERT_SOUND_NOTIFICATION       ((USAGE) 0x00FD)
#define HID_USAGE_TELEPHONY_SILENT_RING                    ((USAGE) 0x00FE)
#define HID_USAGE_TELEPHONY_EMAIL_MESSAGE_WAITING          ((USAGE) 0x0108)
#define HID_USAGE_TELEPHONY_VOICEMAIL_MESSAGE_WAITING      ((USAGE) 0x0109)
#define HID_USAGE_TELEPHONY_HOST_HOLD                      ((USAGE) 0x010A)
#define HID_USAGE_TELEPHONY_INCOMING_CALL_HISTORY_COUNT    ((USAGE) 0x0110)
#define HID_USAGE_TELEPHONY_OUTGOING_CALL_HISTORY_COUNT    ((USAGE) 0x0111)
#define HID_USAGE_TELEPHONY_INCOMING_CALL_HISTORY          ((USAGE) 0x0112)
#define HID_USAGE_TELEPHONY_OUTGOING_CALL_HISTORY          ((USAGE) 0x0113)
#define HID_USAGE_TELEPHONY_PHONE_LOCALE                   ((USAGE) 0x0114)
#define HID_USAGE_TELEPHONY_PHONE_TIME_SECOND              ((USAGE) 0x0140)
#define HID_USAGE_TELEPHONY_PHONE_TIME_MINUTE              ((USAGE) 0x0141)
#define HID_USAGE_TELEPHONY_PHONE_TIME_HOUR                ((USAGE) 0x0142)
#define HID_USAGE_TELEPHONY_PHONE_DATE_DAY                 ((USAGE) 0x0143)
#define HID_USAGE_TELEPHONY_PHONE_DATE_MONTH               ((USAGE) 0x0144)
#define HID_USAGE_TELEPHONY_PHONE_DATE_YEAR                ((USAGE) 0x0145)
#define HID_USAGE_TELEPHONY_HANDSET_NICKNAME               ((USAGE) 0x0146)
#define HID_USAGE_TELEPHONY_ADDRESS_BOOK_ID                ((USAGE) 0x0147)
#define HID_USAGE_TELEPHONY_CALL_DURATION                  ((USAGE) 0x014A)
#define HID_USAGE_TELEPHONY_DUAL_MODE_PHONE                ((USAGE) 0x014B)

//
// Unicode Page (0x10)
//
// There is no need to label these usages.
//

//
// VESA Virtual Controls Page (0x82)
//
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_DEGAUSS                                 ((USAGE) 0x0001)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_BRIGHTNESS                              ((USAGE) 0x0010)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_CONTRAST                                ((USAGE) 0x0012)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_RED_VIDEO_GAIN                          ((USAGE) 0x0016)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_GREEN_VIDEO_GAIN                        ((USAGE) 0x0018)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_BLUE_VIDEO_GAIN                         ((USAGE) 0x001A)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_FOCUS                                   ((USAGE) 0x001C)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_POSITION                     ((USAGE) 0x0020)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_SIZE                         ((USAGE) 0x0022)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_PINCUSHION                   ((USAGE) 0x0024)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_PINCUSHION_BALANCE           ((USAGE) 0x0026)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_MISCONVERGENCE               ((USAGE) 0x0028)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_LINEARITY                    ((USAGE) 0x002A)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_LINEARITY_BALANCE            ((USAGE) 0x002C)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_POSITION                       ((USAGE) 0x0030)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_SIZE                           ((USAGE) 0x0032)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_PINCUSHION                     ((USAGE) 0x0034)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_PINCUSHION_BALANCE             ((USAGE) 0x0036)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_MISCONVERGENCE                 ((USAGE) 0x0038)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_LINEARITY                      ((USAGE) 0x003A)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_LINEARITY_BALANCE              ((USAGE) 0x003C)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_PARALLELOGRAM_DISTORTION_KEY_BALANCE    ((USAGE) 0x0040)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_TRAPEZOIDAL_DISTORTION_KEY              ((USAGE) 0x0042)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_TILT_ROTATION                           ((USAGE) 0x0044)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_TOP_CORNER_DISTORTION_CONTROL           ((USAGE) 0x0046)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_TOP_CORNER_DISTORTION_BALANCE           ((USAGE) 0x0048)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_BOTTOM_CORNER_DISTORTION_CONTROL        ((USAGE) 0x004A)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_BOTTOM_CORNER_DISTORTION_BALANCE        ((USAGE) 0x004C)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_MOIRE                        ((USAGE) 0x0056)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_MOIRE                          ((USAGE) 0x0058)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_INPUT_LEVEL_SELECT                      ((USAGE) 0x005E)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_INPUT_SOURCE_SELECT                     ((USAGE) 0x0060)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_RED_VIDEO_BLACK_LEVEL                   ((USAGE) 0x006C)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_GREEN_VIDEO_BLACK_LEVEL                 ((USAGE) 0x006E)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_BLUE_VIDEO_BLACK_LEVEL                  ((USAGE) 0x0070)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_AUTO_SIZE_CENTER                        ((USAGE) 0x00A2)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_POLARITY_HORIZONTAL_SYNCHRONIZATION     ((USAGE) 0x00A4)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_POLARITY_VERTICAL_SYNCHRONIZATION       ((USAGE) 0x00A6)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_SYNCHRONIZATION_TYPE                    ((USAGE) 0x00A8)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_SCREEN_ORIENTATION                      ((USAGE) 0x00AA)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_HORIZONTAL_FREQUENCY                    ((USAGE) 0x00AC)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_VERTICAL_FREQUENCY                      ((USAGE) 0x00AE)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_SETTINGS                                ((USAGE) 0x00B0)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_ON_SCREEN_DISPLAY                       ((USAGE) 0x00CA)
#define HID_USAGE_VESA_VIRTUAL_CONTROLS_STEREO_MODE                             ((USAGE) 0x00D4)

//
// VR Controls Page (0x03)
//
#define HID_USAGE_VR_BELT                    ((USAGE) 0x0001)
#define HID_USAGE_VR_BODY_SUIT               ((USAGE) 0x0002)
#define HID_USAGE_VR_FLEXOR                  ((USAGE) 0x0003)
#define HID_USAGE_VR_GLOVE                   ((USAGE) 0x0004)
#define HID_USAGE_VR_HEAD_TRACKER            ((USAGE) 0x0005)
#define HID_USAGE_VR_HEAD_MOUNTED_DISPLAY    ((USAGE) 0x0006)
#define HID_USAGE_VR_HAND_TRACKER            ((USAGE) 0x0007)
#define HID_USAGE_VR_OCULOMETER              ((USAGE) 0x0008)
#define HID_USAGE_VR_VEST                    ((USAGE) 0x0009)
#define HID_USAGE_VR_ANIMATRONIC_DEVICE      ((USAGE) 0x000A)
#define HID_USAGE_VR_STEREO_ENABLE           ((USAGE) 0x0020)
#define HID_USAGE_VR_DISPLAY_ENABLE          ((USAGE) 0x0021)

#endif
