do not pass a non-zero offset to plugins AFTER the first call to connect_and_run...
[ardour.git] / manual / xml / mackie.xml
1 <?xml version="1.0" standalone="no"?>
2
3 <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4
5 ]>
6
7 <section id="sn-mackie">
8   <title>Using the Mackie driver for MCU and BCF2000</title>
9   <para>
10     For Ardour 2, this will walk you through the process of configuring and
11     using Mackie MCU, or a BCF2000 in
12     <ulink url="http://www.behringerdownload.de/BCF2000/BCF2000_Emulation_modes.pdf">Logic
13     Control emulation mode</ulink>.
14   </para>
15
16   <section id="mackie-connecting-device">
17     <title>Connecting Device</title>
18     <para>
19       Make sure your surface is connected and you know which
20       <filename>/dev/snd/midi</filename> entry belongs to the device. You
21       can do this by saying <command>cat /proc/asound/cards</command> which
22       should result in something like
23 <screen>
24  0 [EWS88MT        ]: ICE1712 - TerraTec EWS88MT
25                       TerraTec EWS88MT at 0x1140, irq 21
26  1 [VirMIDI        ]: VirMIDI - VirMIDI
27                       Virtual MIDI Card 1
28  2 [BCF2000        ]: USB-Audio - BCF2000
29                       BEHRINGER BCF2000 at usb-0000:00:1a.1-1, full speed
30 </screen>
31       in this case the BCF2000 is on <filename>/dev/snd/midiC2D0</filename>.
32     </para>
33
34     <para>
35       While ardour is not running, edit your
36       <filename>~/.ardour2/ardour.rc</filename> (and for now
37       <filename>etc/ardour2/ardour_system.rc</filename> and
38       <filename>etc/ardour2/ardour.rc</filename>) and add at the top, with
39       the other ports:
40 <programlisting>
41 &lt;MIDI-port tag="mcu" device="/dev/snd/midiC2D0" type="alsa/raw" mode="duplex"/&gt;
42 </programlisting>
43     </para>
44
45     <para>
46       Optionally, there is a way to get udev to assign an attached BCF2000 a
47       consistent name under /dev/ however, by adding the following line to
48       the udev rules. On some systems, these reside in
49       <filename>/etc/udev/rules.d/</filename>:
50 <programlisting>
51 KERNEL=="midiC[0-9]D0", ATTRS{product}=="BCF2000", SYMLINK+="midi-bcf2000"
52 </programlisting>
53       This will cause udev to create a
54       <filename>/dev/midi-bcf2000</filename> for any BCF attached to the
55       system, regardless of which alsa card number it gets assigned.
56       Obviously you'd use <filename>/dev/midi-bcf2000</filename> instead of
57       <filename>/dev/snd/midiC2D0</filename>.
58     </para>
59
60     <para>
61       See also
62       <ulink url="http://reactivated.net/writing_udev_rules.html">Writing
63       udev rules</ulink>
64     </para>
65   </section>
66
67   <section id="sn-mackie-extenders">
68     <title>Extenders</title>
69     <para>
70       The Logic protocol allows the use of
71       <ulink url="http://www.mackie.com/products/mcupro/index.html">extenders</ulink>
72       or
73       <ulink url="http://www.mackie.com/home/showimage.html?u=/products/mcupro/images/MCU-ExtPro-Top.jpg">Extender
74       image</ulink>. Extenders are essentially banks of 8 faders without the
75       jog wheel and buttons. Once the code is fixed, it will be possible to
76       use either the mackie extenders, or BCF2000 units as extenders.
77     </para>
78 <!--
79                 <para>
80       To do this, add the following lines to
81       <filename>~/.ardour2/ardour.rc</filename>
82 <programlisting>
83 &lt;MIDI-port tag="mcu_xt_1" device="/dev/snd/midiC3D0" type="alsa/raw" mode="duplex"/&gt;
84 &lt;MIDI-port tag="mcu_xt_2" device="/dev/snd/midiC4D0" type="alsa/raw" mode="duplex"/&gt;
85 </programlisting>
86       and so on, one for each of your extenders, up to a maximum of 9
87       extenders.
88     </para>
89 -->
90   </section>
91
92   <section id="mackie-mackie-mode">
93     <title>Mackie Mode</title>
94     <para>
95       If you have a Mackie MCU make sure that you have the following under
96       the &lt;Config&gt; tag in <filename>~/.ardour2/ardour.rc</filename>:
97 <programlisting>
98 &lt;Option name="mackie-emulation" value="mcu"/&gt;
99 </programlisting>
100     </para>
101
102     <note>
103       <para>
104         The Mackie must be in Logic Control mode, otherwise the LCD display
105         does not work. To put the unit in Logic Control mode: press and hold
106         channel 1+2 SELECT while turning the unit on and through
107         calibration; and then press the VPOT under whichever mode you wish
108         to use.
109       </para>
110     </note>
111
112     <para>
113       In this mode, the button mappings from
114       <ulink url="http://www.mackie.com/products/mcu/pdf/MCU_MCU_Overlay.pdf">MCU
115       Overlay</ulink> are used. Note that many of the buttons have not yet
116       been implemented, mainly because I have no idea what they should do.
117       Suggestions welcome.
118     </para>
119   </section>
120
121   <section id="mackie-bcf-mode">
122     <title>BCF mode</title>
123     <para>
124       If you have a BCF2000 you must add under the &lt;Config&gt; tag in
125       <filename>~/.ardour2/ardour.rc</filename>:
126 <programlisting>
127 &lt;Option name="mackie-emulation" value="bcf"/&gt;
128 </programlisting>
129     </para>
130
131     <para>
132       The following are different in BCF mode:
133       <itemizedlist>
134         <listitem>
135           <para>
136             7 of the 8 sliders are used as route sliders, the remaining
137             right-hand one is used for the master slider
138           </para>
139         </listitem>
140
141         <listitem>
142           <para>
143             certain buttons have been remapped from the default Behringer
144             settings, which required either both hands, or one-handed
145             contortions to do simple things like rec-enable or mute a track.
146           </para>
147         </listitem>
148
149         <listitem>
150           <para>
151             The display shows the number of the first switched-in bank or Ar
152             if the first bank is in place.
153           </para>
154         </listitem>
155       </itemizedlist>
156     </para>
157
158     <para>
159       BCF mode bindings
160       <table id="tbl-mackie-bcf-key-bindings">
161         <title>BCF mode bindings</title>
162         <tgroup cols = "4">
163           <colspec colnum="1" colname="Strip" colwidth="1"/>
164           <colspec colnum="2" colname="Master Strip" colwidth= "1"/>
165           <colspec colnum="3" colname="Buttons 1" colwidth="1"/>
166           <colspec colnum="4" colname="Buttons 2" colwidth= "1"/>
167           <thead>
168             <row>
169               <entry>
170                 Strips 1-7
171               </entry>
172
173               <entry>
174                 Master Strip
175               </entry>
176
177               <entry namest="Buttons 1" nameend="Buttons 2">
178                 Buttons
179               </entry>
180             </row>
181           </thead>
182           <tbody>
183             <row>
184               <entry>
185                 <para>
186                   vpot: pan
187                 </para>
188
189                 <para>
190                   button: solo
191                 </para>
192               </entry>
193
194               <entry>
195                 <para>
196                   vpot: jog wheel
197                 </para>
198
199                 <para>
200                   button: all solo
201                 </para>
202               </entry>
203
204               <entry namest="Buttons 1" nameend="Buttons 2">
205                 LCD display
206               </entry>
207             </row>
208
209             <row>
210               <entry>
211                 mute
212               </entry>
213
214               <entry>
215                 mute
216               </entry>
217
218               <entry>
219                 shift 1
220               </entry>
221
222               <entry>
223                 <para>
224                   loop
225                 </para>
226
227                 <para>
228                   shift 1: marker
229                 </para>
230
231                 <para>
232                   shift 2: punch in
233                 </para>
234               </entry>
235             </row>
236
237             <row>
238               <entry>
239                 rec
240               </entry>
241
242               <entry>
243                 session rec
244               </entry>
245
246               <entry>
247                 shift 2
248               </entry>
249
250               <entry>
251                 <para>
252                   click
253                 </para>
254
255                 <para>
256                   shift 1: jog wheel scrub/shuttle/scroll
257                 </para>
258
259                 <para>
260                   shift 2: punch out
261                 </para>
262               </entry>
263             </row>
264
265             <row>
266               <entry morerows="4" valign="middle">
267                 slider
268               </entry>
269
270               <entry morerows="4" valign="middle">
271                 slider
272               </entry>
273
274               <entry>
275                 rewind
276               </entry>
277
278               <entry>
279                 <para>
280                   ffwd
281                 </para>
282
283                 <para>
284                   shift 1: jog wheel zoom
285                 </para>
286               </entry>
287             </row>
288
289             <row>
290               <entry>
291                 home
292               </entry>
293
294               <entry>
295                 <para>
296                   end
297                 </para>
298
299                 <para>
300                   shift 2: save
301                 </para>
302               </entry>
303             </row>
304
305             <row>
306               <entry>
307                 <para>
308                   previous bank
309                 </para>
310
311                 <para>
312                   shift 1: previous route
313                 </para>
314               </entry>
315
316               <entry>
317                 <para>
318                   next bank
319                 </para>
320
321                 <para>
322                   shift 1: next route
323                 </para>
324               </entry>
325             </row>
326
327             <row>
328               <entry>
329                 frm_prev (previous marker)
330               </entry>
331
332               <entry>
333                 frm_next (next marker)
334               </entry>
335             </row>
336
337             <row>
338               <entry>
339                 <para>
340                   stop
341                 </para>
342
343                 <para>
344                   shift 1: remove last capture
345                 </para>
346               </entry>
347
348               <entry>
349                 <para>
350                   play
351                 </para>
352               </entry>
353             </row>
354           </tbody>
355         </tgroup>
356       </table>
357     </para>
358   </section>
359
360   <section id="mackie-connecting-to-ardour">
361     <title>Connecting to Ardour</title>
362     <note>
363       <para>
364         Currently (in 2.0.x and 2.0-ongoing), support for the mackie using
365         alsa/sequencer ports is not working properly. That is, some MIDI
366         messages get through, but some don't. So it's not reliable enough
367         for use. Until that's fixed, you're better off using alsa/raw as
368         documented above.
369       </para>
370     </note>
371
372     <para>
373       Start up ardour. Go to Options/Control Surfaces. You should see
374       "Mackie" as one of the menu items. Turn it on. The faders on the
375       surface should jump to the correct positions. The mackie should work
376       as normal, except that any buttons not on the BCF won't work.
377     </para>
378   </section>
379
380   <section id="mackie-usage">
381     <title>Usage</title>
382     <para>
383       Strips (faders,pots,rec-enable,mute,solo) etc are fairly obvious.
384     </para>
385
386     <para>
387       The Jog wheel has various modes:
388       <itemizedlist>
389         <listitem>
390           <para>
391             Scroll mode. Part of the Scrub button cycle. The default.
392             Scrolls the playhead. Displays "SC" in the 2 character LED.
393           </para>
394         </listitem>
395
396         <listitem>
397           <para>
398             Scrub mode. Part of the Scrub button cycle. Rate of rotation of
399             the Jog wheel controls the direction and speed of the transport.
400             Displays "Sb" in the 2 character LED.
401           </para>
402         </listitem>
403
404         <listitem>
405           <para>
406             Shuttle mode. Part of the Scrub button cycle. Jog wheel controls
407             speed and direction of transport. Displays "Sh" in the 2
408             character LED.
409           </para>
410         </listitem>
411
412         <listitem>
413           <para>
414             Zoom mode. Toggled by the Zoom button. Mutually exclusive with
415             the Scrub cycle. Jog wheel controls zoom level. Displays "Zm" in
416             the 2 character LED.
417           </para>
418         </listitem>
419       </itemizedlist>
420     </para>
421
422     <para>
423       When holding ffwd or rew, the Jog wheel will adjust the speed.
424     </para>
425
426     <para>
427       frm_next and frm_prev will jump to next or previous markers. Markers
428       can be set at the current playhead position with the marker button.
429     </para>
430
431     <para>
432       The pot will pan single panners, and linked stereo panners. It won't
433       pan unlinked stereo panners, or 3 or more channel panners.
434     </para>
435   </section>
436
437   <section id="mackie-thanks">
438     <title>Thanks</title>
439     <para>
440       Thomas Vecchione for help debugging the mackie LCD display, and
441       functionality suggestions.
442     </para>
443
444     <para>
445       Giso Grimm for help debugging various BCF issues, and functionality
446       suggestions.
447     </para>
448
449     <para>
450       Josh Parsons for the udev configuration and links.
451     </para>
452
453     <para>
454       Various other people who provided good bug reports and suggestions and
455       feedback.
456     </para>
457   </section>
458 <!--
459         <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" 
460                 href="Some_Subsection.xml" />
461         -->
462 </section>