The open-source software Processing is used to analyse an audio file or microphone input. Using the minim library, it calculates the coördinates of the waveform and sends them to an Arduino using a serial connection.
An arduino with motor shield is used to drive a motor and a servo. The motor is used to advance a roll of paper, on which a pen, controlled with the servo, draws the waveforms. As Wavebot was a prototype (yet functional), it has a wooden enclosure with lots of tape.
(make sure to have the Minim library installed)