Skip to content

Getting Started

SammyIAm edited this page May 24, 2018 · 2 revisions

These instructions will continue to be improved as I have time and as people run into (and solve) novel issues.

Hardware Setup

This section definitely needs some improvement, sorry about that

Floppy drive pinout information is available here

  1. Connect the appropriate even-numbered drive select pin to its corresponding odd-numbered ground pin.
  2. Connect the STEP pin to Arduino pin-2. Connect the DIRECTION to Arduino pin-3. (For additional drives, the STEP pin is connected to even Arduino pins, and the DIRECTION to odd pins. On the Arduino Uno, you can go all the way up to A5 (essentially pin 19))
  3. Connect one of the ground data pins (odd numbered pins) from the floppy drive to the Arduino's GND. This is important because if the Arduino and drive disagree about ground-voltage the data signals may not be clear.
  4. Power your floppy drive by either using an ATX power supply (easiest method), or another 5v power supply (connected to the appropriate power pins (ATX red wire is 5v, black is ground). (PROBABLY) DO NOT power the floppy drive from your Arduino! It might work fine, but it's best not to power motors directly via the Arduino's limited power supply. You can power the Arduino using whatever 5v supply you use to power the floppies though, that's fine.

Arduino Setup

  1. Install the latest Arduino IDE, and install the TimerOne library.
  2. Download the latest release of the Moppy Arduino code, unzip it somewhere convenient, and open Moppy.ino in the Arduino IDE.
  3. If this is your first time, skip to the next step. Otherwise, change any settings in MoppyConfig.h or select different hardware configuration options in MoppyCore.cpp.
  4. Upload the sketch to your Arduino. Make sure there aren't any errors in the console at the bottom of the IDE! It's not very good about telling you if the upload was successful or not.
  5. If your floppy drive is connected and powered on, it should play a startup sound when it resets.

Controller Setup

  1. Download the latest release of the ControlGUI application, and unzip it somewhere convenient.
  2. In the bin folder you should find either a .bat file for Windows users or a bash executable for everyone else called MoppyControlGUI. Open it!
  3. Use the middle column to select the COM port that your Arduino is connected to. After connecting, you should see its device address appear in the upper right column.
  4. Load a MIDI file from the included samplesongs directory, and hit play!
  5. The bottom half of the window contains snippets of Javascript that can be used to determine which MIDI channels to play, which device to send note to, and which notes to play. The variables c (channel), and n (note number) are predefined. The scripts can also be used to transform the notes if the MIDI file wasn't designed for floppy drives. Try out some of the defaults to get an idea of what's possible and then try your own (switching the note number to random is pretty hilarious!)
You can’t perform that action at this time.