Gcode
Unified Gcode reference for all shop robots.
— Supported fully— Partially supported, or has issues
— Software support present, hardware not equipped.
— Not supported
Gcode | Description | Makerbot (FiveD) | Mendel (Sprinter) | Big Robot (Mach3) | Blue Mill | PCB mill |
---|---|---|---|---|---|---|
G0 X# Y# Z# | Move to specified coordinate at machine maximum feedrate | ? | ||||
G1 F# X# Y# Z# E# | Move to specified coordinate at feedrate (F#) If F not specified, uses most recently specified feedrate If F greater than G0 feedrate, uses G0 feedrate E# is extruder feed, which is an axis on RepRap-based printers |
|||||
G2 I# J# | Clockwise arc with center at (I, J) | ? | ||||
G3 I# J# | Counterclockwise arc with center at (I, J) | ? | ||||
G4 P# | Delay P seconds | ? | ||||
G10 L1 P# X# Y# Z# | Set tool offset for tool (P#) to position (X#, Y#, Z#) | ? | ||||
G10 L2 P# X# Y# Z# | Set tool offset for fixture (P#) to position (X#, Y#, Z#) | ? | ||||
G15 | Enter polar coordinate mode, origin = current point | ? | ||||
G16 | Exit polar coordinate mode | ? | ||||
G17 | Select X-Y plane for G2 and G3 | ? | ||||
G18 | Select X-Z plane for G2 and G3 | ? | ||||
G19 | Select Y-Z plane for G2 and G3 | ? | ||||
G20 | Set units to inches Does not move machine |
? | ||||
G21 | Set units to millimetres Does not move machine |
? | ||||
G28 | Go to home position at max speed | ? | ||||
G28.1 | Find home using endstops | ? | ||||
G30 X# Y# Z# | Go to home position at max speed via intermediate position | ? | ||||
G50 | Reset axis scale factors | ? | ||||
G51 X# Y# Z# | Set axis scale multipliers | ? | ||||
G81 X# Y# Z# | Drill hole: Go to position (X#, Y#) at G0 speed Then move straight down from the current Z location down to (Z#) at G0 speed (which seems wrong) Then move back up to the starting height at G0 speed |
? | ||||
G90 | Set machine to absolute positioning mode Does not move machine |
? | ||||
G91 | Set machine to incremental (relative) positioning mode Does not move machine |
? | ||||
G92 | Set the current position as home location Does not move machine |
? | ||||
G93 | Enable inverse time feed mode In this mode, F# values mean “complete the move in 1/(F#) minutes” |
? | ||||
G94 | Enable units-per-minute feed mode This mode is the opposite of G93, so F# values mean “complete the move at a feedrate of (F#) units per minute” |
? | ? | ? | ||
M0 | Stop machine | ? | ||||
M3 | Turn toolhead motor on (clockwise) | ? | ||||
M4 | Turn toolhead motor on (counterclockwise) | ? | ||||
M5 | Turn toolhead motor off | ? | ||||
M20 | List SD card contents | |||||
M21 | Mount SD card | |||||
M22 | Unmount SD card | |||||
M23 filename.gco | Select SD card file (8.3 name) | |||||
M24 | Start / resume SD card print | |||||
M25 | Pause SD card print | |||||
M26 S# | Set SD position to (S#) bytes in file | |||||
M27 | Report SD card print status | |||||
M28 filename.gco | Begin write to SD card File is created or overwritten, subsequent commands sent write to the file |
|||||
M29 filename.gco | End writing, close file | |||||
M82 | ??? | ? | ||||
M84 | Stop idle hold (turn off motor drivers) | |||||
M92 X# Y# Z# | Set steps-per-unit for the specified axis | |||||
M100 X# Y# Z# | Set drive current for X, Y, Z motors, in amperes | ? | ? | |||
M101 X# Y# Z# | Set steps-per-inch for each axis | ? | ? | |||
M102 X# Y# Z# | Set maximum feedrate for each axis | ? | ? | |||
M103 S# | Set microstepping for all axes (S = {1, 2, 4, 16}) | ? | ? | |||
M104 X# Y# Z# | Set normal (0) or reverse (1) direction for each axis | ? | ? | |||
M104 S# | Set extruder temperature to (S#) Does not wait for extruder to heat before continuing |
|||||
M105 | Request current extruder temperature | |||||
M105 S# | Set PWM S#/255 for spindle motor (S = [0, 255]) | ? | ? | |||
M106 S# | Turn fan on with PWM value (S#)/255 | |||||
M107 | Turn fan off | |||||
M108 S# | Set extruder speed to PWM value (S#)/255 | |||||
M108 R# | Set extruder speed to RPM value (R#) | |||||
M109 S# | Set extruder temperature to (S#) Waits for extruder to heat to the specified temperature before continuing to the next command |
|||||
N# M110 | Set current line number to (N#) | |||||
M111 S# | Set debug verbosity to (S#) | |||||
M112 | Software scram | |||||
M113 S# | Set extruder PWM to value (S#) (S = [0.0, 1.0]) | |||||
M114 | Report current position | |||||
M115 | Get firmware version | |||||
M116 | Wait for all temperatures to stabilize | |||||
M117 | Get last zero position | |||||
M118 P# | Negotiate features (for future use) | |||||
M119 | Get endstop status | |||||
M126 | Open extruder valve (if equipped) | |||||
M127 | Close extruder valve (if equipped) | |||||
M140 | Set bed temperature Does not wait for bed to heat before continuing |
|||||
M141 | Set chamber temperature Does not wait for chamber to heat before continuing |
|||||
M142 S# | Set holding pressure to (S#) bar | |||||
M143 S# | Set maximum safe hot-end temperature to (S#) Robot should scram if this temperature is ever exceeded |
|||||
M200 | Save configuration to non-volatile memory | ? | ||||
M201 | Output configuration to the console | ? |
page revision: 26, last edited: 20 Nov 2011 08:36