[PD] MIDI interfaces, modprobe.d/alsabase.conf & udev rules

Ingo ingo at miamiwave.com
Wed Jul 22 22:59:24 CEST 2015

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
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
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:
1) write a udev rule for every interface that might be in use with a common
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.


More information about the Pd-list mailing list