#ifndef HID_DESCRIPTOR_H #define HID_DESCRIPTOR_H /* Main Items Datatype flag */ #define HID_DATA 0x00 #define HID_CONSTANT 0x01 #define HID_ARRAY 0x00 #define HID_VARIABLE 0x02 #define HID_ABSOLUTE 0x00 #define HID_RELATIVE 0x04 #define HID_NO_WRAP 0x00 #define HID_WRAP 0x08 #define HID_LINEAR 0x00 #define HID_NON_LINEAR 0x10 #define HID_PREFERRED_STATE 0x00 #define HID_NO_PREFERRED_STATE 0x20 #define HID_NO_NULL_POSITION 0x00 #define HID_NULL_STATE 0x40 #define HID_BIT_FIELD 0x00 #define HID_BUFFERED_BYTE 0x100 #define HID_USAGE_PAGE 0x05 #define HID_USAGE 0x09 #define HID_COLLECTION_APPLICATION 0xA1 #define HID_USAGE_MINIMUM 0x19 #define HID_USAGE_MAXIMUM 0x29 #define HID_LOGICAL_MINIMUM 0x15 #define HID_LOGICAL_MAXIMUM 0x25 #define HID_REPORT_SIZE 0x75 #define HID_REPORT_COUNT 0x95 #define HID_INPUT 0x81 #define HID_OUTPUT 0x91 #define HID_FEATURE 0xB1 #define HID_END_COLLECTION 0xC0 #define HID_USAGE_PAGE_GENERIC_DESKTOP 0x01 #define HID_USAGE_KEYBOARD 0x06 #define HID_USAGE_KEYPAD 0x07 #define HID_USAGE_PAGE_LED 0x08 #endif