Mackie/Logic Control Support added to Ardour 2, Tranzport support improved

We’ve just merged code for Mackie MCU surfaces and new Tranzport code into the trunk for ardour2. It’s available on svn right now, and will be in beta-12.


The tranzport control surface driver now has increased modularity and slightly more advanced support for metering. There are detailed instructions.

Mackie & BCF2000

If you're a BCF2000 user and you're wondering if this is worthwhile, here's the answer: no clicking on GUI controls and doing the midi-map thing; bank switching for as many tracks as you have in your session; no futzing with custom presets (apologies to all those who have, with great success, engaged in said futzing).

To enable support for the Mackie and the BCF2000 in Logic Control emulation, add the following line to ardour.rc:

        <MIDI-port tag="mcu" device="/dev/snd/midiC2D0" type="alsa/raw" mode="duplex"/>

obviously your device= may be different. Alternatively you may have
success with an alsa/sequencer port, but I haven’t tried that lately. Note that the driver looks for a port with tag=“mcu”.

Of course you'll need to put your bcf into Logic Control emulation mode

The code was developed using a Behringer BCF2000 in Logic Control emulation. So it has a 7-channel mode for the bcf, where the right-hand strip acts as master channel, and there are some changes to the button mappings. To enable bcf mode, add the following line to ardour.rc, inside the <Config> tag:

        <Option name="mackie-emulation" value="bcf"/>

The Mackie MCU should work “out of the box”, except that:

  • certain buttons (the ones not on a BCF ;-) aren't yet implemented
  • the shuttle wheel has only preliminary support (because in bcf mode the master channel pot aspires to be a shuttle wheel)
  • The displays aren't yet implemented.

If you own an MCU, and are willing to recompile ardour from svn, we could really use your help with getting these implemented.

Other Known Issues

  • for non-mono tracks and busses, pan pots don't work
  • surface doesn't activate when a session is closed and another is loaded. Shut down and start up ardour to work around this.
  • busses lose their remote ids across a save and reload
  • shuttle wheel with transport rolling doesn't work properly

I have some problems using the tranzport device with ardour (svn revision 1564):

the scroll whell doesnt work properly in transport mode, but it also doesn’t work as I try to change the track volume with it. If I use the wheel to fast, it breakes my connection, so I have to go to the computer and reconnect by pressing the transceiver button a few times.
Is there anything I can do, to help you, to improve the tranzport control?

(Cubase and tranzport are working well, so I think, its not a hardware problem?)


I’ll copy this to the forum…

I’m using a BCF2000 and yesterday I was able to make it work with Ardour 2.0.3 in Logic Control Mode, following the instructions in the manual and in this post. I added the “MIDI-port tag=“mcu” device=”/dev/snd/midiC1D0" type=“alsa/raw” mode=“duplex”/" line in /home/me/.ardour2/ardour.rc and also, as root, in /etc/ardour2/ardour.rc and /etc/ardour2/ardour_system.rc. I added them at the top of the file but under the “Ardour” line, so I had four “MIDI-port…” lines, beginning with the new one. Then I added the “Option name=“mackie-emulation” value=“bcf”/” line inside the “Config” tag.

However, this morning the Mackie option in the Options->Control Surfaces Menu was not there. Quit Ardour and the line “MIDI-port tag=“mcu” device=“ardour” type=“alsa/sequencer” mode=“duplex”/” had disappeared in the /home/me/.ardour2/ardour.rc. Then I removed the “MIDI-port … device=”/dev/snd/midiC1D0…" line from /etc/ardour2/ardour.rc and ardour_system.rc, and added the missing line (device=“ardour”) to my /.ardour2/ardour.rc. This way the Mackie option was there again but it didn’t work. Quit ardour again to see that the “…device=”/dev/snd/midiC1D0"…" line was missing from the /home/me/.ardour2/ardour.rc .Paradoxically, it seems as though it’s one line or the other in the ardour.rc file but at the same time both of them are needed.

Maybe I’m missing something obvious but I can’t figure out what it is.
Can you help me please?

OK, it is working again. I don’t have a clue of what has happened. I have removed the line from the /etc/… files and added it again under tha tag “Ardour”. Now, my ardour.rc file displays (I’m omitting the “less than” and “more than” symbols):

?xml version=“1.0” encoding=“UTF-8”?
MIDI-port tag=“control” device=“ardour” type=“alsa/sequencer” mode=“duplex”/
MIDI-port tag=“mcu” device="/dev/snd/midiC1D0" type=“alsa/raw” mode=“duplex”/
MIDI-port tag=“seq” device=“ardour” type=“alsa/sequencer” mode=“duplex”/
Option name=“trace-midi-input” value=“0”/
Option name=“trace-midi-output” value=“0”/
Option name=“use-tranzport” value=“0”/
Option name=“mackie-emulation” value=“bcf”/
Option name=“minimum-disk-io-bytes” value=“262144”/

and the Mackie does appear in the Options–> Control Surfaces menu.

It is a nice noise when you hear the faders move by themselves.

The issue was with Rosegarden. I wanted to record from Rosegarden to Ardour. If I start Rosegarden before Ardour, the Mackie option doesn’t appear in the Options menu. Starting Ardour before Rosegarden solves the problem.

It seems to work for me in normal (BCF) mode, but not in Mackie:
“mcu” is present in qjackctl, I can connect It to BCF2000, but if I select “Mackie” in Ardour, I get
[ERROR]: Error instantiating MackieControlProtocol: The Mackie MCU driver will not use a port with device=ardour
[ERROR]: control protocol name “Mackie” could not be initialized

I put the mentioned lines in ardour.rc, but seems do not have any effect. The lines desapear when I quit…

Ardour 2.7.1 :: jackd 0.116.1 :: qjackctl 0.3.4 :: Edirol FA-101 :: FFADO 2.0 RC1 :: Ubuntu Studio 8.04