Hi Jan,
Thank you for getting back to me. I've made some progress today: I've modified the order of the device descriptors on my embedded device. Now when I call libusb_get_device_descriptor, followed by libusb_get_config_descriptor my embedded device is picked up twice.
In both cases the ConfigurationDescriptors are the same but on closer inspection, libusb has only picked up my first interface. In my device descriptor array, I've set the following to use IAD descriptors (used to setup my VCOM port):
0xEF, // bDeviceClass
0x02, // bDeviceSubClass
0x01, // bDeviceProtocol
Could this be preventing independent classes from ennumerating? Could something similar be achieved with the use of bInterfaceClass, bInterfaceSubClass and bInterfaceProtocol? Is an example of this available anywhere?
Thanks again,
Alan