G-codes:
G00
G01
G02
G03
G04
G28
G38.2
G53
G90
G91
G92
M-codes: M00 M03 M04 M05 M62 M63 M205 M410 M411 M666 M667
M-codes: M00 M03 M04 M05 M62 M63 M205 M410 M411 M666 M667
G-codes List
| Code | Parameters | Description | Example |
|---|---|---|---|
| G00 | X, Y, Z, A, B, F |
Rapid positioning – moves the tool in a straight line to the specified coordinates at maximum speed. Main parameters:
Note: The A and B axes are not supported yet. Please refer to the product roadmap for details.
|
G00
X10
Y20.52
Executes a rapid move from the current position to X10 Y20.52 at maximum speed.
G00
X30
Y40
F500
Executes a rapid move from the current position to X30 Y40 using a feedrate of 500 mm/min instead of the maximum speed. |
| G01 | X, Y, Z, A, B, F |
Linear interpolation – moves the tool in a straight line to the specified coordinates at the programmed feedrate. Main parameters:
Note: The A and B axes are not supported yet. Please refer to the product roadmap for details.
|
G01
X10
Y20.52
F500
Executes a linear interpolation from the current position to X10 Y20.52 at a feedrate of 500 mm/min.
G01
X30
Y40
Executes a linear interpolation from the current position to X30 Y40 using the last specified feedrate. |
| G02 | X, Y, I, J, R, F |
Circular interpolation, clockwise – moves the tool along a circular path to the specified end coordinates. Main parameters:
The arc can be defined in two ways: (do not mix them in one line) 1. Center offset method:
Note: The sign of R does not affect the direction of motion. Direction is defined by the command – clockwise for G02
|
G02
X30
Y40
I10
J10
F100
CW arc to X30 Y40. Center is offset by I10 (X) and J10 (Y) from start point. Feedrate: 100 mm/min.
G02
X50
Y60
R15
CW arc to X50 Y60 with radius 15. R+ selects the shorter arc (≤ 180°). Uses last feedrate.
G02
X50
Y60
R-15
CW arc to X50 Y60 with radius 15. R- selects the longer arc (> 180°). Uses last feedrate.
G02
I10
J10
Full circle (360°) at current position with center offset I10 J10. |
| G03 | X, Y, I, J, R, F |
Circular interpolation, counterclockwise – moves the tool along a circular path to the specified end coordinates. Main parameters:
The arc can be defined in two ways: (do not mix them in one line) 1. Center offset method:
Note: The sign of R does not affect the direction of motion. Direction is defined by the command – counterclockwise for G03
|
G03
X30
Y40
I10
J10
F100
CCW arc to X30 Y40. Center is offset by I10 (X) and J10 (Y) from start point. Feedrate: 100 mm/min.
G03
X50
Y60
R15
CCW arc to X50 Y60 with radius 15. R+ selects the shorter arc (≤ 180°). Uses last feedrate.
G03
X50
Y60
R-15
CCW arc to X50 Y60 with radius 15. R- selects the longer arc (> 180°). Uses last feedrate.
G03
I10
J10
Full circle (360°) at current position with center offset I10 J10. |
| G04 | P, S |
Dwell – pauses program execution for a specified period of time without moving the machine. Main parameters:
Note: During the dwell time, all motion is temporarily stopped while the controller remains active.
|
G04
P1000
Pauses execution for 1000 milliseconds (1 second).
G04
S2
Pauses execution for 2 seconds.
G04
P500
S1
Although P500 (500 ms) is specified, the S parameter takes precedence, resulting in a 1 second dwell.
G04
No parameters provided. The command is ignored and no dwell is performed.
G04
P0
Zero dwell time specified. The command has no effect. |
| G28 | X, Y, Z, A, B, F, M, N, T, D, H |
Homing and axis state control – controls homing, trust state and position reference of the specified axes. Main axis parameters:
Operating modes:
Automatic homing (default mode):
Note: Only one operating mode can be used at a time. Combining multiple modes in a single command is not supported.
Note: The A and B axes are not supported yet. Please refer to the product roadmap for details.
|
G28
X
Y
Z
Automatically homes X, Y and Z axes using hardware endstops.
G28
X0
Y0
M
Manually sets the current X and Y positions to the specified coordinates.
G28
X
D
Marks the X axis as untrusted and unhomed.
G28
X
T
Marks the X axis as trusted without performing any motion.
G28
X
H
Moves the X axis to the stored home position (only if the axis is trusted).
G28
X
N
Performs manual homing of the X axis using configured machine endstop limits.
G28
Z
F100
Performs automatic homing of the Z axis using a custom feedrate. |
| G38.2 | X, Y, Z, F |
Probe towards material surface – moves the probe towards the specified target coordinates until material contact is detected. If the target Z position is reached without detecting material, an error is triggered. Main parameters:
Note: When material is detected, the probe stops immediately. The machine’s X and Y positions are set to the target values (if specified), and Z is set to the measured contact height.
|
G38.2
Z-15
F500
Probes the Z axis down to -15 mm at 500 mm/min until material contact is detected.
G38.2
X50
Y50
Z-10
Moves towards the target position X50 Y50 Z-10. If material is detected before reaching Z-10, the probe stops immediately and the machine’s position is updated to X50 Y50, with Z set to the measured contact height. |
| G53 | X, Y, Z, A, B, F |
Move in the machine coordinate system – performs motion in the machine’s absolute coordinates, ignoring all work offsets. Main parameters:
|
G53
X0
Y0
Z0
Moves the machine to the absolute position X0 Y0 Z0 in the machine coordinate system at maximum speed (or specified F). Work offsets are ignored. |
| G90 | – |
Absolute positioning – all subsequent moves are interpreted as absolute coordinates relative to the current work coordinate system.
Note: Does not perform motion by itself; only changes how coordinates are interpreted.
|
G90
Sets the machine to absolute positioning mode. All future movement commands use coordinates relative to the origin of the current work coordinate system. Example sequence:
G90Moves the tool to absolute position X=10, Y=10.
G0
X20
Y5
Moves the tool to absolute position X=20, Y=5. |
| G91 | – |
Incremental positioning – all subsequent moves are interpreted as relative displacements from the current position.
Note: Does not perform motion by itself; only changes how coordinates are interpreted.
|
G91
Sets the machine to incremental positioning mode. All future movement commands move the tool relative to its current position. Example sequence:
G91Moves the tool +10 mm in X and +10 mm in Y relative to its current position.
G0
X-5
Y0
Moves the tool -5 mm in X, Y remains unchanged. |
| G92 | X, Y, Z, A, B |
Set the current position – assigns the specified coordinates to the machine’s workspace offset without moving the tool. Useful for resetting the origin or aligning workpieces. Main parameters:
Note: The A and B axes are not supported yet. Please refer to the product roadmap for details.
|
G92
X0
Y0
Z0
Sets the current machine position to X=0, Y=0, Z=0 without moving the tool. Future movement commands will interpret this as the new origin.
G92
X100
Sets the current X position to 100 mm, leaving other axes unchanged. |
M-codes List
| Code | Parameters | Description | Example |
|---|---|---|---|
| M00 | P, S |
Program stop – pauses the execution of the program until a continue signal is received. The signal can come from the user, an input pin, or an external module. Main parameters:
|
M00
S3
Stops program execution for up to 3 seconds or until a continue signal is received.
M00
P1000
Stops program execution for up to 1000 ms or until a continue signal is received.
M00
Stops program execution indefinitely until a continue signal is received (default timeout 0). |
| M03 | I |
Turn ON the laser or plasma effector (activates main machine relay). Main parameters:
|
M03
Turns on the effector by activating the main relay immediately after previous motions are done.
M03
I
Turns on the effector in inline mode, synchronized with planner execution. |
| M04 | I |
Turn ON the laser or plasma effector (activates main machine relay). Main parameters:
|
M04
Turns on the effector by activating the main relay immediately after previous motions are done.
M04
I
Turns on the effector in inline mode, synchronized with planner execution. |
| M05 | I |
Turn OFF the laser or plasma effector (deactivates main machine relay). Main parameters:
|
M05
Turns off the effector by deactivating the main relay immediately after previous motions are completed.
M05
I
Turns off the effector in inline mode, synchronized with planner execution. |
| M62 | P, S, I |
Turns ON a digital output (DO1–DO6) with optional power and inline synchronization. Main parameters:
Note: Continuous outputs are PWM outputs.
|
M62
P3
Turns on digital output 3 ON (for binary output) immediately after all previous motions are finished.
M62
P5
S75
I
Turns on continuous output 5 at 75% power, synchronized inline with the motion planner. |
| M63 | P, I |
Turns OFF a digital output (DO1–DO6) with optional inline synchronization. Main parameters:
Note: Continuous outputs are PWM outputs.
|
M63
P3
Turns off digital output 3 immediately after all previous motions are finished (binary output).
M63
P5
I
Turns off digital output 5 in inline mode, synchronized with the motion planner (for continuous output). |
| M205 | J |
Set advanced machine settings – allows configuring internal motion parameters without moving the machine. Junction deviation affects how sharply the machine can change direction at corners.
Note: This parameter is not stored permanently. After a power cycle or controller restart, the default value is restored.
To keep a custom value, the command must be issued after each machine startup.
Main parameters:
Note: Use caution when increasing junction deviation; too high values may reduce motion accuracy or cause mechanical stress.
|
M205
J0.05
Sets the junction deviation to 0.05 mm. This changes how sharply the machine accelerates/decelerates when moving around corners.
M205
Queries or keeps the current junction deviation value without changing it. |
| M410 | – |
Emergency stop – immediately aborts all planned and active motion. The machine is stopped instantly, even in the middle of a move. Axis positions may become out of sync with the stepper position and should be re-homed before continuing.
Note: This command is typically injected by the control system and should be used only in emergency situations.
|
M410
Immediately stops all motion without deceleration (emergency stop). |
| M411 | – |
Controlled stop – aborts queued motions and performs a normal stop of the machine. Motion is stopped in a controlled manner. Unlike M410, this command uses a normal stop procedure and is safer for mechanics.
Note: This command is typically injected by the control system.
|
M411
Stops the machine using a controlled (non-emergency) stop. |
| M666 | I |
Disable Torch Height Controller (THC). Turns off automatic torch height regulation. Main parameters:
|
M666
Immediately disables THC after current motion queue is finished.
M666
I
Disables THC in inline mode, synchronized with motion execution. |
| M667 | I, P |
Enable Torch Height Controller (THC). Activates automatic torch height regulation during cutting operations. Main parameters:
|
M667
Enables THC with default settings after previous motions are completed.
M667
P120
Enables THC and sets the target voltage to 120 (non-inline mode).
M667
I
Enables THC in inline mode (without changing target voltage). |