aboutsummaryrefslogtreecommitdiffstats
path: root/Demos
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2011-01-17 19:44:48 +0000
committerDean Camera <dean@fourwalledcubicle.com>2011-01-17 19:44:48 +0000
commitefd57cfe51ec0501d4378d01e019f3e23b989274 (patch)
treee2e60d4ba5a72c56012b2a6426849e28d762c53e /Demos
parent47fec03694c933a388eadf3242a6e40177b57d74 (diff)
downloadlufa-efd57cfe51ec0501d4378d01e019f3e23b989274.tar.gz
lufa-efd57cfe51ec0501d4378d01e019f3e23b989274.tar.bz2
lufa-efd57cfe51ec0501d4378d01e019f3e23b989274.zip
Abuse the the C preprocessor so that the HID macros can automatically encode data into the array from the HID macros automagically, by specifying the bit-width of the data, and the data itself as a single integer value of that width.
Diffstat (limited to 'Demos')
-rw-r--r--Demos/Device/ClassDriver/GenericHID/Descriptors.c31
-rw-r--r--Demos/Device/ClassDriver/Joystick/Descriptors.c46
-rw-r--r--Demos/Device/ClassDriver/Keyboard/Descriptors.c65
-rw-r--r--Demos/Device/ClassDriver/KeyboardMouse/Descriptors.c119
-rw-r--r--Demos/Device/ClassDriver/MassStorageKeyboard/Descriptors.c65
-rw-r--r--Demos/Device/ClassDriver/Mouse/Descriptors.c54
-rw-r--r--Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c54
-rw-r--r--Demos/Device/LowLevel/GenericHID/Descriptors.c31
-rw-r--r--Demos/Device/LowLevel/Joystick/Descriptors.c46
-rw-r--r--Demos/Device/LowLevel/Keyboard/Descriptors.c65
-rw-r--r--Demos/Device/LowLevel/KeyboardMouse/Descriptors.c119
-rw-r--r--Demos/Device/LowLevel/Mouse/Descriptors.c54
-rw-r--r--Demos/DualRole/ClassDriver/MouseHostDevice/Descriptors.c52
13 files changed, 387 insertions, 414 deletions
diff --git a/Demos/Device/ClassDriver/GenericHID/Descriptors.c b/Demos/Device/ClassDriver/GenericHID/Descriptors.c
index 0716ae9ca..aeec36db1 100644
--- a/Demos/Device/ClassDriver/GenericHID/Descriptors.c
+++ b/Demos/Device/ClassDriver/GenericHID/Descriptors.c
@@ -45,22 +45,21 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM GenericReport[] =
{
- HID_RI_USAGE_PAGE(16), 0x00, 0xFF, /* Vendor Page 1 */
- HID_RI_USAGE(8), 0x01, /* Vendor Usage 1 */
- HID_RI_COLLECTION(8), 0x01, /* Vendor Usage 1 */
- HID_RI_USAGE(8), 0x02, /* Vendor Usage 2 */
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0xFF,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), GENERIC_REPORT_SIZE,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_USAGE(8), 0x03, /* Vendor Usage 3 */
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0xFF,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), GENERIC_REPORT_SIZE,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_USAGE_PAGE(16, 0x00FF), /* Vendor Page 1 */
+ HID_RI_USAGE(8, 0x01), /* Vendor Usage 1 */
+ HID_RI_COLLECTION(8, 0x01), /* Vendor Usage 1 */
+ HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, GENERIC_REPORT_SIZE),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_USAGE(8, 0x03), /* Vendor Usage 3 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, GENERIC_REPORT_SIZE),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/Joystick/Descriptors.c b/Demos/Device/ClassDriver/Joystick/Descriptors.c
index e2b528e1c..17c149528 100644
--- a/Demos/Device/ClassDriver/Joystick/Descriptors.c
+++ b/Demos/Device/ClassDriver/Joystick/Descriptors.c
@@ -45,30 +45,30 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM JoystickReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x04, /* Joystick */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -100,
- HID_RI_LOGICAL_MAXIMUM(8), 100,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x04), /* Joystick */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -100),
+ HID_RI_LOGICAL_MAXIMUM(8, 100),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE(8), 0x02, /* Button 1 */
- HID_RI_USAGE(8), 0x01, /* Button 2 */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_SIZE(8), 6,
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE(8, 0x02), /* Button 1 */
+ HID_RI_USAGE(8, 0x01), /* Button 2 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_SIZE(8, 0x06),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/Keyboard/Descriptors.c b/Demos/Device/ClassDriver/Keyboard/Descriptors.c
index 640479a23..16ca1955e 100644
--- a/Demos/Device/ClassDriver/Keyboard/Descriptors.c
+++ b/Demos/Device/ClassDriver/Keyboard/Descriptors.c
@@ -45,40 +45,37 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x06, /* Keyboard */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
- HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
- HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
- HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
- HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
- HID_RI_REPORT_COUNT(8), 5,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 3,
- HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0x65,
- HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
- HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
- HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
- HID_RI_REPORT_COUNT(8), 6,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x06), /* Keyboard */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+ HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+ HID_RI_REPORT_COUNT(8, 0x05),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x03),
+ HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+ HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8, 0x06),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/KeyboardMouse/Descriptors.c b/Demos/Device/ClassDriver/KeyboardMouse/Descriptors.c
index e7f256215..be2b7e085 100644
--- a/Demos/Device/ClassDriver/KeyboardMouse/Descriptors.c
+++ b/Demos/Device/ClassDriver/KeyboardMouse/Descriptors.c
@@ -47,34 +47,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -1,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_PHYSICAL_MINIMUM(8), -1,
- HID_RI_PHYSICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};
@@ -82,40 +80,37 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
/** Same as the MouseReport structure, but defines the keyboard HID interface's report structure. */
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x06, /* Keyboard */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
- HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
- HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
- HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
- HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
- HID_RI_REPORT_COUNT(8), 5,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 3,
- HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0x65,
- HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
- HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
- HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
- HID_RI_REPORT_COUNT(8), 6,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x06), /* Keyboard */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+ HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+ HID_RI_REPORT_COUNT(8, 0x05),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x03),
+ HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+ HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8, 0x06),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/MassStorageKeyboard/Descriptors.c b/Demos/Device/ClassDriver/MassStorageKeyboard/Descriptors.c
index 3d766b6b5..a5d7973da 100644
--- a/Demos/Device/ClassDriver/MassStorageKeyboard/Descriptors.c
+++ b/Demos/Device/ClassDriver/MassStorageKeyboard/Descriptors.c
@@ -58,40 +58,37 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x06, /* Keyboard */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
- HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
- HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
- HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
- HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
- HID_RI_REPORT_COUNT(8), 5,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 3,
- HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0x65,
- HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
- HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
- HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
- HID_RI_REPORT_COUNT(8), 6,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x06), /* Keyboard */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+ HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+ HID_RI_REPORT_COUNT(8, 0x05),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x03),
+ HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+ HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8, 0x06),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/Mouse/Descriptors.c b/Demos/Device/ClassDriver/Mouse/Descriptors.c
index 58a4ae4dc..26ba10fb4 100644
--- a/Demos/Device/ClassDriver/Mouse/Descriptors.c
+++ b/Demos/Device/ClassDriver/Mouse/Descriptors.c
@@ -45,34 +45,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -1,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_PHYSICAL_MINIMUM(8), -1,
- HID_RI_PHYSICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c b/Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c
index 7cf15e0e1..22f29b95a 100644
--- a/Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c
+++ b/Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c
@@ -57,34 +57,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -1,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_PHYSICAL_MINIMUM(8), -1,
- HID_RI_PHYSICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/LowLevel/GenericHID/Descriptors.c b/Demos/Device/LowLevel/GenericHID/Descriptors.c
index 3a018d9ad..c1505bc5c 100644
--- a/Demos/Device/LowLevel/GenericHID/Descriptors.c
+++ b/Demos/Device/LowLevel/GenericHID/Descriptors.c
@@ -45,22 +45,21 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM GenericReport[] =
{
- HID_RI_USAGE_PAGE(16), 0x00, 0xFF, /* Vendor Page 1 */
- HID_RI_USAGE(8), 0x01, /* Vendor Usage 1 */
- HID_RI_COLLECTION(8), 0x01, /* Vendor Usage 1 */
- HID_RI_USAGE(8), 0x02, /* Vendor Usage 2 */
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0xFF,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), GENERIC_REPORT_SIZE,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_USAGE(8), 0x03, /* Vendor Usage 3 */
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0xFF,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), GENERIC_REPORT_SIZE,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_USAGE_PAGE(16, 0x00FF), /* Vendor Page 1 */
+ HID_RI_USAGE(8, 0x01), /* Vendor Usage 1 */
+ HID_RI_COLLECTION(8, 0x01), /* Vendor Usage 1 */
+ HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, GENERIC_REPORT_SIZE),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_USAGE(8, 0x03), /* Vendor Usage 3 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, GENERIC_REPORT_SIZE),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/LowLevel/Joystick/Descriptors.c b/Demos/Device/LowLevel/Joystick/Descriptors.c
index bc0b430b3..5b85be5ba 100644
--- a/Demos/Device/LowLevel/Joystick/Descriptors.c
+++ b/Demos/Device/LowLevel/Joystick/Descriptors.c
@@ -45,30 +45,30 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM JoystickReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x04, /* Joystick */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -100,
- HID_RI_LOGICAL_MAXIMUM(8), 100,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x04), /* Joystick */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -100),
+ HID_RI_LOGICAL_MAXIMUM(8, 100),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE(8), 0x02, /* Button 1 */
- HID_RI_USAGE(8), 0x01, /* Button 2 */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_SIZE(8), 6,
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE(8, 0x02), /* Button 1 */
+ HID_RI_USAGE(8, 0x01), /* Button 2 */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_SIZE(8, 0x06),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/LowLevel/Keyboard/Descriptors.c b/Demos/Device/LowLevel/Keyboard/Descriptors.c
index 8e5cf1524..24d53549c 100644
--- a/Demos/Device/LowLevel/Keyboard/Descriptors.c
+++ b/Demos/Device/LowLevel/Keyboard/Descriptors.c
@@ -46,40 +46,37 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x06, /* Keyboard */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
- HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
- HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
- HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
- HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
- HID_RI_REPORT_COUNT(8), 5,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 3,
- HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0x65,
- HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
- HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
- HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
- HID_RI_REPORT_COUNT(8), 6,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x06), /* Keyboard */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+ HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+ HID_RI_REPORT_COUNT(8, 0x05),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x03),
+ HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+ HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8, 0x06),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/LowLevel/KeyboardMouse/Descriptors.c b/Demos/Device/LowLevel/KeyboardMouse/Descriptors.c
index 2d8fd44cd..55cf30d38 100644
--- a/Demos/Device/LowLevel/KeyboardMouse/Descriptors.c
+++ b/Demos/Device/LowLevel/KeyboardMouse/Descriptors.c
@@ -48,34 +48,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -1,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_PHYSICAL_MINIMUM(8), -1,
- HID_RI_PHYSICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};
@@ -83,40 +81,37 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
/** Same as the MouseReport structure, but defines the keyboard HID interface's report structure. */
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x06, /* Keyboard */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
- HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
- HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_REPORT_COUNT(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
- HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
- HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
- HID_RI_REPORT_COUNT(8), 5,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 3,
- HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_LOGICAL_MINIMUM(8), 0x00,
- HID_RI_LOGICAL_MAXIMUM(8), 0x65,
- HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
- HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
- HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
- HID_RI_REPORT_COUNT(8), 6,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x06), /* Keyboard */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+ HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+ HID_RI_REPORT_COUNT(8, 0x05),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x03),
+ HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+ HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8, 0x06),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/Device/LowLevel/Mouse/Descriptors.c b/Demos/Device/LowLevel/Mouse/Descriptors.c
index 58a4ae4dc..26ba10fb4 100644
--- a/Demos/Device/LowLevel/Mouse/Descriptors.c
+++ b/Demos/Device/LowLevel/Mouse/Descriptors.c
@@ -45,34 +45,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -1,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_PHYSICAL_MINIMUM(8), -1,
- HID_RI_PHYSICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};
diff --git a/Demos/DualRole/ClassDriver/MouseHostDevice/Descriptors.c b/Demos/DualRole/ClassDriver/MouseHostDevice/Descriptors.c
index 314953eae..39688dc62 100644
--- a/Demos/DualRole/ClassDriver/MouseHostDevice/Descriptors.c
+++ b/Demos/DualRole/ClassDriver/MouseHostDevice/Descriptors.c
@@ -45,32 +45,32 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
{
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x02, /* Mouse */
- HID_RI_COLLECTION(8), 0x01, /* Application */
- HID_RI_USAGE(8), 0x01, /* Pointer */
- HID_RI_COLLECTION(8), 0x00, /* Physical */
- HID_RI_USAGE_PAGE(8), 0x09, /* Button */
- HID_RI_USAGE_MINIMUM(8), 0x01,
- HID_RI_USAGE_MAXIMUM(8), 0x03,
- HID_RI_LOGICAL_MINIMUM(8), 0,
- HID_RI_LOGICAL_MAXIMUM(8), 1,
- HID_RI_REPORT_COUNT(8), 3,
- HID_RI_REPORT_SIZE(8), 1,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
-
- HID_RI_REPORT_COUNT(8), 1,
- HID_RI_REPORT_SIZE(8), 5,
- HID_RI_INPUT(8), HID_IOF_CONSTANT,
-
- HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
- HID_RI_USAGE(8), 0x30, /* Usage X */
- HID_RI_USAGE(8), 0x31, /* Usage Y */
- HID_RI_LOGICAL_MINIMUM(8), -128,
- HID_RI_LOGICAL_MAXIMUM(8), 127,
- HID_RI_REPORT_COUNT(8), 2,
- HID_RI_REPORT_SIZE(8), 8,
- HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x02), /* Mouse */
+ HID_RI_COLLECTION(8, 0x01), /* Application */
+ HID_RI_USAGE(8, 0x01), /* Pointer */
+ HID_RI_COLLECTION(8, 0x00), /* Physical */
+ HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+ HID_RI_USAGE_MINIMUM(8, 0x01),
+ HID_RI_USAGE_MAXIMUM(8, 0x03),
+ HID_RI_LOGICAL_MINIMUM(8, 0x00),
+ HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+ HID_RI_REPORT_COUNT(8, 0x03),
+ HID_RI_REPORT_SIZE(8, 0x01),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_VOLATILE),
+ HID_RI_REPORT_COUNT(8, 0x01),
+ HID_RI_REPORT_SIZE(8, 0x05),
+ HID_RI_INPUT(8, HID_IOF_CONSTANT),
+ HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+ HID_RI_USAGE(8, 0x30), /* Usage X */
+ HID_RI_USAGE(8, 0x31), /* Usage Y */
+ HID_RI_LOGICAL_MINIMUM(8, -1),
+ HID_RI_LOGICAL_MAXIMUM(8, 1),
+ HID_RI_PHYSICAL_MINIMUM(8, -1),
+ HID_RI_PHYSICAL_MAXIMUM(8, 1),
+ HID_RI_REPORT_COUNT(8, 0x02),
+ HID_RI_REPORT_SIZE(8, 0x08),
+ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
HID_RI_END_COLLECTION(0),
};