Super Mario stepper motor music with the help of an Arduino… « adafruit industries blog

Super Mario stepper motor music with the help of an Arduino…


cmhiekses writes -

This is the first of many videos I’ll be posting of my stepper motors playing music. The data for the music is taken from a MIDI file I made. The code for interpreting the data and moving the motors was written by me over the course of a few days.

The sound you’re hearing is coming entirely from the motors. The motors are screwed into some pieces of aluminum from an old project to help them resonate. I’m taking requests for other songs to play.

Currently, the information for the song is stored on the Arduino. Plans for implementing a realtime MIDI stream are underway. Eventually I’ll be able to plug in a keyboard and play the motors as though I were playing piano.

These motors (and their L-shaped aluminum bracket mounts) were taken from The Pipe Dream MIDI Robot that I built in 2008 (see my other videos). I reluctantly disassembled that machine when I moved out of my old house.

Filed under: arduino — by adafruit, posted June 22, 2009 at 11:00 pm


6 Comments »

  1. It’s beginning to get to the point where it would be easier to list what the super Mario theme *hasn’t* been played on.

    That being said this is still pretty damn awesome.

    Comment by arthur — June 23, 2009 @ 5:59 am

  2. Nice. Nice. Nice!

    Comment by Schoschie — June 23, 2009 @ 8:40 am

  3. I’d love to see more on the wiring for this. Does he just send step and direction signals from the arduino? or assume direction and just send step? I think it’s so cool that it could be done with 3 io pins!

    Comment by TINYenormous — June 23, 2009 @ 10:34 am

  4. I’ll post a video with some information about the code and the wiring in the next few days. Glad you liked it!

    You’re right, by the way. The Arduino is responsible simply for step and direction signals. I’m not varying the direction because of the torque limitations on the motors. In passages where the music jumps suddenly from a very low note to a very high one, switching directions AND changing speeds could be problematic.

    Comment by Mike — June 23, 2009 @ 3:23 pm

  5. cool stuff!!

    Comment by xchip — June 24, 2009 @ 6:56 am

  6. Hi verry nice done.
    I’m planning making a 3 axis mini cnc machine with an arduino.
    So I’m verry interested how you drive them.
    Specially the hardware part.
    Keep up the good work!

    Oler

    Comment by Oler — June 25, 2009 @ 5:42 am

RSS feed for comments on this post. TrackBack URL

Leave a comment

Prove you are human by reading this resistor:
0Ω+/- 5%

0
0
1
2
3
4
5
6
7
8
9

0
0
1
2
3
4
5
6
7
8
9

0
0
1
2
3
4
5
6
7
8
9

5
5
10
20

Match the sliders on the left to each color band on the resistor.

Click Here for a new resistor image.

New to electronics? Click here to learn how to read resistor values.

www.flickr.com
adafruit's items Go to adafruit's photostream
www.flickr.com
items in Adafruits More in Adafruits pool