Here we are with a new guide, today we talk about 3D printing and music. This guide will not make our prints better, but it will certainly help to make them more fun. How do you expect… Here you go.
3D printing and music
Do you happen to leave the 3d printer to work and maybe change rooms? It is recommended not to stay in the environments where more 3d printers work because of the microparticles but then, how to realize that the 3d printer is finished? If, like me, you launch 4 or 5 printers at work, how can you tell when one of them is finished?
Well simple… We can add a sound that alerts us when the 3d printer is finished!
By adding a simple line in the Gcode code:
The command is: M300 S(xxxx) P(xxxx).
Let’s try to analyze it – M300 basically says to the printer: “sing!”. The S is the pitch of the sound (the pitch of the note in Hz) and the P is the duration in milliseconds.
If we can “tune” the printer then we can create music! Yes, you can! Anyone who is even a little familiar with music and solfeggio will have already realized that only one thing is missing, the pause, which is M300 S0 Pxxxx. Now we have everything!
Obviously only a composer would be able to compose and reproduce the music, fortunately for us there was the Nokia and its ringers!
In the 90’s the Nokia ringtones went crazy in RTTTL (Ring Tone Text Transfer Language) format, suitable to be played with the Buzzers of our electronic boards.
How to add a touch of music to 3D Printing
Fortunately for us there are some music libraries on the web with an endless series of music in RTTTL format. One of the most famous is Picaxe.com —- (find tons of songs here) —, where you will find almost all the music ever written. At this address you can find an RTTTL converter –> Gcode that will transform any melody formed by text into machine language.
They range from TV acronyms, classical music arias, movie themes and songs, old and new!
3D printing and music: Transforming the Printer into the Little Mermaid
Okay, I have the music, and now what?
At this point basically the roads are 3 from the most painless to the most invasive we’ll see them all.
1 – Enter the melody directly into the Gcode
Open your Gcode file using Notepad and brutally paste the song into the location of the print you prefer. Before you start, at the end of the print or even in the middle.
The advantage of this method is that you can customize the song for printing very easily, and you can insert it where you like it most. The other side of the coin is that with this method it is very easy to go and make changes to the correct original Gcode, with a high probability of making the print fail. You have to pay the utmost attention … but you want to put:
2- Insert the melody in the Gcode of the beginning and end of the slicer
Here in the photo you can see the possibility to go and modify the Gcode of beginning and end of Cura 3.0. If you don’t know how to do it, you can refer to this simple guide.
Each slicer on the market, free or not, gives you the ability to store repeated Gcode commands for start and stop sequences.
Here, as in the previous case, copy and paste the text with the Gcode commands in the Start or Finish box.
This method has the limitation of letting the melody be heard only at the beginning or at the end, but it will be present in every print, without having to put it back to each processing. Just remember to change it once in a while or you’ll get bored!
The limitation of this method gives you the certainty of not going to touch the heart of your work, and therefore not to incur in unpleasant printing errors. This is the method that I personally recommend.
3 – Inserting the melody directly into the firmware
There is also a way to insert the melodies directly into the firmware and use them at power-up or after printing. This method is not recommended as it would require a complete reflash.
Moreover, due to some memory restrictions, the firmware is often limited to displaying a maximum number of files per folder.
Adding 11000 files directly to a single folder is likely to cause the firmware to crash when it tries to list all the files.
You can try, but I recommend testing only with a package of 20 or 30 files maximum per folder.