Using Logic Pro's built-in software instruments and controlling them with an external USB controller is pretty straightforward, and many people work in Logic this way exclusively. But suppose you have a multi-timbral MIDI keyboard or drum machine with standard MID ports - how do you go about setting that up to work with Logic? In this tutorial, we'll show you how. We're going to assume that you have a standard MIDI interface connected to your system, and that you have at least one standard MIDI sound source with an integrated controller, such as a MIDI keyboard, that you've patched into an external mixer of some sort for monitoring.
The first thing we'll need to do is configure the OS X Audio MIDI Setup utility - Logic needs that configuration to know how to route your external MIDI instrument into and out of Logic itself. So, open up the Utilities folder in your Applications folder, locate Audio MIDI Setup.app and double-click it to launch it. If you don't see a window labeled MIDI Studio, choose Window > Show MIDI Window. You should see something like this:
You'll notice that Audio MIDI Setup has automatically recognized the MOTU 896HD audio interface, the MOTU Express 128 MIDI interface, and the Korg NanoPAD USB controller that I have connected to my computer via FireWire and USB. But it hasn't recognized my Kurzweil K2500 keyboard that I also have connected with MIDI cables to the MIDI interface, as pre-USB MIDI communication doesn't allow for that kind of auto-configuration. We'll need to do that manually.
To add your MIDI keyboard, click the Add Device button at the top of the window, which will add the generic new external device icon to the window:
We could just leave it at that, but it makes more sense to name the keyboard correctly, as that is the name under which it will appear in Logic.
To name your device correctly, double-click the new external device icon to open its Properties window:
Next, for Device Name, type in the name under which you want the keyboard to appear - this could be the actual model name for the device, but you can name it anything you like, really. You can also add the manufacturer's name and the keyboard's model number if you like, although that's optional. You can even change the icon to something more closely resembling your device. To do that, click the Open Icon Browser button on the left, and choose from the available icons:
If your keyboard doesn't transmit or receive on all 16 MIDI channels, you can disable the inactive ones by clicking on the blue boxes under Transmits and Receives. My K2500 can use all 16 channels, so here's what my final configuration looks like:
Click the Apply button to finish the configuration, then close the Device window.
Our final step in Audio MIDI Setup is to connect the MIDI ports between the keyboard and the MIDI interface. In my case, I have physical MIDI cables connected from the MIDI Out of the K2500 to MIDI Input Port 8 on the Express 128, and from MIDI Port 8 Out on the Express to the MIDI In on the K2500.
Of course, the MIDI Out from the K2500 could connect to any port on the Express, just as any MIDI Out port on the Express could connect to the MIDI In on the 2500 - for me, it's less confusing to use both Port 8s on the Express for the K2500, but you might have your own reasons for doing otherwise. However, we do at least want to have MIDI going in both directions between the system and the keyboard, as we'll be using the K2500 as both a controller and as a sound source.
In any case, you need to tell Audio MIDI Setup which physical ports on the MIDI interface you have connected. You do this by connecting virtual MIDI cables between the keyboard and the interface - click on the MIDI Out port on the keyboard, and drag from that to Port 8 In on the interface. Do the same from Port 8 Out on the interface to the MIDI In port on the K2500:
If you make a mistake, you can remove a patch cable by clicking on it and hitting Delete. At this point, if you have other standard MIDI devices in your system, you'll want to add, name, and connect those too. Otherwise, our work here is done and we can close Audio MIDI Setup and move on to Logic Pro.
Next, for the purposes of our tutorial launch Logic, create a new Empty Project, and when you're asked to create New Tracks, choose one External MIDI track, making sure that the Open Library option is also checked. Your standard Arrange window will open with the generic General MIDI Instrument chosen by default, with the GM Grand Piano selected as the default sound or patch:
Next, with that new track selected, go over to the Library tab on the right side of the screen, where you should see a list of MIDI interface ports, along with the MIDI instrument you configured earlier in Audio MIDI Setup - in my case, the K2500 on Port 8. Click on your instrument, and choose Channel 1 in the right-hand column:
We've just assigned the K2500 as the MIDI instrument for the new track, and set that track to output on MIDI Channel 1.
Our basic configuration is just about done, but there's one last important step you should take before continuing on. Right now, if your MIDI keyboard is in a typical configuration, it will be set to Local Control On, meaning that when you play the keys, the keyboard is generating sounds from the instrument's own sound engine, as well as sending MIDI to Logic. Logic, however, is configured to loop that MIDI data through the active track (when that track is enabled for recording, as it is now) and back out to the keyboard's MIDI In port, meaning that every note you play will trigger two sounds. When you think about it, this MIDI loop makes sense - we want Logic to send MIDI data out from each track to the appropriate MIDI channel, especially if we're going to be using the keyboard as a multi-channel MIDI instrument - piano on Channel 1, bass on Channel 2, drums on Channel 10, and so on. In this way, Logic, will do our MIDI channelizing for us, so we don't have to change channels on the keyboard itself.
However, with Local Control On, playing a note triggers two voices, because of this MIDI control loop. At the very least, playing two voices for each note will greatly reduce your available polyphony. And, worse, some keyboards react badly to this kind of MIDI loop and can start acting weird or even lock up. So, what we want here is to "disconnect" the MIDI keyboard from its own sound engine, so that playing the keyboard won't trigger notes directly. That's what Local Control Off does - it disables the keyboard from triggering notes directly on its own sound engine, and separates the keyboard from the sound-producing part of the instrument, thereby disabling the MIDI loop. Local Control Off is a feature that most multi-timbral keyboards support, for this very reason, although it may be called something else on your particular instrument.
So, before moving on, set Local Control to Off, if possible. You can confirm that Local Control is off by disabling Record-Ready for your first track and playing the keyboard - you should hear nothing. Enable Record-Ready again and play, and now you should be sending MIDI from your keyboard through Logic and back to your instrument again.
Now, finally, it's time to record something. You can choose the sound you want to use directly on your keyboard, if you like, or send a Program Change message to it from Logic instead. To do that, double-click the Track Name section of the track header in the Arrange window to open the Program Names window:
In this window, just click on one of the program numbers to send that Program Change to your instrument and choose that sound. Of course, you have to know first which sound is where on your instrument. If you do, you can make this process a little more intuitive by changing the generic program numbers to the actual sound names in your instrument. To do that, just double-click on the appropriate program number and change it to a sound name, as shown above. When you do, the track name will change as well. If you have the patience, you can go through the list here and enter all your sound names at the correct Program Change locations - it will be a tedious process, but you'll only have to do it once, and from then on you can choose sounds by name rather than by number.
[A quick internet search can help you find existing Logic templates for your External MIDI Instrument. Also remember to save your project as a template so you don't need to go through this setup procedure every time you create a new project! - Ed]
Once you've chosen your sound, hit the Record button and record a few bars into the first track in Logic. Play them back to be sure you've recorded them correctly. Now, to record another track with a different sound on a separate MIDI channel, add another MIDI track by clicking on the Track pull-down menu above the tracks in the Arrange window and choosing New With Next MIDI Channel, or by typing Command-Option-M:
To specify the sound or program change for this new track, roll down the arrow next to the instrument's name to the left of the new track, then click on the Program number to open the program names list and choose a program:
(Note that the Moogy Bass sound I chose here was one who's name I had entered when I was in the Program Names window - unless you entered specific program names too, you'll only see generic program numbers.)
Now record the second track. From here, you can continue on adding new tracks and recording MIDI notes into them, up to the maximum 16 MIDI channels, or as many as your device supports.