Written by: Megan Factor and Itamar Yona
Just like in a towering birthday cake or a savory slice of pizza, layers are key for building something from nothing. 3D printing is a prime example of this. You can dream up any sort of crazy creation, like a purple dragon wearing roller skates, but you’ll never get to actually hold your fantastical creation without the help of layers. In fact, 3D printing is based solely on the process of depositing layer upon layer of material onto the previous one in order to create an object.
So how does the 3D printer know exactly how many layers to make, the density, and the shape of the object? Thanks to a handy set of directions called a gcode. This is shorthand for geometric code: a package of instructions which operates our 3D printer. This bundle of commands is basically a language code which is used to move the printer components and also represents the tool paths of each layer.
But where does this road map of instructions come from? We’re glad you asked! Let’s break this down in the context of PrintSYSt: an AI-assisted software solution that takes you from 3D model to gcode to finished product with the click of a button.
Once you have your CAD file, or 3D model, you must upload it to a slicing software, PrintSYSt, for example. The software then creates paths for the 3D printer to follow in order to complete the job. Other necessary components such as support structures and thickness of each layer are woven into the gcode. PrintSYSt takes this one step further by automating the entire process. Rather than having to manipulate all these parameters to get the best 3D printed object, PrintSYSt’s patented algorithms identify the correct density, printing paths, and orientation as well as generating support structures.
Then, voila, a gcode is produced! Remember that purple roller skate-wearing dragon we talked about? Now we can print her instantly. PrintSYSt allows you to download the gcode in a ready to print file which can be sent to a printer connected to your computer or placed on an SD card and manually uploaded.
Something interesting to note about gcode is that is contains a lot of information. Opening up the file in a text editor like Microsoft Word, for example, will show you what the code actually looks like, but it is difficult to make sense of if you are not used to writing code.
For non-coders, using programs like Cura or SM3 will allow you to get a better understanding of gcode by opening up the code to see the printer toolpaths. Programs such as these can also track the extruder head movements which can be useful to verify some of the printing processes before they actually begin to print.
Let’s move on to flavors. No, we’re not talking about ice cream or soda, but gcode flavors! Each gcode is unique to the printer for which is was written. For example, if you are creating a gcode for an Ultimaker printer, it will look differently than one made for a Makerbot, hence the different flavors of gcode.
So what does gcode look like and what does each section mean?
Let’s break it down. Here is an example of a common gcode which represents printer movements:
G0 F9000 X125.38 Y118.00 Z0.50
G0 means this is a standard gcode command and movements to specific X-Y-Z coordinates.
F9000 represents the feed movement, or rate that the printer will move at.
In a similar line of gcode below, we can see the extrusion rate, denoted with an E.
G1 X93.18 Y117.963 E233.14
To put all the components together, this line of code is telling us that the printer will move to 93.18 on the X-axis and 117.96 on the y-axis with an extrusion rate of 233.14.
Other codes, such as M codes, represent other component instructions such as a cooling fan or temperature settings. If you want to have a deeper understanding of what was discussed in this post, we encourage you to explore gcode in more detail.
Thanks for taking the time to learn about gcode today! Even if you aren’t printing a purple dragon with roller skates, we wish you all the best with your 3D printing endeavors.