Klipper 固件官方 G-Code/M-Code 命令大全(基于官方文档校准
淡定的于总
2025年11月22日 17:01

一、标准基础命令(核心通用操作)

  • 移动控制:G0/G1 [X<值>] [Y<值>] [Z<值>] [E<值>] [F<速度>](G0 快速移动、G1 线性打印 / 挤出);G4 P<毫秒>(延时);G28 [X/Y/Z](轴回原点)。

  • 坐标与模式:G90(绝对坐标模式)、G91(相对坐标模式);M82(绝对挤出模式)、M83(相对挤出模式);G92 [X/Y/Z/E<值>](设置坐标偏移)。

  • 电机与安全:M18/M84(关闭电机);M112(紧急停止);M400(等待当前移动完成)。

  • 温度与风扇:M104 [T<索引>] [S<温度>](设置喷嘴温度,不等待);M109 [T<索引>] S<温度>(设置喷嘴温度并等待稳定);M140 [S<温度>](设置热床温度,不等待);M190 S<温度>(设置热床温度并等待稳定);M106 S<0-255>(设置风扇转速);M107(关闭风扇);M105(获取挤出机温度)。

  • 参数覆盖:M220 S<百分比>(设置速度因子覆盖);M221 S<百分比>(设置挤出因子覆盖);M204 S<值> 或 M204 P<值> T<值>(设置加速度,P/T 同时指定时取最小值)。

  • 信息查询:M114(获取当前位置);M115(获取固件版本);M119(查询限位开关状态,官方不推荐,建议用 QUERY_ENDSTOPS)。

二、扩展配置命令(按模块分类,需对应配置启用)

(一)校准相关

  • PROBE:探头触发测试,支持 PROBE_SPEED、SAMPLES 等参数。

  • PROBE_CALIBRATE:探头 Z 偏移校准,需配合手动操作。

  • PROBE_ACCURACY:探头精度测试,计算多次采样的统计数据。

  • Z_ENDSTOP_CALIBRATE:Z 轴限位开关校准。

  • Z_OFFSET_APPLY_ENDSTOP/Z_OFFSET_APPLY_PROBE:将当前 Z 偏移固化到配置,需后续执行 SAVE_CONFIG。

  • PID_CALIBRATE HEATER=<加热器> TARGET=<温度>:加热器 PID 校准。

  • CALIBRATE_EXTRUDER:挤出机校准向导,自动计算 E 步距。

  • BED_MESH_CALIBRATE:床网校准,生成床面高度网格并生效。

  • BED_TILT_CALIBRATE:床面倾斜校准,推荐 X/Y 轴倾斜调整参数。

  • QUAD_GANTRY_LEVEL:龙门架四角调平,补偿 Z 轴倾斜。

  • Z_TILT_ADJUST:Z 轴倾斜调整,独立校准各 Z 轴步进电机。

  • DELTA_CALIBRATE:三角洲机型校准,优化限位、塔角和半径参数。

  • SKEW_CORRECT:倾斜校正相关(SET_SKEW/GET_CURRENT_SKEW 等),修正 XY/XZ/YZ 平面倾斜。

(二)打印控制与暂停

  • PAUSE:暂停打印,记录当前位置。

  • RESUME [VELOCITY=<速度>]:恢复打印,按指定速度归位。

  • CLEAR_PAUSE:清除暂停状态,不恢复打印。

  • CANCEL_PRINT:取消当前打印。

  • M600 [X/Y/Z/E<值>]:自动换料 / 换色,支持自定义换料位置和抬升高度。

  • SAVE_GCODE_STATE [NAME=<名称>]:保存 G 代码解析状态(坐标模式、偏移等)。

  • RESTORE_GCODE_STATE [NAME=<名称>]:恢复保存的 G 代码状态。

(三)硬件与传感器控制

  • BLTouch:BLTOUCH_DEBUG COMMAND=<命令>(pin_down/touch_mode 等);BLTOUCH_STORE MODE=<输出模式>(存储输出模式到 EEPROM)。

  • 加速度计(ADXL345):ACCELEROMETER_MEASURE(启动 / 停止加速度测量);ACCELEROMETER_QUERY(查询当前加速度值)。

  • ** filament 传感器 **:QUERY_FILAMENT_SENSOR SENSOR=<名称>(查询传感器状态);SET_FILAMENT_SENSOR SENSOR=<名称> ENABLE=<0/1>(启用 / 禁用传感器)。

  • LED 控制:SET_LED LED=<名称> RED/GREEN/BLUE/WHITE=<0.0-1.0>(设置 LED 颜色);SET_LED_TEMPLATE(绑定 LED 显示模板)。

  • 伺服电机:SET_SERVO SERVO=<名称> [ANGLE=<角度> | WIDTH=<脉冲宽度>](设置伺服电机位置)。

  • 输出引脚:SET_PIN PIN=<名称> VALUE=<值>(控制 GPIO 引脚,数字引脚 0/1,PWM 引脚 0.0-1.0)。

(四)进阶配置与调试

  • SAVE_CONFIG:保存校准参数到 printer.cfg 并重启主机。

  • RESTART:重启 Klipper 固件,重载配置(不清除 MCU 错误状态)。

  • FIRMWARE_RESTART:深度重启固件,清除 MCU 错误状态。

  • STATUS:查询 Klipper 主机状态。

  • HELP:列出所有可用扩展命令。

  • GET_POSITION:获取工具头详细位置信息。

  • SET_GCODE_OFFSET [X/Y/Z<值> | X/Y/Z_ADJUST<调整量>]:设置 G 代码位置偏移。

  • SET_VELOCITY_LIMIT [VELOCITY/ACCEL等参数]:修改速度 / 加速度限制。

  • SET_PRESSURE_ADVANCE:设置压力提前参数。

  • SET_INPUT_SHAPER:配置输入整形参数,抑制共振。

  • TEST_RESONANCES AXIS=<轴>:测量轴共振频率。

  • SHAPER_CALIBRATE:自动校准输入整形最优参数。

  • DUMP_TMC STEPPER=<名称>:读取 TMC 驱动寄存器值,用于调试。

  • INIT_TMC STEPPER=<名称>:初始化 TMC 驱动寄存器。

  • SET_TMC_CURRENT STEPPER=<名称> CURRENT=<电流> HOLDCURRENT=<保持电流>:调整 TMC 驱动电流。

  • STEPPER_BUZZ STEPPER=<名称>:步进电机诊断,前后移动 1mm 共 10 次。

  • FORCE_MOVE:强制移动步进电机(无边界检查,仅用于调试,需后续 G28 重置)。

(五)文件与打印管理

  • SDCARD_PRINT_FILE FILENAME=<文件名>:加载并启动 SD 卡文件打印。

  • SDCARD_RESET_FILE:卸载 SD 卡文件并清除状态。

  • SDCARD_LOOP_BEGIN/END/DESIST:SD 卡打印循环控制(需启用 sdcard_loop 配置)。

  • EXCLUDE_OBJECT:排除打印对象(定义 / 启动 / 结束 / 重置对象)。

三、关键说明(基于官方文档补充)

  1. Klipper 优先支持 “人类可读的扩展命令”,非所有标准 G-Code 都支持,特殊命令可通过 gcode_macro 自定义实现(如 G12、G29 等)。

  2. 扩展命令需对应配置模块启用(如 [bltouch]、[bed_mesh] 等),参数区分大小写,部分命令执行后需 SAVE_CONFIG 才能永久生效。

  3. 终端输出仅用于人类阅读,外部软件控制需参考 API Server 文档。

  4. 命令参数可参考官方文档,部分模块(如 adxl345、angle、load_cell 等)的命令需启用对应硬件配置后才可使用。