Setting up MidiShaper in Apple Logic Pro

Setting up MidiShaper in Logic Pro is trickier than in most other DAWs. Here, we'll show you what can be done and the limitations that Logic imposes. Once it is set up, however, you'll be able to route MidiShaper's super-flexible LFOs to your favourite hardware devices, Logic's controls, and your software synthesizers and effects.


Modulating your hardware devices

Load MidiShaper onto an Audio or Software Instrument track. Select a MIDI output in MidiShaper's MIDI Setup panel, and choose a MIDI CC to transmit in the Modulations section. Now your hardware synthesizers and effects, VJ equipment and anything else capable of receiving MIDI CCs can be modulated by MidiShaper's super-flexible LFOs and EGs, just like this Slim Phatty.

To set up your hardware, use its built-in MIDI Learn system (if available), or refer to this overview of standard CC assignments.

Note: For MidiShaper's waveform to update correctly, audio playback must running and there must be either an audio clip or a virtual instrument on MidiShaper's track. This is because Logic bypasses plugins that it regards as inactive.


Modulating software devices: Preparation

Before we start, note that Audio Units (AU) plugins cannot output MIDI directly to Logic (or any DAW). This results in less than perfect timing accuracy in MidiShaper's AU version, as the update rate is reduced to once per audio buffer. The solution is to set up virtual MIDI ports:

  1. Open your Mac's Audio MIDI Setup application, in the Applications/Utilities folder, then select 'Show MIDI Window' from the Window menu.
  2. Double-click the IAC driver and check 'Device is online'.
  3. You can now add and remove MIDI ports – we recommend adding at least four of them. Note that if you install or remove MIDI ports later, you might need to set up the chosen MIDI port again in MidiShaper.

Modulating software synthesizers via their built-in MIDI Learn systems

We're using the software synthesizer TyrellN6, by u-he, for this example, but any synth with a built-in MIDI Learn function will work in the same way.

1. Create a project, load your synth and add some notes.

2. Add MidiShaper to the synth's track. Set MidiShaper up to route Source 1 to any MIDI CC you like in the Modulations section (we've gone for CC9 here), and output to any IAC Bus in the Out To menu – for example, 'IAC Bus 2'.
Click for a screenshot

3. Arm the synth's track.
Click for a screenshot

4. Activate MIDI Learn in your synth for the parameter you want to modulate. With TyrellN6, this is done by right-clicking the control – for example, the filter's Cutoff slider – and choosing 'MidiLearn'. The control will instantly start moving.
Click for a screenshot

5. To modulate another parameter, set up a waveform in LFO 2 and route it to MIDI CC11. MidiShaper is now sending CC9 and CC11 at the same time – which is a problem, as the synth doesn't know which one to use for its MIDI Learn function. To solve this, select MIDI CC11 from MidiShaper's Teach menu. This bypasses all other signals apart from the selected one, outputting – in our case – only CC11.
Click for a screenshot

6. In your synth, activate MIDI Lean for another control that you want to modulate – for example, TyrellN6's Output knob. The control will immediately be assigned CC11 as its MIDI control source and start moving in response to the incoming Teach signal.

7. Set Teach to 'Off'. MidiShaper now sends out CC9 and CC11 again, modulating TyrellN6's Cutoff slider and Output knob.

Note: You need to choose 'Realtime' in Logic's Bounce dialog when bouncing audio, otherwise the modulation will not be included in the bounce.

Note: Some soft synths save their the MIDI setups globally, so if you open another instance of the same synth, or use it in other songs, the same assignments will be maintained.

Software effects are – to our knowledge – not able to receive MIDI in Logic, so they cannot make use of MIDI Learn.


Modulating plugins and Logic's controls via Logic's Controller Assignments

For soft synths that don't feature onboard MIDI Learn – as well as plugin effects and Logic's own controls – you can use Logic's Controller Assignments setup. This can also be helpful when modulating several instances of the same synth, as those that store their MIDI setups globally will cause issues using the method above.

1. Create a new project with two instances of your synth (TyrellN6 again in our example) loaded, and add some notes.
Click for a screenshot

2. Lets modulate a software instrument. Add MidiShaper to the first track, then set it up to route Source 1 to any MIDI CC you like in the Modulations section (we've gone for CC9 here), and output to any IAC Bus in the Out To menu – for example, 'IAC Bus 2'.
Click for a screenshot

3. Open your synth and move the control that you want to modulate with MidiShaper – for example, TyrellN6's Cutoff slider. Then open Logic's 'Controller Assignments' panel from the Control Surfaces or Preferences menu, and switch to 'Expert View'. There, uncheck the Link button at the top-left corner and click 'Learn Mode' in the bottom right corner. An entry for the control you moved is added immediately. Deactivate Learn Mode afterwards.
Click for a screenshot

4. Switch 'Selected Track' to 'Index' – otherwise, selecting another track will route the assignment to that track instead. You also need to provide the number of the track (the 'index' in question). If you have eight tracks in your project and your synth is on track 5, the index will be '5'. Note that you'll need to update the index if you move the track or add another track above it. (We would suggest choosing 'Software Instrument' in the menu instead, but we don't really understand the behaviour of that option.)
Click for a screenshot

5. Now lets use the same instance of MidiShaper to modulate the track's volume slider, using LFO 2 for some sidechain-like pumping action, routed to MIDI CC11. MidiShaper is now sending CC9 and CC11 at the same time – which is a problem, as Logic doesn't know which one to use for its MIDI Learn function. To solve this, select MIDI CC11 from MidiShaper's Teach menu. This bypasses all other signals apart from the selected one, outputting – in our case – only CC11.

Click for a screenshot

6. Move the track's volume slider, then open Logic's 'Controller Assignments', and activate 'Learn Mode'. An entry for the volume slider will appear. Again, uncheck 'Learn Mode', then change 'Selected Track' to 'Index' and enter the number of the track.
Click for a screenshot

7. Open MidiShaper, and set Teach to 'Off'.

8. Modulating the second track with another instance of the same synth or modulating a software effect works similarly. You can use the existing MidiShaper instance, or open another one. If you use another one, be sure to use either a different IAC Port or a different MIDI CC number.

Note: The modulation will not be included when bouncing audio, even when choosing 'Realtime' in Logic's Bounce dialog. Also note that the settings in Logic's Controller Assignments are stored globally, not per song. Both of these issues can be resolved by recording the modulation as automation. Click Logic's Automation icon, then choose 'Touch' automation mode for the track. Here's how it looks like in our example after recording:
Click for a screenshot

This video by Logic Pro MIDI Hub walks you through the process of controlling soft synths with MidiShaper in Logic Pro:

Please accept "External Media" cookies to watch this YouTube video (might require page reload).



Do you have any feedback for us on this tutorial? Contact us and let us know!