A few lines to determine which audio driver is mapped to a physical USB codec
Hi! We have a shipping hardware product which is a USB composite device containing four TI 2904 audio CODECs and a TI USB hub chip. The problem we've run into is this: Windows maps the audio driver (ie. USB Device (2)) in a seemingly random fashion to the phyiscal CODECs. For example, if we unplug the device or reboot the machine, the driver mapped to the codec on physical port 1 of the hub may move to port 2. So, USB Device (2) -> phyiscal CODEC 2 in one instance, USB Device (3) -> physical codec 2 after the machine is rebooted. What we need form you is the code to determine which audio driver is mapped to which physical device, so our software can gracefully handle a reboot or reattachment to a different USB port.
The key to doing this is parsing the Windows enumeration files and understanding what Microsoft is doing.
You need to identify the physical port on the TI hub that the audio driver has assigned itself to.
Oh, yeah, the hub is a plain vanilla TUSB2046.
More info on the task is here: [url removed, login to view]
One programmer thinks that this may be due to the fact that all codecs power up at the same time, rather than in sequential order. What we need is the code to tell which driver is mapped to which physical hub port, regardless of the power-up order.
We have just upped the bid limit to $1000 and would be glad to close the bidding immediately if you are -absolutely- certain you can complete the job.
Here is the hub chip specification:
[url removed, login to view]
1) Complete and fully-functional souce code in C/C++
2)Complete ownership and distribution copyrights to all work purchased.
All Windows OS supporting USB, with the execption of 98SE if that's a headache.