New Top

All Products By Category

Terry Riley’s In C for Arduino with the Fluxamasynth

Terry Riley's In C on Arduino

I’m a fan of experimental composer Terry Riley (try some of his organ work like Shri Camel to get started), so it seemed natural to try to adapt his 1964 algorithmic composition “In C” for the Arduino with our Fluxamasynth Shield.

In C was written for 20 to 35 players. Each player works their way through 53 short phrases, listening to the other players and following the rules of the score. The basic structural rules are that a player repeats a phrase as long as they like before moving to the next. Players always move forward through the score, and the piece is finished when everyone reaches the end, which usually takes around 40 minutes at the recommended tempo.


You can get the complete score at the Petrucci Music Library. Or read on to see the Arduino version.

I decided to add a potentiometer to the Arduino version of the piece; the pot controls the tempo and allows you to speed up the 40 minute performance to 3 minutes or so.


The code is one of the standard examples distributed with the Fluxamasynth library available on github. It illustrates the use of the library for assigning instruments and effects to channels, and shows one way you might encode a score for use with the Fluxamasynth. The pan() function also shows how you might extend the library. Note that the Fluxamasynth just takes MIDI commands you could use this with any MIDI instrument; it is like having the whole composition in a box. An In C appliance.