I need to write 2HIds in one composite device in STM32 microcontrollers.One for pointer mouse operation and other one for keypad operation.So i wish to know is it possible to do so?If yes will I need to write 2 separate report descriptors.I am using 2 interfaces and 2 ENDPOINTS (enp1 and enp2). Please help...
Hi Tsuneo ,
I tried doing as you said , I wrote report id (1) , then copied Mouse HID and Report id(2) ,then copied keyboard HID and changed descriptor size accordingly . Thats it . However this time my PC is not detecting the new HID, It shows an exclamation mark along side and noew i am stuck .Is there anything else to do . Can you once again explain in detail how to sending both mouse and keyboard data through the same interface and same endpoint . Because I didnt understand the idea.How OS understands that which is report id and which is data.
The actual mouse data sends 4 bytes ,So now iam sending 5 bytes i.e reportid + 4byte mouse data It seems that I am doing something wrong somewhere.. ;)
Dhanush
Can you also explain me how to proceed with 2HID report descriptor composite device ??
> Can you also explain me how to proceed with 2HID report descriptor composite device ??
The implementation of composite device heavily depends on the USB stack on which you are working. Not just the descriptors, you have to modify - Get_Descriptor( HID_Report ) process - Enabling additional EP(s) etc.
Which one are you playing? - Keil RL-USB - ST's STSW-STM32046 - STM32_USB-Host-Device_Lib_V2.1.0 - ST's STSW-STM32121 - STM32_USB-FS-Device_Lib_V4.0.0 etc.
Tsuneo
I am using STM32F103R8 and making it work as keypad-controller *** pointing device.
It was working for both individually however together they always fail.
> I am using STM32F103R8
And what is the USB library?