Learn/GcodePilot/Automation & safety
G-code Engine (RS274NGC)
At a glance
- Full RS274NGC interpreter: variables, expressions, flow control, and subroutines — LinuxCNC-style
- Reactive programs run live: G38 probing, M66 wait-on-input, and MSG operator dialogs resolve against the real machine
- M0/M1 pauses with the pendant and HUD aware of the hold
- The same engine powers touch-off routines, tool-change subs, and runtime-hook conditions
GcodePilot runs programs through a full RS274NGC interpreter — the LinuxCNC dialect: #
variables, expressions, if/while flow control, o<name> subroutines, and system parameters.
Reactive programs against a live machine
Plain programs expand and stream. Programs that need answers from the machine — a G38 probe
result, an M66 wait-on-input, an operator (MSG, …) dialog, an M0/M1 pause — run through the
live runner, which streams motion and drains at each of those points to resolve them against the
real controller before continuing. That's what makes conditional plasma touch-off routines and
tool-change subroutines possible on firmware that has none of this built in.
The same engine powers the Touch button's generated routines, M6 tool-change subroutines, runtime hook conditions, and the pre-run bounds check.