Programmable From the Outside

In the 2020s practically every music synthesizer still continues to use the MIDI standard, which originates from the early 1980s, to start and stop notes and adjust various sound parameters.

When you need to go deeper into the features of a synthesizer, MIDI is still your gateway. System Exclusive messages are manufacturer-specific additions to the MIDI standard. They are used to change the parameters of the synthesizer, load new sounds (or full banks of sounds), and sometimes even load samples (slow, but it works).

Ever since the Yamaha DX7 (the earliest successful synth with MIDI, if not the first), synth manufacturers have, almost without exception, included System Exclusive messaging capabilities in their products. Usually it has also been thoroughly documented, because that makes it possible for third parties to develop utilities like patch editors, patch generators, and sound librarians, which add to the desirability and longevity of a synth, and help its users make more of their investment.

Roland JV-1080 synthesizer receiving a MIDI System Exclusive message.
MIDI System Exclusive messages are still essential.

System Exclusive messaging is not something that most of casual users are even familiar with, but for those who are it is an essential feature that opens many possibilities for both musicians and developers.

Life without SysEx

So deeply entrenched in the synth landscape is MIDI System Exclusive, or "SysEx", that when it suddenly isn't available, you find yourself scrambling with new and unfamiliar ways to communicate with a synth. In some cases there may not even be any means of deep communication.

Yes, you can still feed a synth MIDI notes and Control Change messages, but when it comes to really owning it, things get really difficult without the familiar mechanism of MIDI System Exclusive messages.

My personal conviction is that you absolutely need to be able to reach into the depths of the synth, be it with MIDI System Exclusive messaging or some other way.

It is not enough for the manufacturer to provide additional application software for controlling the synth, because that software is very vulnerable to the changing landscape of operating systems like Windows and macOS. Many such applications have been left for dead because more recent versions of an operating system have rendered them unusable. For example, transitions from 32-bit to 64-bit operating systems are a crucial point, as are changes in microprocessor architecture.

Synth manufacturers obviously have no incentive to keep those control applications for discontinued synths operable as operating systems evolve, because it represents a maintenance burden that does not contribute to their bottom line. As a synth manufacturer you are much more inclined to sell the user a new synth instead of keeping the old ones supported and operational. From a business perspective, of course, this makes perfect sense.

But this is a crucial difference between synths manufactured in the 1980s and 1990s: because they rely on MIDI System Exclusive messaging for control, and because of that messaging has been documented, it is possible for determined users to produce new (and in many cases) better helper applications to support these synths, because MIDI has remained essentially unchanged for the last 30 years.

In contrast, a synth that relies on a manufacturer-provided helper application will in too many cases be rendered useless sooner than later, unless the manufacturer keeps the application updated. Windows applications have generally fared a little better in the race against obsolescence, whereas Apple has been much more aggressive in abandoning obsolete technology with successive versions of macOS (formerly Mac OS X).

KORG wavestate Sound Librarian application waiting for device.
Proprietary solutions can seriously hinder communication between computer and synth. The KORG wavestate is an unfortunate example of this trend.

Not even the plug-ins

For almost 20 years now, software synths or "virtual instruments" in the form of Steinberg's VST plug-ins or Apple's Audio Unit components (among others) have promised to replace hardware synths altogether. This still hasn't happened. New hardware synths are appearing at a steady clip, even as the pendulum swings between analog and digital.

Software synth plug-ins are just as guilty of bypassing the tried and true methods of MIDI System Exclusive messaging. I don't know of any software plug-in that could be controlled with SysEx messages (disclaimer: maybe I just don't know about them, see below). Note and Control Change messages, yes. Most plug-ins support MIDI, but they don't even include the MIDI Implementation Chart required by the MIDI standard. It all just works somehow (except when it doesn't).

While the older digital synths had complete specifications of their sound program data formats in the System Exclusive documentation, the software plug-ins use data formats that are completely opaque and proprietary, if only because the developers want to provide a single format that covers all the operating systems they support (and in the process side-stepping the operating system facilities for preset management, requiring them to implement preset browsing themselves, and so on, ad nauseam -- don't get me started on the skeuomorphic bitmap-based user interface controls, but that is another story altogether, sorry for the digression).

So, from the viewpoint of programming from the outside, the plug-in landscape is a mess. At least some recreations of classic digital synths actually do support importing patches in SysEx format (for example Arturia DX7 V and the KORG Collection 2 Wavestation).

If you know of software synth plug-ins that are actually "programmable from the outside", with support for both patch data import and export, and general parameter control, using SysEx, then please let me know at your convenience. Also, if you are a plug-in developer and have good rationale for what seems like reinventing the wheel, I'd like to hear about it. Perhaps there is something I'm missing.

Reaching back in time

For the reasons above I am quite tempted to turn to the older generations of digital synths to provide stable and predictable service while they still can, with the capability to develop new and innovative ways of generating sound content.

Roland JV-2080 synthesizer MIDI message light and power switch.
The power to controlling the synth from the outside comes from MIDI System Exclusive messages.

You could make an Artificial Intelligence based patch generator, or a sound editor with a 3D visualization, or a librarian with the features that I need. These types of applications would benefit also brand new synths, and I hope that it is not a trend to make those kinds of developments more difficult than they need to be, or maybe even make them impossible.

As a software designer I know the value of Application Program Interfaces or APIs. The venerable MIDI System Exclusive messaging is an API to the synth. It may sometimes be clunky, but it is battle-tested and documented. It makes the synth programmable from the outside. That is how I would like new and innovative synths to continue to be.