2007-08-10 10:17:45

by David Griffith

[permalink] [raw]
Subject: MOTU Fastlane USB MIDI interface


Does anyone here have or can borrow a MOTU Fastlane USB MIDI interface?
I'm having a nasty time trying to nail down what's going wrong. It seems
that for kernels 2.6.17 and earlier, MIDI works fine through this
interface. After that, it doesn't. Most bizarrely the Dynebolic distro,
which is designed specifically for music, doesn't work with this
interface. This leads me to believe that something changed with 2.6.18
that the MOTU Fastlane didn't like, but doesn't bother other USB MIDI
interfaces.

Here are some notes from my bugtracking:

Doesn't Work:
===============
Dynebolic (kernel 2.6.18, ALSA 1.0.12rc1)
Ubuntu 7.04 (feisty faun) kernel 2.6.20-16
Fedora 7 (kernel 2.6.21)

Works:
======
Gentoo 2006.1 i686 Live CD (kernel 2.6.17)
If the interface is attached at bootup, one gets "cannot determine
device number: Inappropriate ioctl for device". After unplugging, then
replugging a couple times, midi works ok.
Ubuntu 6.10 (edgy eft) (kernel 2.6.17, ALSA 10.12rc1)
Knoppix 4.0


--
David Griffith
[email protected]


2007-08-16 08:15:58

by Clemens Ladisch

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

David Griffith wrote:
> Does anyone here have or can borrow a MOTU Fastlane USB MIDI interface?
> I'm having a nasty time trying to nail down what's going wrong. It seems
> that for kernels 2.6.17 and earlier, MIDI works fine through this
> interface. After that, it doesn't.

What do you mean with "doesn't work"? Does the kernel detect it?
Does it appear
in /proc/asound/cards? What happens if you try to use it?


Regards,
Clemens

2007-08-16 10:16:31

by David Griffith

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

On Thu, 16 Aug 2007, Clemens Ladisch wrote:

> David Griffith wrote:
> > Does anyone here have or can borrow a MOTU Fastlane USB MIDI
> > interface? I'm having a nasty time trying to nail down what's going
> > wrong. It seems that for kernels 2.6.17 and earlier, MIDI works fine
> > through this interface. After that, it doesn't.
>
> What do you mean with "doesn't work"? Does the kernel detect it? Does
> it appear in /proc/asound/cards? What happens if you try to use it?

$ cat /proc/asound/cards
0 [AudioPCI ]: ENS1371 - Ensoniq AudioPCI
Ensoniq AudioPCI ENS1371 at 0xec00, irq 18
1 [Fastlane ]: USB-Audio - Fastlane
MOTU Fastlane at usb-0000:00:10.2-1, full speed

$ amidi -l
IO hw:0,0 ES1371
IO hw:1,0,0 Fastlane MIDI A
IO hw:1,0,1 Fastlane MIDI B

$ amidi -d -p hw:1,0,0

At this point I should see two-digit hex numbers in groups of five or six
whenever a key or other control on the midi keyboard is operated.
Nothing happens though. Oddly enough, nothing happens when I try midi
through the soundcard as well. Checking further, I've never been able to
get midi to work with kernels 2.6.18 and later.


--
David Griffith
[email protected]

A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?

2007-08-16 15:48:32

by Clemens Ladisch

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

David Griffith wrote:
> Checking further, I've never been able to
> get midi to work with kernels 2.6.18 and later.

Please try "amidi -d -p virtual" and playing a .mid file to this port with
aplaymidi.


Regards,
Clemens

2007-08-16 21:18:48

by David Griffith

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

On Thu, 16 Aug 2007, Clemens Ladisch wrote:

> David Griffith wrote:
> > Checking further, I've never been able to
> > get midi to work with kernels 2.6.18 and later.
>
> Please try "amidi -d -p virtual" and playing a .mid file to this port with
> aplaymidi.

$ aplaymidi -p "virtual" castle2.mid
Invalid port virtual - No such file or directory

amidi reports nothing.

--
David Griffith
[email protected]

2007-08-17 06:17:43

by Clemens Ladisch

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

David Griffith wrote:
> On Thu, 16 Aug 2007, Clemens Ladisch wrote:
> > Please try "amidi -d -p virtual" and playing a .mid file to this port with
> > aplaymidi.
>
> $ aplaymidi -p "virtual" castle2.mid
> Invalid port virtual - No such file or directory

Sorry, the name of the correspondig sequencer port is different,
probably "128:0"; see the output of "aplaymidi -l".


Regards,
Clemens

2007-08-20 00:24:18

by David Griffith

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

On Fri, 17 Aug 2007, Clemens Ladisch wrote:

> David Griffith wrote:
> > On Thu, 16 Aug 2007, Clemens Ladisch wrote:
> > > Please try "amidi -d -p virtual" and playing a .mid file to this port with
> > > aplaymidi.
> >
> > $ aplaymidi -p "virtual" castle2.mid
> > Invalid port virtual - No such file or directory
>
> Sorry, the name of the correspondig sequencer port is different,
> probably "128:0"; see the output of "aplaymidi -l".

$ aplaymidi -l
Port Client name Port name
14:0 Midi Through Midi Through Port-0
16:0 Ensoniq AudioPCI ES1371
20:0 Fastlane Fastlane MIDI A
20:1 Fastlane Fastlane MIDI B

$ aplaymidi -p 20:0 casablan.mid

Nothing is written to the Fastlane. No lights. Nothing.

--
David Griffith
[email protected]

2007-08-20 06:37:33

by Clemens Ladisch

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

David Griffith wrote:
> On Fri, 17 Aug 2007, Clemens Ladisch wrote:
> > David Griffith wrote:
> > > On Thu, 16 Aug 2007, Clemens Ladisch wrote:
> > > > Please try "amidi -d -p virtual" and playing a .mid file to this port with
> > > > aplaymidi.
> > >
> > > $ aplaymidi -p "virtual" castle2.mid
> > > Invalid port virtual - No such file or directory
> >
> > Sorry, the name of the correspondig sequencer port is different,
> > probably "128:0"; see the output of "aplaymidi -l".
>
> $ aplaymidi -l
> Port Client name Port name
> 14:0 Midi Through Midi Through Port-0
> 16:0 Ensoniq AudioPCI ES1371
> 20:0 Fastlane Fastlane MIDI A
> 20:1 Fastlane Fastlane MIDI B
>
> $ aplaymidi -p 20:0 casablan.mid
>
> Nothing is written to the Fastlane. No lights. Nothing.

Please run "amidi -d -p virtual" and then play to the virtual port
created by amidi, to see if MIDI playback works even without hardware.


Regards,
Clemens

2007-08-20 07:45:30

by David Griffith

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

On Mon, 20 Aug 2007, Clemens Ladisch wrote:

> David Griffith wrote:
> > On Fri, 17 Aug 2007, Clemens Ladisch wrote:
> > > David Griffith wrote:
> > > > On Thu, 16 Aug 2007, Clemens Ladisch wrote:
> > > > > Please try "amidi -d -p virtual" and playing a .mid file to this port with
> > > > > aplaymidi.
> > > >
> > > > $ aplaymidi -p "virtual" castle2.mid
> > > > Invalid port virtual - No such file or directory
> > >
> > > Sorry, the name of the correspondig sequencer port is different,
> > > probably "128:0"; see the output of "aplaymidi -l".
> >
> > $ aplaymidi -l
> > Port Client name Port name
> > 14:0 Midi Through Midi Through Port-0
> > 16:0 Ensoniq AudioPCI ES1371
> > 20:0 Fastlane Fastlane MIDI A
> > 20:1 Fastlane Fastlane MIDI B
> >
> > $ aplaymidi -p 20:0 casablan.mid
> >
> > Nothing is written to the Fastlane. No lights. Nothing.
>
> Please run "amidi -d -p virtual" and then play to the virtual port
> created by amidi, to see if MIDI playback works even without hardware.

$ amidi -d -p virtual

$ aplaymidi -l
Port Client name Port name
14:0 Midi Through Midi Through Port-0
16:0 Ensoniq AudioPCI ES1371
128:0 Client-128 Virtual RawMIDI

$ aplaymidi -p 128:0 casablan.mid

At this point, MIDI data flew by in the xterm in which amidi was running.


--
David Griffith
[email protected]

2007-08-20 08:12:10

by David Griffith

[permalink] [raw]
Subject: MIDI-related oops (was MOTU Fastlane USB MIDI interface)

On Mon, 20 Aug 2007, David Griffith wrote:

> On Mon, 20 Aug 2007, Clemens Ladisch wrote:
[snip]
> $ aplaymidi -p 128:0 casablan.mid
>
> At this point, MIDI data flew by in the xterm in which amidi was running.

After I did what Clemens suggested, I started MIOS Studio
(http://www.midibox.org/mios_studio/) to see if I could jog something
started. I patched MIOS Studio's internal in port to all available out
ports including the virtual one previously mentioned. A couple minutes
later, I pulled out the MIDI interface. Then I quit MIOS Studio and
immediately got an Oops. This was still when "amidi -d -p virtual" was
running.


Aug 20 00:45:34 zaphod kernel: [694784.397469] BUG: unable to handle
kernel NULL pointer dereference at virtual address 00000128
Aug 20 00:45:34 zaphod kernel: [694784.397484] printing eip:
Aug 20 00:45:34 zaphod kernel: [694784.397487] e0883480
Aug 20 00:45:34 zaphod kernel: [694784.397490] *pde = 1e91f067
Aug 20 00:45:34 zaphod kernel: [694784.397496] Oops: 0000 [#1]
Aug 20 00:45:34 zaphod kernel: [694784.397498] SMP
Aug 20 00:45:34 zaphod kernel: [694784.397503] Modules linked in:
nls_iso8859_1 nls_cp437 vfat fat sg sd_mod usb_storage libusual
snd_rtctimer snd_usb_audio snd_usb_lib snd_hwdep isofs udf binfmt_misc
rfcomm l2cap bluetooth ppdev cpufreq_stats cpufreq_conservative
cpufreq_powersave cpufreq_ondemand freq_table cpufreq_userspace tc1100_wmi
dev_acpi sony_acpi pcc_acpi button battery sbs container ac i2c_ec
asus_acpi video backlight dock af_packet parport_pc lp parport fuse
snd_ens1371 gameport snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss
snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi
snd_seq_midi_event snd_seq snd_timer snd_seq_device psmouse via_ircc irda
crc_ccitt i2c_viapro serio_raw snd soundc ore snd_page_alloc pcspkr
via_agp agpgart i2c_core shpchp pci_hotplug tsdev evdev ipv6 ext3 jbd
mbcache ide_cd cdrom ide_disk ata_generic libata scsi_mod usbhid hid
via82cxxx floppy via_rhine mii generic ehci_hcd uhci_hcd usbcore thermal
processor fan fbcon tileblit font bitblit softcursor vesafb capabili
Aug 20 00:45:34 zaphod kernel: y commoncap
Aug 20 00:45:34 zaphod kernel: [694784.397606] CPU: 0
Aug 20 00:45:34 zaphod kernel: [694784.397608] EIP: 0060:[<e0883480>]
Not tainted VLI
Aug 20 00:45:34 zaphod kernel: [694784.397610] EFLAGS: 00010246
(2.6.20-16-generic #2)
Aug 20 00:45:34 zaphod kernel: [694784.397664] EIP is at
hcd_buffer_free+0x20/0xa0 [usbcore]
Aug 20 00:45:34 zaphod kernel: [694784.397669] eax: 00000000 ebx: 00000004 ecx: 1fb8e020 edx: 00000000
Aug 20 00:45:34 zaphod kernel: [694784.397675] esi: dfb8e020 edi: bf94df18 ebp: dc6d9d40 esp: dd865d6c
Aug 20 00:45:34 zaphod kernel: [694784.397679] ds: 007b es: 007b ss: 0068
Aug 20 00:45:34 zaphod kernel: [694784.397684] Process java (pid: 4436, ti=dd864000 task=c1f74050 task.ti=dd864000)
Aug 20 00:45:34 zaphod kernel: [694784.397688] Stack: 1fb8e020 d0ebde00 00000000 e0ca4c2c 1fb8e020 dc6d9d70 dc6d9d74 e0ca4cc8
Aug 20 00:45:34 zaphod kernel: [694784.397699] cdb5948c cdb593e0 00001fff c6a95c00 e0a43538 d42626a0 c6a95d40 e0a2f96a
Aug 20 00:45:34 zaphod kernel: [694784.397709] dd865dd0 00001000 e0a2fa0b c6a95c00 c6a95c00 de43f4e0 00000000 e0a2b680
Aug 20 00:45:35 zaphod kernel: [694784.397718] Call Trace:
Aug 20 00:45:35 zaphod kernel: [694784.397728] [<e0ca4c2c>] snd_usbmidi_out_endpoint_delete+0x2c/0x50 [snd_usb_lib]
Aug 20 00:45:35 zaphod kernel: [694784.397746] [<e0ca4cc8>] snd_usbmidi_free+0x28/0x60 [snd_usb_lib]
Aug 20 00:45:35 zaphod kernel: [694784.397760] [<e0a43538>] snd_rawmidi_free+0x68/0x80 [snd_rawmidi]
Aug 20 00:45:35 zaphod kernel: [694784.397781] [<e0a2f96a>] snd_device_free+0x4a/0xa0 [snd]
Aug 20 00:45:35 zaphod kernel: [694784.397815] [<e0a2fa0b>] snd_device_free_all+0x4b/0x60 [snd]
Aug 20 00:45:35 zaphod kernel: [694784.397838] [<e0a2b680>] snd_card_do_free+0x30/0x100 [snd]
Aug 20 00:45:35 zaphod kernel: [694784.397856] [<e0a2c0af>] snd_card_file_remove+0xdf/0x120 [snd]
Aug 20 00:45:35 zaphod kernel: [694784.397879] [<e0a446ff>] snd_rawmidi_release+0x4f/0x70 [snd_rawmidi]
Aug 20 00:45:35 zaphod kernel: [694784.397898] [<e0a2be92>] snd_disconnect_release+0x72/0xa0 [snd]
Aug 20 00:45:35 zaphod kernel: [694784.397922] [__fput+167/400] __fput+0xa7/0x190
Aug 20 00:45:35 zaphod kernel: [694784.397945] [filp_close+71/128] filp_close+0x47/0x80
Aug 20 00:45:35 zaphod kernel: [694784.397963] [put_files_struct+143/176] put_files_struct+0x8f/0xb0
Aug 20 00:45:35 zaphod kernel: [694784.397980] [do_exit+308/2048] do_exit+0x134/0x800
Aug 20 00:45:35 zaphod kernel: [694784.397988] [schedule_timeout+120/208] schedule_timeout+0x78/0xd0
Aug 20 00:45:35 zaphod kernel: [694784.397997] [get_futex_key+64/272] get_futex_key+0x40/0x110
Aug 20 00:45:35 zaphod kernel: [694784.398007] [unqueue_me+80/160] unqueue_me+0x50/0xa0
Aug 20 00:45:35 zaphod kernel: [694784.398024] [do_group_exit+38/128] do_group_exit+0x26/0x80
Aug 20 00:45:35 zaphod kernel: [694784.398034] [get_signal_to_deliver+681/1056] get_signal_to_deliver+0x2a9/0x420
Aug 20 00:45:35 zaphod kernel: [694784.398053] [do_notify_resume+147/1824] do_notify_resume+0x93/0x720
Aug 20 00:45:35 zaphod kernel: [694784.398086] [default_wake_function+0/16] default_wake_function+0x0/0x10
Aug 20 00:45:35 zaphod kernel: [694784.398111] [sys_futex+145/320] sys_futex+0x91/0x140
Aug 20 00:45:35 zaphod kernel: [694784.398132] [work_notifysig+19/24] work_notifysig+0x13/0x18
Aug 20 00:45:35 zaphod kernel: [694784.398160] =======================
Aug 20 00:45:35 zaphod kernel: [694784.398163] Code: 89 e0 bd ed ff ff ff
eb a1 90 90 83 ec 0c 89 74 24 04 89 ce 8b 4c 24 10 85 f6 89 1c 24 89 d3 89
7c 24 08 89 c7 74 5e 8b 00 31 d2 <8b> 80 28 01 00 00 85 c0 74 5f 8d b6 00
00 00 00 3b 1c 95 ac 9c
Aug 20 00:45:35 zaphod kernel: [694784.398201] EIP: [<e0883480>] hcd_buffer_free+0x20/0xa0 [usbcore] SS:ESP 0068:dd865d6c
Aug 20 00:45:35 zaphod kernel: [694784.398228] <1>Fixing recursive fault
but reboot is needed!


--
David Griffith
[email protected]

A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?

2007-08-24 15:03:04

by Clemens Ladisch

[permalink] [raw]
Subject: Re: MOTU Fastlane USB MIDI interface

David Griffith wrote:
> On Mon, 20 Aug 2007, Clemens Ladisch wrote:
>> David Griffith wrote:
>> > $ aplaymidi -p 20:0 casablan.mid
>> >
>> > Nothing is written to the Fastlane. No lights. Nothing.
>>
>> Please run "amidi -d -p virtual" and then play to the virtual port
>> created by amidi, to see if MIDI playback works even without hardware.
>
> $ aplaymidi -p 128:0 casablan.mid
>
> At this point, MIDI data flew by in the xterm in which amidi was running.

Hmmm, it's either the driver or device.

Please uncomment the "#define DUMP_PACKETS" in line 58 of sound/usb/usbmidi.c
and recompile the driver. All MIDI data should then be visible in the system
log.


Regards,
Clemens