跳轉至

# 配置變更

本文件涵蓋了軟體更新中對配置檔案不向后相容的部分。在升級 Klipper 時，最好也檢視一下這份文件。

本文件中的所有日期都是不精確的。

## 變更

20240415: The `on_error_gcode` parameter in the `[virtual_sdcard]` config section now has a default. If this parameter is not specified it now defaults to `TURN_OFF_HEATERS`. If the previous behavior is desired (take no default action on an error during a virtual_sdcard print) then define `on_error_gcode` with an empty value.

20240313: The `max_accel_to_decel` parameter in the `[printer]` config section has been deprecated. The `ACCEL_TO_DECEL` parameter of the `SET_VELOCITY_LIMIT` command has been deprecated. The `printer.toolhead.max_accel_to_decel` status has been removed. Use the minimum_cruise_ratio parameter instead. The deprecated features will be removed in the near future, and using them in the interim may result in subtly different behavior.

20240215: Several deprecated features have been removed. Using "NTC 100K beta 3950" as a thermistor name has been removed (deprecated on 20211110). The `SYNC_STEPPER_TO_EXTRUDER` and `SET_EXTRUDER_STEP_DISTANCE` commands have been removed, and the extruder `shared_heater` config option has been removed (deprecated on 20220210). The bed_mesh `relative_reference_index` option has been removed (deprecated on 20230619).

20240123: The output_pin SET_PIN CYCLE_TIME parameter has been removed. Use the new pwm_cycle_time module if it is necessary to dynamically change a pwm pin's cycle time.

20240123: The output_pin `maximum_mcu_duration` parameter is deprecated. Use a pwm_tool config section instead. The option will be removed in the near future.

20240123: The output_pin `static_value` parameter is deprecated. Replace with `value` and `shutdown_value` parameters. The option will be removed in the near future.

20231216: The `[hall_filament_width_sensor]` is changed to trigger filament runout when the thickness of the filament exceeds `max_diameter`. The maximum diameter defaults to `default_nominal_filament_diameter + max_difference`. See [hall_filament_width_sensor] configuration reference for more details.

20231207: Several undocumented config parameters in the `[printer]` config section have been removed (the buffer_time_low, buffer_time_high, buffer_time_start, and move_flush_time parameters).

20231110: Klipper v0.12.0 released.

20230826: If `safe_distance` is set or calculated to be 0 in `[dual_carriage]`, the carriages proximity checks will be disabled as per documentation. A user may wish to configure `safe_distance` explicitly to prevent accidental crashes of the carriages with each other. Additionally, the homing order of the primary and the dual carriage is changed in some configurations (certain configurations when both carriages home in the same direction, see [dual_carriage] configuration reference for more details).

20230810: The flash-sdcard.sh script now supports both variants of the Bigtreetech SKR-3, STM32H743 and STM32H723. For this, the original tag of btt-skr-3 now has changed to be either btt-skr-3-h743 or btt-skr-3-h723.

20230729: The exported status for `dual_carriage` is changed. Instead of exporting `mode` and `active_carriage`, the individual modes for each carriage are exported as `printer.dual_carriage.carriage_0` and `printer.dual_carriage.carriage_1`.

20230619: The `relative_reference_index` option has been deprecated and superceded by the `zero_reference_position` option. Refer to the Bed Mesh Documentation for details on how to update the configuration. With this deprecation the `RELATIVE_REFERENCE_INDEX` is no longer available as a parameter for the `BED_MESH_CALIBRATE` gcode command.

20230530: The default canbus frequency in "make menuconfig" is now 1000000. If using canbus and using canbus with some other frequency is required, then be sure to select "Enable extra low-level configuration options" and specify the desired "CAN bus speed" in "make menuconfig" when compiling and flashing the micro-controller.

20230525: `SHAPER_CALIBRATE` command immediately applies input shaper parameters if `[input_shaper]` was enabled already.

20230407: The `stalled_bytes` counter in the log and in the `printer.mcu.last_stats` field has been renamed to `upcoming_bytes`.

20230323: On tmc5160 drivers `multistep_filt` is now enabled by default. Set `driver_MULTISTEP_FILT: False` in the tmc5160 config for the previous behavior.

20230304: The `SET_TMC_CURRENT` command now properly adjusts the globalscaler register for drivers that have it. This removes a limitation where on tmc5160, the currents could not be raised higher with `SET_TMC_CURRENT` than the `run_current` value set in the config file. However, this has a side effect: After running `SET_TMC_CURRENT`, the stepper must be held at standstill for >130ms in case StealthChop2 is used so that the AT#1 calibration gets executed by the driver.

20230202: The format of the `printer.screws_tilt_adjust` status information has changed. The information is now stored as a dictionary of screws with the resulting measurements. See the status reference for details.

20230201: The `[bed_mesh]` module no longer loads the `default` profile on startup. It is recommended that users who use the `default` profile add `BED_MESH_PROFILE LOAD=default` to their `START_PRINT` macro (or to their slicer's "Start G-Code" configuration when applicable).

20230103: It is now possible with the flash-sdcard.sh script to flash both variants of the Bigtreetech SKR-2, STM32F407 and STM32F429. This means that the original tag of btt-skr2 now has changed to either btt-skr-2-f407 or btt-skr-2-f429.

20221128: Klipper v0.11.0 released.

20221122: Previously, with safe_z_home, it was possible that the z_hop after the g28 homing would go in the negative z direction. Now, a z_hop is performed after g28 only if it results in a positive hop, mirroring the behavior of the z_hop that occurs before the g28 homing.

20220616: It was previously possible to flash an rp2040 in bootloader mode by running `make flash FLASH_DEVICE=first`. The equivalent command is now `make flash FLASH_DEVICE=2e8a:0003`.

20220612: The rp2040 micro-controller now has a workaround for the "rp2040-e5" USB errata. This should make initial USB connections more reliable. However, it may result in a change in behavior for the gpio15 pin. It is unlikely the gpio15 behavior change will be noticeable.

20220407: The temperature_fan `pid_integral_max` config option has been removed (it was deprecated on 20210612).

20220407: The default color order for pca9632 LEDs is now "RGBW". Add an explicit `color_order: RBGW` setting to the pca9632 config section to obtain the previous behavior.

20220330: The format of the `printer.neopixel.color_data` status information for neopixel and dotstar modules has changed. The information is now stored as a list of color lists (instead of a list of dictionaries). See the status reference for details.

20220307: `M73` will no longer set print progress to 0 if `P` is missing.

20220304: There is no longer a default for the `extruder` parameter of extruder_stepper config sections. If desired, specify `extruder: extruder` explicitly to associate the stepper motor with the "extruder" motion queue at startup.

20220210：`SYNC_STEPPER_TO_EXTRUDER`、`SET_EXTRUDER_STEP_DISTANCE`、extruder的 `shared_heater` 配置選項已棄用。這些功能將在不久的將來被刪除。將`SET_EXTRUDER_STEP_DISTANCE`替換為`SET_EXTRUDER_ROTATION_DISTANCE`，`SYNC_STEPPER_TO_EXTRUDER`替換為`SYNC_EXTRUDER_MOTION`，使用 `shared_heater` 與 extruder_stepper配置分段替換 extruder 配置分段，並更新所有啟用宏以使用 SYNC_EXTRUDER_MOTION。

20220116: 變更了tmc2130、tmc2208、tmc2209和tmc2660的 `run_current` 計算程式碼。對於一些 `run_current`設定，驅動程式現在的配置結果可能被和原來不同。新的配置應該更準確，但它可能導致前的tmc驅動調諧失效。

20211230: 遷移輸入整形器調整指令碼（`scripts/calibrate_shaper.py`和`scripts/graph_accelerometer.py`），新指令碼預設使用Python3。因此，必須安裝Python3版本的某些軟體包（例如，`sudo apt install python3-numpy python3-matplotlib`）才能繼續使用這些指令碼。更多細節，請參考軟體安裝。另外，使用者可以通過在控制檯顯性呼叫Python2直譯器，臨時強制在Python 2下執行這些指令碼：`python2 ~/klipper/scripts/calibrate_shaper.py ...`

20211110: 棄用"NTC 100K beta 3950 "溫度感測器。未來會刪除這個感測器。大多數使用者會發現 "Generic 3950 "溫度感測器更準確。要繼續使用舊的（通常不太準確）定義，請定義一個自定義的thermistor，其中包括`temperature1: 25`，`resistance1: 100000`和`beta: 3950`。

20211104：刪除了"make menuconfig "中的 "step pulse duration "選項。現在在UART或SPI模式下配置的TMC驅動器的預設步長是100ns。在stepper config section中的增加了一個新的`step_pulse_duration`設定，所有需要自定義脈衝持續時間的步進驅動器都需要設定。

20211102：刪除了多個廢棄的功能。刪除了步進器`step_distance`選項（已於20201222廢棄）。刪除了`rpi_temperature`感測器別名（已於20210219廢棄）。刪除了mcu的`pin_map`選項（已於20210325廢棄）。刪除了gcode_macro `default_parameter_<name>`和通過`params`偽變數以外的宏訪問命令參數（已於20210503廢棄）。刪除了加熱器的`pid_integral_max`選項（已於20210612廢棄）。

20210929: Klipper v0.10.0發佈。

20210903: 加熱器的預設`smooth_time`已改為1秒（從2秒）。對於大多數印表機來說，這將使溫度控制更加穩定。

20210830: 預設的adxl345名稱現在是 "adxl345"。`ACCELEROMETER_MEASURE`和`ACCELEROMETER_QUERY`的預設CHIP參數現在也是 "adxl345"。

20210830: adxl345 ACCELEROMETER_MEASURE命令不再支援RATE參數。要改變查詢速率，請更新printer.cfg檔案併發出RESTART命令。

20210821: `printer.configfile.settings`中的一些配置設定現在將以列表形式報告，而不是原始字串。如果需要原始的字串，請使用`printer.configfile.config`代替。

20210819: 在某些情況下，`G28`的歸零動作可能在某個超出有效移動範圍的位置結束。在少數情況下，這可能導致歸位后出現 "移動超出範圍（Move out of range）"的錯誤。如果發生這種情況，請改變你的啟動指令碼，在歸位后立即將列印頭移動到有效位置。

20210814: atmega168和atmega328上的僅有模擬的偽引腳已經從PE0/PE1改名為PE2/PE3。

20210720: controller_fan部分現在預設監控所有步進電機（而不僅僅是運動型步進電機）。如果需要以前的行為，請參考config reference中的`stepper`配置選項。

20210703: `samd_sercom`配置部分現在必須通過`sercom`選項指定它要配置的sercom匯流排。

20210612: 加熱器(heater)和溫度控制風扇(temperature_fan)配置中的`pid_integral_max`選項已被棄用。該選項將在未來被移除。

20210503: The gcode_macro `default_parameter_<name>` config option is deprecated. Use the `params` pseudo-variable to access macro parameters. Other methods for accessing macro parameters will be removed in the near future. Most users can replace a `default_parameter_NAME: VALUE` config option with a line like the following in the start of the macro: `{% set NAME = params.NAME|default(VALUE)|float %}`. See the Command Templates document for examples.

20210430: SET_VELOCITY_LIMIT（和M204）命令現在可以設定大於配置檔案中指定值的速度(velocity)、加速度(acceleration)和轉角離心速度(square_corner_velocity)。

20210325:配置中的`pin_map`選項已被廢棄。使用sample-aliases.cfg檔案將現有的引腳名翻譯成實際的微控制器引腳名稱。配置中的`pin_map` 選項將在未來被移除。

20210313：Klipper對CAN匯流排通訊的微控制器的支援發生了變化。如果使用CAN匯流排，全部微控制器必須被重新刷寫並更新Klipper CAN 匯流排配置。

20210310：TMC2660 預設 driver_SFILT 從1 改為 0。

20210227：現在每當啟用 UART 或 SPI 模式的 TMC 步進電機驅動活躍時，每秒會查詢一次 - 如果無法聯繫到驅動或如果驅動報告錯誤，則 Klipper 將過渡到關閉狀態。

20210219：`rpi_temperature` 模組已被重新命名為 `temperature_host`。用 `sensor_type: temperature_host` 替換全部的 `sensor_type: rpi_temperature`。溫度檔案的路徑可以在 `sensor_path` 配置變數中指定。名稱「`rpi_temperature`」已被廢棄，在不久的將來會被刪除。

20210201: `TEST_RESONANCES` 命令現在將禁用之前啟用的輸入整形（並在測試後重新啟用）。如果需要覆蓋這一行為並保持輸入整形在測試時啟用，可以在命令中傳遞一個附加參數 `INPUT_SHAPING=1`。

20210201：如果一個加速度計晶片在printer.cfg的相應 adxl345 分段被賦予了一個名稱，`ACCELEROMETER_MEASURE` 命令的輸出檔案現在會包含它的名稱。

20201222：步進配置分段中的`step_distance`設定已被廢棄。建議更新配置以使用`rotrot_distance`設定。對`step_distance`的支援將在不久的將來被移除。

20201218：endstop_phase 模組中的 `endstop_phase` 設定已被 `trigger_phase` 取代。如果使用相位限位模組，則需要轉換為 `rotation_distance`，並通過執行 ENDSTOP_PHASE_CALIBRATE 命令重新校準任何相位限位。

20201218：旋轉三角洲和極點印表機現在必須為旋轉步進電機指定 `gear_ratio` ，並且它們可以不再指定 `step_distance` 參數。有關新 gear_ratio 參數的格式，請參閱 配置參考。

20201213：當使用"probe:z_virtual_endstop"時，指定的 Z "position_endstop"是無效的。現在，如果用"probe:z_virtual_endstop"指定一個 Z "position_endstop"，將會報告一個錯誤。刪除 Z 的 "position_endstop"定義以解決這個錯誤。

20201120: `[board_pins]`配置部分現在在`mcu:`參數中明確指定了對應MCU名稱。如果使用輔助MCU的board_pins，則必須更新配置以指定該MCU名稱。參見 配置參考 以瞭解更多細節。

20201112: 由`print_stats.print_duration`控制的報告時間已經改變。現在不包括檢測到的首次擠出之前的時間。

20201029: neopixel `color_order_GRB` 配置已從配置中移除。如果需要，請更新配置檔案，將新的`color_order`選項設定為RGB、GRB、RGBW或GRBW。

20201029: mcu配置部分的序列選項不再預設為 /dev/ttyS0 。在極其罕見的情況下，如果 /dev/ttyS0 是所需的串列埠，必須明確指定它。

20201020: Klipper v0.9.0發佈。

20200902: 修正了MAX31865轉換器的RTD電阻-溫度計算無法為低的錯誤。如果你使用此晶片，請重新校準你的列印溫度和PID設定。

20200816: G程式碼宏`printer.gcode`對像已被重新命名為`printer.gcode_move`。刪除了 `printer.toolhead` 和 `printer.gcode` 中幾個沒有文件的變數。參見 docs/Command_Templates.md 以獲得可用的模板變數列表。

20200816: gcode宏 "action_"系統已經改變。請用`action_emergency_stop()`替換所有`printer.gcode.action_emergency_stop()` ，用`action_respond_info()`替換所有`printer.gcode.action_respond_info()`，用`action_raise_error()`替換所有`printer.gcode.action_respond_error()`。

20200809: 菜單系統已被重寫。如果是定製菜單，那需要更新配置。配置細節見config/example-menu.cfg，例子見klippy/extras/display/menu.cfg。

20200731: `virtual_sdcard`印表機對像報告的`progress`屬性的行為已經改變。當列印暫停時，進度不再被重置為0。現在它會始終根據已載入檔案的讀取位置來報告進度，如果目前沒有載入檔案，則報告0。

20200725: 移除了舵機`enable`配置參數和SET_SERVO`ENABLE`參數。請更新所有宏，用`SET_SERVO SERVO=my_servo WIDTH=0`來禁用舵機。

20200608: LCD顯示支援部分改變了一些內部 "字形 "的名稱。如果自定義了顯示佈局，可能需要更新到最新的字形名稱（見klippy/extras/display/display.cfg中的可用字形列表）。

20200606: 改變了linux mcu上的引腳名稱。現在引腳的名稱格式是`gpiochip<chipid>/gpio<gpio>`。對於gpiochip0，你也可以使用`gpio<gpio>`的縮寫。例如，以前名字為`P20'，現在變成`gpio20'或`gpiochip0/gpio20'。

20200603：預設的16x4 LCD佈局將不再顯示列印的預計剩餘時間。(只顯示已用時間。)如果需要舊的佈局，可以用定製菜單顯示該資訊(詳情見config/example-extras.cfg中display_data的描述)。

20200531: 預設的USB廠商/產品ID現在是0x1d50/0x614e。這個新ID是為Klipper保留的（感謝openmoko專案）。這個變化不需要改變任何配置，但新的ID可能會出現在系統日誌中。

20200524：現在tmc5160的pwm_freq欄位，預設值是0（而不是1）。

20200425: gcode_macro命令模板變數`printer.heater`改命名為`printer.heaters`。

20200313: 改變多擠出機印表機16x4螢幕的預設液晶屏佈局。現在預設是單個擠出機螢幕佈局，用於顯示目前活動的擠出機。要使用以前的顯示佈局，請設定printer.cfg檔案中[display]部分的 "display_group: _multiextruder_16x4"。

20200308：移除了預設的`__test`菜單項。如果配置檔案中有自定義的菜單，那麼請確保刪除所有對這個`__test`菜單項的引用。

20200308: 移除了菜單中的 "desk "和 "card "選項。要定製lcd螢幕的佈局，請使用新的display_data配置部分（詳見config/example-extras.cfg）。

20200109: bed_mesh 模組現在引用探針的位置來進行網格配置。因此，一些配置選項已被重新命名以更準確地反映其功能。對於矩形床，`min_point'和`max_point`分別重新命名為`mesh_min`和`mesh_max`。對於圓形床，`bed_radius`重新命名為`mesh_radius`。對於圓形床，還增加了一個新的`mesh_origin`選項。請注意，這些變更與之前儲存的網格配置檔案不相容。如果檢測到一個不相容的配置檔案，此檔案會被忽略並被刪除。刪除過程可以通過發出 SAVE_CONFIG 命令來完成。使用者將需要重新校準每個床的網床配置。

20191218: 顯示配置部分不再支援 "lcd_type: st7567"。請使用 "uc1701 "顯示型別代替：設定 "lcd_type: uc1701 "，將 "rs_pin: some_pin "改為 "rst_pin: some_pin"。可能還需要增加一個 "contrast: 60"的配置設定。

20191210：刪除了內建的T0、T1、T2...命令。移除了擠出機 activate_gcode 和 deactivate_gcode 配置選項。如果需要這些命令（和指令碼），請定義單獨的[gcode_macro T0]風格的宏，呼叫ACTIVATE_EXTRUDER命令。參見config/sample-idex.cfg和sample-multi-extruder.cfg檔案中的例子。

20191210：移除了對M206命令的支援。用呼叫SET_GCODE_OFFSET來代替。如果需要對M206的支援，請新增一個[gcode_macro M206]配置部分，呼叫SET_GCODE_OFFSET。(例如 "SET_GCODE_OFFSET Z=-{params.Z}"。)

20191202：移除了對 "G4 "命令中無標註的 "S "參數的支援。用標準的 "P "參數（以毫秒為單位的延遲）取代任何出現的S。

20191126：改變了那些原生USB支援的微控制器上的USB名稱。現在預設使用唯一的晶片ID（如果可用）。如果 "MCU "配置部分使用以"/dev/serial/by-id/"開頭的 "串列埠 "設定，那麼可能有必要更新配置。在ssh終端執行 "ls /dev/serial/by-id/*"來確定新的id。

20191121：移除了pressure_advance_lookahead_time參數。檢視example.cfg以瞭解替代的配置設定。

20191112：如果步進驅動器沒有專用的步進電機使能引腳，那麼就會自動啟用tmc步進驅動器的虛擬使能功能。從配置中刪除對tmcXXXX:virtual_enable的引用。移除了在步進驅動器 enable_pin 配置中控制多個引腳的能力。如果需要控制多個引腳，請使用multi_pin 配置部分。

20191107：主擠出機配置部分必須指定為 "extruder"，不得再指定為 "extruder0"。查詢擠出機狀態的Gcode命令模板現在可以通過"{printer.extruder}"訪問。

20191021: Klipper v0.8.0發佈

20191003: [safe_z_homing] 中的 move_to_previous 選項現在預設為 False。(在20190918年之前，它實際上是False。)

20190918: [safe_z_homing]中的 zhop 選項總是在Z軸歸位完成後重新應用。這可能需要使用者更新基於此模組的自定義指令碼。

20190806: SET_NEOPIXEL 命令已被重新命名為 SET_LED。

20190726：更改了mcp4728的數模轉換程式碼。預設的i2c_address現在是0x60，電壓參考現在是相對於mcp4728的內部2.048V參考源。

20190710: 刪除了[firmware_retract]配置部分中的z_hop選項。由於對z_hop的支援不完整，可能會導致幾個常見切片軟體的異常行為。

20190710：改變了PROBE_ACCURACY命令的可選參數。如果宏或指令碼使用了該命令，可能需要更新。

20190628：移除了[skew_correction]部分所有的配置選項。現在，對skew_correction的配置是通過SET_SKEW gcode完成的。推薦使用方法請參見傾斜校正。

20190607: gcode_macro 的 "variable_X "參數（以及 SET_GCODE_VARIABLE 的 VALUE 參數）現在被解析為 Python 字元。如果一個值需要分配成字串型，那麼用引號包裹該值以確保它被解析為一個字串。

20190606: samples"、"samples_result "和 "samples_retract_dist "配置選項已被移至 "probe "配置部分。在 "delta_calibrate"、"bed_tilt"、"bed_mesh"、"screw_tilt_adjust"、"z_tilt "或 "quad_gantry_level "配置部分不再支援這些選項。

20190528：gcode_macro模板評估中的特殊 "status "變數已更名為 "printer"。

20190520: SET_GCODE_OFFSET命令已經改變，請相應地更新G程式碼宏。該命令將不再把要求的偏移量應用於下一個G1命令。舊的行為可以通過使用新的 "MOVE=1 "參數來近似實現。

20190404：Python主機軟體包已經更新。使用者需要重新執行~/klipper/scripts/install-octopi.sh指令碼（如果不使用標準的OctoPi安裝，則需要升級Python的依賴關係）。

20190404：現在i2c_bus和spi_bus參數（在各個配置部分）採用匯流排名稱而不是數字。

20190404：變更了sx1509的配置參數。'address' 參數改名為 'i2c_address'且必須被指定為十進制數字。以前使用的是0x3E，現在則用62。

20190328：現在[temperature_fan]配置中的min_speed值將被使用，在PID模式下，風扇將始終以這個速度或更高的速度轉動。

20190322: [tmc2660] 配置部分中 "driver_HEND "的預設值從6改為3。"driver_VSENSE "欄位被刪除（從run_current中自動計算的）。

20190310：現在[controller_fan]配置部分總是包含一個名字（例如[controller_fan my_controller_fan]）。

20190308：[tmc2130]和[tmc2208]配置部分中的 "driver_BLANK_TIME_SELECT "欄位已被重新命名為 "driver_TBL"。

20190308：變更了[tmc2660]配置部分。現在必須提供一個新的sense_resistor配置參數。變更了幾個driver_XXX參數的含義。

20190228: SAMD21板上的SPI或I2C現在必須通過[samd_sercom]配置部分指定匯流排引腳。

20190224: bed_shape選項已從bed_mesh中移除。半徑（radius）選項已被重新命名為bed_radius。如果使用圓形床，需要提供bed_radius和round_probe_count選項。

20190107：變更了mcp4451配置部分的i2c_address參數。這是Smoothieboards上的一個常規設定。新值是舊值的一半（88應改為44，而90應改為45）。

20181220: Klipper v0.7.0發佈

Back to top