1
Files
strafe2backlight/usb_descriptors.h
2025-05-30 22:03:02 -04:00

52 lines
1.8 KiB
C

#ifndef USB_DESCRIPTORS_H_
#define USB_DESCRIPTORS_H_
enum
{
REPORT_ID_KEYBOARD = 1,
REPORT_ID_CONSUMER_CONTROL,
REPORT_ID_COUNT
};
enum
{
ITF_NUM_CDC=0,
ITF_NUM_CDC_DATA,
ITF_NUM_HID,
ITF_NUM_TOTAL
};
#define TUD_HID_REPORT_DESC_NKRO(...) \
HID_USAGE_PAGE(HID_USAGE_PAGE_DESKTOP), HID_USAGE(HID_USAGE_PAGE_KEYBOARD), \
HID_COLLECTION(HID_COLLECTION_APPLICATION), \
__VA_ARGS__ HID_REPORT_SIZE(1), HID_REPORT_COUNT(8), \
HID_USAGE_PAGE(HID_USAGE_PAGE_KEYBOARD), HID_USAGE_MIN(224), \
HID_USAGE_MAX(231), HID_LOGICAL_MIN(0), HID_LOGICAL_MAX(1), \
HID_INPUT(HID_VARIABLE), \
HID_REPORT_SIZE(1), HID_REPORT_COUNT(5), \
HID_USAGE_PAGE(HID_USAGE_PAGE_LED), HID_USAGE_MIN(1), HID_USAGE_MAX(5), \
HID_OUTPUT(HID_VARIABLE), HID_REPORT_SIZE(3), HID_REPORT_COUNT(1),\
HID_OUTPUT(HID_CONSTANT), \
HID_REPORT_SIZE(1), HID_REPORT_COUNT(20 * 8), \
HID_LOGICAL_MIN(0), HID_LOGICAL_MAX(1), \
HID_USAGE_PAGE(HID_USAGE_PAGE_KEYBOARD), HID_USAGE_MIN(0), \
HID_USAGE_MAX(20 * 8 - 1), HID_INPUT(HID_VARIABLE), HID_COLLECTION_END
#define TUD_HID_REPORT_DESC_MEDIA(...) \
HID_USAGE_PAGE(HID_USAGE_PAGE_CONSUMER), \
HID_USAGE(HID_USAGE_CONSUMER_CONTROL), \
HID_COLLECTION(HID_COLLECTION_APPLICATION), \
__VA_ARGS__ \
HID_USAGE_PAGE(HID_USAGE_PAGE_CONSUMER), \
HID_USAGE_MIN(0), \
HID_USAGE_MAX_N(0x0FFF, 2), \
HID_LOGICAL_MIN(0), \
HID_LOGICAL_MAX_N(0x0FFF, 2), \
HID_REPORT_SIZE(16), \
HID_REPORT_COUNT(2), \
HID_INPUT(HID_DATA), \
HID_COLLECTION_END
#endif /* USB_DESCRIPTORS_H_ */