Programming a Synth for Wind Control (part 1 of 2)


Part 1: It’s an ill wind that blows no good

So…, you just returned from a musician’s yard sale where you scored a MIDI gadget that looks like Darth Vader’s clarinet. You plug it into your keyboard synth, select your favorite patch, and then risk a toot. In exchange, you get the musical equivalent of a bucking bronco, or maybe nothing at all.

No, you probably were not taken by the purveyor of yardly treasures. You’ve simply discovered that the stock patches in most keyboard and modular synthesizers are not particularly well-suited to wind controllers. In this article, we’ll look at why, as well as a bit of theory for bringing harmony to your wind controller and sound generator.

A little bitta MIDI

A MIDI stream can contain many types of data. We’ll be concerned with two: “one-shot” messages, such as those occurring when a key or patch change button is pressed, and “continuous controller” messages, which comprise a stream of values corresponding to the position of a sensor or control (e.g., a pitch bend or modulation wheel).

In a typical keyboard synthesizer or module, patches are optimized to respond to the dynamics of a keyboard. A key press sends a MIDI note number and attack velocity value to the synth circuitry. If the keyboard responds to aftertouch, pressing the key past bottom sends a burst of aftertouch messages that can be used to modify the sound. Likewise, working a control wheel sends additional MIDI messages.  Releasing the key sends a note off signal and release velocity.

In addition, patches often contain tone modifiers such as LFO, filter, or key-follow curves that determine how the sound plays out during key-down. These modifications occur programmatically over time, but some can also be tied to a continuous controller. The MIDI stream may include “active sense” messages, which simply confirm that the connection is intact between a separate keyboard controller and external synth module. For the purposes of patch control, you can ignore active sense.

A MIDI blabbermouth

A typical wind controller (“WC” here out) is a different animal. When you blow into the mouthpiece, the WC sends a constant stream of continuous controller data for as long as you maintain breath pressure. The continuous controller is usually “Breath” (CC02), but it can be aftertouch and/or volume (CC07); it depends on the wind controller. This relative glut of MIDI data is the chief reason it is difficult to sequence a WC; many sequencers can’t process that much data in real time.
For the sake of discussion, let’s assume the WC is a Yamaha WX7, and it is set up to send breath data (“CC02” for the rest of this article). When you blow into the mouthpiece, the WX7 sends a note-on message that turns on the fingered note with an attack velocity dependant on initial breath pressure, and it pumps out a continuous stream of CC02 data that tracks the intensity of breath pressure. The WX7 also sends pitch bend values, which correspond to how hard you squeeze the mouthpiece “reed.” This plastic tab is there to act as a miniature pitch bend wheel — it does not vibrate. There is also a pitch bend rocker located near the spot where the right thumb rests.

A MIDI Swiss army knife – one blade, many uses

Arguably, the wind controller’s greatest asset is the ability to control patch volume smoothly and subtly to produce sounds that, compared to a keyboard, are more expressive and organic. While you have just one continuous controller and pitch bend to work with, you can apply them simultaneously to volume and several other patch parameters, such as filter cut-off, resonance, LFO pitch and depth, effects, and more. It all depends on the synth architecture and where the breath-related CC and pitch bend can be assigned.

Right now is a good time for the standard “YMMV” disclaimer. The following information is derived from working with several generations of Roland sample players and a Yamaha wind controller set up to send CC02 in response to breath pressure. Roland’s patch architecture is organized as four “tones,” each of which can be assigned a different waveform and programmed independently of the others. The following guidelines relate to working with a single tone. Given the many possible combinations of wind controllers with hardware or software-based sound generators, a certain degree of interpretation might be needed for your equipment’s terminology and architecture.

  1. Disable the tone’s sensitivity to velocity. The note-on message’s attack velocity component can affect initial volume, or any other parameter the synth’s architecture associates with velocity. It is near impossible to consistently attack successive notes with the same velocity using a wind controller, effectively making velocity-related effects unpredictable. The fix is to remove velocity dependence. Later, you can reapply velocity sensing to selectively control patch behaviors.
  2. Initially, set pitch, filter, and amplifier envelopes to zero. These time-variant elements determine how the tone “mutates” while it sounds. They are extremely useful for patches intended for the keyboard, but can have limited value for a wind controller. Like velocity sensitivity, you might later decide to apply an envelope to a tone to shape the tone at the same time it is being controlled by CC02.
  3. Assign CC02 to the tone’s level and set CC02’s effect to maximum.
  4. Set the sustain level of the tone’s amplifier envelope to maximum. This enables CC02 to produce the maximum possible volume as determined by other patch and/or wind controller settings.

These are the basics for creating a wind-friendly patch. In Part 2, we’ll look at applying these guidelines more specifically to the Roland JV-1010 synthesizer module. The JV-1010 is a member of the JV 1010/1080/2080 series of modules circa early 1990’s, which remain popular. Although out of production, they are usually available used on eBay. The JV-1010’s half-rack footprint is a convenient addition to the wind synthesist’s arsenal. It is small, convenient to transport and use, its instrument waveforms are reasonably convincing, and its architecture is well suited to creating breath-responsive patches.

This entry was posted in Music Technology and tagged , , , , , , , , , , , . Bookmark the permalink.

Comments are closed.