Merce Cunningham: Common Time with John Keston and Graham O’Brien

This Thursday, March 30, 2017 I will be performing two 30 minute sets of music with Graham O’Brien at the Walker Art Center as part of the Merce Cunningham: Common Time series of events and exhibitions. Our performances start at 5:30pm and 8:00pm in the Perlman Gallery and feature former Merce Cunningham dancers. Here’s a one minute teaser recorded during a recent rehearsal. The concert is free and open to the public. Visit the Walker Art Center for more details.

The Most Powerful Tiny FM Synth: PreenFM2


The purpose of AudioCookbook is not to promote or review musical instruments, electronic hardware, or audio software. This site is a more personal (perhaps narcissistic) look at music composition and sound design techniques. “Recipes for Sound Design” is one part of that, but experimentation also plays a significant role. I understand that some my experiments are interesting for ACB readers. My approach has been, if it’s interesting to me then I’ll write about it here. In this case I’d like to highlight an extraordinary, boutique, FM synth that has been unfairly overshadowed by the Korg Volca FM. This amazing musical device for sound design and experimentation is the PreenFM2 designed by Xavier Hosxe.

This synth is by no means new. I first heard about it in August of 2013 on At that time I was fully invested in the Yamaha FS1R and didn’t see a need for another FM synth in my setup. However, more recently I started researching it because I wanted a portable polyphonic synth for live performances. I’ve brought luggable rack synths to shows including the FS1R and Roland MKS-80, but it’s expensive, awkward, and risky to transport them. I love the Korg Volcas for their sound and portability, but both the Volca Keys and Volca FM have a mere three voices available for polyphony.

PreenFM2 Metal Case Designed by Papernoise

The low profile and compact PreenFM2 can be purchased pre-built or in kit form with either a sturdy metal case or an elegant plexiglass design that shows off the inner workings. Either option takes up little space and is effortlessly packed up and transported. Its looks belie its broad feature set and massive capacity for sound design and experimentation. But one of the main reasons I recruited it for polyphonic duties is just that: polyphony. Depending on the algorithm the polyphony ranges from eight to fourteen voices. In comparison the Volca FM has a maximum of three voices.
Continue reading

Art + Music + Technology


Recently I had the honor and pleasure of having a discussion with Darwin Grosse for his podcast Art + Music + Technology. If you’re not familiar with his interviews I suggest that you check out his program. Darwin’s straight forward conversations with a broad range of media artists seem to fill a void that no other programs do. It’s hard to single out any of the programs specifically because they are all entertaining (and educational), but some of my favorites (sorted alphabetically) include:

Brian Crabtree
Richard Devine
R. Luke DuBois
Mark Henrickson
Andrew Kilpatrick
Keith McMillen
Ali Momeni
Pauline Oliveros
Gregory Taylor
David Zicarelli

TX81Z Patch Degrader with Interpolation

This quick demo illustrates how TX81Z Patch Degrader is interpolating between previous and newly generated parameter values. TX81Z Patch Degrader is a Max for Live MIDI effect that chips away at patches on the TX81Z by randomly changing (or degrading) parameters at a specified rate. What makes the process interesting is that it is possible to ramp up or down (interpolate) to the new value rather than changing it instantaneously.

To create the Max for Live MIDI instrument I started with TX81Z Editor 1.0 by Jeroen Liebregts who was kind enough to share his work on I added in the degradation process features and made some adjustments to the interface to make room for the controls. Once I get things shaped up I’ll be happy to share the patch if anyone is interested.

Screen Shot 2015-08-08 at 5.37.43 PM

The features I added are visible in the second panel of the TX81Z Patch Degrader Max MIDI effect. I’ll describe them from the top down:

  1. Level bypass prevents the operator levels from being included in the degradation process so that the sound doesn’t completely die out.
  2. When the interpolate switch is on new values (as long as they have an adequate range) are ramped up or down to the new value based on the rate.
  3. Loop causes the degradation to continue indefinitely by reshuffling after all 73 parameters included have been degraded.
  4. Free/sync toggles between changing the parameters at an arbitrary pace set by rate, or note divisions based on the project’s tempo (therefore sync will only degrade while playing)
  5. Rate adjusts the rate of degradation when in free mode, and the time it takes to ramp up or down to new values when interpolate is on. Rate is milliseconds and ranges from 15ms to 2000ms.
  6. Below rate are the note durations for sync mode ranging from a 1/128th note up to a dotted whole note.
  7. Finally the degrade button starts the process while interrupt stops everything so when you hear something you like you can save the patch on the TX81Z.

The TX81Z has a fairly small buffer for MIDI values, so spraying values at it too quickly will generate the “MIDI Buffer Error”. However, even after getting the error it will continue listening to the incoming data, so even though it might be skipping a parameter here and there it lets me keep throwing things at it. The video below shows how the LCD display responds to the stream of values coming at the machine.

TX81Z Patch Degradation with Interpolation! #glitch #fmsynthesis

A video posted by John Keston (@jkeston) on

I’ve saved quite a few very interesting effects so far and have nearly run out of the 32 patch positions available on the unit. Perhaps the next step is to add a library feature especially since I’m not thrilled about the idea of saving patch banks to cassette!

Screen Shot 2015-08-08 at 6.46.35 PM

Vintage FM: Swapping Bricks for Loaves of Bread


I recently picked up an eighties vintage Yamaha TX81Z FM synthesizer. I’ve always loved the sound of frequency modulation synthesis, but like many of us, lacked the patience to do the programming; especially since most FM synthesizers have hundreds (thousands for the Yamaha FS1R) of parameters that one is expected to edit via a few buttons and a thirty two character LCD.

Understandably FM has largely taken a backseat to subtractive synthesis, wavetable synthesis, and sampling. In the 80s FM was great because memory was expensive. Bell tones, plucked instruments, strings, and brass could be simulated by cleverly selecting an algorithm and adjusting the frequency, levels, and envelopes of the carrier and modulator operators. The price of that sound quality was handling the complexity of the instrument and the time investment that that required.

Soon memory fell in price and the cost of sampling and wavetable synthesizers dropped with it. By the mid-90s the broad popularity of FM synths like the Yamaha DX7 had given way to samplers, ROMplers, and wavetable synths. Perhaps we were attracted to the realism of sampling, or the uncanny quality of pitching familiar sounds into unfamiliar territory. But, all of these synthesis technologies have their place, and what makes FM synthesis relevant to this day is not simulating brass or bell tones, but its ability to uncover new sonic palettes through the complexity of maths, parameters, and algorithms versus the brute force of digital memory banks.

So, how do we navigate this world of nearly infinite possibilities? There are many approaches to this dilemma. Software editors are available, and FM synthesizer plugins like Ableton’s Operator and Native Instruments FM8 are much, much easier to program than their hardware counterparts. All while maintaining flexibility and sonic range. FM8 can load DX7 patches, morph between sounds, or randomize parameters. My approach to this experiment was to exploit a hardware instrument (the TX81Z) already limited by its design.


I composed this piece by designing a Max for Live process to “degrade” patches in the the Yamaha TX81Z over time. The TX81Z is fairly simple within the scope of FM synths. However, the spectrum of sound is still vast thanks to a few clever features; each of the four operators can have one of eight waveforms, while older FM synths only had sine waves. The degradation process occurs as shuffled parameters in the synth are randomized at a specified pace. Imagine pulling bricks out of a wall and then replacing them with things like a loaf of bread, Legos, or a shoe. The degradation can be interrupted at any moment by the performer to “freeze” a patch for later use, or looped to generate chaotic textures that morph continuously. This excerpt stacks two layers of the degradation process with some panning and reverb to add ambience. Based on these results I anticipate that a lot more is available to be discovered through this and similar techniques. Currently I am working on a way to interpolate between the existing parameter and the “degraded” one for a more legato feel to the entropic process. Stay tuned!