On Sunday, 8 October 2006 12:02, Lee Revell wrote: > On Sun, 2006-10-08 at 12:34 +0200, Pedro Lopez-Cabanillas wrote: > > The main difference, though, between the proprietary and the GPL > > firmware is > > the standards compliance, that you can see using the command "lsusb > > -v" with > > the device when using each one. > > How exactly is the M-Audio firmware not standards compliant? The USB MIDI Devices specification can be found in this document: http://www.usb.org/developers/devclass_docs/midi10.pdf It defines what a compliant device should provide: a MIDIStreaming interface, using USB bulk transfers for input and output endpoints; the interfaces and endpoints should be exposed using standard descriptors, which are defined in the document. The GPL firmware fulfills all these requirements. The MAudio firmware uses interrupt transfers for input endpoints, and a set of non standard descriptors, among other differences. You can list the descriptors for a device using the command "lsusb -v". > I thought that the snd-usb-audio driver only supported standards compliant > devices? The ALSA USB audio driver uses quirks for a large set of non standard devices, based on several identifiers, as the vendor and product ids. This is how it can handle the MAudio firmware. See: alsa-kernel/usb/usbquirks.h ("in a perfect world, this file would be empty") !!! Regards, Pedro