This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Report ID with different size

Hello,

I'm trying to make a report descriptor that contains many report IDs with different size, some with 1 byte and some with 2 bytes.
At first is that possible?

I supposed that it's possible, and changed the wMaxPacketSize to 3 bytes (the max of bytes to send + one byte for the report ID) , but when I send data from the host to my stm32 I only receive the first 2 bytes the report ID and the next byte.
Am I missing something? Is there something else that I have to change in the descriptor file?

Thanks,

Parents
  • I get rid of report ID and just want to try a simple example sending two bytes.

        0x06, 0x00, 0xff,              // USAGE_PAGE (Vendor Defined Page 1)
        0x09, 0x01,                    // USAGE (Vendor Usage 1)
        0xa1, 0x01,                    // COLLECTION (Application)
        0x09, 0x02,                    //   USAGE (Vendor Usage 1)
        0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
        0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)
        0x95, 0x02,                    //   REPORT_COUNT (2)
        0x75, 0x08,                    //   REPORT_SIZE (8)
        0x91, 0x86,                    //   OUTPUT (Data,Var,Rel,Vol)
        0x09, 0x02,                    //   USAGE (Vendor Usage 2)
        0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
        0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)
        0x95, 0x02,                    //   REPORT_COUNT (2)
        0x75, 0x08,                    //   REPORT_SIZE (8)
        0xb1, 0x86,                     //   FEATURE (Data,Var,Rel,Vol)
        0xc0                           // END_COLLECTION
    

    I'm using usb HID demonstrator for sending data and usblyzer to visualize the data.
    It seems that data just wont send.

Reply
  • I get rid of report ID and just want to try a simple example sending two bytes.

        0x06, 0x00, 0xff,              // USAGE_PAGE (Vendor Defined Page 1)
        0x09, 0x01,                    // USAGE (Vendor Usage 1)
        0xa1, 0x01,                    // COLLECTION (Application)
        0x09, 0x02,                    //   USAGE (Vendor Usage 1)
        0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
        0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)
        0x95, 0x02,                    //   REPORT_COUNT (2)
        0x75, 0x08,                    //   REPORT_SIZE (8)
        0x91, 0x86,                    //   OUTPUT (Data,Var,Rel,Vol)
        0x09, 0x02,                    //   USAGE (Vendor Usage 2)
        0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
        0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)
        0x95, 0x02,                    //   REPORT_COUNT (2)
        0x75, 0x08,                    //   REPORT_SIZE (8)
        0xb1, 0x86,                     //   FEATURE (Data,Var,Rel,Vol)
        0xc0                           // END_COLLECTION
    

    I'm using usb HID demonstrator for sending data and usblyzer to visualize the data.
    It seems that data just wont send.

Children
No data