[alsa-devel] Boss GT-001 MIDI

Keith A. Milner maillist at superlative.org
Sat Oct 10 15:16:56 CEST 2015


Forking this thread to focus on MIDI issues

This device has a single USB MIDI Interface on Interface 3, with 2 alternate 
settings, each with 2 endpoints as follows:

Interface 3
 - Setting 0
    - Endpoint 3 OUT Bulk Data
    - Endpoint 4 IN Bulk Data
 - Setting 1
    - Endpoint 3 OUT Interrupt data
    - Endpoint 5 IN Interrupt data

My evaluation is that this is a new style of MIDI Interface from others 
previously encountered. Comparing, for instance, with the Roland V Synth GT 
which seems to have the following Interface layout:

Interface 2
 - Setting 0
    - Endpoint 3 OUT Bulk Data
    - Endpoint 4 IN Bulk Data
 - Setting 1
    - Endpoint 3 OUT Bulk data
    - Endpoint 4 IN Interrupt data

The major difference is that the GT.001 has Interrupt Transfer modes for both 
IN and OUT.

Looking at snd_usbmidi_switch_roland_altsetting this sets the alternate 
setting so that the interrupt input endpoint is used. This routine looks for a 
pair of endpoints where the OUT endpoint is Bulk transfer, and the input is 
Interrupt transfer, and sets the mode accordingly. I've modified this to 
support Interrupt Xfer in both directions, and this seems to work (although my 
changes aren't read for publication yet as they are rather experimental and 
messy, and probably break the existing detection.

I'll try to fix this code and submit a patch.

Cheers,

Keith


More information about the Alsa-devel mailing list