The Magnetophone is a sound sculpture with 14 guitar strings and 14 homemade electromagnets. Continuously generative, electromagnetic fields make the strings vibrate. Pictures available on the project’s main page.

Constructed out of aluminum and acrylic, the Magnetophone measures 3ft tall.



The circuitry sits atop the Magnetophone, with an Arduino Mega lowered down on a platform slightly below.


The Arduino sends out square waves to LM386 based amplifiers that power the electromagnets at the resonant frequencies of each of the strings. Its possible to sound overtones of the strings if upper partials of the harmonic series for an individual string are sent.


The circuit boards were acid etched, then treated with tinnit to keep them from oxidizing, thus the silver finish underneath. Each board has either 3 or 4 amplifier circuits, depending on which side of the Magnetophone it is being used for.



I made the electromagnets out of sewing machine bobbins wrapped with 32 gauge enamel covered magnet wire.


The electromagnets needed to have 8 ohms resistance to work properly with the amplifier circuits. After a lot of testing I found that 348 turns on the bobbin with the wire was the proper number. To help with the wrapping I used an Arduino, a photocell, and a drill. I put a strip of white tape on the chuck of the drill and every time it passed the photocell the level of light changed on the photocell and the Arduino counted for me. A light comes on when the right amount of turns is reached (thanks to Eric Rosenthal for the idea). Here is a sample video aiming for 10 turns:

When electricity passes through the coil a magnetic field is generated. Since I’m sending a square wave to the coil, the magnetic field is oscillating on and off at the frequency of the wave. I put a bolt through the hole of the bobbin, which becomes magnetized and vibrates with the magnetic field. The magnetic field from the bolt pulls and releases the string making it vibrate, which makes sound. On the back of the bolt I put a small rare earth magnet. One earth magnet strengthened the magnetic field nicely, anymore actually weakened it.¬†Instead of sending a frequency to the coil, an input coil (50 ohms resistance) can be substituted. However, I found that the string vibrates more when it’s resonant frequency is sent rather than having an input coil.

To attach the coils I designed a complex insert and locking system, that would allow me to move the coils closer or further away from the strings:


But I needed to be able to move the coils side to side as well, and found that I couldn’t do it with this system. I ended up going a much simpler route, holding the coils down in place with one strip of material above them.


Here’s a test video vibrating a string:

Instrument Design

Acoustically, the strings vibrate the bridge, which vibrates the front plate, which pushes air molecules inside the resonance chamber back to bounce off the back wall. Plywood sheets are more resonant than 1/4″ acrylic, but the wood looked a little too much like a grandfather clock to me. Plus, I wanted it to look less like an instrument.


The strings spiral up around the sides of the piece. Different gauges of guitar string were used within each side to achieve variety on each side. They are tuned to an Ab major scale, but this was fairly arbitrary, the potentials for tuning being quite wide. The tone holes are also spaced so that no tone hole is facing another, my theory being that the air molecules should bounce back and forth against the sides inside the chamber.

Screen Shot 2013-12-02 at 12.13.27 AM


The Arduino is making some decisions about what to play, and will continually keep generating new music. It switches between two modes, sometimes choosing random strings to play, sometimes generating a pattern or sequence, then looping that melody for a bit.

Using the tone library (not the built in one), the Arduino Mega can play up to six tones at one time (it has six timers). In order to reuse the timers (not a standard function), shifting them to other pins for different strings, I had to modulo the tone pin count for the amount of timers I wanted to use. For example, if I wanted to use 4 of the Mega’s timers i would do this in the tone.cpp file:


Since I was using a Mega 2560 I also had to change everywhere in the .cpp file that said:

#if defined(__AVR_ATmega1280__)


#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)


Here is a schematic for one circuit, and an image of the three circuit board:

schematicMagnetophone 3ampsbrd


Thanks to Scott Garner for aiding me in my times of need, and to the Basic Analog Circuits class at ITP for etching a ton of PCB boards for me.

Special thanks to Danny Rozin, Eric Rosenthal, and Marina Zurkow for guidance, support, ideas, and bobbins.