Warning: Incorrect G-code can damage your printer. Always backup working configurations before making changes.
Machine G-Code
Custom G-code scripts that run at specific points during printing.
Start G-Code
- Parameter
machine_start_gcode- Description
- G-code executed before printing begins. Typically includes homing, bed leveling, heating, and purge line.
Common Start G-Code Commands
G28 ; Home all axes
G29 ; Auto bed leveling (if enabled)
M140 S{first_layer_bed_temperature[0]} ; Set bed temp
M190 S{first_layer_bed_temperature[0]} ; Wait for bed temp
M104 S{first_layer_temperature[0]} ; Set nozzle temp
M109 S{first_layer_temperature[0]} ; Wait for nozzle temp
G92 E0 ; Reset extruder
G1 Z2.0 F3000 ; Move Z up
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Purge line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move over
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Second purge line
G92 E0 ; Reset extruder
End G-Code
- Parameter
machine_end_gcode- Description
- G-code executed after printing completes. Typically includes retraction, cooling, and presenting the part.
Common End G-Code Commands
G91 ; Relative positioning
G1 E-2 F2700 ; Retract filament
G1 Z10 F3000 ; Raise Z
G90 ; Absolute positioning
G1 X0 Y220 F6000 ; Present print
M104 S0 ; Turn off hotend
M140 S0 ; Turn off bed
M84 ; Disable motors
M107 ; Turn off fan
Before Layer Change G-Code
- Parameter
before_layer_change_gcode- Description
- Executed before each layer change. Useful for timelapse triggers or custom actions.
After Layer Change G-Code
- Parameter
layer_change_gcode- Description
- Executed after each layer change.
Tool Change G-Code
- Parameter
change_filament_gcode- Description
- G-code for filament/tool changes in multi-material printing.
Pause Print G-Code
- Parameter
machine_pause_gcode- Description
- G-code executed when print is paused (for color changes, etc.).
Available Placeholders
You can use these placeholders in your G-code, which will be replaced with actual values:
| Placeholder | Description |
|---|---|
{first_layer_temperature} | First layer nozzle temperature |
{first_layer_bed_temperature} | First layer bed temperature |
{layer_z} | Current layer Z height |
{layer_num} | Current layer number |
{total_layer_count} | Total number of layers |
{filament_type} | Type of filament (PLA, PETG, etc.) |