??? 02/01/08 17:20 Read: times |
#150167 - Composite Device Responding to: ???'s previous message |
I am unfamiliar with the part in question, so keep that in mind.
We have built USB devices with "multiple identities" before. It's been so long that I can't even remember the terminology. Anyway to the PC it's a keyboard and a generic (vendor defined) USB "thingy". This second interface is what we use for downloading parameter data to the keyboard to make it reconfigurable. So basically you can add a second Interface/Class/Endpoint(s)/Report to your descriptors. Then do what you want with them. const char Interface1Descriptor[] = { 0x09, // length of descriptor (9 bytes) 0x04, // descriptor type (INTERFACE) 0x00, // interface number 0x00, // alternate setting 0x01, // number of endpoints 0x03, // interface class 0x01, // interface sub-class 0x01, // interface protocol 0x00 // 0x05 // interface string index }; const char Interface2Descriptor[] = { 0x09, // bLength 0x04, // bDescriptorType 0x01, // bInterfaceNumber 0x00, // bAlternateSetting 0x01, // bNumEndpoints 0x03, // bInterfaceClass 0x00, // bInterfaceSubClass 0x00, // bInterfaceProtocol 0x00 // iInterface 2 String # }; |
Topic | Author | Date |
USB firmware update | 01/01/70 00:00 | |
on-chip USB Bootloader firmware | 01/01/70 00:00 | |
Thanks but my question is... | 01/01/70 00:00 | |
Start with easier examples | 01/01/70 00:00 | |
Thanks for detailed answer and example. | 01/01/70 00:00 | |
Composite Device![]() | 01/01/70 00:00 |