Learn to map custom touch controllers with an iPad and Duet Display in Logic Pro X.
If you are a Logic user looking to expand your control surfaces to include your iPad, Apple’s Logic Remote application is a great place to start. The features of the original version were covered in July 2014 (https://sosm.ag/jul14logic), since when Apple have released a 1.2 update which brings with it some fantastic additions.
Open Logic and create a new software instrument track. On your iPad, open Logic Remote, and from the top-left View menu, choose the Mixer. The mixer capabilities have now been expanded with a new plug-in view that allows you to edit the parameters of any plug-in from your iPad. Press the ‘Audio FX 1-8’ button, and from the Insert view, tap an empty plug-in slot. Go to the ‘Choose Plugin’ option then, from the menu, navigate to Delay and select the Echo plug-in. Once the plug-in is instantiated, either tap the Echo plug-in and choose ‘Open Plugin’ to bring up the plug-in editor, or double-tap.
When working with plug-ins, you often have more parameters than can fit on a single page. In such cases, you can navigate through the pages at the bottom of the screen by swiping. You can also bypass plug-ins whilst the editor is open, using the on/off button in the LCD area at the top of the screen. In addition to working with insert effects, you can also instantiate and edit virtual instruments and MIDI effects by simply tapping on the I/O or MIDI FX buttons.
As great as Logic’s Remote application is, it lacks a user-definable touch interface. For example, it would be great to use the touchscreen for two-dimensional gestural input for controlling effects with an XY pad and other custom controls. Although we can’t yet do this in Logic Remote, there are some more experimental ways to achieve these things.
Duet Display (www.duetdisplay.com) is a paid-for iPad application (£11.99$15.99) written by ex-Apple engineers, which turns your iPad into a touchscreen monitor enabling it to display anything that a normal Mac monitor can. The difference between Duet Display and other virtual monitor iPad apps is that it relies on the iPad being connected via a Lightning or 30-pin cable, giving you virtually latency-free operation. The app itself boasts retina display capability with a maximum frame rate of 60 frames per second, but for use with music apps, you can configure this to be less demanding to save on CPU cycles. Using Logic’s Environment and the touchscreen capability that Duet and an iPad provide, you can create your own custom control surfaces. Back in June 2009’s Logic column (https://sosm.ag/jun09logic), I wrote about using touchscreens with Logic to create custom Environments to interact with. We can apply the same principles to Duet, since it essentially allows your iPad to work like a touchscreen monitor. Let’s have a look at a simple example.
We are going to create an XY pad that controls the Echo plug-in and a low-pass filter in a more interesting way than is possible with the sliders alone. First, create a new project with an audio track, and drag an Apple loop or song onto the track to give you something to process. I am using the ‘2-Step Back Flip Beat 01’ loop. To make our processing environment open to any source, we will create it on a bus. Route the drum beat to Bus 1 so that we can use this as a test source. On the bus, add Logic’s Echo plug-in in slot 1. Next, open the Environment and navigate to the Inspector on the left. From here, ensure the Layer field is set to Mixer. The first thing we need to do is to find out what messages we need to send in order to control our Echo plug-in. From the New menu choose Monitor, then cable the output of the Aux 1 object to the input of the Monitor object. Now move the four sliders of the Echo plug-in. You will see that each parameter has a different identifier: for example, the Repeat slider displays F 2 17 0-127, which means “Fader message on channel 2, number 17 has a range of 0 to 127”. We will use these messages in a minute.
Go to the New menu again, and this time, go to the Fader section and choose Vector. Logic’s Vector object is perfect for touchscreen fun, giving you X and Y axes that you can set to control different parameters. Next, go to the New menu and choose Transformer, then Alt-click-drag to copy the Transformer object twice so that you have three of them. Cable the output of the Vector object to the inlet of the first Transformer and label it Dry. Once this is done you will see that the Vector object creates another outlet. Cable this to Transformer 2 and label it Wet, then repeat the process to cable outlet 3 to Transformer 3 and label this Repeat. Create one more Transformer object, cable all the other Transformer outputs to it, and label it Sum. Lastly, cable the output of the Sum Transformer into the input of our Aux 1 bus.
Now let’s configure our Vector object and the Transformers to send the appropriate messages. Click on the Vector object, and in the Inspector, set it as per Screen 2. The crucial thing to understand here is that we have set each axis to send a different MIDI message.
Next, set the Dry, Wet and Repeat Transformer objects as per Screen 3. We are taking the output message from the vertical axis and turning it into the different Fader messages we saw earlier in the Monitor object, in order to control the Dry, Wet and Feedback parameters. Once you have set the Transformers, hit Play on Logic and click into the Vector object. Drag from the top down to the bottom and hear the Delay effect grow and increase in feedback as you move downwards.
Now, let’s control a different effect with the X axis of the Vector object. On the Aux 1, bus add a Channel EQ to insert effect slot 2. Turn the low-pass filter on and set its Q to 2.60 so that it has a resonant peak at the filter cutoff. As you move the low-pass filter cutoff, look at the Monitor object and note it has the message format F 3 29 0-127. Now create and cable another Transformer object between the Vector and the Sum object and label it Filter. Set the Filter Transformer as per Screen 3 so that the X axis will output the Fader message we have just seen for the filter cutoff. Once again, try the Vector object.
It’s time to tidy up the Vector object ready for use with Duet Display. Go to the Environment Inspector and click on the Layer menu, and choose Create Layer. From the same menu, rename the layer XYPad. Go back to the Mixer layer, highlight the Vector object and press Command+C to copy it. Now change Layers to XYPad and press Command+V to paste in the Vector object. You will receive the prompt “Do you want to replace the current selection?” Choose Don’t Replace. Now increase the size of the Vector object so it will be easy to interact with on your iPad. From the View menu, choose Protect Cabling/Positions and untick Cabling. Lastly, go back to the View menu and choose Frameless Floating Window, load Duet and move the Frameless Floating Window onto the Duet Display. You can now use the iPad’s touch interface to interact with the XYPad.
Using the Environment and Duet Display you could create all sorts of specialist touch control surfaces, from a digital monitor controller to a crazy touch-focused multi-effects processor. If this article has tempted you to purchase Duet, though, bear in mind that it’s not yet perfect; sometimes it misinterprets the initial touch and can end up selecting the wrong window. However, even with this occasional annoyance I find the benefits of using custom touch interfaces with Logic to outweigh any reliability issues. If you are interested in experimentation and don’t mind working around a few quirks, Duet Display and Logic’s Environment can be great fun.