Instructions and code for building the Arduino player-piano
Java C++
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Piano Player

Sunday, April 24th Peter updated the code for single-note play. Multiple notes will play, but their amplitudes will be added without proper normalization, so there is distortion and intermodulation.

Monday April 25th Peter added a draft of a lesson plan on Binary encoding.

--------------------- NAME CHANGE EXPLANATION ---

Arduino (Processing) Development Environment requires the main source file name and directory name match, and also does not allow hyphens in sketch file names. Thus, it was necessary to change Alan's initial Repository/file from GHC-piano/piano.pde to GHC_piano/GHC_piano.pde

Now it is possible to say:

$ git clone
$ arduino
     ... and open the sketch "GHC_piano/GHC_piano.pde"

Authors: Peter Reintjes, Alan Dilpert

Extensively modified from code by: Martin Nawrath, Kunsthochschule fuer Medien Koeln (Academy of Media Arts Cologne)

For project information and updates, please see its page on the Splat Space wiki.

Goals: 12 binary inputs representng an arbitrary musical scale, multiple simultaneous notes, Variable attack decay, waveform modification for natural sounding tones.

    Scale, range, dynamics, to be selected by creating a binary pattern
    under the reader and pressing the reset button.

    For example, nine of the twelve bits can be used to define
    the following parameters:

    Scale: Major, minor, harmonic minor, melodic minor (two bits)
    Fast/slow attack (one bit)
    Fast/slow decay (one bit)
    Zero, even, odd, all harmonics (sine,triangle,square,sawtooth) (two bits)
    Variable/Fixed Timbre (one bit)
    Variable/Fixed Amplitude (tremolo) (one bit)
    Variable/Fixed Frequency (vibrato) (one bit)

Current: 12 binary inputs representing the chromatic scale Four simultaneous sine waves (e.g. No dynamics or timbre)