4.9 KiB
This document describes the commands that Klipper supports. These are commands that one may enter into the OctoPrint terminal tab.
G-Code commands
Klipper supports the following standard G-Code commands:
- Move (G0 or G1):
G1 [X<pos>] [Y<pos>] [Z<pos>] [E<pos>] [F<speed>]
- Dwell:
G4 P<milliseconds>
- Move to origin:
G28 [X] [Y] [Z]
- Turn off motors:
M18
orM84
- Wait for current moves to finish:
M400
- Select tool:
T<index>
- Use absolute/relative distances for extrusion:
M82
,M83
- Use absolute/relative coordinates:
G90
,G91
- Set position:
G92 [X<pos>] [Y<pos>] [Z<pos>] [E<pos>]
- Set speed factor override percentage:
M220 S<speed>
- Set extrude factor override percentage:
M221 S<percent>
- Get extruder temperature:
M105
- Set extruder temperature:
M104 [T<index>] [S<temperature>]
- Set extruder temperature and wait:
M109 [T<index>] S<temperature>
- Set bed temperature:
M140 [S<temperature>]
- Set bed temperature and wait:
M190 S<temperature>
- Set fan speed:
M106 S<value>
- Turn fan off:
M107
- Emergency stop:
M112
- Get current position:
M114
- Get firmware version:
M115
- Set home offset:
M206 [X<pos>] [Y<pos>] [Z<pos>]
- Run PID tuning:
M303 [E<index>] S<temperature>
For further details on the above commands see the RepRap G-Code documentation.
Klipper's goal is to support the G-Code commands produced by common 3rd party software (eg, OctoPrint, Printrun, Slic3r, Cura, etc.) in their standard configurations. It is not a goal to support every possible G-Code command. Instead, Klipper prefers human readable "extended G-Code commands".
G-Code SD card commands
Klipper also supports the following standard G-Code commands if the "virtual_sdcard" config section is enabled:
- List SD card:
M20
- Initialize SD card:
M21
- Select SD file:
M23 <filename>
- Start/resume SD print:
M24
- Pause SD print:
M25
- Set SD position:
M26 S<offset>
- Report SD print status:
M27
Extended G-Code Commands
Klipper uses "extended" G-Code commands for general configuration and
status. These extended commands all follow a similar format - they
start with a command name and may be followed by one or more
parameters. For example: SET_SERVO SERVO=myservo ANGLE=5.3
. In this
document, the commands and parameters are shown in uppercase, however
they are not case sensitive. (So, "SET_SERVO" and "set_servo" both run
the same command.)
The following standard commands are supported:
QUERY_ENDSTOPS
: Probe the axis endstops and report if they are "triggered" or in an "open" state. This command is typically used to verify that an endstop is working correctly.GET_POSITION
: Return information on the current location of the toolhead.RESTART
: This will cause the host software to reload its config and perform an internal reset. This command will not clear error state from the micro-controller (see FIRMWARE_RESTART) nor will it load new software (see the FAQ).FIRMWARE_RESTART
: This is similar to a RESTART command, but it also clears any error state from the micro-controller.STATUS
: Report the Klipper host software status.HELP
: Report the list of available extended G-Code commands.
Custom Pin Commands
The following command is available when a "digital_output" or "pwm_output" config section is enabled:
SET_PIN PIN=config_name VALUE=<value>
Servo Commands
The following commands are available when a "servo" config section is enabled:
SET_SERVO SERVO=config_name WIDTH=<seconds>
SET_SERVO SERVO=config_name ANGLE=<degrees>
Probe
The following commands are available when a "probe" config section is enabled:
PROBE
: Move the nozzle downwards until the probe triggers.QUERY_PROBE
: Report the current status of the probe ("triggered" or "open").
Delta Calibration
The following commands are available when the "delta_calibrate" config section is enabled:
DELTA_CALIBRATE
: This command will probe seven points on the bed and recommend updated endstop positions, tower angles, and radius.NEXT
: If manual bed probing is enabled, then one can use this command to move to the next probing point during a DELTA_CALIBRATE operation.
Bed Tilt
The following commands are available when the "bed_tilt" config section is enabled:
BED_TILT_CALIBRATE
: This command will probe the points specified in the config and then recommend updated x and y tilt adjustments.NEXT
: If manual bed probing is enabled, then one can use this command to move to the next probing point during a BED_TILT_CALIBRATE operation.
Dual Carriages
The following commands are available when the "dual_carriage" config section is enabled:
SET_DUAL_CARRIAGE CARRIAGE=[0|1]
: This command will set the active carriage. It is typically invoked from the activate_gcode and deactivate_gcode fields in a multiple extruder configuration.