Skip to content

Commands

github-actions[bot] edited this page Nov 12, 2026 · 1 revision

G-code command reference

Every command these extensions register, extracted from the source with a Python parser rather than a text search, so a command cannot be missed because of how its name is spelled or assembled.

Source: NebulaOS-klipper-extensions at 178a0c2. 50 commands across 30 modules.

What this establishes: that the command is registered, by which module, with which handler and description. What it does not establish: that it behaves correctly on a printer. Where a test covers the module, it is named - that is evidence the logic is exercised, not that the hardware responds.

A leading underscore marks a command as internal: it is a step of another command or a macro's implementation detail, and is not meant to be called directly.

Some public commands are not in this table. Several user-facing names are gcode_macro definitions shipped in the firmware's own configuration, which call the underscore-prefixed command registered here. NEBULAOS_BED_TRAM is one: this repository registers _NEBULAOS_BED_TRAM, and the public name is [gcode_macro NEBULAOS_BED_TRAM] in etc/nebulaos/klipper/calibration.cfg in NebulaOS-firmware - Guided bed tramming - says which corner to adjust, one at a time - which forwards {rawparams} unchanged. Read at firmware b95b156 and present identically at 3bdf3ff, the 1.0.2 pin. The same pattern covers NEBULAOS_ESTEPS_CALIBRATE, NEBULAOS_LOAD_CELL_CALIBRATE and NEBULAOS_NOZZLE_CLEAN. A reference built only from this repository cannot see those, and claiming it is the complete list of what a user can type would be wrong.

Commands

Command Module Kind Test Description
AUTOTUNE_TMC autotune_tmc.py mux - -
EEPROM_DEBUG_READ bl24c16f.py mux - -
EEPROM_DEBUG_WRITE_BYTE bl24c16f.py mux - -
EEPROM_DEBUG_WRITE_FLOAT bl24c16f.py mux - -
EEPROM_DEBUG_WRITE_INT bl24c16f.py mux - -
EEPROM_IS_FIRST_USED bl24c16f.py mux - -
EEPROM_POS bl24c16f.py mux - -
EEPROM_PRINTER_INFO bl24c16f.py mux - -
EEPROM_READ bl24c16f.py mux - -
EEPROM_WRITE_BYTE bl24c16f.py mux - -
EEPROM_WRITE_FLOAT bl24c16f.py mux - -
EEPROM_WRITE_INT bl24c16f.py mux - -
NEBULAOS_BEEP nebulaos_beeper.py command test_nebulaos_beeper.py -
NEBULAOS_BEEPER_STOP nebulaos_beeper.py command test_nebulaos_beeper.py -
NEBULAOS_CALIBRATION_RECORD nebulaos_calibration.py command test_nebulaos_calibration.py -
NEBULAOS_CALIBRATION_STATUS nebulaos_calibration.py command test_nebulaos_calibration.py -
NEBULAOS_LOAD_CELL_AUTO_CHECK nebulaos_load_cell_calibration.py command test_nebulaos_load_cell_calibration.py -
NEBULAOS_LOAD_CELL_MODE nebulaos_load_cell_calibration.py command test_nebulaos_load_cell_calibration.py -
NEBULAOS_LOAD_CELL_READ nebulaos_load_cell_calibration.py command test_nebulaos_load_cell_calibration.py Read-only: the force on the front-left corner in grams (1 s average, current calibration). Never moves anything.
NEBULAOS_PLAY_TUNE nebulaos_beeper.py command test_nebulaos_beeper.py -
NEBULAOS_PLR_DISCARD nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py Discard any NebulaOS power-loss-recovery checkpoint
NEBULAOS_PLR_RESUME nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py Resume a NebulaOS power-loss-recovery checkpoint
NEBULAOS_PLR_STATUS nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py Report NebulaOS power-loss-recovery status
NEBULAOS_RAW_CONTACT_COMPARE nebulaos_calibration.py command test_nebulaos_calibration.py -
NEBULAOS_RAW_CONTACT_DIAGNOSTIC nebulaos_z_offset_probe.py command - -
NEBULAOS_RAW_CONTACT_REFERENCE nebulaos_z_offset_probe.py command - -
NEBULAOS_TMC_AUTOTUNE nebulaos_tmc_autotune.py command test_nebulaos_tmc_autotune.py Stage a TMC autotune motor/goal for a stepper (then SAVE_CONFIG)
NEBULAOS_Z_ADJUST nebulaos_z_adjust.py command test_nebulaos_z_adjust.py -
RUN_SHELL_COMMAND gcode_shell_command.py mux - -
SAVE_INPUT_SHAPER calibrate_shaper_config.py command - -
SET_PIN nebulaos_bed_soak.py command test_nebulaos_bed_soak.py Set the value of an output pin (the bed warp soak switch is remembered across Klipper restarts)
SET_PIN nebulaos_bed_soak.py replaces upstream test_nebulaos_bed_soak.py -
SET_VIRTUAL_PIN virtual_pins.py mux - -
TMCSTATUS tmcstatus.py command test_tmcstatus.py -
Z_OFFSET_APPLY_PROBE nebulaos_z_adjust.py command test_nebulaos_z_adjust.py Adjust the probe's z_offset (the saved NebulaOS Z offset adjustment is folded in and set to 0)
Z_OFFSET_APPLY_PROBE nebulaos_z_adjust.py replaces upstream test_nebulaos_z_adjust.py -
_NEBULAOS_AUTO_CALIBRATE nebulaos_calibration.py command test_nebulaos_calibration.py -
_NEBULAOS_BED_TRAM nebulaos_bed_tram.py command test_nebulaos_bed_tram.py -
_NEBULAOS_BED_TRAM_CANCEL nebulaos_bed_tram.py command test_nebulaos_bed_tram.py Cancel guided bed tramming
_NEBULAOS_CALIBRATION_CANCEL nebulaos_calibration.py command test_nebulaos_calibration.py -
_NEBULAOS_ESTEPS_CALIBRATE nebulaos_calibration.py command test_nebulaos_calibration.py -
_NEBULAOS_ESTEPS_CANCEL nebulaos_calibration.py command test_nebulaos_calibration.py Cancel an in-progress E-Steps calibration
_NEBULAOS_ESTEPS_CONFIRM nebulaos_calibration.py command test_nebulaos_calibration.py Confirm and persist a pending E-Steps result
_NEBULAOS_INPUT_SHAPER_CALIBRATE nebulaos_calibration.py command test_nebulaos_calibration.py -
_NEBULAOS_INPUT_SHAPER_CANCEL nebulaos_calibration.py command test_nebulaos_calibration.py Cancel an in-progress Input Shaper calibration
_NEBULAOS_LOAD_CELL_CALIBRATE nebulaos_load_cell_calibration.py command test_nebulaos_load_cell_calibration.py -
_NEBULAOS_LOAD_CELL_CANCEL nebulaos_load_cell_calibration.py command test_nebulaos_load_cell_calibration.py Cancel the guided load cell calibration - nothing is changed
_NEBULAOS_NOZZLE_CLEAN z_compensate.py command - -
_NEBULAOS_PLR_LOAD_MESH nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py Internal to NEBULAOS_PLR_RESUME
_NEBULAOS_PLR_SET_Z nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py Internal to NEBULAOS_PLR_RESUME PHYSICAL=1
_NEBULAOS_PLR_TIMELAPSE_MERGE nebulaos_power_loss_recovery.py command test_nebulaos_power_loss_recovery.py END_PRINT/CANCEL_PRINT: put the timelapse frames from before a power loss back in front
_NEBULAOS_Z_OFFSET_CALIBRATE nebulaos_calibration.py command test_nebulaos_calibration.py -

Commands that replace upstream Klipper behaviour

These are registered with a None handler first, which de-registers the upstream command, and then re-registered by this module. They are modified upstream behaviour, not NebulaOS inventions - someone arriving from stock Klipper will expect the upstream semantics.

  • SET_PIN - nebulaos_bed_soak.py
  • Z_OFFSET_APPLY_PROBE - nebulaos_z_adjust.py

Command parameters, by module

Parameters each module reads from the G-code command line, with the literal default where the source gives one. A parameter with no default is required on the command. These are listed per module rather than per command, because a module's handlers share its parameter parsing - matching each parameter to one command would need tracing every handler, and guessing it would be worse than saying so.

autotune_tmc.py

Parameter Type Default Constraints
TUNING_GOAL string none -

bl24c16f.py

Parameter Type Default Constraints
ADDR string required minval 0, maxval 2047
SIZE string required minval 0, maxval 56
VAL string required minval 0, maxval 255

calibrate_shaper_config.py

Parameter Type Default Constraints
SHAPER_TYPE_X string shaper_type_x -
SHAPER_TYPE_Y string shaper_type_y -

nebulaos_bed_soak.py

Parameter Type Default Constraints
PIN string "" -

nebulaos_bed_tram.py

Parameter Type Default Constraints
MOUNT string none -

nebulaos_beeper.py

Parameter Type Default Constraints
RTTTL string "" -
SONG string default_song -

nebulaos_calibration.py

Parameter Type Default Constraints
EXTRUDER string extruder -
FLOW string "" -
SUMMARY string "" -
X string none -
Y string none -

nebulaos_load_cell_calibration.py

Parameter Type Default Constraints
MODE string none -

nebulaos_tmc_autotune.py

Parameter Type Default Constraints
GOAL string auto -
MOTOR string "" -
STEPPER string "" -