[LAU] BCF2000, qjackctl and ardour

Kevin Cosgrove kevinc at cosgroves.us
Tue Sep 11 02:05:43 UTC 2012


On 10 September 2012 at 18:50, "Len Ovens" <len at ovenwerks.net> wrote:
> On Mon, September 10, 2012 5:57 pm, Kevin Cosgrove wrote:
> > On 10 September 2012 at 15:14, Paul Davis <paul at linuxaudiosystems.com>
> > wrote:
> >
> >> > A few years back I was using my BCF2000 with ardour.  After upgrades
> >> > to my computer hardware and Linux distribution the combination no
> >> > longer works.
> >> >
> >> > The BCF shows up in /proc/asound fine.  I can send and receive data
> >> > with the BCF using amidi.
> >> >
> >> > The test of tracing communication between the BCF and ardour fails.
> >> > I think this is because the mcu (port?) of ardour isn't connected to
> >> > the BCF.  But, qjackctl won't let me connect those.  They don't
> >> > show up in the MIDI tab of qjackctl.  They only show up in the ALSA
> >> > tab of qjackctl.
> >> >
> >>
> >> run a2jmidid -e
> 
> > Right now MIDI Driver is set to "raw".  I'm not sure when or if
> > I set that, or whether it might be the default.
> 
> Try none. Raw takes the place of a2j

With "seq" or with "none", then not only can I see the MIDI (not
just ALSA) ports in qjackctl, but I can connect them.

Setting the MIDI-Driver to "none" and using "a2jmidid -e" I get this 
out of a2jmidid:

JACK MIDI <-> ALSA sequencer MIDI bridge, version 6 (a500771941cd42419a2418ee28259cde718a82bb) built on Wed Dec 31 16:00:00 1969
Copyright 2006,2007 Dmitry S. Baikov
Copyright 2007,2008,2009 Nedko Arnaudov

Bridge starting...
Using JACK server 'default'
Hardware ports will be exported.
Cannot lock down memory area (Cannot allocate memory)
Bridge started
Press ctrl-c to stop the bridge
port created: Midi Through [14] (capture): Midi Through Port-0
port created: Midi Through [14] (playback): Midi Through Port-0
port created: M Audio Delta 1010 [20] (capture): M Audio Delta 1010 MIDI
port created: M Audio Delta 1010 [20] (playback): M Audio Delta 1010 MIDI
port created: BCF2000 [24] (capture): BCF2000 MIDI 1
port created: BCF2000 [24] (playback): BCF2000 MIDI 1
port created: BCF2000 [24] (capture): BCF2000 MIDI 2
port created: BCF2000 [24] (playback): BCF2000 MIDI 2
port created: ardour [129] (capture): control
port created: ardour [129] (playback): control
port created: ardour [129] (capture): mcu
port created: ardour [129] (playback): mcu
port created: ardour [129] (capture): seq
port created: ardour [129] (playback): seq
port deleted: ardour [129] (capture): control
port deleted: ardour [129] (capture): mcu
port deleted: ardour [129] (capture): seq
port deleted: ardour [129] (playback): control
port deleted: ardour [129] (playback): mcu
port deleted: ardour [129] (playback): seq
port created: ardour [129] (capture): control
port created: ardour [129] (playback): control
port created: ardour [129] (capture): mcu
port created: ardour [129] (playback): mcu
port created: ardour [129] (capture): seq
port created: ardour [129] (playback): seq
port deleted: ardour [129] (capture): control
port deleted: ardour [129] (capture): mcu
port deleted: ardour [129] (capture): seq
port deleted: ardour [129] (playback): control
port deleted: ardour [129] (playback): mcu
port deleted: ardour [129] (playback): seq

That looks good to me.  Setting the MIDI-Driver to "seq" also has
no errors.

Next I set ardour's conrol surface to Mackie.  Ardour stalled for a 
bit, then produced the following text in the window where I started 
ardour:

MackiePort::connect_any already connected
MackiePort::connect_any already connected
MackiePort::connect_any already connected
mcu input: Channel mcu output: Channel 1 NoteOn NoteNum 32 Vel 01 NoteOn NoteNum 32 Vel 0

mcu input: Channel 1 NoteOn NoteNum 16 Vel 127
mcu output: Channel 1 NoteOn NoteNum 16 Vel 127
mcu input: Channel 1 Pitch Bend 7887
mcu output: Channel 1 Pitch Bend 7887
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 0 6b 69 63 6b 20 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 38 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 48 Value 70
mcu output: Channel 1 NoteOn NoteNum 24 Vel 0
mcu output: Channel 1 NoteOn NoteNum 33 Vel 0
mcu output: Channel 1 NoteOn NoteNum 17 Vel 127
mcu output: Channel 2 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 7 73 6e 61 72 65 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 3f 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 49 Value 70
mcu output: Channel 1 NoteOn NoteNum 25 Vel 0
mcu output: Channel 1 NoteOn NoteNum 34 Vel 0
mcu output: Channel 1 NoteOn NoteNum 18 Vel 127
mcu output: Channel 3 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 e 74 6f 6d 73 4c 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 46 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 50 Value 70
mcu output: Channel 1 NoteOn NoteNum 26 Vel 0
mcu output: Channel 1 NoteOn NoteNum 35 Vel 0
mcu output: Channel 1 NoteOn NoteNum 19 Vel 127
mcu output: Channel 4 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 15 74 6f 6d 73 43 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 4d 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 51 Value 70
mcu output: Channel 1 NoteOn NoteNum 27 Vel 0
mcu output: Channel 1 NoteOn NoteNum 36 Vel 0
mcu output: Channel 1 NoteOn NoteNum 20 Vel 127
mcu output: Channel 5 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 1c 74 6f 6d 73 52 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 54 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 52 Value 70
mcu output: Channel 1 NoteOn NoteNum 28 Vel 0
mcu output: Channel 1 NoteOn NoteNum 37 Vel 0
mcu output: Channel 1 NoteOn NoteNum 21 Vel 127
mcu output: Channel 6 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 23 68 69 68 61 74 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 5b 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 53 Value 70
mcu output: Channel 1 NoteOn NoteNum 29 Vel 0
mcu output: Channel 1 NoteOn NoteNum 38 Vel 0
mcu output: Channel 1 NoteOn NoteNum 22 Vel 127
mcu output: Channel 7 Pitch Bend 7893
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 2a 6f 68 4c 20 20 20 20 f7 ]
mcu output: System Exclusive (15) = [ f0 0 0 66 10 12 62 20 20 20 20 20 20 20 f7 ]
mcu output: Channel 1 Controller 54 Value 70
mcu output: Channel 1 NoteOn NoteNum 30 Vel 0
mcu output: Channel 1 Controller 74 Value 82
mcu output: Channel 1 Controller 75 Value 65
mcu output: Channel 1 NoteOn NoteNum 23 Vel 0
mcu output: Channel 8 Pitch Bend 12349
mcu output: Channel 1 Controller 55 Value 0
mcu output: Channel 1 NoteOn NoteNum 31 Vel 0
mcu output: Channel 1 NoteOn NoteNum 94 Vel 0
mcu output: Channel 1 NoteOn NoteNum 93 Vel 127
mcu output: Channel 1 NoteOn NoteNum 70 Vel 0
mcu output: Channel 1 NoteOn NoteNum 31 Vel 0
mcu output: Channel 1 NoteOn NoteNum 114 Vel 127
mcu output: Channel 1 NoteOn NoteNum 113 Vel 0
mcu input: Channel 1 NoteOn NoteNum 110 Vel 127
mcu input: Channel 7 Pitch Bend 7744
mcu input: Channel 7 Pitch Bend 7600
mcu input: Channel 7 Pitch Bend 7536
mcu input: Channel 7 Pitch Bend 7456
mcu input: Channel 7 Pitch Bend 7360
mcu input: Channel 7 Pitch Bend 7280
mcu input: Channel 7 Pitch Bend 7216
mcu input: Channel 7 Pitch Bend 7088
mcu input: Channel 7 Pitch Bend 7040
mcu input: Channel 7 Pitch Bend 6976
mcu input: Channel 7 Pitch Bend 6864
mcu input: Channel 7 Pitch Bend 6736
mcu input: Channel 7 Pitch Bend 6512
mcu input: Channel 7 Pitch Bend 6464
mcu input: Channel 7 Pitch Bend 6352
mcu input: Channel 7 Pitch Bend 6336
Segmentation fault

Well, at least they're communicating.  Does this ring a bell with 
someone?  How to proceed from here?

Thanks again.....

--
Kevin




More information about the Linux-audio-user mailing list