GCODE Basics

This wiki article describes the basics of GCODE programming and the most important GCODEs. Our MINImill Control unit is based on the open source GRBL project. You can always read the complete documentation on the Github page of the GRBL project.

Version 3.0 of our control unit is based on FluidNC. FluidNC is a further development of the GRBL project and fully compatible. FluidNC offers an increased computation performance which enables for an even smoother machine operation. The FluidNC documentation is also available at the FluidNC Github page. All our control units are 100% compatible with all our milling machines and accessories.


What is GCODE

GCODE is a programming language which instructs the operation of your milling machine.

GCODE is usually automatically generated by your CAM program. However you can also manually edit and write GCODE. A basic understanding of GCODE helps you in debugging GCDOE output of you CAM software. Furthermore you can also write your own GCODE macros to customize your milling machine.

We have already precompiled a post processor for Fusion360. Tutorials and post processors can be found in our wiki on separate pages.

How does GCODE look like

The GCODE programming language is based on instructions which are executed line by line. All instructions within one line are executed at the same time. A GCODE line could look like the following:

N001G1X100 Y200 F100

A complete explanation of all GCODEs follows later on:

N001 … Line number – the line number is usually automatically generated by your CAM program and helps you during debugging of big GCODE files

G1 … linear motion – G1 moves the machine from the current position in a linear movement to the position specified in this line with the specified feed rate.

X100 Y200 … coordinates – these are the specified end coordinates of the movement

F100 … feed rate – F is the command which specifies the speed of the movement – unit is mm/min, so F100 specifies a speed of 100mm/min