All of lore.kernel.org
 help / color / mirror / Atom feed
From: <xl600@teamspode.org>
To: alsa-devel@alsa-project.org
Subject: Re: Roland UM-ONE support
Date: Mon, 13 Jun 2011 15:21:47 -0500	[thread overview]
Message-ID: <3e82b73e7f9f511affe34efaa5772869@teamspode.org> (raw)
In-Reply-To: <1307959152.4085.5.camel@mattotaupa>

 I looked through the 1.0.24.2 code and couldn't find any mention of the 
 UM-ONE or it's product ID.  Not a surprise considering this came out 
 only a few days ago.

 The UM-1G:

 Bus 005 Device 003: ID 0582:0105 Roland Corp.
 Device Descriptor:
   bLength                18
   bDescriptorType         1
   bcdUSB               1.10
   bDeviceClass            0 (Defined at Interface level)
   bDeviceSubClass         0
   bDeviceProtocol         0
   bMaxPacketSize0        64
   idVendor           0x0582 Roland Corp.
   idProduct          0x0105
   bcdDevice            1.00
   iManufacturer           1 Roland
   iProduct                2 UM-1G
   iSerial                 0
   bNumConfigurations      1
   Configuration Descriptor:
     bLength                 9
     bDescriptorType         2
     wTotalLength          101
     bNumInterfaces          2
     bConfigurationValue     1
     iConfiguration          0
     bmAttributes         0x80
     MaxPower               60mA
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        0
       bAlternateSetting       0
       bNumEndpoints           0
       bInterfaceClass         1 Audio
       bInterfaceSubClass      1 Control Device
       bInterfaceProtocol      0
       iInterface              0
       AudioControl Interface Descriptor:
         bLength                 9
         bDescriptorType        36
         bDescriptorSubtype      1 (HEADER)
         bcdADC               1.00
         wTotalLength            9
         bInCollection           1
         baInterfaceNr( 0)       1
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        1
       bAlternateSetting       0
       bNumEndpoints           2
       bInterfaceClass         1 Audio
       bInterfaceSubClass      3 MIDI Streaming
       bInterfaceProtocol      0
       iInterface              0
       MIDIStreaming Interface Descriptor:
         bLength                 7
         bDescriptorType        36
         bDescriptorSubtype      1 (HEADER)
         bcdADC               1.00
         wTotalLength           65
       MIDIStreaming Interface Descriptor:
         bLength                 6
         bDescriptorType        36
         bDescriptorSubtype      2 (MIDI_IN_JACK)
         bJackType               1 Embedded
         bJackID                64
         iJack                   0
       MIDIStreaming Interface Descriptor:
         bLength                 6
         bDescriptorType        36
         bDescriptorSubtype      2 (MIDI_IN_JACK)
         bJackType               2 External
         bJackID               128
         iJack                   0
       MIDIStreaming Interface Descriptor:
         bLength                 9
         bDescriptorType        36
         bDescriptorSubtype      3 (MIDI_OUT_JACK)
         bJackType               1 Embedded
         bJackID                32
         bNrInputPins            1
         baSourceID( 0)        128
         BaSourcePin( 0)         1
         iJack                   0
       MIDIStreaming Interface Descriptor:
         bLength                 9
         bDescriptorType        36
         bDescriptorSubtype      3 (MIDI_OUT_JACK)
         bJackType               2 External
         bJackID                16
         bNrInputPins            1
         baSourceID( 0)         64
         BaSourcePin( 0)         1
         iJack                   0
       Endpoint Descriptor:
         bLength                 9
         bDescriptorType         5
         bEndpointAddress     0x01  EP 1 OUT
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               0
         bRefresh                0
         bSynchAddress           0
         MIDIStreaming Endpoint Descriptor:
           bLength                 5
           bDescriptorType        37
           bDescriptorSubtype      1 (GENERAL)
           bNumEmbMIDIJack         1
           baAssocJackID( 0)      64
       Endpoint Descriptor:
         bLength                 9
         bDescriptorType         5
         bEndpointAddress     0x81  EP 1 IN
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               0
         bRefresh                0
         bSynchAddress           0
         MIDIStreaming Endpoint Descriptor:
           bLength                 5
           bDescriptorType        37
           bDescriptorSubtype      1 (GENERAL)
           bNumEmbMIDIJack         1
           baAssocJackID( 0)      32

 That appears as a pretty normal MIDI interface.

 The UM-ONE however, does not seem to be following the same rules:

 Bus 005 Device 004: ID 0582:012a Roland Corp.
 Device Descriptor:
   bLength                18
   bDescriptorType         1
   bcdUSB               1.10
   bDeviceClass          255 Vendor Specific Class
   bDeviceSubClass         0
   bDeviceProtocol       255
   bMaxPacketSize0        64
   idVendor           0x0582 Roland Corp.
   idProduct          0x012a
   bcdDevice            1.00
   iManufacturer           1 Roland
   iProduct                2 UM-ONE
   iSerial                 0
   bNumConfigurations      1
   Configuration Descriptor:
     bLength                 9
     bDescriptorType         2
     wTotalLength           67
     bNumInterfaces          1
     bConfigurationValue     1
     iConfiguration          0
     bmAttributes         0x80
     MaxPower               70mA
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        0
       bAlternateSetting       0
       bNumEndpoints           2
       bInterfaceClass       255 Vendor Specific Class
       bInterfaceSubClass      3
       bInterfaceProtocol      0
       iInterface              0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x02  EP 2 OUT
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x81  EP 1 IN
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               0
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        0
       bAlternateSetting       1
       bNumEndpoints           2
       bInterfaceClass       255 Vendor Specific Class
       bInterfaceSubClass      3
       bInterfaceProtocol      0
       iInterface              0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x02  EP 2 OUT
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x81  EP 1 IN
         bmAttributes            3
           Transfer Type            Interrupt
           Synch Type               None
           Usage Type               Data
         wMaxPacketSize     0x0040  1x 64 bytes
         bInterval               1

 Obviously, alsa will not be able to detect this as a generic USB midi 
 interface.  Roland seems to have ignored the USB standard and set the 
 bInterfaceClass to a non standard value (Should be 0x01).  Is this doom 
 for alsa and the UM-ONE then?

>
> ALSA 1.0.17 is pretty old. I guess you should try the current version
> 1.0.24.2 or build it from source.
>
> If you still have problems you should read the debug information [2] 
> and
> provide the necessary information if you still encounter problems.
>
>
> Thanks,
>
> Paul
>
>
> [1] http://www.alsa-project.org/main/index.php/Main_Page
> [2] http://www.alsa-project.org/main/index.php/Help_To_Debug

  reply	other threads:[~2011-06-13 20:21 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-13  5:34 Roland UM-ONE support xl600
2011-06-13  9:59 ` Paul Menzel
2011-06-13 20:21   ` xl600 [this message]
2011-07-02 12:36     ` Damien Dejean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3e82b73e7f9f511affe34efaa5772869@teamspode.org \
    --to=xl600@teamspode.org \
    --cc=alsa-devel@alsa-project.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.