Cy[press Usb device driver, CyUSB.sys, and our libraries currently doesn't support multiple configurations. It supports only one configuration as of now.
Hi Gayathri, thanks for the information. A quick google suggests that WinUSB also has a one-configuration limitation.
Would it be possible to "fake" multiple configurations by doing what amounts to Re-Numeration? For example, my descriptors will report that I only have one configuration, but my software will know that I secretly have two configurations. So it will issue a vendor command which would force a disconnect with USBCS |= 0x80; wait three seconds; change which configuration descriptor I report for enumeration; and then reconnect with USBCS &= ~0x80.
I think that will accomplish my goal, but I would be interested to hear if you have any other suggestions.
When you say two configuration are they both implementing 2 separate classes or are they both vendor specific class. CyUSB.sys will just pass up the descriptor irrespective of what it contains. It comes down to the matter of being able to set configuration (I remember windows low level drivers not letting us do that). I'll check on that and get back to you.