Adding Consumer HID to USBD Keyboard Example

Hi,

I am trying to build a keyboard with Media Button inputs as well. I tried to add consumer HID to the keyboard HID but it does not work.

The thing which i want to know is:

1- How can i differentiate between both Report IDs while sending data to PC via USBD?

2- Is there any easier example which I can modify for this?

3- For some reason, if I add the Report ID (0x85, 0x01,    //Report ID=1) to Keyboard HID. The keyboard also does not work.

Following is the new HID which i have added into the keyboard HID section.

                0x05, 0x0C, /*		Usage Page (Consumer Devices)		*/\
				0x09, 0x01, /*		Usage (Consumer Control)				*/\
				0xA1, 0x01, /*		Collection (Application)				*/\
				0x05, 0x0C, /*		Usage Page (Consumer Devices)		*/\
				0x15, 0x00, /*		Logical Minimum (0)							*/\
				0x25, 0x01, /*		Logical Maximum (1)							*/\
				0x75, 0x01, /*		Report Size (1)									*/\
				0x95, 0x07, /*		Report Count (7)								*/\
				0x09, 0xB5, /*		Usage (Scan Next Track)					*/\
				0x09, 0xB6, /*		Usage (Scan Previous Track)			*/\
				0x09, 0xB7, /*		Usage (Stop)										*/\
				0x09, 0xCD, /*		Usage (Play / Pause)						*/\
				0x09, 0xE2, /*		Usage (Mute)										*/\
				0x09, 0xE9, /*		Usage (Volume Up)								*/\
				0x09, 0xEA, /*		Usage (Volume Down)							*/\
				0x81, 0x02, /*		Input (Data, Variable, Absolute)*/\
				0x95, 0x01, /*		Report Count (1)								*/\
				0x81, 0x01, /*		Input (Constant)								*/\
				0xC0				/*		End Collection									*/\

Related