Back in the early ’80s when I sort of left music to pursue a career in database software development the Musical Instrument Digital Interface or MIDI was just coming onto the scene. Synthesizers that I had played with, Moogs, Sequential Circuits, Korg and others, never had any ports other than the traditional old analog outs.
My first MIDI interface was a Roland MPU-401 which connected to the joystick port of the SoundBlaster Pro card residing in my 486DX machine. Connected to a Roland MIDI trigger keyboard I could produce amazing sounds (for the day) with my PC and create some cool multi-track recording.
Now that I’m back to playing with MIDI devices after a few decades off I set out to try and re-learn what I had forgotten and catch up on what’s going on. I’m not going to write a big article on MIDI because there are a ton of those out there. One I found particularly useful is
MIDI 101 from Tweakheadz Labs.
What I set out to do was to get a few things connected to my studio toys via the MIDI interfaces. After some fumbling around I ended up having a great deal of success so I thought I’d relate some of my efforts here. This article is academic so I’m going to describe a few of the connections and tests I performed in the hopes that they may be helpful.
Control Room Workstation
The Macs run OSX Lion and the iPad IOS 5.x all current as of this writing. Mac2 and the iPad are on a WiFI network run from a Time Capsule (1st Generation) and Mac1 is hardwired to the Time Capsule. Mac2 will be hardwired shortly. The software I am running is Cockos software’s Digital Audio Workstation (DAW) called
Having come from a PC based background for the past 29 years it is a bit of a relief to discover how the Mac handles peripherals. You plug them in and they basically work. Much easier than fumbling around with drivers then blaming them for when things go bad. The Mac has a powerful utility in the Applications -> Utilities folder called
. Getting a handle on this application is the key to configuring your system. Audio MIDI Setup
Audio MIDI Setup application has two primary windows which control, you guessed it, Audio and MIDI. I won’t go into the Audio window too much here suffice to say it is much easier to right-click on a displayed device and then configure it than it is with Windows archaic Control Panel -> Sound interface.
The MIDI window has some very powerful features, one of the most useful of which is Network MIDI. The MIDI window will display your connected MIDI devices and provide a configuration interface. This is great for determining if your devices are even connected correctly or not. If you don’t see them, check your physical setup (that link above to Tweakheadz has some diagrams). If you do see them then you should be good to go for using the devices in your application. Later on I’ll describe how to do this with Reaper.
MIDI Interface and Keyboard connected to Mac2
The fun starts when you begin to experiment with network MIDI. I have two applications for my iPad which support CoreMIDI, the iOS implementation of the MIDI protocol. The cool thing about this is its ability to work over WiFi. One application is Music Studio 2. This is a great application for creating music on-the-fly with an advanced set of tools. It supports MIDI IN and OUT.
The second application is AC-7 Core. This program turns the iPad into a Control Surface for DAW applications. In short, a Control Surface is a bunch of sliders, knobs and dials that exist in the real-world which are connected to stuff in your DAW. Turn a knob on the surface and the knob on the DAW software on your screen turns. It is a way to talk to the software that doesn’t involve a mouse. Many different Control Surfaces are available but AC-7 is neat in that it turns your iPad into a Control Surface. Even the touch-screen of the pad is easier to manipulate than a mouse.
So let’s go back to the Audio MIDI setup app and get started.
Sharing your Computer’s MIDI port over the network
This is pretty straightforward. Once you share this port it will become available as a MIDI device to other computers. The trick is to share it first. I was sharing the USB MIDI interface which I connected to Mac2. I started by renaming the default “Session 1” to something useful which would be easy to understand once several connections were set up. The Mac2 is in the studio area of my basement so I gave it the Local Name: Studio USB MIDI # 1 and the same Bonjour name. Because there are no participants at this point nothing appears in this list. Once a connection is made to this device the connecting computer(s) will be listed.
Now the Live Routings. If you don’t set this up you might as well bang your head against a wall for all the good trying to get things to work will do you. They should both be set to USB MIDI Interface, the name given to my cheap-o but fully functional MIDI to USB connector by the OS. Basically signals going from the interface go to the network and signals coming from the network go to the interface. These routings can be mixed and matched later but for now let’s just get this working.
Shared MIDI Port on Studio Mac2
Connecting to the Shared MIDI port which you just set up.
So now this network MIDI connection is out there floating around just waiting for someone to latch on. Here’s where we go to our client computer, in this case
Mac1. The good news is that now the port you have shared should show up in the list of available network connections.
First you have to create a Session name for the port you are about to create. I called mine “Yamaha DGX on Studio MIDI” as I felt I’d remember what it meant down the road. For the Bonjour name I called it “Control Room – Yamaha” so that it would advertise itself as something readable (although I’ve not yet tried to access a networked device through a second networked device – yet…). Next comes the connection. In the Directory box you should now see the share you created in the first step. Clicking Connect should set up the session and the participants should appear in the participants box as they are connected.
Connection from Control Room to Yamaha Keyboard in Studio
Ta da! You’ve just hooked up to a MIDI connected device across the network.
Ok, now lets do some talking to the device.
Activating the MIDI Device in the DAW
Computers are smart but they can’t make all the discussions for themselves. Adding MIDI interfaces is something we have to explain to our computers in more specific terms. For this reason, your DAW might require a bit of setting up to make your MIDI device useful. In Reaper this is done in the Preferences setup. The MIDI Devices option should have your MIDI connections listed. In order to use the devices you right-click over the device name and Enable it. This must be done for inputs and outputs. Some devices such as a keyboard use both while others, like some control surfaces, may only require MIDI input.
Setting Up MIDI Devices in Reaper
Sending MIDI Data to a Remote Keyboard
Establishing a connection is one thing but the real fun begins when you can see it in action. For this I decided to make the Yamaha keyboard connected to Mac2 in the other room play from Mac1. I loaded up Reaper on Mac1 and loaded up a MIDI file I had. Next, I right clicked over the Record Arm/Disarm button on the track I wanted to have played to the keyboard in order to switch inputs to the MIDI interface I set up. This list should contain the MIDI interfaces you add through the Audio MIDI Setup program. If it doesn’t then make sure you did the previous step. With my Yamaha network connection selected I armed the track and set its Record Monitoring to On.
Setting Reaper to Send MIDI Data to Remote Keyboard
I walked into the next room and was greeted by the sound of keyboards playing from an unseen source. Awesome!
This works both ways if you set the port up for both Input and Output. I can record data played on my Yamaha to Mac1 in the Control Room as well.
Connecting an iPad Control Surface
I downloaded a piece of software called AC-7 Core which turns an iPad into a Control Surface for various DAWs, Reaper included. A connection must be created for this device in both the Audio MIDI Setup program and then in Reaper. When AC-7 is run on the iPad it broadcasts itself on the network as a MIDI device. Consequently it will appear in the Directory in the MIDI setup window. I highly recommend making a separate Session for this connection as well as any other. Give each its own meaningful name. I called mine AC-7 Control Surface. Once defined and enable, I connected to the iPad listed in the directory. Next I went back to Reaper’s Preferences and enabled the AC-7 Control Surface input. I also selected the Configure option and enabled the input for control only. This was to stop musical note data from being transferred to the DAW every time I moved an object on the Control Surface.
Once this was configured I selected Control Surfaces (also in Preferences) and added a Mackie Control Universal and set the MIDI ports to the AC-7 Control Surface ports I just enabled.
Now I can control DAW functions through the controls on my iPad. It makes managing the tracks much easier than playing with a mouse. I have to say, though, that nothing beats tactile feedback in my opinion.
A Soft MIDI Keyboard
Entering notes on a musical keyboard is far easier than doing it with a mouse. One package I have for my iPad is called Music Studio 2. It’s a complete music creation package in itself but it can also be used for both MIDI input and output. Once again I created a new connection in the Audio MIDI Setup program, this one called Music Studio 2.
Now here’s where it can get tricky. The iPad can only be connected to one MIDI session at a time. If I’m already connected to my AC-7 Control Surface connection I have to disconnect before connecting the iPad to the Music Studio 2 connection. Keep track of which connection is active or you might end up scratching your head wondering why something suddenly stopped working.
Only Connect iPad to 1 Session at a time
Because it is a keyboard I set it’s preferences in Reaper to both Input and Output. Now I can use it as a trigger (by turning the iPad’s volume right down) or as a playback device.
Export to Drums
Yesterday morning I awoke to find an update to the DM-1 drum machine application I have on my iPad. This was the 2.0 update with a slew of new features including MIDI In. I set up a new connection called DM-1 Drum Machine using the trusty Audio MIDI Setup program. In Reaper I enabled this device for MIDI Output. I loaded up a MIDI file and set the output of the drum track to go to All Channels of my DM-1 Drum Machine MIDI. While it worked first time, the mapping of the kits seemed to be whacked. The sounds produced were not quite pleasing. I’m going to play around with it a bit and see what happens.
DM-1 is a great program for creating beats. It’s $6 but I was lucky and got it for $0.99 during a sale. I hope they add MIDI output to it in the next revision! Until then I have it enabled in Reaper as an MIDI Input device
So there you have it. Connecting MIDI devices through hardware and software. Once you get everything tweaked just right you’ll find a whole new flexibility with your toys you might not realize you had available to you.