MIDI Control
Glenn Poorman, May 2003
As a Stick player of some years now, it's been pretty hard to miss that there are a lot of Stickists out there that work with rigs larger in size than your average guitarist. This is partially a result of the type of personality that tends to gravitate toward the Stick and the type of music that is most prominently played on the Stick. It also has a lot to do with the fact that, with two sides of the instrument running separately, you essentially need two effects chains and generally end up buying two of what your average guitarist would buy one of. Regardless of the reasons, talk of processors and how to control them comes up pretty regularly as a topic of conversation in the various discussion groups devoted to Stick. Having taken part in many of those discussions and also having put together what I consider a pretty solid rack system over the years, I figured it was time to put some of what I've learned down on paper (so to speak) so as to provide a reference for those entering into this age old conversation for the first time.
Of course, many effects processors come as all-in-one units that rest on the floor and provide all your processing and foot control in one tidy package. These are pretty robust units too and I wouldn't suggest replacing them if you're happy with them. So far, the best multi-effects processor I've owned has been the Boss GT-3 which is a single all-in-one floor unit. For me though, the floor units eventually began to simply eat up too much space and it was becoming difficult to setup on small stages with my band (not to mention hauling all of that stuff around in various bags). So I switched over to an all rack mounted system. On paper, this means putting multiple devices in the rack and using a single controller on the floor to control each and every device. Of course, not all devices and/or floor controllers are ideally setup for this type of rig and a certain amount of trial and error (buying and selling) was involved in eventually getting to the setup I have today.
What follows is a general description of MIDI as it pertains to controlling effects units along with the pros and cons of various types of setups. I should pause here also and acknowledge that, in addition to my own research and trials, I picked up a handful of tips and tricks from fellow Stick players Louis Hesselt-van-dinter, Tom Griesgraber, and Greg Howard. Hopefully some of the information contained here will help others in avoiding some of those early purchases that end up falling short and heading for EBay.
The setups of these units are all basically the same. Configurations of effects are broken into user programmable patches. A patch is just a single configuration. You might setup a single patch in a guitar multi-effects unit to have a little reverb, distortion, and heavy delay. The next patch might have not so much delay, no distortion, some light chorus. In most units, you can name these patches something meaningful. The name might describe a particular song that you play or it might describe the tone itself if it's something you reuse often. It could be the name of your cat.
Regardless of how you set it up, you're most likely going to want the ability to change patches on the fly while you play. In many cases, you might also want to keep the same patch dialed up but change certain parameters of that patch on the fly. You might want to take the distortion patch described above and simply decrease the delay level without changing patches. If you have a floor unit, this is most likely all built-in and ready for programming. If you've switched to rack-mounted units though, you don't have any way to control them aside from tweaking the settings on the front panel by hand.
You're not stuck though. Any rack mounted audio processor built since the mid to late 80s is most likely MIDI controllable. The only hitch is that you have to go out and get yourself a MIDI foot controller to hook up to your unit. You also need to know how to setup the controller to talk to your processors.
In addition to generating sounds, MIDI is also used for general control like changing programs, turning certain parameters on and off, starting and stopping a drum machine or a recording device, etc. That means that even units that don't actually generate any sound (like multi-effects processors) can be controlled via MIDI as long as they adhere to the MIDI specification. And, as the MIDI standard dictates, you can have several effects processors in your rack all being controlled by a single controller. And of course, they can all come from different manufacturers.
The MIDI specification contains a fairly large number of messages and it is beyond the scope of this writing to cover general MIDI topics. For our purposes, however, there are a few pertinent messages that should be discussed.
Note On/Off
As I said, these messages are sent to a device to instruct it to play notes. The "Note On" code is followed by a number representing the note to turn on and a number representing the velocity. The "Note Off" code is also followed by numbers representing the note and velocity. Some delay units also use note on/off messages for tap tempo (allowing you to tap twice to set the delay time on the fly).
Program Change
"Program Change" messages are sent to instruct a device to (you guessed it) change programs or patches. Taking an effects processor as an example, sending a "Program Change" code to your processor tells the processor to change patches. The message is then followed by a number representing which patch to change to.
Control Change
"Control Change" (or "CC") messages can be used to control the parameters of a patch. For example, to leave a patch on your effects processor dialed the same but decrease the delay level, you could send a CC message that instructs the processor simply to decrease the delay. MIDI allows for the possibility of several controllers to be in use so the CC message is first followed by a controller number which could be any number from 0 to 127. The controller number is then followed by a new value for the parameter to be changed. Typically there are two different kinds of pedals that can be used to deliver CC messages to a device.
System Exclusive (or "SysEX") messages are sort of a back door allowing large amounts of MIDI data specific to a particular device to be sent or received. A SysEX message is immediately followed by a stream of data that can be of any size. A sentinel is stuck on the end so that any device will know where the exclusive data ends regardless of whether or not that device is able to interpret that data. The first piece of information in that data stream is a manufacturer's ID. From there, it's up to the manufacturer to determine how to handle the rest of the data. In many cases, a manufacturer might dictate that the next piece of data be an ID that specifies a certain device or model.
These are very handy messages. Using a SysEX message, a device can bulk dump all of it's data to a computer through MIDI software. Later, that data can be bulk loaded back into the device via a SysEX message. The software doesn't need to know what it's getting. All it knows is that there is a SysEX message followed by a bunch of data and that data can be blindly written to disk. Later, that same software can blindly send that data back to the device and the device will be able to interpret it and do a bulk load. Similarly, vendors will often supply software with their devices that allow you to edit the device's data on your computer. The edits you perform on the computer are then sent back to the device via a SysEX message.
Figure 1: Simple connection
from controller to device
So now that we know a little more about what MIDI is, let's talk about how
to use MIDI to control our rack mounted effects processors. To begin the
discussion, let's start with a single controller controlling a single device.
This is the easiest thing you'll ever have to setup and, in many cases, a
controller/device combination will work right out of the box just the way you
want it to. MIDI devices have a minimum of two MIDI connections on them. Those
connections are "MIDI In" and "MIDI Out". Most devices also have a "MIDI Thru"
which we'll talk about in the section on multiple devices. Just as you would
expect, MIDI messages that a device generates are sent out via the "MIDI Out"
connection. Messages that the unit receives are taken in via the "MIDI In". So
to connect a foot controller to a single MIDI controllable processor, you
would simply run a MIDI cable from the controller's "MIDI Out" to the
processor's "MIDI In" (as shown in figure 1).
MIDI channels
In order for two devices to speak to one another via MIDI, they must be operating on the same MIDI channel. The MIDI specification states that MIDI data can be exchanged on up to 16 channels. If a receiving device is not set to be receiving on the same channel as the sending device, the receiving device won't hear the message and nothing will happen. Now ... just so you don't think I lied about stuff working right out of the box, any MIDI compatible device I have ever purchased came out of the box setup to send and receive on MIDI channel 1 so, unless you have a reason to change that, things will work right out of the box. It is something you should always be aware of for many reasons though. You could, for example, purchase something used where the previous owner had changed the MIDI send or receive channel or you could be putting together a setup to run multiple devices (we'll get to that ... be patient). At any rate, the MIDI channel on the sending device and receiving device must match. Once you've taken care of that and established the physical connection (MIDI cable), you're ready to go.
Program change messages
The first and most obvious types of messages you would want to send from a foot controller to an effects processor would be program change messages. Just about any foot controller you have will be setup such that there will be a series of buttons you can push with your feet that are numbered (1 through however many buttons there are). By default, the controller is most likely setup such that pushing button #1 will send a MIDI program change message specifying a change to patch #1. Button #2 will generate a program change to patch #2 and so on. See? Right out of the box.
There are only so many buttons you can fit on a foot controller though and you would probably like to call up way more patches than that. What you'll generally find is that foot controllers are organized by "banks". In addition to the numbered buttons, you will also find a "bank up" as well as a "bank down" button. This simply shifts the program change messages that the numbered buttons send. For example, the Boss FC-200 foot controller has 10 buttons numbered 1-10 and you can generate program changes messages #1-10 by pushing those buttons. If you "bank up" once, pushing those same buttons will generate program change messages #11-20. Banking up again will do another shift (#21-20) and so on.
In some cases, you may not want to have a one to one correspondence between the program change messages sent by the controller and the patches that come up on the receiving device. Unfortunately, here you are at the mercy of your devices. Some foot controllers allow you to specify what program change messages are generated for any given button push. Others don't. On the receiving end, some devices allow you to program how MIDI program change messages are interpreted. For example, you could setup your receiving device such that when it receives program change message #3, it translates that to program change message #7 and changes to patch #7. This is called a "MIDI map". Again though, some devices support this while others do not. For the purpose of controlling just a single device though, the simplest setup is most likely sufficient.
CC messages
As I stated before, the other type of MIDI message that you will most likely be interested in when controlling an effects processor is the MIDI control change (or CC) message. Unlike the program change messages, the CC messages require more forethought and setup. Additionally, there are even less standards as to how devices handle these messages than there are for program change messages.
For starters, there is nothing that says a foot controller will even let you send CC messages. The Boss FC-50 (for example) has a couple of jacks in the back allowing you to plug in external switches to send CC messages but, by itself, it won't send them. In addition, the controller number of the CC message for either jack is hard coded so you're pigeon-holed into only being able to send one of two controller numbers with your CC message. If you're interested in any others, you're out of luck.
On receiving devices, it's even worse. Some processors provide charts for receiving CC messages mapping what controller number corresponds to what parameter. In other words, they'll tell you that controller #21 change (for example) the delay level of their processor. If you're using an FC-50 (where 21 isn't one of the hard coded controller numbers), then you can't change the delay level ... period. Among the postives of these kinds of devices though are that, assuming you have the means to generate any kind of CC message, they usually have a controller number assigned to every single parameter on their devices meaning that you can do anything via MIDI that you can do by hand using the device's user interface.
Other receiving devices (such as most Boss/Roland multi-effects processors) make their CC messages configurable on the receiving end. So on a Boss VF-1 (for example), you can program a patch such that controller #7 will adjust the delay feedback. This gives you the freedom to work within the shortcomings of your foot controller (hmmmmm ... so the Boss FC-50 works well with Boss processors). This approach is also really cool because it allows you to change more than one parameter with a single controller. The drawback to this approach is that the Boss processors only allow so many of theses "assignments" per patch. On the VF-1, that number is four. That means that, on any given patch, you can't have more than four parameters change via CC messages. That might not seem like that big of a deal but, trust me, four is nothing. On some of the Boss floor based effects units (GT-3, GT-6) or even the full rack predecessor to the SE-70 (Roland GP-100), the number of "assignments" per patch is more like nine which is a much more reasonable number.
Figure 2: Connecting
multiple devices
The real power in MIDI control comes in the ability to control many
devices with a single controller. There are a couple of ways to accomplish
this. Before going into that, however, you need to hook up your devices.
When controlling multiple devices, the easiest way to hook things up is
by daisy chaining your devices together. First you must understand the
different connections though. As I mentioned before, all MIDI devices have
a "MIDI Out" where outgoing messages are sent and a "MIDI In" where incoming
messages are received. Most devices also have a "MIDI Thru" connection. This
connection differs greatly from the "MIDI Out". The "MIDI Out" is used for
messages that are generated by the device. The function of the "MIDI Thru"
connection is simply to take all incoming messages (coming in via "MIDI In")
and, in addition to processing them, also send them out the "MIDI Thru". In
simplest terms, this connection makes sure that the next device in the chain
gets every message that the first device in the chain got.
Hooking up multiple devices, then, is a matter of running a MIDI cable from your controller's "MIDI Out" to the first device's "MIDI In". Another cable is then run from the first device's "MIDI Thru" to the next device's "MIDI In". You can then connect to another device and then another in the same fashion (see figure 2).
Of course, simply hooking everything up won't be near enough setup to make this all work. If you simply hook it all up out of the box and turn it on, your controller will send program change messages out on MIDI channel 1 to two (or more) devices setup to receive on channel 1. That means that pushing button #5 (for example) on your controller will result in all of your devices changing to patch #5. If that's what you're after, that's great but I'm guessing this isn't how you want to work. Suppose you want to push button #5 and have your first device change to patch #1, your second device change to patch #12, and so on. This is where things get tricky (but also powerful) and there are a couple of ways to handle this.
MIDI mapping
If your devices support MIDI maps, this is a prime example of where they can come in handy. As I mentioned before, a MIDI map on a receiving device allows you to interpret an incoming MIDI message anyway you want. If you were to edit the MIDI map on your first device and program it such that program change #5 is interpreted as program change #1, then when you hit button #5 on your controller, your first device will change to patch #1 while feeding the original program change #5 out the "MIDI Thru" to the next device. Now, you can go down the line of devices programming their MIDI maps in the same fashion and end up having your devices switch to the patches you've specified from just a single button push on the controller. Of course, there are many devices out there that don't support MIDI maps which leaves you stuck with out some outboard help (see discussion about MIDI Solutions products).
MIDI channels (again)
Using multiple MIDI channels is really the best way to control multiple devices but also requires that you have a controller that allows you to send messages on multiple channels. All controllers are not created equal and some popular controllers do NOT support this (more on that when I list brands at the end). If you do have a controller that supports multiple channels though, you're in like Flynn.
The physical setup for using multiple channels is no different than for using maps. The difference comes in the programming of the controller and the setup of the receiving devices. In the case mentioned above (where we wanted button #5 to change the first device to patch #1, the second device to patch #12, and so on), you would start by setting up your receiving devices. If you have two devices (for example), you could set the first device to receive on MIDI channel 1 and the second to receive on MIDI channel 2 (these can be any number from 1 to 16). The next step is to generate the messages. I use an All Access controller made by Rocktron. On the All Access, each button push is capable of generating a program change message on up to 16 channels. So, using the above example again, I would program button #5 to generate program change #1 on channel #1 and program change #12 on channel #2. Now when I push button #5 ... voila! No mapping needs to be done on any of the receiving devices. Aside from setting the MIDI receive channel, all of the programming is done in the controller.
That last one is a real pet peeve of mine. Roland/Boss seem to have some sort of aversion to "MIDI Thru" connections and I don't know why. Some of their devices have them while others don't. On some of the devices that don't, you can set a parameter that changes the "MIDI Out" into a "MIDI Thru". On others, you can't. One of the most popular effects setups for your average Stick player is to run the two sides of the instrument through two Boss SE-70 or VF-1 multi-effects processors. Guess what? The VF-1 doesn't have a "MIDI Thru" and you can't configure the "MIDI Out" to act like a thru. AAaaaaack!!
Don't sell your gear yet though.
MIDI Solutions
I absolutely cannot say enough good things about the company MIDI Solutions. They are based out of Vancouver, BC and all they do is solve your little annoying MIDI problems.
Figure 5: My current MIDI control setup
In my current rig, I've had opportunity to put much of this theory to the
test and have run across a few of the little roadblocks I've mentioned.
Figure 5 borrows the image from my cabling diagram and I will try to explain
each link in the chain.
I use an All Access foot controller made by Rocktron. This unit also allows me to hook up two external volume pedals and converts the input from the volume pedals into MIDI CC messages. The volume pedals are hooked up with standard audio insert cables.
My GI-20 GK-MIDI converter (which converts output from a GK-2A pickup into straight MIDI), as well as the two VF-1 multi-effects processors do not have "MIDI Thru" connections so I can't simply daisy chain all of my devices. I should point out here also that most MIDI experts discourage daisy chaining more than 3 or 4 devices anyway in case your MIDI data degrades as it passes from device to device. So right off, I put one of the MIDI Solutions products into play. A 1-to-4 "MIDI Thru Box". A single cable connects the All Access to that box.
Starting with the simpler connections, a MIDI cable runs from the "MIDI Thru Box" to the bass VF-1 multi-effects processor. A second cable runs to the Echoplex Digital Pro. The EDP has a "thru" connection so a short MIDI cable is run from there to the "MIDI In" of the D-TWO. Yet another short cable is then run from the "thru" on the D-TWO to the "in" on the melody VF-1.
The cable running to the lowest "MIDI Merger" on the picture is where things get interesting. The Echoplex generates song start/stop messages as well as timing messages out the "MIDI Out" connection when you begin and end loops. I like to use these messages to start and stop the drum machine and also control the tempo of the drum machine. That way, I can use MIDI to sync drum patterns up with my looper. The problem is, I also want to use my All Access to send program change messages to the drum machine as well.
My second MIDI Solutions box comes into play here. A short cable runs from the "MIDI Out" of the Echoplex to one of the inputs of a 2-to-1 "MIDI Merger". Another cable runs from the thru box that started all this into the second input of the merger. The single output from the merger is then run to the "MIDI In" of the drum machine. The drum machine now recieves all of the program change and CC messages sent from the All Access as well as the song start/stop and timing messages generated by the Echoplex.
Similarly, the last cable coming from the thru box is running to a second "MIDI Merger". In order to generate synth sounds, a GK pickup on my Stick runs into the GI-20. The GI-20 then converts the signal to MIDI and generates note on/off messages out it's "MIDI Out" connection. A short cable must be run from that connection to the "MIDI In" on the XV-2020 synth module (the module that actually generates the sounds). The problem here is that I also want to control the patches on the XV-2020 with my foot controller so, again, we need two devices going to the single MIDI input.
So again, we bring a "MIDI Merger" into play. From the original thru box, a cable carries messages from the foot controller to the merger. A cable from the "MIDI Out" of the GI-20 also runs into the MIDI merger. A single output from the merger is then run to the "MIDI In" of the XV-2020 module. Lastly, in order to also carry the foot controller messages to the GI-20 (for patch changes), a short MIDI cable is run from the "MIDI Thru" of the XV-2020 to the "MIDI In" of the GI-20.
The number of patches I use on any one device is actually pretty minimal. On the melody VF-1, I have around five or six patches that I use regularly. On the bass VF-1, it's even less. The most patches I use are on the D-TWO delay as different tunes require different delay times. The All Access controller is where I have things broken up by song. I have at least one patch on the All Access for every song I play. Each of those patches picks and chooses what patch it's going to bring up on the two VF-1s, the D-TWO, the XV-2020, the GI-20, and selects a rhythm pattern on the DR-770. Additionally, I have CC buttons on the All Access that globally turn the delay on or off, send CC messages to either of the VF-1s, turn the synth module on or off, give me access to parameters settings on the Echoplex, and allow change of the feedback level on the Echoplex.
That's a boat load of devices all doing what I want them to with just a simple touch of the foot. MIDI is powerful stuff!
Boss GFC-50 (or FC-50)
Figure 6: Boss FC-50
What used to be called the FC-50 is now marketed as the GFC-50 and is
described as a foot controller designed to control Roland's V-Guitar amps.
Don't let them fool you. This is the exact same product as the FC-50 and
is nothing more than a generic MIDI foot controller. For the money and size,
it's a good controller but it's not without it's shortcomings. It will only
send on one MIDI channel. What channel it sends on is configurable though.
Additionally, there are no buttons allowing you to send MIDI CC messages. It
does provide two jacks for plugging in external foot pedals that will send
CC messages. The drawback there, however, is that those CC messages are hard
coded. For simple switching, this unit just might do the trick though. The
switches are comfortable and quiet, the price is right, and it's pretty small
in size (small enough to fit in a rack case).
Roland FC-200
Figure 7: Roland FC-200
The big brother to the FC-50. This is a great controller. It's very heavy
duty and the switches are very comfortable. It's light weight and runs on
either batteries or AC power. In addition to ten program change buttons,
it has a bank up button, bank down button, a simple on/off switch for sending
CC messages and a built-in expression pedal also for sending CC messages.
There are also several connections in the rear to hook up additional control
or expression pedals for sending more CC messages. The unit does only allow
the sending of MIDI messages on one channel which I look at as a huge drawback
considering the price and quality. It does have mapping built-in so that you
can change the program change numbers sent by each button. It also has two
other modes allowing you to use every button as a CC message sender or to use
the buttons to send note on/off messages to a sound module. That means it can
either be a foot controller or a set of (for example) bass pedals. Nice touch!
All of the pedals designed to send CC messages (the two built-ins as well as
the jacks in the rear) are configurable to send any CC message you want. A
very powerful and comfortable unit. Again ... only one channel though.
Behringer FCB1010
Figure 8: Behringer FCB1010
The Behringer FCB1010 has quickly become one of the more popular controllers
and for good reason. This unit borrows much of its appearance from the Roland
FC-200 but also has some of the features found in units like the Ground
Control or All Access. At the same time, they've kept their price way down
making it a very attractive purchase. From what I could pickup reading the
Behringer manual, this looks like the best "bang for the buck" out there by
far. It has ten numbered buttons, a bank up button, bank down button, and two
built-in expression pedals. For each button or preset, you can send up to five
program change messages, two CC messages, two additional CC messages based on
expression pedal positions, and a note on/off message. The MIDI channel that
any of those ten messages are sent on is configurable. The only hitch (and
it's not a big deal at all) is that the channel for each of those ten
functions is a global setting so it remains the same on every preset. I
really can't imagine where that would be a problem though. Whether or not this
unit has any drawbacks depends on what you're trying to do. You cannot send
program change messages to any more than five devices on five different
channels. Using any of the buttons as CC switches can be done but requires a
pretty thorough understanding of the unit and how to set it up. There are no
additional jacks in the back for hooking up additional switches or pedals.
With the two built-in expression pedals though, that makes that aspect of it
roughly equivalent to the All Access.
Rocktron All Access
Figure 9: Rocktron All Access
I personally consider this to be the Cadillac of foot controllers. In
addition to the buttons allowing access to various sytem parameters, the
unit has three rows of five numbered buttons. It can be configured such
that all 15 buttons send program change messages. Or two rows can send
program change messages while the top row sends CC messages. Or one row
can send program change messages while the top two rows send CC messages.
Or all 15 buttons can send CC messages. For each button configured to
send program change messages, what you can actually do is send anywhere
from zero to 16 program change messages (one for each MIDI channel). In
addition, there are a whole bunch of other custom MIDI messages that can
be sent at the same time also. The buttons configured to be CC messages
can also have their default state programmed per patch. So, for example,
I have a button programmed to be "delay on/off". If I store the button state
as "on" for patch #1, then whenever I select patch #1, the light above
that button will illuminate and a CC message will be sent telling the delay
to turn on. If I store the state of that button as "off" for patch #1, then
whenever I select patch #1, the light above the button will be dark and a
CC message will be sent telling the delay to turn off. For each CC button,
you can configure whether what you program into that button is global or
is allowed to differ per patch. There are two input jacks in the rear where
you can plug in additional pedals. I have two volume pedals plugged in there
to operate as expressions pedals. I adore this unit and haven't even begun
to describe all that it will do. My only complaint is that I wish I could
plug more volume pedals into the rear. Of course, MIDI Solutions makes a
gadget that would allow me to do just that. The last thing I should point
out about this unit also is that its about as sturdy a unit as you'll ever
find. The chassis is very thick metal and I'm pretty sure I could run over
it with my car and not even notice. It is, however, very heavy.
Ground Control Pro
Figure 10: Ground Control Pro
Information submitted by Louis Hesselt-van-dinter.
The Ground Control was developed by Digital Music Corp to control thier guitar effects pedals switching system. It will also control up to eight different MIDI devices. Recently, the Ground Control was replaced by the Ground Control Pro. The GCP is a larger unit with more buttons and is designed to compete with the All Access. The buttons can be configured to all send program change messages or can be split where some send program change messages and the others send CC messages. The original Ground Control is still a much sought after unit and can be found use for $150-$200US. It can be easily upgraded to the newest software (version 2.5) with a new chip ($30 from DMC). Please note that a chip socket is needed to install the new software. The Ground Controls with software 1.0 do not have the chip socket, 1.1 and above do have the chip socket. It's not apparent that, aside from the different design and increased number of buttons, there are any other differences between the Ground Control and the Ground Control Pro.
Rocktron MIDI Mate
Figure 11: Rocktron MIDI Mate
Information submitted by Louis Hesselt-van-dinter.
The Rocktron MIDI Mate appears to be, at first glance, a fairly sophisticated control pedal. It has the standard 10 switches. It also allows the switches to be set up as 5 Program Change switches and 5 Control Change switches. The only problem with the MIDI Mate is that it is designed to control only a single MIDI device. It can send additional MIDI information to other MIDI devices, but you can't select which MIDI device you wish to control.
Lexicon MPX R1
Figure 12: Lexicon MPX R1
Information submitted by Greg Howard.
The Lexicon MPX R1 is generally marketed as a companion to the Lexicon guitar multi-effects processors and is usually only available in a package along with those processors. At it's heart, however, the MPX R1 is a general MIDI foot controller capable of controlling any MIDI device with a little tweaking. As with many of the other controllers, the MPX R1 is capable of generating multiple program change messages on multiple MIDI channels. Specifically, eight simultaneous messagess can be generated with one preset change. In addition, CC messsages can also be sent as part of a new preset and it has a dedicated CC bypass mode for each program that allows you to send on/off messages for various parameters. It also has a programmable relay switch for changing amp channels on many amps and can accept an additional 3-position on/off switch via a TRS (tip-ring-sleeve) connection as well as a volume pedal (in addition to the built-in expression pedal). According to Greg, the menu is somewhat dense for programming but the unit is very versatile.
MOTU MIDI Time Piece
Figure 13: MOTU MIDI Time Piece
Information submitted by Louis Hesselt-van-dinter.
Not a foot controller but this handy one rack space device is essentially a MIDI router (like a combination thru and merge box but more sophisticated). It has eight MIDI inputs and eight MIDI outputs. Any input can be assigned to any output. Any input can be merged with any other input; no limit on the amount of merged groups. Any MIDI channel can be assigned to any output. MIDI channels can be individually merged. Any MIDI channel can be muted. This can all be done with the controls on the unit itself or programmed externally using a computer.
As a Stick player of some years now, it's been pretty hard to miss that there are a lot of Stickists out there that work with rigs larger in size than your average guitarist. This is partially a result of the type of personality that tends to gravitate toward the Stick and the type of music that is most prominently played on the Stick. It also has a lot to do with the fact that, with two sides of the instrument running separately, you essentially need two effects chains and generally end up buying two of what your average guitarist would buy one of. Regardless of the reasons, talk of processors and how to control them comes up pretty regularly as a topic of conversation in the various discussion groups devoted to Stick. Having taken part in many of those discussions and also having put together what I consider a pretty solid rack system over the years, I figured it was time to put some of what I've learned down on paper (so to speak) so as to provide a reference for those entering into this age old conversation for the first time.
Of course, many effects processors come as all-in-one units that rest on the floor and provide all your processing and foot control in one tidy package. These are pretty robust units too and I wouldn't suggest replacing them if you're happy with them. So far, the best multi-effects processor I've owned has been the Boss GT-3 which is a single all-in-one floor unit. For me though, the floor units eventually began to simply eat up too much space and it was becoming difficult to setup on small stages with my band (not to mention hauling all of that stuff around in various bags). So I switched over to an all rack mounted system. On paper, this means putting multiple devices in the rack and using a single controller on the floor to control each and every device. Of course, not all devices and/or floor controllers are ideally setup for this type of rig and a certain amount of trial and error (buying and selling) was involved in eventually getting to the setup I have today.
What follows is a general description of MIDI as it pertains to controlling effects units along with the pros and cons of various types of setups. I should pause here also and acknowledge that, in addition to my own research and trials, I picked up a handful of tips and tricks from fellow Stick players Louis Hesselt-van-dinter, Tom Griesgraber, and Greg Howard. Hopefully some of the information contained here will help others in avoiding some of those early purchases that end up falling short and heading for EBay.
Contents
- Multi-Effects and Control
- MIDI - More Than Just Notes
- MIDI Messages
- One Device
- Multiple Devices
- Lots of Variables
- My Control Setup
- Foot Controllers
Multi-effects and control
Aside from the widely available array of stomp boxes that still permeate the market (and are still preferred by many players), there are very few effects units left that aren't multi-effects. The technology has gotten so cheap that to find, for example, a dedicated digital delay isn't an easy task. At a minimum, effects units are made up of at least the time based effects such as reverb, delay, chorus, flanger, harmonizer, etc. At most, you get all of that plus everything else imagineable (distortion, compression, wah, envelope filters, etc).The setups of these units are all basically the same. Configurations of effects are broken into user programmable patches. A patch is just a single configuration. You might setup a single patch in a guitar multi-effects unit to have a little reverb, distortion, and heavy delay. The next patch might have not so much delay, no distortion, some light chorus. In most units, you can name these patches something meaningful. The name might describe a particular song that you play or it might describe the tone itself if it's something you reuse often. It could be the name of your cat.
Regardless of how you set it up, you're most likely going to want the ability to change patches on the fly while you play. In many cases, you might also want to keep the same patch dialed up but change certain parameters of that patch on the fly. You might want to take the distortion patch described above and simply decrease the delay level without changing patches. If you have a floor unit, this is most likely all built-in and ready for programming. If you've switched to rack-mounted units though, you don't have any way to control them aside from tweaking the settings on the front panel by hand.
You're not stuck though. Any rack mounted audio processor built since the mid to late 80s is most likely MIDI controllable. The only hitch is that you have to go out and get yourself a MIDI foot controller to hook up to your unit. You also need to know how to setup the controller to talk to your processors.
MIDI - More than just notes
If you're anything like me, your early encounters with MIDI (Musical Instrument Digital Interface) didn't involve much more than seeing some guy with a generic keyboard plugged into a sound module saying "it's MIDI" at which point you replied "so what?". MIDI is a lot more than a guy playing notes though. Born in 1981 and officially published in 1983, MIDI specifies not only the hardware used to connect devices but also a rich protocol allowing musical devices from different manufacturers to speak to one another seamlessly. Almost overnight, the MIDI protocol took over the music industry and, by the mid to late 80s, every piece of digital music gear available had some form of MIDI implementation.In addition to generating sounds, MIDI is also used for general control like changing programs, turning certain parameters on and off, starting and stopping a drum machine or a recording device, etc. That means that even units that don't actually generate any sound (like multi-effects processors) can be controlled via MIDI as long as they adhere to the MIDI specification. And, as the MIDI standard dictates, you can have several effects processors in your rack all being controlled by a single controller. And of course, they can all come from different manufacturers.
MIDI messages
The thing to remember with MIDI is that it is nothing more than a specification. It's not a product or a thing you can purchase. It's a well thought out set of instructions for manufacturers saying "if you want your device to talk to other devices using this language, here is the syntax". It's then up to the individual manufacturer to make it work. At its heart, MIDI is simply a series of messages. Each message may or may not have a set amount of extra data that comes along with it. For example, a "Note On" message is followed by a number representing the note that is to be turned on and followed then by a number representing the velocity (or volume) of that note. Similarly, a "Note Off" message is sent to stop a note. As with the previous message, "Note Off" is followed by a number representing the note to turn off and a number representing the velocity (for note off this determines how quickly the note should be released).The MIDI specification contains a fairly large number of messages and it is beyond the scope of this writing to cover general MIDI topics. For our purposes, however, there are a few pertinent messages that should be discussed.
Note On/Off
As I said, these messages are sent to a device to instruct it to play notes. The "Note On" code is followed by a number representing the note to turn on and a number representing the velocity. The "Note Off" code is also followed by numbers representing the note and velocity. Some delay units also use note on/off messages for tap tempo (allowing you to tap twice to set the delay time on the fly).
Program Change
"Program Change" messages are sent to instruct a device to (you guessed it) change programs or patches. Taking an effects processor as an example, sending a "Program Change" code to your processor tells the processor to change patches. The message is then followed by a number representing which patch to change to.
Control Change
"Control Change" (or "CC") messages can be used to control the parameters of a patch. For example, to leave a patch on your effects processor dialed the same but decrease the delay level, you could send a CC message that instructs the processor simply to decrease the delay. MIDI allows for the possibility of several controllers to be in use so the CC message is first followed by a controller number which could be any number from 0 to 127. The controller number is then followed by a new value for the parameter to be changed. Typically there are two different kinds of pedals that can be used to deliver CC messages to a device.
- Control (CTL) Pedals
Control pedals (you also see these called "CTL" or "CTRL" pedals) are pedals used to perform simple on/off switching. Typically, a lower value and upper value is set and the pedal can work in one of two modes. In the "momentary" mode, the upper value is sent as a CC message when you push the pedal while the lower value is sent when you release the pedal. In "latch" mode, the upper value is sent when you push and release the pedal. The lower value is sent when you push and release the pedal again.
- Expression Pedals
These pedals are used to simulate things like volume pedals or wah wah pedals. They are also referred to as "continuous controllers" (although that term also includes other types of controls such as sliders and wheels). As an expression pedal is pushed forward or backward, a steady stream CC messages is sent each with a value representing the current position of the pedal. The lower-most and upper-most values are usually user configurable.
System Exclusive (or "SysEX") messages are sort of a back door allowing large amounts of MIDI data specific to a particular device to be sent or received. A SysEX message is immediately followed by a stream of data that can be of any size. A sentinel is stuck on the end so that any device will know where the exclusive data ends regardless of whether or not that device is able to interpret that data. The first piece of information in that data stream is a manufacturer's ID. From there, it's up to the manufacturer to determine how to handle the rest of the data. In many cases, a manufacturer might dictate that the next piece of data be an ID that specifies a certain device or model.
These are very handy messages. Using a SysEX message, a device can bulk dump all of it's data to a computer through MIDI software. Later, that data can be bulk loaded back into the device via a SysEX message. The software doesn't need to know what it's getting. All it knows is that there is a SysEX message followed by a bunch of data and that data can be blindly written to disk. Later, that same software can blindly send that data back to the device and the device will be able to interpret it and do a bulk load. Similarly, vendors will often supply software with their devices that allow you to edit the device's data on your computer. The edits you perform on the computer are then sent back to the device via a SysEX message.
One device
Figure 1: Simple connection
from controller to device
MIDI channels
In order for two devices to speak to one another via MIDI, they must be operating on the same MIDI channel. The MIDI specification states that MIDI data can be exchanged on up to 16 channels. If a receiving device is not set to be receiving on the same channel as the sending device, the receiving device won't hear the message and nothing will happen. Now ... just so you don't think I lied about stuff working right out of the box, any MIDI compatible device I have ever purchased came out of the box setup to send and receive on MIDI channel 1 so, unless you have a reason to change that, things will work right out of the box. It is something you should always be aware of for many reasons though. You could, for example, purchase something used where the previous owner had changed the MIDI send or receive channel or you could be putting together a setup to run multiple devices (we'll get to that ... be patient). At any rate, the MIDI channel on the sending device and receiving device must match. Once you've taken care of that and established the physical connection (MIDI cable), you're ready to go.
Program change messages
The first and most obvious types of messages you would want to send from a foot controller to an effects processor would be program change messages. Just about any foot controller you have will be setup such that there will be a series of buttons you can push with your feet that are numbered (1 through however many buttons there are). By default, the controller is most likely setup such that pushing button #1 will send a MIDI program change message specifying a change to patch #1. Button #2 will generate a program change to patch #2 and so on. See? Right out of the box.
There are only so many buttons you can fit on a foot controller though and you would probably like to call up way more patches than that. What you'll generally find is that foot controllers are organized by "banks". In addition to the numbered buttons, you will also find a "bank up" as well as a "bank down" button. This simply shifts the program change messages that the numbered buttons send. For example, the Boss FC-200 foot controller has 10 buttons numbered 1-10 and you can generate program changes messages #1-10 by pushing those buttons. If you "bank up" once, pushing those same buttons will generate program change messages #11-20. Banking up again will do another shift (#21-20) and so on.
In some cases, you may not want to have a one to one correspondence between the program change messages sent by the controller and the patches that come up on the receiving device. Unfortunately, here you are at the mercy of your devices. Some foot controllers allow you to specify what program change messages are generated for any given button push. Others don't. On the receiving end, some devices allow you to program how MIDI program change messages are interpreted. For example, you could setup your receiving device such that when it receives program change message #3, it translates that to program change message #7 and changes to patch #7. This is called a "MIDI map". Again though, some devices support this while others do not. For the purpose of controlling just a single device though, the simplest setup is most likely sufficient.
CC messages
As I stated before, the other type of MIDI message that you will most likely be interested in when controlling an effects processor is the MIDI control change (or CC) message. Unlike the program change messages, the CC messages require more forethought and setup. Additionally, there are even less standards as to how devices handle these messages than there are for program change messages.
For starters, there is nothing that says a foot controller will even let you send CC messages. The Boss FC-50 (for example) has a couple of jacks in the back allowing you to plug in external switches to send CC messages but, by itself, it won't send them. In addition, the controller number of the CC message for either jack is hard coded so you're pigeon-holed into only being able to send one of two controller numbers with your CC message. If you're interested in any others, you're out of luck.
On receiving devices, it's even worse. Some processors provide charts for receiving CC messages mapping what controller number corresponds to what parameter. In other words, they'll tell you that controller #21 change (for example) the delay level of their processor. If you're using an FC-50 (where 21 isn't one of the hard coded controller numbers), then you can't change the delay level ... period. Among the postives of these kinds of devices though are that, assuming you have the means to generate any kind of CC message, they usually have a controller number assigned to every single parameter on their devices meaning that you can do anything via MIDI that you can do by hand using the device's user interface.
Other receiving devices (such as most Boss/Roland multi-effects processors) make their CC messages configurable on the receiving end. So on a Boss VF-1 (for example), you can program a patch such that controller #7 will adjust the delay feedback. This gives you the freedom to work within the shortcomings of your foot controller (hmmmmm ... so the Boss FC-50 works well with Boss processors). This approach is also really cool because it allows you to change more than one parameter with a single controller. The drawback to this approach is that the Boss processors only allow so many of theses "assignments" per patch. On the VF-1, that number is four. That means that, on any given patch, you can't have more than four parameters change via CC messages. That might not seem like that big of a deal but, trust me, four is nothing. On some of the Boss floor based effects units (GT-3, GT-6) or even the full rack predecessor to the SE-70 (Roland GP-100), the number of "assignments" per patch is more like nine which is a much more reasonable number.
Multiple devices
Figure 2: Connecting
multiple devices
Hooking up multiple devices, then, is a matter of running a MIDI cable from your controller's "MIDI Out" to the first device's "MIDI In". Another cable is then run from the first device's "MIDI Thru" to the next device's "MIDI In". You can then connect to another device and then another in the same fashion (see figure 2).
Of course, simply hooking everything up won't be near enough setup to make this all work. If you simply hook it all up out of the box and turn it on, your controller will send program change messages out on MIDI channel 1 to two (or more) devices setup to receive on channel 1. That means that pushing button #5 (for example) on your controller will result in all of your devices changing to patch #5. If that's what you're after, that's great but I'm guessing this isn't how you want to work. Suppose you want to push button #5 and have your first device change to patch #1, your second device change to patch #12, and so on. This is where things get tricky (but also powerful) and there are a couple of ways to handle this.
MIDI mapping
If your devices support MIDI maps, this is a prime example of where they can come in handy. As I mentioned before, a MIDI map on a receiving device allows you to interpret an incoming MIDI message anyway you want. If you were to edit the MIDI map on your first device and program it such that program change #5 is interpreted as program change #1, then when you hit button #5 on your controller, your first device will change to patch #1 while feeding the original program change #5 out the "MIDI Thru" to the next device. Now, you can go down the line of devices programming their MIDI maps in the same fashion and end up having your devices switch to the patches you've specified from just a single button push on the controller. Of course, there are many devices out there that don't support MIDI maps which leaves you stuck with out some outboard help (see discussion about MIDI Solutions products).
MIDI channels (again)
Using multiple MIDI channels is really the best way to control multiple devices but also requires that you have a controller that allows you to send messages on multiple channels. All controllers are not created equal and some popular controllers do NOT support this (more on that when I list brands at the end). If you do have a controller that supports multiple channels though, you're in like Flynn.
The physical setup for using multiple channels is no different than for using maps. The difference comes in the programming of the controller and the setup of the receiving devices. In the case mentioned above (where we wanted button #5 to change the first device to patch #1, the second device to patch #12, and so on), you would start by setting up your receiving devices. If you have two devices (for example), you could set the first device to receive on MIDI channel 1 and the second to receive on MIDI channel 2 (these can be any number from 1 to 16). The next step is to generate the messages. I use an All Access controller made by Rocktron. On the All Access, each button push is capable of generating a program change message on up to 16 channels. So, using the above example again, I would program button #5 to generate program change #1 on channel #1 and program change #12 on channel #2. Now when I push button #5 ... voila! No mapping needs to be done on any of the receiving devices. Aside from setting the MIDI receive channel, all of the programming is done in the controller.
Lots of variables
Hopefully you're not more confused now than you were when you came here. There are a ton of variables that dictate what you can do and how you can do it. Most of those variables have to do with the shortcomings of various devices. First of all, you may have already spent money on a controller that doesn't support multiple channels. You might also be hooking that controller up to a device that doesn't support MIDI maps. Maybe you want to hook up more external pedals for CC messages than your controller allows. Or worse, maybe you have devices with no "MIDI Thru".That last one is a real pet peeve of mine. Roland/Boss seem to have some sort of aversion to "MIDI Thru" connections and I don't know why. Some of their devices have them while others don't. On some of the devices that don't, you can set a parameter that changes the "MIDI Out" into a "MIDI Thru". On others, you can't. One of the most popular effects setups for your average Stick player is to run the two sides of the instrument through two Boss SE-70 or VF-1 multi-effects processors. Guess what? The VF-1 doesn't have a "MIDI Thru" and you can't configure the "MIDI Out" to act like a thru. AAaaaaack!!
Don't sell your gear yet though.
MIDI Solutions
I absolutely cannot say enough good things about the company MIDI Solutions. They are based out of Vancouver, BC and all they do is solve your little annoying MIDI problems.
- MIDI Mapper
As I mentioned above, suppose your controller doesn't allow you to send messages on multiple channels and one or more of your devices doesn't support midi maps? The "MIDI Mapper" is a little black box about the size of a cigarette pack. It takes a single MIDI input, has a single MIDI output, and doesn't require batteries or AC power. Using software provided free by MIDI Solutions, you can program the mapper to take any incoming MIDI message and convert it into any outgoing MIDI message. Once your map is all setup, you can send the data to the little mapper via SysEX messages.
- MIDI Thru Box
Figure 3: 1-to-2 MIDI Thru Box
- MIDI Merger
Figure 4: 2-to-1 MIDI Merger
More
That's just the tip of the iceberg of all the gadgets that they make and sell. These boxes are no frills and in-expensive. It's not often that I'll really toot a company's horn like this but they really fill a need very very well.
My control setup
Figure 5: My current MIDI control setup
I use an All Access foot controller made by Rocktron. This unit also allows me to hook up two external volume pedals and converts the input from the volume pedals into MIDI CC messages. The volume pedals are hooked up with standard audio insert cables.
My GI-20 GK-MIDI converter (which converts output from a GK-2A pickup into straight MIDI), as well as the two VF-1 multi-effects processors do not have "MIDI Thru" connections so I can't simply daisy chain all of my devices. I should point out here also that most MIDI experts discourage daisy chaining more than 3 or 4 devices anyway in case your MIDI data degrades as it passes from device to device. So right off, I put one of the MIDI Solutions products into play. A 1-to-4 "MIDI Thru Box". A single cable connects the All Access to that box.
Starting with the simpler connections, a MIDI cable runs from the "MIDI Thru Box" to the bass VF-1 multi-effects processor. A second cable runs to the Echoplex Digital Pro. The EDP has a "thru" connection so a short MIDI cable is run from there to the "MIDI In" of the D-TWO. Yet another short cable is then run from the "thru" on the D-TWO to the "in" on the melody VF-1.
The cable running to the lowest "MIDI Merger" on the picture is where things get interesting. The Echoplex generates song start/stop messages as well as timing messages out the "MIDI Out" connection when you begin and end loops. I like to use these messages to start and stop the drum machine and also control the tempo of the drum machine. That way, I can use MIDI to sync drum patterns up with my looper. The problem is, I also want to use my All Access to send program change messages to the drum machine as well.
My second MIDI Solutions box comes into play here. A short cable runs from the "MIDI Out" of the Echoplex to one of the inputs of a 2-to-1 "MIDI Merger". Another cable runs from the thru box that started all this into the second input of the merger. The single output from the merger is then run to the "MIDI In" of the drum machine. The drum machine now recieves all of the program change and CC messages sent from the All Access as well as the song start/stop and timing messages generated by the Echoplex.
Similarly, the last cable coming from the thru box is running to a second "MIDI Merger". In order to generate synth sounds, a GK pickup on my Stick runs into the GI-20. The GI-20 then converts the signal to MIDI and generates note on/off messages out it's "MIDI Out" connection. A short cable must be run from that connection to the "MIDI In" on the XV-2020 synth module (the module that actually generates the sounds). The problem here is that I also want to control the patches on the XV-2020 with my foot controller so, again, we need two devices going to the single MIDI input.
So again, we bring a "MIDI Merger" into play. From the original thru box, a cable carries messages from the foot controller to the merger. A cable from the "MIDI Out" of the GI-20 also runs into the MIDI merger. A single output from the merger is then run to the "MIDI In" of the XV-2020 module. Lastly, in order to also carry the foot controller messages to the GI-20 (for patch changes), a short MIDI cable is run from the "MIDI Thru" of the XV-2020 to the "MIDI In" of the GI-20.
The number of patches I use on any one device is actually pretty minimal. On the melody VF-1, I have around five or six patches that I use regularly. On the bass VF-1, it's even less. The most patches I use are on the D-TWO delay as different tunes require different delay times. The All Access controller is where I have things broken up by song. I have at least one patch on the All Access for every song I play. Each of those patches picks and chooses what patch it's going to bring up on the two VF-1s, the D-TWO, the XV-2020, the GI-20, and selects a rhythm pattern on the DR-770. Additionally, I have CC buttons on the All Access that globally turn the delay on or off, send CC messages to either of the VF-1s, turn the synth module on or off, give me access to parameters settings on the Echoplex, and allow change of the feedback level on the Echoplex.
That's a boat load of devices all doing what I want them to with just a simple touch of the foot. MIDI is powerful stuff!
Foot controllers
Over the course of the years, several companies have dabbled in trying to make the ultimate foot controller. Some have survived while others haven't. Today, there are still several to choose from. Some are marketed as controllers specific to a certain piece of gear but, underneath, are still nothing more then general MIDI controllers. It would be very presumptious of me to claim to know all of the controllers currently available. Especially considering the used gear market. But I have compiled a list of some of the more popular devices. I have first hand experience with some of them. With others, I've culled information either from the manufacturer's websites or from colleagues who have used them.Boss GFC-50 (or FC-50)
Figure 6: Boss FC-50
Roland FC-200
Figure 7: Roland FC-200
Behringer FCB1010
Figure 8: Behringer FCB1010
Rocktron All Access
Figure 9: Rocktron All Access
Ground Control Pro
Figure 10: Ground Control Pro
The Ground Control was developed by Digital Music Corp to control thier guitar effects pedals switching system. It will also control up to eight different MIDI devices. Recently, the Ground Control was replaced by the Ground Control Pro. The GCP is a larger unit with more buttons and is designed to compete with the All Access. The buttons can be configured to all send program change messages or can be split where some send program change messages and the others send CC messages. The original Ground Control is still a much sought after unit and can be found use for $150-$200US. It can be easily upgraded to the newest software (version 2.5) with a new chip ($30 from DMC). Please note that a chip socket is needed to install the new software. The Ground Controls with software 1.0 do not have the chip socket, 1.1 and above do have the chip socket. It's not apparent that, aside from the different design and increased number of buttons, there are any other differences between the Ground Control and the Ground Control Pro.
Rocktron MIDI Mate
Figure 11: Rocktron MIDI Mate
The Rocktron MIDI Mate appears to be, at first glance, a fairly sophisticated control pedal. It has the standard 10 switches. It also allows the switches to be set up as 5 Program Change switches and 5 Control Change switches. The only problem with the MIDI Mate is that it is designed to control only a single MIDI device. It can send additional MIDI information to other MIDI devices, but you can't select which MIDI device you wish to control.
Lexicon MPX R1
Figure 12: Lexicon MPX R1
The Lexicon MPX R1 is generally marketed as a companion to the Lexicon guitar multi-effects processors and is usually only available in a package along with those processors. At it's heart, however, the MPX R1 is a general MIDI foot controller capable of controlling any MIDI device with a little tweaking. As with many of the other controllers, the MPX R1 is capable of generating multiple program change messages on multiple MIDI channels. Specifically, eight simultaneous messagess can be generated with one preset change. In addition, CC messsages can also be sent as part of a new preset and it has a dedicated CC bypass mode for each program that allows you to send on/off messages for various parameters. It also has a programmable relay switch for changing amp channels on many amps and can accept an additional 3-position on/off switch via a TRS (tip-ring-sleeve) connection as well as a volume pedal (in addition to the built-in expression pedal). According to Greg, the menu is somewhat dense for programming but the unit is very versatile.
MOTU MIDI Time Piece
Figure 13: MOTU MIDI Time Piece
Not a foot controller but this handy one rack space device is essentially a MIDI router (like a combination thru and merge box but more sophisticated). It has eight MIDI inputs and eight MIDI outputs. Any input can be assigned to any output. Any input can be merged with any other input; no limit on the amount of merged groups. Any MIDI channel can be assigned to any output. MIDI channels can be individually merged. Any MIDI channel can be muted. This can all be done with the controls on the unit itself or programmed externally using a computer.