How to make floppy drive music

Create music inspired by floppy drives using Sam Archer's Moppy software

Floppy driveshttps://www.wired.co.uk/topic/floppy-disk, though nearly extinct now, once ruled portable storage. In addition to their capacity to store well over a megabyte of data in some cases, the drives made a unique and possibly annoying sound that any experienced geek will recognise. Application engineer and former college-band member Sam Archer decided to take this sound to the next level, and programmed a drive to actually play music. You can do the same, using his "Moppy" (short for musical floppy controller) software.

Assemble the parts

Archer used an Arduino Uno microprocessor to play music on a 3.5-inch floppy drive. The drive needs a 34-pin IDC connector and have the A/B select jumper set to drive B. You'll need an ATX power supply with a cable to plug into the drive. To interface the Arduino to the drive's signal pins, use a cat 5 Ethernet cable and solder the wire to the pins, or attach with a plastic IDC 34 connector.

Wire the signals

On the drive, there are two sets of pins. The top row counts even numbers from left to right from two to 34, and the bottom odd numbers from one to 33. Strip your cat 5 cable back and attach pins 12 and 13 to the orange and orange-striped wires, pins 17 and 18 to the blue and blue-striped wires, and 19 and 20 to the green and green-striped wires. Use the striped wires for ground pins.

Power on and test

Connect the ATX power cable to your drive and plug the power supply into the wall. Test the drive by first connecting the orange wires; you should see the light come on. Twist these wires together to keep the drive active. Green selects the direction, so experiment with connecting and disconnecting the green and green-striped wires, then tapping the blue and blue-striped wires together.

Connect your Arduino

Your processor needs to share a ground with the negative pins, so wire pins 17 and 19 into the ground connection on the Arduino. Wire pin 18 from the disk drive into pin two of the Arduino and pin 20 from the drive into Arduino pin three. Archer - after 
a disagreement about whether this type of music was possible - was able to get a drive to produce "Ode to Joy" in one night without instructions.

Get software

Download JDK with NetBeans from Oracle.com. Get the TimerOne library, open the Arduino/libraries directory and create a subfolder named "Timerone". Place the extracted files from TimerOne.zip in this. Download moppy-advanced.zip and extract into folder "moppy-advanced".

Play music

Open the moppy.ino file with the Arduino program, and load the sketch into your Arduino microprocessor. Run MoppyDesk using Netbeans, and connect to the port that your Arduino is on. Load one of the MIDI files in the moppy-advanced zip file, and press start. You should hear music. For more info on this and troubleshooting tips, consult https://github.com/SammyIAm/Moppy/wiki.

This article was originally published by WIRED UK