I've been trying to find out since over 5 years about how to write udev rules that allow me setting up an order for varying MIDI interfaces that can be recognized in the correct order by Pd. Unfortunately without any success!
The only thing that works so far is using vendor and product id in /etc/modprobe.d/alsabase.conf. Like this:
options snd-usb-audio index=2,2,3,3,4,5, vid=0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn pid=0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn, 0xnnnn
I can assign up to two vid/pid numbers per index and it still works as long as only one of them is present. With more than two it doesn't work anymore ... :-(
I also found this somewhere:
options snd-usb-audio index=1,2,3,4 id=midi1, midi2, midi3, midi4
I have no idea what this is supposed to do or where "midi1", etc. comes from. If I write a udev rule that places "midi1" in /dev/ or /dev/snd/ it shows up but doesn't do anything.
What I need to do is assigning varying USB MIDI interfaces to the first id, the 2nd id, etc.
What can I do that a udev rule creates an "id" that is being recognized by alsa or oss?
BTW, even with the vid/pid that is generally working the indexes change if one is missing. I.e. if the first interface is not present the second will be taken as the first one and the following ids will be one less.
Any help is appreciated!
I would like to do something like this:
name like "midi1" or "midi2", etc. 2) assign the udev name that I have created to an id in modprobe.d/alsabase.conf to be seen as a midi device by Pd.
Thanks! Ingo