Understanding and using MIDI messges for guitar effects

If you're a guitar player looking to control your pedalboard or complete rig, understanding and utilizing MIDI messages can be highly beneficial. By learning how to use MIDI messages to control your guitar effects, amplifiers, switchers, loopers, and other devices, you can create a highly customized and efficient setup that meets your needs as a player.

MIDI is a straightforward and versatile protocol that enables communication between devices. To start using MIDI to control your equipment, it's crucial to understand the basic principles of MIDI messages and how to use them. Keep in mind that each device may have its unique requirements, so it's essential to read the manual for each piece of equipment.

MIDI Wiring:
When it comes to MIDI, a common standard is the DIN5 connector, which has five pins arranged at 180 degrees. All connectors on MIDI devices are female, while MIDI cables come with two male connectors. The cables can be inserted freely, with no particular orientation needed. To connect your equipment properly, you should connect the MIDI Out to MIDI In or MIDI Through to MIDI In. Some companies use a 3.5mm stereo TRS headphone jack instead of the DIN5 connector, particularly for compact devices like some guitar effects. While this is an approved standard by the MIDI organization, it's always a good idea to double-check the pinouts in your manual to ensure correct wiring.

Input Devices:

These devices include MIDI footcontrollers, controllers, computers, synthesizers, and guitar processors. They have buttons, sliders, faders, or footswitches that can be programmed to send out MIDI messages. The modern MIDI controllers offer advanced functionality and can even be programmed using a computer or phone. For professional use, it is recommended to use a MIDI controller with a display screen and the ability to send a sequence of MIDI messages to control multiple devices simultaneously. However, if you're on a tight budget, be sure to check the capabilities of any old-fashioned MIDI controllers before purchasing. Look for controllers with built-in expression pedals or a jack plug for external expression pedal. While some guitar processors can act as MIDI controllers, their capabilities are often limited compared to dedicated MIDI controllers.

Receiving /slave/ devices:

Receiving devices are any devices that can receive and respond to MIDI messages, such as guitar effects, processors, amplifiers, switchers, and loopers. Some devices, like guitar processors, can also be used as MIDI controllers or receiving devices.

What is the difference between MIDI Out and MIDI Thru?
Not all MIDI devices have all three types of ports - some only need to transmit or receive, and thus only require a MIDI Out or In, respectively. The MIDI Thru port, which is used to chain multiple devices, is also optional and may be omitted to reduce size or cost. The MIDI Thru port retransmits the same MIDI message received at MIDI In. However, if your device doesn't have a MIDI Thru port, you can often use the MIDI Out port instead.

To control multiple music devices, a single controller is often used. Some devices come with MIDI out or MIDI thru outputs that allow you to chain the MIDI signals. But if there aren't enough MIDI outputs, you'll need to use a MIDI splitter. A MIDI splitter is a hardware device that has one MIDI input and multiple MIDI outputs. With a MIDI splitter, you can easily connect multiple MIDI devices to a single MIDI controller, making it easier to manage your setup.

Connecting your devices:


In most cases, a single controller is used to control all devices. Some effects or switchers have MIDI out or MIDI thru. These are used to chain the MIDI. 

If the devices you want to control do not have MIDI out or MIDI thru outputs, you will need to use a MIDI splitter. This is a hardware device that has one MIDI In and several MIDI outputs.

MIDI channels:
MIDI communication relies on 16 channels for transmitting messages between the controller and the receiving device. If both the controller and the receiving device are set to the same MIDI channel, they can communicate seamlessly using the correct MIDI messages. However, if they are set to different channels, they won't be able to "talk" to each other.

To control multiple devices, assigning them different MIDI channels is the solution. For instance, if you have two identical delays on your pedalboard, setting them to different MIDI channels will allow you to control them independently via your MIDI controller.

Some devices can receive MIDI messages on all 16 channels through its OMNI functionality. It's useful when you have a small setup or are testing your device, but it's better to use independent MIDI channels for more complex setups.

Program Change:
MIDI is a universal protocol with different types of messages used for specific purposes. Program Changes are MIDI messages that are commonly used to switch presets, modes, looper presets, amplifier channels, and more. There are 128 program changes available, numbered from 1 to 128, and with 16 channels, you have access to a total of 2048 MIDI program changes.

Control Change:
Control Changes are MIDI messages used to control variable parameters like volume, pan, effects from expression pedals, volume pedals, encoders, sliders, and more. They are also numbered 1 to 128, but each message includes an extra bit for a value. This is the main difference between Program Change and Control Change (CC). Having a value allows you to control parameters like volume. For example, CC#7 is commonly used for volume control with a value of 1 representing mute and 128 representing maximum volume, with all values in between representing different volume levels.

Control Changes can also be used on keys or footswitches to represent pressing and releasing keys or tap tempo. When using CCs for key presses and releases, the receiving device divides the values into two groups - 0 to 63 representing key releases, and 64 to 128 representing key presses.

Some devices with program change-based presets can also be controlled by control changes if the value doesn't matter. Although MIDI is widely used, there are still classic and widely used controls for specific purposes. You can find more information about these controls on the MIDI organization website

Note On messages:
MIDI is not only used for guitar equipment but also by synthesizers with piano keys. Note On messages are MIDI messages that are primarily used by devices with piano keys. These messages are similar to control changes and contain notes numbered 1 to 128, with values from 1 to 128 representing velocity. Velocity is the intensity or force with which the note is played, with 128 being the loudest and 1 being silence.

Note On messages are not typically used by guitarists, but they are important for synthesizers and other keyboard-based instruments.

SysEx messages:
SysEx (short for System Exclusive) is a type of MIDI message that allows for communication and control of specific parameters and functions of MIDI devices beyond what is possible with standard MIDI messages.

SysEx messages are usually longer than other types of MIDI messages and are designed to be device-specific, meaning that each manufacturer can define its own SysEx message format and parameters. They can be used to store and recall patches or settings on a MIDI device, as well as to update firmware, configure settings, and control various aspects of the device's operation. To send or receive SysEx messages, specialized software or hardware may be required. As SysEx messages are more complex, they are not covered in this topic. 

How to control your devices?
When it comes to controlling your MIDI devices, it's important to read the MIDI implementation part of the manual first. There are two main ways to implement MIDI control: through a Learn function or through fixed MIDI messages.

The Learn function is commonly used by switchers, loopers, programmable selectors, and amplifier channel switchers to program their rig quickly and easily, especially for MIDI beginners. To use this feature, select a preset, press and hold the MIDI Learn button, and wait for an incoming MIDI message. These devices usually accept program change and control change messages, but note that in sequential MIDI messages, they only recognize the first message and save it to the preset you choose. To control multiple devices, reserve the first MIDI message for the device with the Learn function, then send MIDI messages for all other devices. Remember that different devices may use different MIDI channels.

The other method is through fixed MIDI messages control. Devices using this method usually have a whole section in their manuals with information on how to configure them via MIDI. 

How to resolve MIDI issues?
When experiencing communication issues between two MIDI devices, the problem is likely due to either hardware or MIDI message issues.

Hardware issues may be caused by a defective cable. To test the hardware communication between devices, check if your device has an LED that blinks when it receives MIDI messages. This can be used as a MIDI tester, or try with another MIDI cable directly connected between the MIDI controller and the controlled device.

Message issues are more common. To troubleshoot them, start by checking the MIDI channels. Ensure that the channels are set to the same value for both the controller and receiving device. Then, check the required MIDI messages to confirm that they are being sent correctly.

If you're unsure about how to control your devices and you already have a controller, I highly recommend opening the user manuals for both devices. Start with something simple like switching presets, and then try improving your skills by adjusting some parameters. Once you've tested more commands provided by the manufacturer, controlling other devices will become much easier.

Useful links:
  • I have written a post on MIDI schematics on the N-audio Blog page.
  • The website of the MIDI Association - the source where you can find everything about MIDI.
  • Also, check this Sparkfun MIDI tutorial.
  • I have been using the MIDI-OX program for Windows for quite some time now, and in my opinion, it is an excellent tool that can transform your sound card into a versatile MIDI tool.