Going acoustic: random midi player piano

July 23, 2012

Random arduino player piano

This is the offspring of the random sequencer and the Piano Matic 3000.  The hardware is six pots and three LEDs connected to an Arduino Mega 2560, with a simple Midi out.

I’m using a Mega partly for the extra memory. I was inspired by Jeff Atwood’s ‘Markov Chains and You‘ to try to build a 4-dimensional markov chain and quickly filled up the 2kb of memory on a standard arduino. It’s also handy for Midi, because the Mega has several serial outputs – you can use one for debugging and one to drive the midi output.

Here’s a recording of the first code – Random_Player_1 (here’s the code in github). It’s just random notes picked from scales, with a rhythm based on probablities, but I quite like how it sounds.

Next up: really get the markov chain system working, add some chords, work more on the rhythms.

I’m trying to read Iannis Xenakis’ Formalized Music, which seems to be the mothership for algorithmic music generation, but it’s rather hard work…




  1. Andy Vaughan says:

    I’m a fairly recent convert to modulars and live in Holmfirth, West Yorkshire and have just discovered your site and will be following from now on, it looks excellent, is there a Facebook component to Music Thing? Really like the Random Sequencer stuff and will look into this in the days to come.

    • Tom Whitwell says:

      Hi, Don’t have anything up on Facebook. On Twitter I’m @tomwhitwell which is part Music Thing, part The Times, part me.

  2. guillem says:

    Amazing! Thanks for share it. Works perfect for me. I´m try things with the script. I love it.
    Sorry my english