Notes on the Buchla 700 audio synthesizer

Overview

The Buchla 700 electronic musical instrument, introduced by Buchla and Associates in 1987, was a sophisticated tool for composing and performing electronic music. The 700 was designed to be connected to other instruments, controllers and studio equipment via MIDI and analog interfaces; it was also designed to be small enough to be stowed under an airliner seat. It was therefore too far beyond the 1987 state of the art to be perfected by an organization as small as Buchla’s. The few users of this system describe serious issues with overheating and display system failures. Although it was meant for use by serious composers of experimental music rather than by the pop/rock keyboard players who bought most MIDI-based synthesizers then and now, it seems not to have been as inspirational to that community as the modular analog synthesizers that preceded it.

What is inspirational today to people who may never see a Buchla 700 is the fact that someone actually tried to make such a machine in 1987 – and the fact that current technology, delivering more computing power per watt by orders of magnitude, makes the 700’s multi-computer hardware architecture much more practical today than it was in 1987. For sensor I/O and device control, we have the Arduino and Wiring families of open-source hardware. To replace the 68K-based master computer of the 700, we have many choices, among which is the TI-developed Beagleboard, with an ARM core and built-in DSP. For this role, it would also be hard to overlook the Intel Atom, now widely available on highly-integrated Mini-ITX motherboards. For audio I/O and the low-level DSP to drive it, Freescale’s Symphony Soundbite shows the way. If someone wanted to build a modern equivalent of the 700 around these components and a large chunk of flash memory, it would be easy to obtain reliable hardware for well under a thousand dollars.

The real problem to solve in creating such a system is therefore the software, which is why having access to the system’s source code is so valuable. Georgia Tech professor Aaron Lanterman has obtained permission from Donald Buchla and programmer Lynx Crowe to post Crowe’s source code for the 700 on Lanterman’s web site. The Buchla 700 Preservation Page provides a link to the source archive, along with links to approximately everything else of substance that Google will find when you search for more information about this very rare instrument.

Digital Musical Instruments

If we’re recording music on a system that stores our finished product as digital data, there’s no reason to use any musical instrument in preference to software unless it somehow gives us better control over our music. This is obviously true for hardware digital instruments like synthesizers, samplers and sequencers, but also applies to traditional instruments: any sounds made by any means can be digitally recorded and re-rendered in any combination and sequence we choose under software control. “Real” musical instruments justify their existence by giving skilled players a way to produce subtle variations in volume, timbre, and tempo within a musical phrase. Software can play all the same notes, but the real instrument lets a musician articulate those notes in ways that simple algorithms don’t capture and general-purpose user interfaces can’t support.

Therefore, to be useful, any hardware digital instrument must respond in real time to a player’s touch or gestures in a predictable way that allows users to develop and learn expressive techniques.

“Digital keyboards” are the mass-market solution to the problem of combining the vast gamut of digitally-generated sound with an intuitive means to access it. A cheap piano-like keyboard provides a way to select and`trigger notes from the equal-tempered scale, and some knobs and/or buttons let us choose and perhaps modify the ready-made sounds provided by the manufacturer. Digital keyboards with better claims to the name “synthesizer” provide better facilities for editing patches, often following the Moog/Arp analog paradigm or the Chowning/Yamaha FM model.

For almost all of these instruments, there’s a serious bottleneck between the front panel and the audio engine. It’s not economical to give every controllable parameter a dedicated knob, slider, or button. The usual solution is to use one dial or other control to select among parameters, and then to use similar means to enter a value for the selected parameter. The sonic gamut that can be controlled this way may be very large, but access to it is slow, clumsy, and unintuitive compared to the direct access offered by, say, an old Minimoog. (Moog’s current “Lil’ Phatty” analog synth has sonic facilities similar to those of the Minimoog, but uses multi-function knobs to keep the price down to less than half of what a new Minimoog-class instrument costs.) Whether this bottleneck is a serious problem depends entirely on the style of music being played. Pop musicians will often be satisfied with keyboard control of a preset patch, but the more “experimental” electronic styles demand continuous timbre changes, sometimes subtle and sometimes not.

Certain styles of dance music use simple synthesizers to play rhythmic loops. These may have rudimentary 12-tone keyboards for note entry, but are played in real time by switching among pre-programmed sequences. Players and DJs can apply basic timbre modifications on the fly by switching waveforms and adjusting filter settings. Such devices are much like drum machines, and are often used together with drum machines. They remain popular among people who are accustomed to that way of working. However, they offer little that can’t be duplicated in software. “Reason” and “Ableton Live” are graphical real-time loop-oriented programs that make a laptop computer a more powerful techno/dance instrument than any reasonably-priced hardware instrument.

Whether we’re talking about dedicated hardware or a software package to be run on general-purpose computers, a digital audio synthesizer ought to include the following:

  • a real-time audio engine to play the sounds
  • a patch editor to design the sounds
  • a sequence editor to construct loops and compositions
  • an interactive user interface to play the system as a musical instrument

As I’ve outlined above, conventional music synthesizers make various compromises among cost, flexibility, and usability. We’d all like to have an affordable device that’s as player-friendly as an acoustic guitar and provides all the sonic possibilities of a fully-equipped recording studio. We can’t have such a thing, of course, but we can view the Buchla 700 as an attempt to provide a useful first approximation of that ideal with the technology of two decades ago.

The Buchla Music Easel

The original Buchlas were modular analog music machines, devices with amazing capabilities that could be unleashed only by using thickets of patch cords to interconnect their modules in amazingly complex ways. However, in the early 70s, building on the technology of their 200 series modular systems, Buchla and Associates made a simpler system for use in real time. As Donald Buchla wrote in his introduction to Allan Strange’s user’s guide to the Music Easel: “Our goal was to create an instrument for performance. One with a vocabulary that was unpresumptive, varied, and accessible. We weren’t particularly interested in imitation of any extant instruments, either functionally or acoustically. We did want the potential for expressive, real-time performer-instrument interaction.”

The legendary Minimoog was a far more popular performance-oriented synthesizer from the same era. Its characteristic sounds were rather simple, with three harmonically-rich oscillators tracking a monophonic keyboard and getting articulation from a resonant low-pass filter. It provided lead and bass voices for many progressive rock songs, making big thick sounds that could mesh nicely with more traditional instruments. It was less effective in making the the kind of complex, unclassifiable, and often unpitched sounds from which most academic electronic music was constructed. In other words, the Minimoog was exactly what the Music Easel was designed not to be.

The Music Easel’s main sound source is a single “Complex Oscillator,” by which its makers meant a pair of oscillators combined in such a way that one would be normally be connected to the audio outputs while the other provided a signal for modulating the amplitude or frequency of the main oscillator. Using one audio-frequency signal to modulate another produces sounds more complex and interesting than the simple waveforms of the Minimoog. In addition to its repertoire of modulation techniques, the Music Easel’s Complex Oscillator offered an additional “timbre” control to modify its waveforms. While the Music Easel’s simplest sounds include the triangle and pulse waveforms that Moog-style instruments have taught us to expect from synthesizers, its more complex sounds suggest the sounds of percussion instruments, plucked strings, or bells without exactly mimicking them.

The Minimoog offers keyboard players a familiar user interface with its little piano-like monophonic keyboard; the Music Easel offers pressure-sensitive touchplates instead of keys, although the layout of a traditional two and a half octave keyboard is preserved. But the Easel’s “keyboard,” with its multiple output jacks, knobs, and switchable offset voltages, is obviously designed for something other than prog-rock keyboard solos. Quoting from the description on Buchla’s site,

The connectives are as important as the elements to be connected. Interconnection within the Music Easel is accomplished with a combination of switching and patching, a system which is flexible, expedient, and open ended. Logical, compact organization and color coded graphic feedback facilitate rapid and effective interaction. Multiple correlations between a performer’s actions and the Music Easel’s responses are readily implemented, enabling a degree of expressive articulation heretofore impossible with electronic instrumentation.

The keyboard was just one part of the Music Easel’s system for generating control voltages to drive its audio components. There was a low frequency oscillator for generating control pulses, a random voltage source, an analog sequencer for generating repetitive multi-step voltage patterns, and a pair of envelope generators with voltage-controlled attack and decay. Most of these were analogous to parts of the Minimoog and other conventional synthesizers, but the Music Easel let its user decide how all the pieces would fit together.

Because the Music Easel was designed at the beginning of the microprocessor era, before the first personal computers, there was no practical way to offer digital control of all the possibilities the Easel offered. Instead, it provided a brute-force analog solution for recording and retrieving information about the interconnections among its components: it allowed sophisticated users to replicate the connections defined through the Music Easel’s front panel by soldering appropriate resistors between points on “Program Cards” that plugged into an external slot. No one would do this today, but in the early 70s the only alternative was plugging patchcords into jacks and setting knobs and switches – a slow and error-prone process, and one that a performing musician would otherwise have to do many times in front of an audience.

I have written these notes and provided the links below to present the Music Easel as an important ancestor of the Buchla 700. It was less ambitious and probably more successful than the 700. It used different technology, but revealed a similar philosophy of electronic music performance. Where the Easel put one complex analog synthesis channel under a performer’s control, the 700 offered a dozen virtual channels, with digital storage and MIDI communications for instrument definitions, musical sequences, and entire compositions.

Allan Strange’s Music Easel manual is online:

Programming and Meta-Programming the Electro Organism: An Operating Directive for the Music Easel

YouTube has a number of good resources for learning about the Music Easel. Someone has put up demos of the Complex Oscillator, using an oscilloscope to show the waveforms corresponding to the various sounds:

Music Easel – Scope – Sine/triangle

Music Easel – Scope – Sine/square

Music Easel – Scope – Sine/spike

Music Easel – Scope – AM

Music Easel – Scope – FM

Music Easel – Scope – everything

Aaron Lanterman, mentioned above as the creator of the Buchla 700 Preservation Page, has posted YouTube videos in which he demonstrates his own versions of some of the circuits in the Music Easel:

Adaptation of the timbre circuit from the Buchla Music Easel

Adaptation of the pulser from the Buchla Music Easel

Adaptation of the envelope generator from the Buchla Music Easel

Adaptation of the balanced modulator from the Buchla Music Easel, part 1

Adaptation of the balanced modulator from the Buchla Music Easel, Part 2

There’s also a cute video of the Music Easel in action. Note Cohen’s demonstration of the Program Card’s bent-circuit flakiness near the end of the video:

Charles Cohen at the Buchla Music Easel

Hybrid Buchla Instruments

Although the Music Easel wasn’t computer-controlled, an earlier Buchla system had been. No, there was no microprocessor, but the 500 Series system from 1971 used a minicomputer to generate control voltages to drive 200 Series analog modules. The 500 was made in extremely small quantities (possibly as few as three), but it led to the more practical 300 Series, which used an Intel 8080 microprocessor to generate control signals. The current MIDI-controlled Series 200e follows this tradition of applying digital control to analog synthesizer modules.

In Buchla’s terminology, a “multiple arbitrary function generator” as seen in these simplest digital/analog hybrid instruments is an interface that uses a computer to generate a number of channels of analog control signals. For example, the model 364 module in the 300 Series produced “up to 64 simultaneous static or dynamically varying voltages for application to the various voltage controlled parameters in a 200 series system.” This works fine for trigger and gate signals, and for driving voltage-controlled amplifiers and filters, but can’t be expected to control the pitch of an analog oscillator with the accuracy required for harmonizing with traditionally-tuned instruments.

In 1978, Buchla produced an instrument that broke with the Buchla tradition of ignoring musical genres which require standard tunings. The Buchla Touche used a conventional piano-style keyboard to play eight voices with twenty-four oscillators implemented by “a pipelined, multiplexed digital signal generator.” The existence of this instrument reflects the state of the audio production marketplace in the late Seventies; the Touche was preceded by the Synclavier (built at Dartmouth College and New England Digital), and followed by the more famous and commercially successful Fairlight CMI. These other instruments were geared more toward audio sampling than synthesis, and would quickly be superceded by less costly devices from E-mu, Ensonig, and the Japanese giants. What all had in common was the use of crystal-controlled digital audio processors that provided virtually perfect control over pitch. What they offered for the first time was a single “workstation” that could be used to arrange all the instrumental parts on a commercial recording.

As one might expect from a Buchla product, the Touche was made in small numbers and did not gain the ubiquity in pop music and movie soundtrack work that the Fairlight CMI had in the early Eighties. In 1982, Buchla used similar technology in the 400 Series systems, which were aimed at the company’s usual customers in the academic and experimental music communities. Both the Touche and the 400 were three-computer architectures: a general-purpose computer interacted with the user to design sounds and sequences; a pipelined signal generator produced the instrument’s voices; and a multiple arbitrary function generator drove the voltage-controlled amplifiers and filters that articulated the voices. This technology, and the MIDAS software that controlled all aspects of the 400’s sounds, were the foundation that the Buchla 700 would be built upon.

The Buchla 700 Concept

The Buchla 700 seems to have been imagined as a device that would combine the power of the Touche and the 400 Series with the portability and the performer-friendliness of the Music Easel. To those ends, it was built to be airline carry-on size, it was designed for (relatively) intuitive access to all audio parameters, and it was equipped with MIDI ports and analog input jacks to handle many kinds of external real-time controllers. Unlike the Synclavier and the Fairlight CMI, the 700 provides no features to support audio sampling or sample playback.

The 700 differs from the 400 in being described as a four-computer architecture. The additional CPU is dedicated to interactivity, processing analog inputs from the instrument’s 24 built-in position-sensing touch plates and from foot pedals or other external control voltage sources. This CPU is an eight-bit 6303 microcontroller that samples input voltages through a multiplexed flash analog to digital converter.

The multiplexed digital audio processor produces twelve voices, each of which has two dedicated user-editable waveshape tables and can use a variety of modulation and waveshaping algorithms.

The 700’s internal arbitrary function generator put out 190 channels of voltages to control the analog hardware that processed the outputs from the digital signal processor. Effects included filtering and phase shifting along with control over dynamics and panning.

The 700’s general-purpose CPU is a sixteen-bit Motorola 68000. It runs the MIDAS VII control software and generates the displays on a built-in LCD panel and an external EGA video monitor. In 1987, this processor was inexpensive enough to be used in mass-market personal computer systems, including the Apple Macintosh, the Commodore Amiga, and, most relevantly, the Atari ST system that Mr. Crowe used in developing the Buchla 700’s software.

The software in the Buchla 700 is influenced by the architecture of the personal computers of its generation. Like the PC, the 700 has a set of basic I/O functions in read-only memory that allow the system to load higher-level software into RAM when it’s booted up. The code is written in C, and uses a custom C runtime library influenced by, among others, the Digital Research GEMDOS system used on the Atari ST.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s