Music for 3d printer

Convert midi files to gcode your printer can play


Creative Commons Attribution Share Alike

Commercial use is allowed, you must attribute the creator, you may remix this work and the remixed work should be made available under this license.

Learn more or download attribution tags


This python script converts MIDI files to Gcode your printer can play, transforming it into a music player that sounds like R2D2 !!
It will use X,Y and Z as 3 separate "voices" thus making your printer a polyphonic instrument.
Forked from the known Mid2CNC by Michtom (among others) I added a graphical interface because I hate writing commands...

So basically you just launch the script and click the right type of machine, then select what file you want as input, where you want to save the output and you will have a nice Gcode file for your printer.

I forgot to include the easygui library. So now it should work "out of the box".

You have to place the printhead approximately in the middle of the platform and the nozzle at least a few mm above it.
The head will move around XY and Z will never get closer than the start point.
You don't need to home the axes (stay in the middle) and you don't need to put the heat on (no extrusion will occur)

There are a few bugs and not all midi files will give good results. Also my code sucks, but hey, it works. Kinda...

I enclose a bunch of files I know work with an Ultimaker Original.
The mp3 file is my recording of the Imperial March (J.Williams), concerto for three axis and plywood.

The whole thing is available here:
Feel free to fix/improve!
It should work on any non-delta printer, just edit the parameters in
I wonder if this could be done for a delta printer (type kossel/rostock etc.) ???

Materials and methods

You will need:

- Some MIDI files (.mid)
- Python 2.7


  • Placeholder
    Imperial March
    GCODE  –  16 kb
    Version 1 - Aug 02, 2014
  • Placeholder
    Imperial March On My Ultimaker
    MP3  –  1.4 mb
    Version 1 - Aug 02, 2014
  • Placeholder
    Midi To Cnc Master
    ZIP  –  120 kb
    Version 1 - Aug 23, 2014
  • Placeholder
    Super Mario
    GCODE  –  29 kb
    Version 1 - Aug 02, 2014
  • Placeholder
    GCODE  –  21 kb
    Version 1 - Jul 20, 2014
  • Placeholder
    GCODE  –  25 kb
    Version 1 - Aug 02, 2014


Issues are used to track todos, bugs or requests. To get started, you could create an issue.


Mini klingeltonekostenlos iocn klingeltonekostenlos commented ago

Free installation of song list, ringtone sounds for hot and hot phones in 2021 please refer to website kostenlose klingeltöne

85e00bd9cfaa0bb670ab27b23c487498?default=blank&size=40Martin Lác added this to the Other collection ago
8a35a6a1757e0a162c46e3dfbad0470c?default=blank&size=40Cgariepy added this to the 3d music collection ago
26646b2fcc50b8871fb338de85c86356?default=blank&size=40Aedryan13 added this to the Make it collection ago
Ad30bd4fc7cfee699ef731976d949c4d?default=blank&size=40IBuild added this to the Toys collection ago
Eb7a0e60922c213fd772948b023a30ec?default=blank&size=40krx added this to the MAKE collection ago
09be6970b26bac6166bd3b601a0d87f5?default=blank&size=40cronos45 commented ago

i got it to work once then is sends echo imperial.mdi etc and does nothing

Mini mpatoulachikmpatoulachik published this design ago