[LAU] Yamaha Motif XF as USB Soundcard

Aiyumi Moriya aiyumi.br at gmail.com
Sun Mar 16 16:50:18 UTC 2014


With my previous kernels (2.6.29 and 3.2.29), I tried plugging the
Motif XF to my PC via USB, but it wasn't recognized. After my latest
system upgrade to Slackware 14.1 and kernel 3.10.17, I decided to try
again, to see if something had changed. To my surprise, the MIDI ports
were recognized.

    $ aplaymidi -l
 Port    Client name                      Port name
 14:0    Midi Through                     Midi Through Port-0
 28:0    Virtual Raw MIDI 3-0             VirMIDI 3-0
 29:0    Virtual Raw MIDI 3-1             VirMIDI 3-1
 30:0    Virtual Raw MIDI 3-2             VirMIDI 3-2
 31:0    Virtual Raw MIDI 3-3             VirMIDI 3-3
 32:0    YAMAHA MOTIF XF8                 YAMAHA MOTIF XF8 MIDI 1
 32:1    YAMAHA MOTIF XF8                 YAMAHA MOTIF XF8 MIDI 2
 32:2    YAMAHA MOTIF XF8                 YAMAHA MOTIF XF8 MIDI 3
 32:3    YAMAHA MOTIF XF8                 YAMAHA MOTIF XF8 MIDI 4

MIDI recording and playback work fine, but now I want to know if it
can be made to work as a soundcard. I know that the Motif XF can work
as a USB audio interface on Windows and Mac. Here, it even happens to
be listed as one in "/proc/asound/cards"

    $ cat /proc/asound/cards
 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf7910000 irq 42
 1 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xf7080000 irq 17
 2 [Loopback       ]: Loopback - Loopback
                      Loopback 1
 3 [VirMIDI        ]: VirMIDI - VirMIDI
                      Virtual MIDI Card 1
 4 [XF8            ]: USB-Audio - YAMAHA MOTIF XF8
                      Yamaha YAMAHA MOTIF XF8 at usb-0000:00:1a.0-1.2,
full speed

but, problem is, it doesn't show on "aplay -l" nor "arecord -l" (nor
any other audio app for that matter).

    $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC662 rev3 Analog [ALC662 rev3 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 2: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7

Trying to force using it as soundcard (based on info from
"/proc/asound/cards") doesn't work either. For example:

    $ aplay -D plughw:XF8 file.wav
aplay: main:722: audio open error: No such file or directory

Same result with "plughw:4" instead of "plughw:XF8".

I read that problems like this could happen if the USB soundcard was
plugged into a USB 3.0 port. Indeed, I have USB 3 ports here, but I
tried plugging it into USB 2 ports and the result was the same.

More command outputs:

    $ lsusb
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 010: ID 046d:c315 Logitech, Inc. Classic Keyboard 200
Bus 003 Device 029: ID 046d:c077 Logitech, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 010: ID 0499:105c Yamaha Corp.

    # lsusb -v
[...]
Bus 001 Device 010: ID 0499:105c Yamaha Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x0499 Yamaha Corp.
  idProduct          0x105c
  bcdDevice            1.00
  iManufacturer           1 YAMAHA Corporation
  iProduct                2 YAMAHA MOTIF XF8
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           99
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol    255
      iInterface              0
      ** UNRECOGNIZED:  07 24 01 00 01 51 00
      ** UNRECOGNIZED:  06 24 02 02 01 00
      ** UNRECOGNIZED:  06 24 02 02 02 00
      ** UNRECOGNIZED:  06 24 02 02 03 00
      ** UNRECOGNIZED:  06 24 02 02 04 00
      ** UNRECOGNIZED:  09 24 03 02 01 01 01 01 00
      ** UNRECOGNIZED:  09 24 03 02 02 01 01 01 00
      ** UNRECOGNIZED:  09 24 03 02 03 01 01 01 00
      ** UNRECOGNIZED:  09 24 03 02 04 01 01 01 00
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
Device Status:     0x0001
  Self Powered


Any ideas? Anything else I can try?

Googling about using the Motif XF on Linux, I found this:

http://www.motifator.com/index.php/forum/viewthread/451381/

I also found this thread, but it's about MOX and not Motif XF:

http://www.motifator.com/index.php/forum/viewthread/458166/

which lead me to this patch:

http://www.mail-archive.com/alsa-user@lists.sourceforge.net/msg28116.html

The discussions are a bit old, but it seems that the patch was
included upstream and MOX is working. Maybe the problem with the XF is
similar?

-- 
____________________

Blog: http://aiyumi.warpstar.net/


More information about the Linux-audio-user mailing list