SW group was sitting down trying to come up with a suitable USB design for an upcoming product.
I asked why they didn't simply implement the product with a composite USB device.
What they need:
One product, with one USB link, which has 3 virtual COM ports or HID or whatever, lets assume COM ports.
Different applications on the host would attach to the different ports.
I vaguely remember a composite device so looked up the definition (thanks Jan!):
+ has a single bus address
+ has multiple interfaces, each with a different function
+ each interface can hook to a different driver on the host
Am I correct in believing that each the host would (after enumeration) have 3 hardware device ID?
Each interface on this thing would have the same identical VID and PID, but their interface digits would differ?
And the host would thus allow a separate linkage for each one of these, meaning that separate, independent apps would connect to the different interfaces?
Is all the above reasonable?
If not, then what would be the suggestion on how to do this?
To recap:
You have a product.
It can communicate via USB.
You have up to 3 separate, independent applications running on the host that wish to communicate with it.
Typically, the traffic loads are not very heavy, light actually (no streaming, etc.).
Regards,
Bryce