• James

The Beginner's Guide to MIDI


What Is MIDI? Simply put, MIDI is a communcation protocol that allow devices to communicate with each other. There are various types of MIDI messages, the two most common being Program Change (or PC) messages and Control Change (or CC) messages. There are also others such as MIDI Clock message and MIDI Note messages. In this article, I will write about MIDI specifically for guitar effects, with the most common being PC and CC messages. I will be using the Strymon Timeline as an example.


Photo taken from the Strymon website

MIDI Connections

In the Timeline, there are two MIDI connection: MIDI IN and MIDI OUT. These are standard DIN 5 plugs that are common among all MIDI devices. As the name goes, the MIDI IN jack takes incoming MIDI messages while the MIDI OUT jack sends outgoing MIDI messages generated from the Timeline or passes the incoming messages from MIDI IN thru to MIDI OUT. When using an external MIDI controller, you need to connect the MIDI OUT from your controller to the Timeline's MIDI IN. You can chain other MIDI-enabled effects by connecting that effect's MIDI IN to the Timeline's MIDI OUT.

MIDI Channel

In all MIDI messages, there consist of a MIDI channel component which determines which channel to send the message to. The MIDI channel value ranges from 1 - 16. If your Timeline is set to receive on MIDI channel 1, and your BigSky is set to MIDI channel 2, you would want to send MIDI messages on channel 1 to control the Timeline and on channel 2 to control the Bigsky. There is also an OMNI channel setting, which simply means to receive MIDI messages on any of the 16 channels.

Program Change Messages

Generally, PC messages are used to call up different patches or presets in most MIDI-enabled effects. A PC messages consists of 2 components: The PC Number and the MIDI Channel. The PC number is a value between 0-127. If we refer to the Timeline Manual page 24, you will see that sending a PC#0 message will call BANK 00A, while a PC#1 message will call BANK 00B.

Control Change Messages

CC messages consist of 3 compoments: The CC Number, CC Value and the MIDI Channel. Similar to the PC message, the CC Number is a value between 0-127. The CC Value is also a value between 0-127. In the Timeline, CC messages are used to control various funcstions and parameters in the pedal. If we refer to the Timeline Manual, to call the RECORD function in the Timeline, we need to send a CC message #87 of any value. Usually, the CC Value is used to control the parameters of a certain function. To control the Timeline LOOPER LEVEL function, we need to send a CC message #98 of value 0 - 127. We can safely assume that a value of 0 will mute the looper level, while a value of 127 will set the looper level to the highest volume. We can also apply this to other functions. If you want to control the A footswitch on the Timeline, we need to send a CC message #80 of value 0 if we want to simulate pressing down on the A footswitch, or a value of 127 to simulate release the A footswitch.

End Notes

That is all there is to it to get started. A good MIDI controller will allow you to program all the values you need on the controller itself or at least on an accompanying software. It should also allow you to send multiple PC/CC messages per preset. This is important as some functions need to receive more than 1 MIDI message to be called. Using the Timeline as an example, in the manual it states that:

"To access presets 0-127 via MIDI, send program change messages as shown above. To access 128 to 199, first send a MIDI Patch Bank message (CC# 0) with a value of 1, then the program change message. To switch back to a preset from 0 to 127, send CC #0 with a value of 0, then the program change message."

That means that to access preset 128, you need to send a PC #0 message, followed by a CC#0 of value 1. This is why the multiple MIDI message capability is very important.

Feel free to post any questions and comments you have!

#midi #midicontroller #midimessages #morningstarfx #beginnerguidemidi

© 2020 Morningstar FX Pte Ltd