Read this if you’re wondering how MIDI 2.0 will change how you work and play music.
It’s been over 35 years since the MIDI Specification was adopted, and it’s had an amazing life. MIDI is one of the most successful and long-lived digital protocols ever invented, and its use is still growing. (Anyone remember SCSI, RS-232, ADB, or V.90 modems?) When it was first published in 1983, the original MIDI 1.0 Specification was a fraction of its current length. Today, with additions such as MIDI Time Code, MIDI Show Control, and Multichannel Polyphonic Expression, the published spec is over 300 pages, and that doesn’t include over a dozen appendices and “Recommended Practices.” But it’s still MIDI 1.0. Any hardware or software that follows the specification will still work exactly as it did when it first appeared.
So, why do we need MIDI 2.0? Well, computing power and speed has increased by many orders of magnitude since MIDI first came out. The cost of that power, as well as memory, has decreased by just as much. Today’s digital devices are capable of so much more than their predecessors. MIDI 1.0 can’t really take advantage of everything that new technology can do—from your watch on your wrist to the giant console in a multimedia post-production studio.
Pushed to the Limit
MIDI 1.0 had two severe limitations that became apparent pretty quickly. One was that a MIDI cable could only address 16 separate channels. This was okay as long as all of your synths only responded on one channel. As soon as multitimbral synths appeared, though, you had no easy way to use more than one of them. The other was that the limited bandwidth only allowed about 1000 events per second to transmit over a MIDI cable. That might sound like a lot, but consider if you were to play 10-note chords on all 16 MIDI channels at the same time on the same cable. Even without any other data like controllers or pitch bend, the notes would end up spreading out over nearly 1/6th of a second. That means they’d hardly be simultaneous.
Manufacturers overcame these limitations by making interfaces that supported multiple MIDI cables simultaneously, thereby multiplying the number of channels available. Then they introduced ways of sending MIDI over faster digital transports, including USB, FireWire, Ethernet, and Bluetooth. But often you can’t use these new transports as flexibly as the original MIDI hardware. For example, you can’t connect two MIDI-USB devices directly to each other; a computer has be between them. If a MIDI-USB device doesn’t conform to Apple’s or Microsoft’s standards for class compliance, then the manufacturer has to create their own software driver, which users have to install manually.
MIDI 1.0 limits commands to 7-bit (0–127) values, which means that only that many values are available for note velocity or for the position of any controller. And it means that any device whose settings are controllable by MIDI can’t have more than 128 parameters. Since only 128 note numbers are available, we are effectively restricted to the Western equal-tempered scale. We can’t easily specify microtones or alternative scales. On the other hand, today’s computers run with 32- or 64-bit operating systems. A new MIDI spec taking advantage of wider data paths could offer far more precision in all of these areas.
Chain of Command
A MIDI 1.0 cable is unidirectional: one device, a master, sends commands and another, a slave, receives them. Without a second cable going the other direction, though, there’s no way for the slave to talk back to the master to communicate what it’s actually doing, or even what it can do. For example, a hardware synth or a mixing console hooked up to a DAW can’t tell the host about its capabilities, like how many input or output channels are available and what their names are. That means you have to either set up a second cable—and the DAW and remote device have to know how to talk to each other—or enter that information by hand.
MIDI 2.0 is designed to overcome all of these obstacles and to add other capabilities. It does that by allowing MIDI connections to carry many other kinds of data. It is totally compatible with MIDI 1.0 devices, so you don’t need to worry that you’ll have to throw out all the gear you’ve accrued over the last couple of decades. Everything will work just as it always has. But MIDI 2.0 will allow the development of much more sophisticated and responsive musical devices. It will also make it easier for makers of all kinds of electronic gear—not just musical instruments, but toys, robots, phones, medical devices, and everything on the Internet of Things—to make products that communicate with the rest of the world using a common language.
What’s New in MIDI 2.0
Perhaps the most visible change in MIDI 2.0 will be the increased data resolution. Taking advantage of today’s much wider digital bandwidths, MIDI messages can use many more bits than MIDI 1.0’s 7-bit limitation. To start, velocity messages for both note-ons and note-offs are 16-bit—meaning you can specify over 65,000 different levels of velocity.
Another big change will be the addition of per-note controller and pitch-bend commands. In addition to the standard per-channel controllers—in which a command such as LFO depth affects all of the notes on a channel—each note can have its own set of controllers, and each note can have a separate pitch-bend value. The relatively recent MIDI Polyphonic Expression (MPE) addition to the MIDI 1.0 spec allows this kind of control over multiple notes by using different channels for different notes.
MIDI 2.0, however, builds these capabilities right in and will even be expandable. A total of 512 distinct controllers are available (as opposed to MIDI 1.0’s 127). Of those, 256 will be defined, and the other 256 can be used for any function. Furthermore, many more channel controllers will be available, and the resolution of all these controllers is now 32 bits; that’s over 4 billion separate values.
More than This
MIDI 2.0 allows for a greatly expanded set of Registered and Assignable (what MIDI 1.0 called Non-Registered) controllers: over 16,000 of each. In MIDI 1.0, these commands were complicated and required up to six distinct MIDI messages to set up and execute. In MIDI 2.0, though, they will be available with a single command.
Note-on and -off messages in MIDI 2.0 carry a lot more information than just note number, channel, and velocity. A note can have an “attribute” assigned to it, which can communicate articulation, like a string sforzando or pizzicato; position of a hit on a drum or cymbal; or pitch information totally independently of the note number, making it easy to construct non-tempered or real-time adjustable scales.
Because pitch information and note number are no longer the same, multiple notes with the same note number but different attributes can be transmitted and understood. Some of these attributes will be common to many MIDI instruments. Some will be used only by individual manufacturers.
MIDI 2.0 also greatly increases the number of MIDI channels addressable over a single cable. It provides for 16 “groups,” each with 16 channels, for a total of 256.
Going Both Ways
The MIDI 2.0 protocol is bidirectional by definition. And it introduces new technologies called Property Exchange and Profiles, designed to take full advantage of this two-way communication. They are part of a new set of commands we call MIDI Capability Inquiry, or MIDI-CI. Devices will include MIDI-CI profiles built into their operating systems.
MIDI profiles are not an entirely new idea—General MIDI is a profile that exists in MIDI 1.0. But if two connected devices use MIDI-CI, they can exchange important information about each other. Their public profiles will announce whether each device supports per-note pitch bend and controllers, how many channels or streams it responds to, how it handles controllers and registered parameters, and what kind of instrument or device it is—a sequencer, an arpeggiator, a rhythm computer, a mixer, an effects device, a lighting board, a video controller, or even a drone.
Some MIDI users have experienced small but audible timing problems caused by uneven clock pulses known as jitter. New MIDI 2.0 messages we call Jitter Reduction (JR) Timestamps and Clock will address these problems. Timestamp messages simply tell the receiver the time of an event rather than relying on MIDI 1.0’s “do this now” approach. Clock messages will make sure that all commands lock to a time base that’s free of jitter.
The MIDI 2.0 message is now called a Universal MIDI Packet. This format supports MIDI 1.0 messages as well as all of the new additions to MIDI. It can be any length from 32 to 128 bits, depending on the requirements of the message. The new specification, like MIDI 1.0 before it, includes a large block of unassigned messages to allow for future expansion. If a device is not MIDI 2.0-compatible, when it receives a Universal MIDI Packet, it will respond exactly as if it were receiving a standard MIDI 1.0 message. That ensures no existing MIDI equipment will be obsolete. Therefore, manufacturers who want to continue making MIDI 1.0 products will be free to do so, and no doubt many will.
Finally, developers have designed MIDI 2.0 to be transport agnostic, meaning the messages can flow between devices using any digital connection, wired or wireless. By itself, it won’t be usable over old-fashioned MIDI cables, but plenty of conversion devices will be available for connecting your MIDI 1.0 devices to a MIDI 2.0 network. Since the most common transport for MIDI today is USB, the first implementation of MIDI 2.0 will be for USB. Implementations on other transports will follow soon after. As future new methods for digital communication are developed, MIDI 2.0 will easily take advantage of them.
Living in the Future
With MIDI 2.0, the Musical Instrument Digital Interface, already a vital part of music making for over 37 years, will maintain its importance for decades to come. It takes advantage of all the improvements in communications technology since the adoption of MIDI 1.0. At the same time, it leaves many doors open for the next generations of hardware and software.
One of the many factors that contributed to MIDI 1.0’s success and longevity is that it was and remains free for anyone to use. You don’t need to get a license or pay a royalty to build any kind of MIDI device or program you want. In MIDI 2.0, this important tradition continues.
What’s more, because MIDI 2.0 is so flexible, extensible, easy to use, and free, we can expect to see many more uses of MIDI in the future—not just for music and audio, but for any digital device that needs to communicate in the digital domain in real time with speed and accuracy. At this early stage of MIDI 2.0’s adoption, we can only imagine what those devices could be.
Members of the MIDI Association can download the entire MIDI 2.0 Specification at no cost. Membership is free, too.