0x05, 0x0C, // Usage Page (Consumer) 0x09, 0x01, // Usage (Consumer Control) 0xA1, 0x01, // Collection (Application) 0x85, 0x01, // Report ID (1) 0x19, 0x00, // Usage Minimum (Unassigned) 0x2A, 0xFF, 0x05, // Usage Maximum (0x05FF) 0x15, 0x00, // Logical Minimum (0) 0x26, 0xFF, 0x05, // Logical Maximum (1535) 0x95, 0x01, // Report Count (1) 0x75, 0x10, // Report Size (16) 0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0, // End Collection 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) 0x09, 0x80, // Usage (Sys Control) 0xA1, 0x01, // Collection (Application) 0x85, 0x02, // Report ID (2) 0x19, 0x81, // Usage Minimum (Sys Power Down) 0x29, 0x83, // Usage Maximum (Sys Wake Up) 0x15, 0x00, // Logical Minimum (0) 0x25, 0x01, // Logical Maximum (1) 0x75, 0x01, // Report Size (1) 0x95, 0x03, // Report Count (3) 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x95, 0x05, // Report Count (5) 0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0, // End Collection 0x06, 0x01, 0xFF, // Usage Page (Vendor Defined 0xFF01) 0x09, 0x04, // Usage (0x04) 0xA1, 0x01, // Collection (Application) 0x85, 0x03, // Report ID (3) 0x95, 0x01, // Report Count (1) 0x75, 0x10, // Report Size (16) 0x19, 0x00, // Usage Minimum (0x00) 0x2A, 0xFF, 0x0F, // Usage Maximum (0x0FFF) 0x15, 0x00, // Logical Minimum (0) 0x26, 0xFF, 0x0F, // Logical Maximum (4095) 0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0, // End Collection // 78 bytes