hidparser 1.0.3

HID report descriptor parsing library
Documentation
static SAMPLE_DESCRIPTOR_1: &[u8] = &[
    0x05, 0x20,        // Usage Page (0x20)
    0x09, 0x8A,        // Usage (0x8A)
    0xA1, 0x01,        // Collection (Application)
    0x85, 0x01,        //   Report ID (1)
    0x0A, 0x7F, 0x04,  //   Usage (0x047F)
    0x46, 0x68, 0x01,  //   Physical Maximum (360)
    0x34,              //   Physical Minimum
    0x26, 0x68, 0x01,  //   Logical Maximum (360)
    0x14,              //   Logical Minimum
    0x75, 0x09,        //   Report Size (9)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x65, 0x14,        //   Unit (System: English Rotation, Length: Centimeter)
    0x85, 0x02,        //   Report ID (2)
    0x0A, 0x0B, 0x03,  //   Usage (0x030B)
    0x45, 0xFF,        //   Physical Maximum (-1)
    0x34,              //   Physical Minimum
    0x25, 0xFF,        //   Logical Maximum (-1)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x85, 0x03,        //   Report ID (3)
    0x0A, 0x07, 0x03,  //   Usage (0x0307)
    0x47, 0xFF, 0xFF, 0xFF, 0x7F,  //   Physical Maximum (2147483646)
    0x34,              //   Physical Minimum
    0x27, 0xFF, 0xFF, 0xFF, 0x7F,  //   Logical Maximum (2147483646)
    0x14,              //   Logical Minimum
    0x75, 0x20,        //   Report Size (32)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x47, 0x01, 0x00, 0x00, 0x00,  //   Physical Maximum (0)
    0x34,              //   Physical Minimum
    0x27, 0x01, 0x00, 0x00, 0x00,  //   Logical Maximum (0)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x85, 0x04,        //   Report ID (4)
    0x0A, 0x03, 0x03,  //   Usage (0x0303)
    0x45, 0x03,        //   Physical Maximum (3)
    0x34,              //   Physical Minimum
    0x25, 0x03,        //   Logical Maximum (3)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x85, 0x05,        //   Report ID (5)
    0x0A, 0x84, 0x04,  //   Usage (0x0484)
    0x45, 0x02,        //   Physical Maximum (2)
    0x34,              //   Physical Minimum
    0x25, 0x02,        //   Logical Maximum (2)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x85, 0x06,        //   Report ID (6)
    0x0A, 0x44, 0x05,  //   Usage (0x0544)
    0x45, 0x01,        //   Physical Maximum (1)
    0x34,              //   Physical Minimum
    0x25, 0x01,        //   Logical Maximum (1)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x91, 0x02,        //   Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
    0x85, 0x07,        //   Report ID (7)
    0x0A, 0x45, 0x05,  //   Usage (0x0545)
    0x47, 0xA0, 0x8C, 0x00, 0x00,  //   Physical Maximum (35999)
    0x34,              //   Physical Minimum
    0x27, 0xA0, 0x8C, 0x00, 0x00,  //   Logical Maximum (35999)
    0x14,              //   Logical Minimum
    0x75, 0x32,        //   Report Size (50)
    0x95, 0x01,        //   Report Count (1)
    0x55, 0x0E,        //   Unit Exponent (-2)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0x85, 0x08,        //   Report ID (8)
    0x0A, 0x46, 0x05,  //   Usage (0x0546)
    0x45, 0x02,        //   Physical Maximum (2)
    0x34,              //   Physical Minimum
    0x25, 0x02,        //   Logical Maximum (2)
    0x14,              //   Logical Minimum
    0x75, 0x08,        //   Report Size (8)
    0x95, 0x01,        //   Report Count (1)
    0x81, 0x02,        //   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
    0xC0,              // End Collection
];