From 15b5dbaf8ffac8e3889b2cc0ba7a61bce1e9fb6f Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Mon, 16 Nov 2020 18:47:32 -0500 Subject: docs: Move config reference information to new Config_Reference.md Move all the config reference information from files in the config/ directory to a new Config_Reference.md document. Signed-off-by: Kevin O'Connor --- config/example-cartesian.cfg | 71 + config/example-corexy.cfg | 13 +- config/example-corexz.cfg | 14 +- config/example-delta.cfg | 70 +- config/example-extras.cfg | 2306 ------------- config/example-menu.cfg | 73 - config/example-polar.cfg | 19 +- config/example-rotary-delta.cfg | 66 +- config/example-winch.cfg | 23 +- config/example.cfg | 341 -- config/generic-archim2.cfg | 2 +- config/generic-azteeg-x5-mini-v3.cfg | 2 +- config/generic-bigtreetech-gtr.cfg | 2 +- config/generic-bigtreetech-skr-e3-dip.cfg | 2 +- config/generic-bigtreetech-skr-mini-e3-v1.0.cfg | 2 +- config/generic-bigtreetech-skr-mini-e3-v1.2.cfg | 2 +- config/generic-bigtreetech-skr-mini-e3-v2.0.cfg | 2 +- config/generic-bigtreetech-skr-mini.cfg | 2 +- config/generic-bigtreetech-skr-pro.cfg | 2 +- config/generic-bigtreetech-skr-v1.1.cfg | 2 +- config/generic-bigtreetech-skr-v1.3.cfg | 2 +- config/generic-bigtreetech-skr-v1.4.cfg | 2 +- config/generic-cramps.cfg | 2 +- config/generic-creality-v4.2.7.cfg | 2 +- config/generic-duet2-duex.cfg | 2 +- config/generic-duet2-maestro.cfg | 2 +- config/generic-duet2.cfg | 2 +- config/generic-einsy-rambo.cfg | 2 +- config/generic-flyboard.cfg | 2 +- config/generic-fysetc-cheetah-v1.1.cfg | 2 +- config/generic-fysetc-cheetah-v1.2.cfg | 2 +- config/generic-fysetc-f6.cfg | 4 +- config/generic-fysetc-s6.cfg | 6 +- config/generic-gt2560.cfg | 2 +- config/generic-melzi.cfg | 2 +- config/generic-mightyboard.cfg | 2 +- config/generic-mini-rambo.cfg | 2 +- config/generic-minitronics1.cfg | 2 +- config/generic-mks-robin-e3.cfg | 2 +- config/generic-mks-robin-nano.cfg | 2 +- config/generic-mks-sgenl.cfg | 2 +- config/generic-printrboard-g2.cfg | 2 +- config/generic-printrboard.cfg | 2 +- config/generic-radds.cfg | 2 +- config/generic-rambo.cfg | 2 +- config/generic-ramps.cfg | 2 +- config/generic-re-arm.cfg | 2 +- config/generic-replicape.cfg | 2 +- config/generic-rumba.cfg | 2 +- config/generic-simulavr.cfg | 2 +- config/generic-smoothieboard.cfg | 2 +- config/generic-ultimaker-ultimainboard-v2.cfg | 2 +- config/kit-voron2-250mm.cfg | 5 +- config/kit-zav3d-2019.cfg | 5 +- config/printer-adimlab-2018.cfg | 2 +- config/printer-alfawise-u30-2018.cfg | 2 +- config/printer-anet-a4-2018.cfg | 2 +- config/printer-anet-a8-2017.cfg | 2 +- config/printer-anet-e10-2018.cfg | 2 +- config/printer-anet-e16-2019.cfg | 2 +- config/printer-anycubic-4max-2018.cfg | 2 +- config/printer-anycubic-i3-mega-2017.cfg | 2 +- config/printer-anycubic-kossel-2016.cfg | 2 +- config/printer-anycubic-kossel-plus-2017.cfg | 4 +- config/printer-creality-cr10-2017.cfg | 2 +- config/printer-creality-cr10mini-2017.cfg | 2 +- config/printer-creality-cr10s-2017.cfg | 2 +- config/printer-creality-cr20-2018.cfg | 2 +- config/printer-creality-cr20-pro-2019.cfg | 2 +- config/printer-creality-ender2-2017.cfg | 2 +- config/printer-creality-ender3-2018.cfg | 2 +- config/printer-creality-ender3-v2-2020.cfg | 2 +- config/printer-creality-ender3pro-2020.cfg | 2 +- config/printer-creality-ender5-2019.cfg | 2 +- config/printer-creality-ender5plus-2019.cfg | 2 +- config/printer-lulzbot-mini1-2016.cfg | 2 +- config/printer-lulzbot-taz6-2017.cfg | 2 +- config/printer-lulzbot-taz6-dual-v3-2017.cfg | 2 +- config/printer-micromake-d1-2016.cfg | 2 +- config/printer-monoprice-mini-delta-2017.cfg | 2 +- config/printer-mtw-create-2015.cfg | 2 +- config/printer-seemecnc-rostock-max-v2-2015.cfg | 2 +- config/printer-sovol-sv01-2020.cfg | 2 +- config/printer-tevo-flash-2018.cfg | 2 +- config/printer-tevo-tarantula-pro-2020.cfg | 2 +- config/printer-tronxy-p802e-2020.cfg | 2 +- config/printer-tronxy-p802m-2020.cfg | 2 +- config/printer-tronxy-x5s-2018.cfg | 2 +- config/printer-tronxy-x8-2018.cfg | 3 +- config/printer-twotrees-sapphire-pro-2020.cfg | 2 +- config/printer-velleman-k8200-2013.cfg | 2 +- config/printer-wanhao-duplicator-6-2016.cfg | 2 +- config/printer-wanhao-duplicator-9-2018.cfg | 2 +- config/printer-wanhao-duplicator-i3-mini-2017.cfg | 2 +- config/printer-wanhao-duplicator-i3-plus-2017.cfg | 2 +- ...rinter-wanhao-duplicator-i3-plus-mark2-2019.cfg | 2 +- config/printer-wanhao-duplicator-i3-v2.1-2017.cfg | 2 +- config/sample-bigtreetech-exp-mot.cfg | 2 +- config/sample-glyphs.cfg | 6 +- config/sample-idex.cfg | 3 +- config/sample-lcd.cfg | 2 +- config/sample-macros.cfg | 4 +- config/sample-multi-extruder.cfg | 3 +- config/sample-multi-mcu.cfg | 3 +- config/sample-probe-as-z-endstop.cfg | 3 +- config/sample-raspberry-pi.cfg | 3 +- docs/Benchmarks.md | 2 +- docs/Config_Reference.md | 3400 ++++++++++++++++++++ docs/Endstop_Phase.md | 7 +- docs/FAQ.md | 23 +- docs/G-Codes.md | 28 +- docs/Installation.md | 8 +- docs/Overview.md | 4 +- docs/Probe_Calibrate.md | 5 +- docs/Sensorless_Homing.md | 2 +- docs/Slicers.md | 5 +- docs/beaglebone.md | 5 +- klippy/extras/verify_heater.py | 2 +- test/klippy/commands.test | 2 +- test/klippy/out_of_bounds.test | 2 +- test/klippy/printers.test | 2 +- 121 files changed, 3644 insertions(+), 3067 deletions(-) create mode 100644 config/example-cartesian.cfg delete mode 100644 config/example-extras.cfg delete mode 100644 config/example-menu.cfg delete mode 100644 config/example.cfg create mode 100644 docs/Config_Reference.md diff --git a/config/example-cartesian.cfg b/config/example-cartesian.cfg new file mode 100644 index 00000000..569f31df --- /dev/null +++ b/config/example-cartesian.cfg @@ -0,0 +1,71 @@ +# This file is an example config file for cartesian style printers. +# One may copy and edit this file to configure a new cartesian +# printer. + +# DO NOT COPY THIS FILE WITHOUT CAREFULLY READING AND UPDATING IT +# FIRST. Incorrectly configured parameters may cause damage. + +# See docs/Config_Reference.md for a description of parameters. + +[stepper_x] +step_pin: ar54 +dir_pin: ar55 +enable_pin: !ar38 +step_distance: .0225 +endstop_pin: ^ar3 +position_endstop: 0 +position_max: 200 + +[stepper_y] +step_pin: ar60 +dir_pin: !ar61 +enable_pin: !ar56 +step_distance: .0225 +endstop_pin: ^ar14 +position_endstop: 0 +position_max: 200 + +[stepper_z] +step_pin: ar46 +dir_pin: ar48 +enable_pin: !ar62 +step_distance: .005 +endstop_pin: ^ar18 +position_endstop: 0.5 +position_max: 200 + +[extruder] +step_pin: ar26 +dir_pin: ar28 +enable_pin: !ar24 +step_distance: .004242 +nozzle_diameter: 0.500 +filament_diameter: 3.500 +heater_pin: ar10 +sensor_type: EPCOS 100K B57560G104F +sensor_pin: analog13 +control: pid +pid_Kp: 22.2 +pid_Ki: 1.08 +pid_Kd: 114 +min_temp: 0 +max_temp: 210 + +[heater_bed] +heater_pin: ar8 +sensor_type: EPCOS 100K B57560G104F +sensor_pin: analog14 +control: watermark +min_temp: 0 +max_temp: 110 + +[mcu] +serial: /dev/ttyACM0 +pin_map: arduino + +[printer] +kinematics: cartesian +max_velocity: 500 +max_accel: 3000 +max_z_velocity: 25 +max_z_accel: 30 diff --git a/config/example-corexy.cfg b/config/example-corexy.cfg index 1c175fa9..5ce40ac9 100644 --- a/config/example-corexy.cfg +++ b/config/example-corexy.cfg @@ -1,14 +1,12 @@ -# This file serves as documentation for config parameters of corexy +# This file is an example config file for corexy (and also h-bot) # style printers. One may copy and edit this file to configure a new -# corexy printer. Only parameters unique to corexy printers are -# described here - see the "example.cfg" file for description of -# common config parameters. +# corexy printer. # DO NOT COPY THIS FILE WITHOUT CAREFULLY READING AND UPDATING IT # FIRST. Incorrectly configured parameters may cause damage. -# The stepper_x section is used to describe the X axis as well as the -# stepper controlling the X+Y movement. +# See docs/Config_Reference.md for a description of parameters. + [stepper_x] step_pin: ar54 dir_pin: ar55 @@ -19,8 +17,6 @@ position_endstop: 0 position_max: 200 homing_speed: 50 -# The stepper_y section is used to describe the Y axis as well as the -# stepper controlling the X-Y movement. [stepper_y] step_pin: ar60 dir_pin: ar61 @@ -74,7 +70,6 @@ pin_map: arduino [printer] kinematics: corexy -# This option must be "corexy" for corexy printers. max_velocity: 300 max_accel: 3000 max_z_velocity: 25 diff --git a/config/example-corexz.cfg b/config/example-corexz.cfg index a0cd9b85..16b25fe1 100644 --- a/config/example-corexz.cfg +++ b/config/example-corexz.cfg @@ -1,14 +1,11 @@ -# This file serves as documentation for config parameters of corexz -# style printers. One may copy and edit this file to configure a new -# corexz printer. Only parameters unique to corexz printers are -# described here - see the "example.cfg" file for description of common -# config parameters. +# This file is an example config file for corexz style printers. One +# may copy and edit this file to configure a new corexz printer. # DO NOT COPY THIS FILE WITHOUT CAREFULLY READING AND UPDATING IT # FIRST. Incorrectly configured parameters may cause damage. -# The stepper_x section is used to describe the X axis as well as the -# stepper controlling the X+Z movement. +# See docs/Config_Reference.md for a description of parameters. + [stepper_x] step_pin: ar54 dir_pin: ar55 @@ -29,8 +26,6 @@ position_endstop: 0 position_max: 200 homing_speed: 50 -# The stepper_z section is used to describe the Z axis as well as the -# stepper controlling the X-Z movement. [stepper_z] step_pin: ar46 dir_pin: ar48 @@ -74,7 +69,6 @@ pin_map: arduino [printer] kinematics: corexz -# This option must be "corexz" for corexz printers. max_velocity: 300 max_accel: 3000 max_z_velocity: 50 diff --git a/config/example-delta.cfg b/config/example-delta.cfg index 320a74af..350cec17 100644 --- a/config/example-delta.cfg +++ b/config/example-delta.cfg @@ -1,15 +1,11 @@ -# This file serves as documentation for config parameters of delta -# style printers. One may copy and edit this file to configure a new -# delta printer. Only parameters unique to delta printers are -# described here - see the "example.cfg" file for description of -# common config parameters. +# This file is an example config file for linear delta style printers. +# One may copy and edit this file to configure a new delta printer. # DO NOT COPY THIS FILE WITHOUT CAREFULLY READING AND UPDATING IT # FIRST. Incorrectly configured parameters may cause damage. -# The stepper_a section describes the stepper controlling the front -# left tower (at 210 degrees). This section also controls the homing -# parameters (homing_speed, homing_retract_dist) for all towers. +# See docs/Config_Reference.md for a description of parameters. + [stepper_a] step_pin: ar54 dir_pin: ar55 @@ -18,23 +14,8 @@ step_distance: .01 endstop_pin: ^ar2 homing_speed: 50 position_endstop: 297.05 -# Distance (in mm) between the nozzle and the bed when the nozzle is -# in the center of the build area and the endstop triggers. This -# parameter must be provided for stepper_a; for stepper_b and -# stepper_c this parameter defaults to the value specified for -# stepper_a. arm_length: 333.0 -# Length (in mm) of the diagonal rod that connects this tower to the -# print head. This parameter must be provided for stepper_a; for -# stepper_b and stepper_c this parameter defaults to the value -# specified for stepper_a. -#angle: -# This option specifies the angle (in degrees) that the tower is -# at. The default is 210 for stepper_a, 330 for stepper_b, and 90 -# for stepper_c. -# The stepper_b section describes the stepper controlling the front -# right tower (at 330 degrees). [stepper_b] step_pin: ar60 dir_pin: ar61 @@ -42,8 +23,6 @@ enable_pin: !ar56 step_distance: .01 endstop_pin: ^ar15 -# The stepper_c section describes the stepper controlling the rear -# tower (at 90 degrees). [stepper_c] step_pin: ar46 dir_pin: ar48 @@ -76,57 +55,16 @@ control: watermark min_temp: 0 max_temp: 130 -# Print cooling fan (omit section if fan not present). -#[fan] -#pin: ar9 - [mcu] serial: /dev/ttyACM0 pin_map: arduino [printer] kinematics: delta -# This option must be "delta" for linear delta printers. max_velocity: 300 -# Maximum velocity (in mm/s) of the toolhead relative to the -# print. This parameter must be specified. max_accel: 3000 -# Maximum acceleration (in mm/s^2) of the toolhead relative to the -# print. This parameter must be specified. max_z_velocity: 150 -# For delta printers this limits the maximum velocity (in mm/s) of -# moves with z axis movement. This setting can be used to reduce the -# maximum speed of up/down moves (which require a higher step rate -# than other moves on a delta printer). The default is to use -# max_velocity for max_z_velocity. -#minimum_z_position: 0 -# The minimum Z position that the user may command the head to move -# to. The default is 0. delta_radius: 174.75 -# Radius (in mm) of the horizontal circle formed by the three linear -# axis towers. This parameter may also be calculated as: -# delta_radius = smooth_rod_offset - effector_offset - carriage_offset -# This parameter must be provided. -#print_radius: -# The radius (in mm) of valid toolhead XY coordinates. One may use -# this setting to customize the range checking of toolhead moves. If -# a large value is specified here then it may be possible to command -# the toolhead into a collision with a tower. The default is to use -# delta_radius for print_radius (which would normally prevent a -# tower collision). -# The delta_calibrate section enables a DELTA_CALIBRATE extended -# g-code command that can calibrate the tower endstop positions and -# angles. [delta_calibrate] radius: 50 -# Radius (in mm) of the area that may be probed. This is the radius -# of nozzle coordinates to be probed; if using an automatic probe -# with an XY offset then choose a radius small enough so that the -# probe always fits over the bed. This parameter must be provided. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. diff --git a/config/example-extras.cfg b/config/example-extras.cfg deleted file mode 100644 index 4f58d02a..00000000 --- a/config/example-extras.cfg +++ /dev/null @@ -1,2306 +0,0 @@ -# This file serves as documentation for config parameters of -# additional devices that may be configured on a printer. The snippets -# in this file may be copied into the main printer.cfg file. See the -# "example.cfg" file for description of common config parameters. -# -# Note, where an extra config section creates additional pins, the -# section defining the pins must be listed in the config file before -# any sections using those pins. - - -###################################################################### -# Bed leveling support -###################################################################### - -# Mesh Bed Leveling. One may define a [bed_mesh] config section to -# enable move transformations that offset the z axis based on a mesh -# generated from probed points. Note that bed_mesh and bed_tilt are -# incompatible, both cannot be defined. When using a probe to home the -# z-axis, it is recommended to define a [homing_override] section in -# printer.cfg to home toward the center of the print area. -# -# Visual Examples: -# rectangular bed, probe_count = 3,3: -# x---x---x (max_point) -# | -# x---x---x -# | -# (min_point) x---x---x -# -# round bed, round_probe_count = 5, bed_radius = r: -# x (0,r) end -# / -# x---x---x -# \ -# (-r,0) x---x---x---x---x (r,0) -# \ -# x---x---x -# / -# x (0,-r) start -# -#[bed_mesh] -#speed: 50 -# The speed (in mm/s) of non-probing moves during the -# calibration. The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. -#mesh_radius: -# Defines the radius of the mesh to probe for round beds. Note that -# the radius is relative to the coordinate specified by the -# mesh_origin option. This parameter must be provided for round beds -# and omitted for rectangular beds. -#mesh_origin: -# Defines the center x,y coordinate of the mesh for round beds. This -# coordinate is relative to the probe's location. It may be useful -# to adjust the mesh_origin in an effort to maximize the size of the -# mesh radius. Default is 0,0. This parameter must be omitted for -# rectangular beds. -#mesh_min: -# Defines the minimum x,y coodinate of the mesh for rectangular -# beds. This coordinate is relative to the probe's location. This -# will be the first point probed, nearest to the origin. This -# parameter must be provided for rectangular beds. -#mesh_max: -# Defines the maximum x,y coordinate of the mesh for rectangular -# beds. Adheres to the same principle as mesh_min, however this will -# be the furthest point probed from the bed's origin. This parameter -# must be provided for rectangular beds. -#probe_count: 3,3 -# For rectangular beds, this is a comma separate pair of integer -# values (X,Y) defining the number of points to probe along each -# axis. A single value is also valid, in which case that value will -# be applied to both axes. Default is 3,3. -#round_probe_count: 5 -# For round beds, this integer value defines the maximum number of -# points to probe along each axis. This value must be an odd number. -# Default is 5. -#fade_start: 1.0 -# The gcode z position in which to start phasing out z-adjustment -# when fade is enabled. Default is 1.0. -#fade_end: 0.0 -# The gcode z position in which phasing out completes. When set to a -# value below fade_start, fade is disabled. It should be noted that -# fade may add unwanted scaling along the z-axis of a print. If a -# user wishes to enable fade, a value of 10.0 is recommended. -# Default is 0.0, which disables fade. -#fade_target: -# The z position in which fade should converge. When this value is -# set to a non-zero value it must be within the range of z-values in -# the mesh. Users that wish to converge to the z homing position -# should set this to 0. Default is the average z value of the mesh. -#split_delta_z: .025 -# The amount of Z difference (in mm) along a move that will trigger -# a split. Default is .025. -#move_check_distance: 5.0 -# The distance (in mm) along a move to check for split_delta_z. -# This is also the minimum length that a move can be split. Default -# is 5.0. -#mesh_pps: 2,2 -# A comma separated pair of integers (X,Y) defining the number of -# points per segment to interpolate in the mesh along each axis. A -# "segment" can be defined as the space between each probed point. -# The user may enter a single value which will be applied to both -# axes. Default is 2,2. -#algorithm: lagrange -# The interpolation algorithm to use. May be either "lagrange" or -# "bicubic". This option will not affect 3x3 grids, which are forced -# to use lagrange sampling. Default is lagrange. -#bicubic_tension: .2 -# When using the bicubic algorithm the tension parameter above may -# be applied to change the amount of slope interpolated. Larger -# numbers will increase the amount of slope, which results in more -# curvature in the mesh. Default is .2. -#relative_reference_index: -# A point index in the mesh to reference all z values to. Enabling -# this parameter produces a mesh relative to the probed z position -# at the provided index. - -# Bed tilt compensation. One may define a [bed_tilt] config section to -# enable move transformations that account for a tilted bed. -#[bed_tilt] -#x_adjust: 0 -# The amount to add to each move's Z height for each mm on the X -# axis. The default is 0. -#y_adjust: 0 -# The amount to add to each move's Z height for each mm on the Y -# axis. The default is 0. -#z_adjust: 0 -# The amount to add to the Z height when the nozzle is nominally at -# 0,0. The default is 0. -# The remaining parameters control a BED_TILT_CALIBRATE extended -# g-code command that may be used to calibrate appropriate x and y -# adjustment parameters. -#points: -# A list of X,Y coordinates (one per line; subsequent lines -# indented) that should be probed during a BED_TILT_CALIBRATE -# command. Specify coordinates of the nozzle and be sure the probe -# is above the bed at the given nozzle coordinates. The default is -# to not enable the command. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. - -# Tool to help adjust bed leveling screws. One may define a -# [bed_screws] config section to enable a BED_SCREWS_ADJUST g-code -# command. -#[bed_screws] -#screw1: 100,100 -# The X,Y coordinate of the first bed leveling screw. This is a -# position to command the nozzle to that is directly above the bed -# screw (or as close as possible while still being above the bed). -# This parameter must be provided. -#screw1_name: front screw -# An arbitrary name for the given screw. This name is displayed when -# the helper script runs. The default is to use a name based upon -# the screw XY location. -#screw1_fine_adjust: -# An X,Y coordinate to command the nozzle to so that one can fine -# tune the bed leveling screw. The default is to not perform fine -# adjustments on the bed screw. -#screw2: -#screw2_name: -#screw2_fine_adjust: -#... -# Additional bed leveling screws. At least three screws must be -# defined. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# when moving from one screw location to the next. The default is 5. -#probe_height: 0 -# The height of the probe (in mm) after adjusting for the thermal -# expansion of bed and nozzle. The default is zero. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#probe_speed: 5 -# The speed (in mm/s) when moving from a horizontal_move_z position -# to a probe_height position. The default is 5. - -# Tool to help adjust bed screws tilt using Z probe. One may define a -# [screws_tilt_adjust] config section to enable a -# SCREWS_TILT_CALCULATE g-code command. -#[screws_tilt_adjust] -#screw1: 100,100 -# The X,Y coordinate of the first bed leveling screw. This is a -# position to command the nozzle to that is directly above the bed -# screw (or as close as possible while still being above the bed). -# This is the base screw used in calculations. This parameter must -# be provided. -#screw1_name: front screw -# An arbitrary name for the given screw. This name is displayed when -# the helper script runs. The default is to use a name based upon -# the screw XY location. -#screw2: -#screw2_name: -#... -# Additional bed leveling screws. At least two screws must be -# defined. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. -#screw_thread: CW-M3 -# The type of screw used for bed level, M3, M4 or M5 and the -# direction of the knob used to level the bed, clockwise decrease -# counter-clockwise decrease. -# Accepted values: CW-M3, CCW-M3, CW-M4, CCW-M4, CW-M5, CCW-M5. -# Default value is CW-M3, most printers use an M3 screw and -# turning the knob clockwise decrease distance. - -# Multiple Z stepper tilt adjustment. This feature enables independent -# adjustment of multiple z steppers (see stepper_z1 section below) to -# adjust for tilt. If this section is present then a Z_TILT_ADJUST -# extended G-Code command becomes available. -#[z_tilt] -#z_positions: -# A list of X,Y coordinates (one per line; subsequent lines -# indented) describing the location of each bed "pivot point". The -# "pivot point" is the point where the bed attaches to the given Z -# stepper. It is described using nozzle coordinates (the XY position -# of the nozzle if it could move directly above the point). The -# first entry corresponds to stepper_z, the second to stepper_z1, -# the third to stepper_z2, etc. This parameter must be provided. -#points: -# A list of X,Y coordinates (one per line; subsequent lines -# indented) that should be probed during a Z_TILT_ADJUST command. -# Specify coordinates of the nozzle and be sure the probe is above -# the bed at the given nozzle coordinates. This parameter must be -# provided. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. -#retries: 0 -# Number of times to retry if the probed points aren't within -# tolerance. -#retry_tolerance: 0 -# If retries are enabled then retry if largest and smallest probed -# points differ more than retry_tolerance. Note the smallest unit of -# change here would be a single step. However if you are probing -# more points than steppers then you will likely have a fixed -# minimum value for the range of probed points which you can learn -# by observing command output. - -# Moving gantry leveling using 4 independently controlled Z motors. -# Corrects hyperbolic parabola effects (potato chip) on moving gantry -# which is more flexible. -# WARNING: Using this on a moving bed may lead to undesirable results. -# If this section is present then a QUAD_GANTRY_LEVEL extended G-Code -# command becomes available. This routine assumes the following Z -# motor configuration: -# ---------------- -# |Z1 Z2| -# | --------- | -# | | | | -# | | | | -# | x-------- | -# |Z Z3| -# ---------------- -# Where x is the (0,0) point on the bed -#[quad_gantry_level] -#gantry_corners: -# A newline separated list of X,Y coordinates describing the two -# opposing corners of the gantry. The first entry corresponds to Z, -# the second to Z2. This parameter must be provided. -#points: -# A newline separated list of four X,Y points that should be probed -# during a QUAD_GANTRY_LEVEL command. Order of the locations is -# important, and should correspond to Z, Z1, Z2, and Z3 location in -# order. This parameter must be provided. For maximum accuracy, -# ensure your probe offsets are configured. -#speed: 50 -# The speed (in mm/s) of non-probing moves during the calibration. -# The default is 50. -#horizontal_move_z: 5 -# The height (in mm) that the head should be commanded to move to -# just prior to starting a probe operation. The default is 5. -#max_adjust: 4 -# Safety limit if an ajustment greater than this value is requested -# quad_gantry_level will abort. -#retries: 0 -# Number of times to retry if the probed points aren't within -# tolerance. -#retry_tolerance: 0 -# If retries are enabled then retry if largest and smallest probed -# points differ more than retry_tolerance. - -# Printer Skew Correction. It is possible to use software to correct -# printer skew across 3 planes, xy, xz, yz. This is done by printing a -# calibration model along a plane and measuring three lengths. Due to -# the nature of skew correction these lengths are set via gcode. See -# skew_correction.md and G-Codes.md in the docs directory for details. -#[skew_correction] - - -###################################################################### -# Customized homing -###################################################################### - -# Safe Z homing. One may use this mechanism to home the Z axis at a -# specific XY coordinate. This is useful if the toolhead, for example -# has to move to the center of the bed before Z can be homed. -#[safe_z_home] -#home_xy_position: -# A X,Y coordinate (e.g. 100,100) where the Z homing should be -# performed. This parameter must be provided. -#speed: 50.0 -# Speed at which the toolhead is moved to the safe Z home -# coordinate. The default is 50 mm/s -#z_hop: -# Lift the Z axis prior to homing. This is applied to any homing -# command, even if it doesn't home the Z axis. If the Z axis is -# already homed and the current Z position is less than z_hop, then -# this will lift the head to a height of z_hop. If the Z axis is not -# already homed, then prior to any XY homing movement the Z axis -# boundary checks are disabled and the head is lifted by z_hop. If -# z_hop is specified, be sure to home the Z immediately after any XY -# home requests so that the Z boundary checks are accurate. The -# default is to not implement Z hop. -#z_hop_speed: 20.0 -# Speed at which the Z axis is lifted prior to homing. The default -# is 20mm/s. -#move_to_previous: False -# When set to True, xy are reset to their previous positions after z -# homing. The default is False. - - -# Homing override. One may use this mechanism to run a series of -# g-code commands in place of a G28 found in the normal g-code input. -# This may be useful on printers that require a specific procedure to -# home the machine. -#[homing_override] -#gcode: -# A list of G-Code commands to execute in place of G28 commands -# found in the normal g-code input. See docs/Command_Templates.md -# for G-Code format. If a G28 is contained in this list of commands -# then it will invoke the normal homing procedure for the printer. -# The commands listed here must home all axes. This parameter must -# be provided. -#axes: xyz -# The axes to override. For example, if this is set to "z" then the -# override script will only be run when the z axis is homed (eg, via -# a "G28" or "G28 Z0" command). Note, the override script should -# still home all axes. The default is "xyz" which causes the -# override script to be run in place of all G28 commands. -#set_position_x: -#set_position_y: -#set_position_z: -# If specified, the printer will assume the axis is at the specified -# position prior to running the above g-code commands. Setting this -# disables homing checks for that axis. This may be useful if the -# head must move prior to invoking the normal G28 mechanism for an -# axis. The default is to not force a position for an axis. - -# Stepper phase adjusted endstops. To use this feature, define a -# config section with an "endstop_phase" prefix followed by the name -# of the corresponding stepper config section (for example, -# "[endstop_phase stepper_z]"). This feature can improve the accuracy -# of endstop switches. Add a bare "[endstop_phase]" declaration to -# enable the ENDSTOP_PHASE_CALIBRATE command. -#[endstop_phase stepper_z] -#phases: -# This specifies the number of phases of the given stepper motor -# driver (which is the number of micro-steps multiplied by four). -# This setting is automatically determined if one uses a TMC driver -# with run-time configuration. Otherwise, this parameter must be -# provided. -#endstop_accuracy: 0.200 -# Sets the expected accuracy (in mm) of the endstop. This represents -# the maximum error distance the endstop may trigger (eg, if an -# endstop may occasionally trigger 100um early or up to 100um late -# then set this to 0.200 for 200um). The default is -# phases*step_distance. -#endstop_phase: -# This specifies the phase of the stepper motor driver to expect -# when hitting the endstop. Only set this value if one is sure the -# stepper motor driver is reset every time the mcu is reset. If this -# is not set, then the stepper phase will be detected on the first -# home and that phase will be used on all subsequent homes. -#endstop_align_zero: False -# If true then the position_endstop of the axis will effectively be -# modified so that the zero position for the axis occurs at a full -# step on the stepper motor. (If used on the Z axis and the print -# layer height is a multiple of a full step distance then every -# layer will occur on a full step.) The default is False. - - -###################################################################### -# G-Code macros and events -###################################################################### - -# G-Code macros (one may define any number of sections with a -# "gcode_macro" prefix). -#[gcode_macro my_cmd] -#gcode: -# A list of G-Code commands to execute in place of "my_cmd". See -# docs/Command_Templates.md for G-Code format. This parameter must -# be provided. -#default_parameter_: -# One may define any number of options with a "default_parameter_" -# prefix. Use this to define default values for g-code parameters. -# For example, if one were to define the macro MY_DELAY with gcode -# "G4 P{DELAY}" along with "default_parameter_DELAY = 50" then the -# command "MY_DELAY" would evaluate to "G4 P50". To override the -# default parameter when calling the command then using -# "MY_DELAY DELAY=30" would evaluate to "G4 P30". The default is -# to require that all parameters used in the gcode script be -# present in the command invoking the macro. -#variable_: -# One may specify any number of options with a "variable_" prefix. -# The given variable name will be assigned the given value (parsed -# as a Python literal) and will be available during macro expansion. -# For example, a config with "variable_fan_speed = 75" might have -# gcode commands containing "M106 S{ fan_speed * 255 }". Variables -# can be changed at run-time using the SET_GCODE_VARIABLE command -# (see docs/Command_Templates.md for details). Variable names may -# not use upper case characters. -#rename_existing: -# This option will cause the macro to override an existing G-Code -# command and provide the previous definition of the command via the -# name provided here. This can be used to override builtin G-Code -# commands. Care should be taken when overriding commands as it can -# cause complex and unexpected results. The default is to not -# override an existing G-Code command. - -# Execute a gcode on a set delay. -#[delayed_gcode my_delayed_gcode] -#initial_duration: 0. -# The duration of the initial delay (in seconds). If set to a -# non-zero value the delayed_gcode will execute the specified number -# of seconds after the printer enters the "ready" state. This can be -# useful for initialization procedures or a repeating delayed_gcode. -# If set to 0 the delayed_gcode will not execute on startup. -# Default is 0. -#gcode: -# A list of G-Code commands to execute when the delay duration has -# elapsed. G-Code templates are supported. This parameter must be -# provided. - -# Idle timeout. An idle timeout is automatically enabled - add an -# explicit idle_timeout config section to change the default settings. -#[idle_timeout] -#gcode: -# A list of G-Code commands to execute on an idle timeout. See -# docs/Command_Templates.md for G-Code format. The default is to run -# "TURN_OFF_HEATERS" and "M84". -#timeout: 600 -# Idle time (in seconds) to wait before running the above G-Code -# commands. The default is 600 seconds. - - -###################################################################### -# Optional G-Code features -###################################################################### - -# A virtual sdcard may be useful if the host machine is not fast -# enough to run OctoPrint well. It allows the Klipper host software to -# directly print gcode files stored in a directory on the host using -# standard sdcard G-Code commands (eg, M24). -#[virtual_sdcard] -#path: ~/.octoprint/uploads/ -# The path of the local directory on the host machine to look for -# g-code files. This is a read-only directory (sdcard file writes -# are not supported). One may point this to OctoPrint's upload -# directory (generally ~/.octoprint/uploads/ ). This parameter must -# be provided. - -# Support manually moving stepper motors for diagnostic purposes. -# Note, using this feature may place the printer in an invalid state - -# see docs/G-Codes.md for important details. -#[force_move] -#enable_force_move: False -# Set to true to enable FORCE_MOVE and SET_KINEMATIC_POSITION -# extended G-Code commands. The default is false. - -# Pause/Resume functionality with support of position capture and -# restore. -#[pause_resume] -#recover_velocity: 50. -# When capture/restore is enabled, the speed at which to return to -# the captured position (in mm/s). Default is 50.0 mm/s. - -# Firmware filament retraction. This enables G10 (retract) and G11 -# (unretract) GCODE commands issued by many slicers. The parameters -# below provide startup defaults, although the values can be adjusted -# via the SET_RETRACTION command, allowing per-filament settings and -# runtime tuning. -#[firmware_retraction] -#retract_length: 0 -# The length of filament (in mm) to retract when G10 is activated, -# and to unretract when G11 is activated (but see -# unretract_extra_length below). The default is 0 mm. -#retract_speed: 20 -# The speed of retraction, in mm/s. The default is 20 mm/s. -#unretract_extra_length: 0 -# The length (in mm) of *additional* filament to add when -# unretracting. -#unretract_speed: 10 -# The speed of unretraction, in mm/s. The default is 10 mm/s. - -# Support for gcode arc (G2/G3) commands. -#[gcode_arcs] -#resolution: 1.0 -# An arc will be split into segments. Each segment's length will -# equal the resolution in mm set above. Lower values will produce a -# finer arc, but also more work for your machine. Arcs smaller than -# the configured value will become straight lines. The default is -# 1mm. - -# Enable the "M118" and "RESPOND" extended commands. -#[respond] -#default_type: echo -# Sets the default prefix of the "M118" and "RESPOND" output to one -# of the following: -# echo: "echo: " (This is the default) -# command: "// " -# error: "!! " -#default_prefix: echo: -# Directly sets the default prefix. If present, this value will -# override the "default_type". - - -###################################################################### -# Resonance compensation -###################################################################### - -# Enables input shaping. -#[input_shaper] -#shaper_freq_x: 0 -# A frequency (in Hz) of the input shaper for X axis. This is -# usually a resonance frequency of X axis that the input shaper -# should suppress. For more complex shapers, like 2- and 3-hump EI -# input shapers, this parameter can be set from different -# considerations. The default value is 0, which disables input -# shaping for X axis. -#shaper_freq_y: 0 -# A frequency (in Hz) of the input shaper for Y axis. This is -# usually a resonance frequency of Y axis that the input shaper -# should suppress. For more complex shapers, like 2- and 3-hump EI -# input shapers, this parameter can be set from different -# considerations. The default value is 0, which disables input -# shaping for Y axis. -#shaper_type: mzv -# A type of the input shaper to use for both X and Y axes. Supported -# shapers are zv, mzv, zvd, ei, 2hump_ei, and 3hump_ei. The default -# is mzv input shaper. -#shaper_type_x: -#shaper_type_y: -# If shaper_type is not set, these two parameters can be used to -# configure different input shapers for X and Y axes. The same -# values are supported as for shaper_type parameter. -#damping_ratio_x: 0.1 -#damping_ratio_y: 0.1 -# Damping ratios of vibrations of X and Y axes used by input shapers -# to improve vibration suppression. Should not be changed without -# some proper measurements, e.g. with an accelerometer. Default -# value is 0.1 which is a good all-round value for most printers. - -# Support for ADXL345 accelerometers. This support allows one to query -# accelerometer measurements from the sensor. This enables an -# ACCELEROMETER_MEASURE command (see docs/G-Codes.md for more -# information). The default chip name is "default", but one may -# specify an explicit name (eg, [adxl345 my_chip_name]). -#[adxl345] -#axes_map: x,y,z -# The accelerometer axis for each of the printer's x, y, and z axes. -# This may be useful if the accelerometer is mounted in an -# orientation that does not match the printer orientation. For -# example, one could set this to "y,x,z" to swap the x and y axes. -# It is also possible to negate an axis if the accelerometer -# direction is reversed (eg, "x,z,-y"). The default is "x,y,z". -#rate: 3200 -# Output data rate for ADXL345. ADXL345 supports the following data -# rates: 3200, 1600, 800, 400, 200, 100, 50, and 25. Note that it is -# not recommended to change this rate from the default 3200, and -# rates below 800 will considerably affect the quality of resonance -# measurements. -#cs_pin: -# The SPI enable pin for the sensor. This parameter must be -# provided. -#spi_speed: 5000000 -# The SPI speed (in hz) to use when communicating with the chip. -# The default is 5000000. -#spi_bus: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. - -# Support for resonance testing and automatic input shaper -# calibration. In order to use most of the functionality of this -# module, additional software dependencies must be installed; refer to -# docs/Measuring_Resonances.md for more information. -#[resonance_tester] -#probe_points: -# A list of X,Y,Z coordinates of points (one point per line) to test -# resonances at. At least one point is required. Make sure that all -# points with some safety margin in XY plane (~a few centimeters) -# are reachable by the toolhead. -#accel_chip: -# A name of the accelerometer chip to use for measurements. If -# adxl345 chip was defined without an explicit name, this parameter -# can simply reference it as "accel_chip: adxl345", otherwise an -# explicit name must be supplied as well, e.g. "accel_chip: adxl345 -# my_chip_name". Either this, or the next two parameters must be -# set. -#accel_chip_x: -#accel_chip_y: -# Names of the accelerometer chips to use for measurements for each -# of the axis. Can be useful, for instance, on bed slinger printer, -# if two separate accelerometers are mounted on the bed (for Y axis) -# and on the toolhead (for X axis). These parameters have the same -# format as 'accel_chip' parameter. Only 'accel_chip' or these two -# parameters must be provided. -#min_freq: 5 -# Minimum frequency to test for resonances. The default is 5 Hz. -#max_freq: 120 -# Maximum frequency to test for resonances. The default is 120 Hz. -#accel_per_hz: 75 -# This parameter is used to determine which acceleration to use to -# test a specific frequency: accel = accel_per_hz * freq. Higher the -# value, the higher is the energy of the oscillations. Can be set to -# a lower than the default value if the resonances get too strong on -# the printer. However, lower values make measurements of -# high-frequency resonances less precise. The default value is 75 -# (mm/sec). -#hz_per_sec: 1 -# Determines the speed of the test. When testing all frequencies in -# range [min_freq, max_freq], each second the frequency increases by -# hz_per_sec. Small values make the test slow, and the large values -# will decrease the precision of the test. The default value is 1.0 -# (Hz/sec == sec^-2). - - -###################################################################### -# Config file helpers -###################################################################### - -# Board pin aliases. One may define aliases for the pins on a -# micro-controller. (If a micro-controller name is omitted in the -# board_pins config section name then it defaults to "mcu".) -#[board_pins mcu] -#aliases: -# A comma separated list of "name=value" aliases to create for the -# given micro-controller. For example, "EXP1_1=PE6" would create an -# "EXP1_1" alias for the "PE6" pin. However, if "value" is enclosed -# in "<>" then "name" is created as a reserved pin (for example, -# "EXP1_9=" would reserve "EXP1_9"). This parameter must be -# provided. - -# Include file support. One may include additional config file from -# the main printer config file. Wildcards may also be used (eg, -# "configs/*.cfg"). -#[include my_other_config.cfg] - - -###################################################################### -# Bed probing hardware -###################################################################### - -# Z height probe. One may define this section to enable Z height -# probing hardware. When this section is enabled, PROBE and -# QUERY_PROBE extended g-code commands become available. The probe -# section also creates a virtual "probe:z_virtual_endstop" pin. One -# may set the stepper_z endstop_pin to this virtual pin on cartesian -# style printers that use the probe in place of a z endstop. If using -# "probe:z_virtual_endstop" then do not define a position_endstop in -# the stepper_z config section. -#[probe] -#pin: ar15 -# Probe detection pin. This parameter must be provided. -#x_offset: 0.0 -# The distance (in mm) between the probe and the nozzle along the -# x-axis. The default is 0. -#y_offset: 0.0 -# The distance (in mm) between the probe and the nozzle along the -# y-axis. The default is 0. -#z_offset: -# The distance (in mm) between the bed and the nozzle when the probe -# triggers. This parameter must be provided. -#speed: 5.0 -# Speed (in mm/s) of the Z axis when probing. The default is 5mm/s. -#samples: 1 -# The number of times to probe each point. The probed z-values will -# be averaged. The default is to probe 1 time. -#sample_retract_dist: 2.0 -# The distance (in mm) to lift the toolhead between each sample (if -# sampling more than once). The default is 2mm. -#lift_speed: 5.0 -# Speed (in mm/s) of the Z axis when lifting the probe between -# samples. The default is to use the same value as the 'speed' -# parameter. -#samples_result: average -# The calculation method when sampling more than once - either -# "median" or "average". The default is average. -#samples_tolerance: 0.100 -# The maximum Z distance (in mm) that a sample may differ from other -# samples. If this tolerance is exceeded then either an error is -# reported or the attempt is restarted (see -# samples_tolerance_retries). The default is 0.100mm. -#samples_tolerance_retries: 0 -# The number of times to retry if a sample is found that exceeds -# samples_tolerance. On a retry, all current samples are discarded -# and the probe attempt is restarted. If a valid set of samples are -# not obtained in the given number of retries then an error is -# reported. The default is zero which causes an error to be reported -# on the first sample that exceeds samples_tolerance. -#activate_gcode: -# A list of G-Code commands to execute prior to each probe attempt. -# See docs/Command_Templates.md for G-Code format. This may be -# useful if the probe needs to be activated in some way. Do not -# issue any commands here that move the toolhead (eg, G1). The -# default is to not run any special G-Code commands on activation. -#deactivate_gcode: -# A list of G-Code commands to execute after each probe attempt -# completes. See docs/Command_Templates.md for G-Code format. Do not -# issue any commands here that move the toolhead. The default is to -# not run any special G-Code commands on deactivation. - -# BLTouch probe. One may define this section (instead of a probe -# section) to enable a BLTouch probe. See the docs/BLTouch.md guide -# for further information on configuring a BLTouch. A virtual -# "probe:z_virtual_endstop" pin is also created (see the "probe" -# section above for the details). -#[bltouch] -#sensor_pin: -# Pin connected to the BLTouch sensor pin. This parameter must be -# provided. -#control_pin: -# Pin connected to the BLTouch control pin. This parameter must be -# provided. -#pin_move_time: 0.680 -# The amount of time (in seconds) to wait for the BLTouch pin to -# move up or down. The default is 0.680 seconds. -#stow_on_each_sample: True -# This determines if Klipper should command the pin to move up -# between each probe attempt when performing a multiple probe -# sequence. Read the directions in docs/BLTouch.md before setting -# this to False. The default is True. -#probe_with_touch_mode: False -# If this is set to True then Klipper will probe with the device in -# "touch_mode". The default is False (probing in "pin_down" mode). -#pin_up_reports_not_triggered: True -# Set if the BLTouch consistently reports the probe in a "not -# triggered" state after a successful "pin_up" command. This should -# be True for all genuine BLTouch devices. Read the directions in -# docs/BLTouch.md before setting this to False. The default is True. -#pin_up_touch_mode_reports_triggered: True -# Set if the BLTouch consistently reports a "triggered" state after -# the commands "pin_up" followed by "touch_mode". This should be -# True for all genuine BLTouch devices. Read the directions in -# docs/BLTouch.md before setting this to False. The default is True. -#set_output_mode: -# Request a specific sensor pin output mode on the BLTouch V3.0 (and -# later). This setting should not be used on other types of probes. -# Set to "5V" to request a sensor pin output of 5 Volts (only use if -# the controller board needs 5V mode and is 5V tolerant on its input -# signal line). Set to "OD" to request the sensor pin output use -# open drain mode. The default is to not request an output mode. -#x_offset: -#y_offset: -#z_offset: -#speed: -#samples: -#sample_retract_dist: -#samples_result: -#samples_tolerance: -#samples_tolerance_retries: -# See the "probe" section for information on these parameters. - - -###################################################################### -# Additional micro-controllers -###################################################################### - -# Additional micro-controllers (one may define any number of sections -# with an "mcu" prefix). Additional micro-controllers introduce -# additional pins that may be configured as heaters, steppers, fans, -# etc.. For example, if an "[mcu extra_mcu]" section is introduced, -# then pins such as "extra_mcu:ar9" may then be used elsewhere in the -# config (where "ar9" is a hardware pin name or alias name on the -# given mcu). -#[mcu my_extra_mcu] -# See the "mcu" section in example.cfg for configuration parameters. - - -###################################################################### -# Additional stepper motors and extruders -###################################################################### - -# Multi-stepper axes. On a cartesian style printer, the stepper -# controlling a given axis may have additional config blocks defining -# steppers that should be stepped in concert with the primary -# stepper. One may define any number of sections with a numeric suffix -# starting at 1 (for example, "stepper_z1", "stepper_z2", etc.). -#[stepper_z1] -#step_pin: ar36 -#dir_pin: ar34 -#enable_pin: !ar30 -#step_distance: .005 -# See example.cfg for the definition of the above parameters. -#endstop_pin: ^ar19 -# If an endstop_pin is defined for the additional stepper then the -# stepper will home until the endstop is triggered. Otherwise, the -# stepper will home until the endstop on the primary stepper for the -# axis is triggered. - -# In a multi-extruder printer add an additional extruder section for -# each additional extruder. The additional extruder sections should be -# named "extruder1", "extruder2", "extruder3", and so on. See the -# "extruder" section in example.cfg for a description of available -# parameters. -#[extruder1] -#step_pin: ar36 -#dir_pin: ar34 -#... -#shared_heater: -# If this extruder uses the same heater already defined for another -# extruder then place the name of that extruder here. For example, -# should extruder3 and extruder4 share a heater then the extruder3 -# config section should define the heater and the extruder4 section -# should specify "shared_heater: extruder3". The default is to not -# reuse an existing heater. - -# Support for cartesian printers with dual carriages on a single -# axis. The active carriage is set via the SET_DUAL_CARRIAGE extended -# g-code command. The "SET_DUAL_CARRIAGE CARRIAGE=1" command will -# activate the carriage defined in this section (CARRIAGE=0 will -# return activation to the primary carriage). Dual carriage support is -# typically combined with extra extruders - the SET_DUAL_CARRIAGE -# command is often called at the same time as the ACTIVATE_EXTRUDER -# command. Be sure to park the carriages during deactivation. -#[dual_carriage] -#axis: -# The axis this extra carriage is on (either x or y). This parameter -# must be provided. -#step_pin: -#dir_pin: -#enable_pin: -#step_distance: -#endstop_pin: -#position_endstop: -#position_min: -#position_max: -# See the example.cfg for the definition of the above parameters. - -# Support for additional steppers synchronized to the movement of an -# extruder (one may define any number of sections with an -# "extruder_stepper" prefix). -#[extruder_stepper my_extra_stepper] -#extruder: extruder -# The extruder this stepper is synchronized to. The default is -# "extruder". -#step_pin: -#dir_pin: -#enable_pin: -#step_distance: -# See the "extruder" section in example.cfg for the definition of -# the above parameters. - -# Manual steppers (one may define any number of sections with a -# "manual_stepper" prefix). These are steppers that are controlled by -# the MANUAL_STEPPER g-code command. For example: "MANUAL_STEPPER -# STEPPER=my_stepper MOVE=10 SPEED=5". See the docs/G-Codes.md file -# for a description of the MANUAL_STEPPER command. The steppers are -# not connected to the normal printer kinematics. -#[manual_stepper my_stepper] -#step_pin: -#dir_pin: -#enable_pin: -#step_distance: -# See the "[stepper_x]" section in example.cfg for a description of -# these parameters. -#velocity: -# Set the default velocity (in mm/s) for the stepper. This value -# will be used if a MANUAL_STEPPER command does not specify a SPEED -# parameter. The default is 5mm/s. -#accel: -# Set the default acceleration (in mm/s^2) for the stepper. An -# acceleration of zero will result in no acceleration. This value -# will be used if a MANUAL_STEPPER command does not specify an ACCEL -# parameter. The default is zero. -#endstop_pin: -# Endstop switch detection pin. If specified, then one may perform -# "homing moves" by adding a STOP_ON_ENDSTOP parameter to -# MANUAL_STEPPER movement commands. - - -###################################################################### -# Heaters and temperature sensors -###################################################################### - -# Heater and temperature sensor verification. Heater verification is -# automatically enabled for each heater that is configured on the -# printer. Use verify_heater sections to change the default settings. -#[verify_heater heater_config_name] -#max_error: 120 -# The maximum "cumulative temperature error" before raising an -# error. Smaller values result in stricter checking and larger -# values allow for more time before an error is reported. -# Specifically, the temperature is inspected once a second and if it -# is close to the target temperature then an internal "error -# counter" is reset; otherwise, if the temperature is below the -# target range then the counter is increased by the amount the -# reported temperature differs from that range. Should the counter -# exceed this "max_error" then an error is raised. The default is -# 120. -#check_gain_time: -# This controls heater verification during initial heating. Smaller -# values result in stricter checking and larger values allow for -# more time before an error is reported. Specifically, during -# initial heating, as long as the heater increases in temperature -# within this time frame (specified in seconds) then the internal -# "error counter" is reset. The default is 20 seconds for extruders -# and 60 seconds for heater_bed. -#hysteresis: 5 -# The maximum temperature difference (in Celsius) to a target -# temperature that is considered in range of the target. This -# controls the max_error range check. It is rare to customize this -# value. The default is 5. -#heating_gain: 2 -# The minimum temperature (in Celsius) that the heater must increase -# by during the check_gain_time check. It is rare to customize this -# value. The default is 2. - -# Tool to disable heaters when homing or probing an axis -#[homing_heaters] -#steppers: -# A comma separated list of steppers that should cause heaters to be -# disabled. The default is to disable heaters for any homing/probing -# move. -# Typical example: stepper_z -#heaters: -# A comma separated list of heaters to disable during homing/probing -# moves. The default is to disable all heaters. -# Typical example: extruder, heater_bed - -# MAXxxxxx serial peripheral interface (SPI) temperature based -# sensors. The following parameters are available in heater sections -# that use one of these sensor types. -#[extruder] -# See the "extruder" section in example.cfg for a description of -# heater parameters. The parameters below describe sensor parameters. -#sensor_type: -# One of "MAX6675", "MAX31855", "MAX31856", or "MAX31865". -#spi_speed: 4000000 -# The SPI speed (in hz) to use when communicating with the chip. -# The default is 4000000. -#spi_bus: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. -#sensor_pin: -# The chip select line for the sensor chip. This parameter must be -# provided. -#tc_type: K -#tc_use_50Hz_filter: False -#tc_averaging_count: 1 -# The above parameters control the sensor parameters of MAX31856 -# chips. The defaults for each parameter are next to the parameter -# name in the above list. -#rtd_nominal_r: 100 -#rtd_reference_r: 430 -#rtd_num_of_wires: 2 -#rtd_use_50Hz_filter: False -# The above parameters control the sensor parameters of MAX31865 -# chips. The defaults for each parameter are next to the parameter -# name in the above list. - -# Common temperature amplifiers. The following parameters are -# available in heater sections that use one of these sensors. -#[extruder] -# See the "extruder" section in example.cfg for a description of -# heater parameters. The parameters below describe sensor parameters. -#sensor_type: -# One of "PT100 INA826", "AD595", "AD597", "AD8494", "AD8495", -# "AD8496", or "AD8497". -#sensor_pin: -# Analog input pin connected to the sensor. This parameter must be -# provided. -#adc_voltage: 5.0 -# The ADC comparison voltage (in Volts). The default is 5 volts. -#voltage_offset: 0 -# The ADC voltage offset (in Volts). The default is 0. - -# Directly connected PT1000 sensor. The following parameters are -# available in heater sections that use one of these sensors. -#[extruder] -# See the "extruder" section in example.cfg for a description of -# heater parameters. The parameters below describe sensor parameters. -#sensor_type: PT1000 -#sensor_pin: -# Analog input pin connected to the sensor. This parameter must be -# provided. -#pullup_resistor: 4700 -# The resistance (in ohms) of the pullup attached to the sensor. The -# default is 4700 ohms. - -# Custom thermistors (one may define any number of sections with a -# "thermistor" prefix). A custom thermistor may be used in the -# sensor_type field of a heater config section. (For example, if one -# defines a "[thermistor my_thermistor]" section then one may use a -# "sensor_type: my_thermistor" when defining a heater.) Be sure to -# place the thermistor section in the config file above its first use -# in a heater section. -#[thermistor my_thermistor] -#temperature1: -#resistance1: -#temperature2: -#resistance2: -#temperature3: -#resistance3: -# Three resistance measurements (in Ohms) at the given temperatures -# (in Celsius). The three measurements will be used to calculate the -# Steinhart-Hart coefficients for the thermistor. These parameters -# must be provided when using Steinhart-Hart to define the -# thermistor. -#beta: -# Alternatively, one may define temperature1, resistance1, and beta -# to define the thermistor parameters. This parameter must be -# provided when using "beta" to define the thermistor. - -# Custom ADC temperature sensors (one may define any number of -# sections with an "adc_temperature" prefix). This allows one to -# define a custom temperature sensor that measures a voltage on an -# Analog to Digital Converter (ADC) pin and uses linear interpolation -# between a set of configured temperature/voltage (or -# temperature/resistance) measurements to determine the temperature. -# The resulting sensor can be used as a sensor_type in a heater -# section. (For example, if one defines a "[adc_temperature -# my_sensor]" section then one may use a "sensor_type: my_sensor" when -# defining a heater.) Be sure to place the sensor section in the -# config file above its first use in a heater section. -#[adc_temperature my_sensor] -#temperature1: -#voltage1: -#temperature2: -#voltage2: -#... -# A set of temperatures (in Celsius) and voltages (in Volts) to use -# as reference when converting a temperature. A heater section using -# this sensor may also specify adc_voltage and voltage_offset -# parameters to define the ADC voltage (see "Common temperature -# amplifiers" section above for details). At least two measurements -# must be provided. -#temperature1: -#resistance1: -#temperature2: -#resistance2: -#... -# Alternatively one may specify a set of temperatures (in Celsius) -# and resistance (in Ohms) to use as reference when converting a -# temperature. A heater section using this sensor may also specify a -# pullup_resistor parameter (see example.cfg for details). At least -# two measurements must be provided. - -# BME280 two wire interface (I2C) environmental sensor. Note that this -# sensor is not intended for use with extruders and heater beds, but -# rather for montitoring ambient temperature (C), pressure (hPa), and -# relative humidity. See sample-macros.cfg for a gcode_macro that may -# be used to report pressure and humidity in addition to temperature. -#[temperature_sensor my_sensor] -# See the "temperature_sensor" section below for a description of its -# parameters. The parameters below describe BME280 sensor parameters. -#sensor_type: -# Must be "BME280" -#i2c_address: -# Default is 118 (0x76). Some BME280 sensors have an address of 119 -# (0x77). -#i2c_mcu: -# MCU the sensor is connected to. Default is the primary mcu. -#i2c_bus: -# The I2C bus the sensor is connected to. On some MCU platforms the -# default is bus 0. On platforms without bus 0 this parameter is -# required. -#i2c_speed: -# The I2C speed (in Hz) to use when communicating with the sensor. -# Default is 100000. On some MCUs changing this value has no effect. - -# HTU21D family two wire interface (I2C) environmental sensor. Note -# that this sensor is not intended for use with extruders and heater -# beds, but rather for montitoring ambient temperature (C) and -# relative humidity. See sample-macros.cfg for a gcode_macro that may -# be used to report humidity in addition to temperature. -#[temperature_sensor my_sensor] -# See the "temperature_sensor" section below for a description of its -# parameters. The parameters below describe HTU21D family sensor -# parameters. -#sensor_type: -# Must be "HTU21D" , "SI7013", "SI7020", "SI7021" or "SHT21" -#i2c_address: -# Default is 64 (0x40). -#i2c_mcu: -# MCU the sensor is connected to. Default is the primary mcu. -#i2c_bus: -# The I2C bus the sensor is connected to. On some MCU platforms the -# default is bus 0. On platforms without bus 0 this parameter is -# required. -#i2c_speed: -# The I2C speed (in Hz) to use when communicating with the sensor. -# Default is 100000. On some MCUs changing this value has no effect. -#htu21d_hold_master: -# If the sensor can hold the I2C buf while reading. If True no other -# bus comunication can be performed while reading is in progress. -# Default is False. -#htu21d_resolution: -# The resolution of temperature and humidity reading. -# Valid values are: -# 'TEMP14_HUM12' -> 14bit for Temp and 12bit for humidity -# 'TEMP13_HUM10' -> 13bit for Temp and 10bit for humidity -# 'TEMP12_HUM08' -> 12bit for Temp and 08bit for humidity -# 'TEMP11_HUM11' -> 11bit for Temp and 11bit for humidity -# Default is: "TEMP11_HUM11" -#htu21d_report_time: -# Interval in seconds between readings. Default is 30 - -# LM75/LM75A two wire (I2C) connected temperature sensors. These -# sensors have range up to 125 C, so are usable for e.g. chamber -# temperature monitoring. They can also function as simple fan/heater -# controllers but this mode is not used here. -#[temperature_sensor my_sensor] -# See the "temperature_sensor" section below for a description of its -# parameters. The parameters below describe LM75 family sensor -# parameters. -#sensor_type: -# Must be "LM75". -#i2c_address: -# Default is 72 (0x48). Normal range is 72-79 (0x48-0x4F) and the 3 -# low bits of the address are configured via pins on the chip -# (usually with jumpers or hard wired). -#i2c_mcu: -# MCU the sensor is connected to. Default is the primary mcu. -#i2c_bus: -# The I2C bus the sensor is connected to. On some MCU platforms the -# default is bus 0. On platforms without bus 0 this parameter is -# required. -#i2c_speed: -# The I2C speed (in Hz) to use when communicating with the sensor. -# Default is 100000. On some MCUs changing this value has no effect. -#lm75_report_time: -# Interval in seconds between readings. Default is 0.8, with minimum -# 0.5. - -# Generic heaters (one may define any number of sections with a -# "heater_generic" prefix). These heaters behave similarly to standard -# heaters (extruders, heated beds). Use the SET_HEATER_TEMPERATURE -# command (see docs/G-Codes.md for details) to set the target -# temperature. -#[heater_generic my_generic_heater] -#gcode_id: C -# The id to use when reporting the temperature in the M105 command. -# This parameter must be provided. -#heater_pin: -#max_power: -#sensor_type: -#sensor_pin: -#smooth_time: -#control: -#pid_Kp: -#pid_Ki: -#pid_Kd: -#pid_integral_max: -#pwm_cycle_time: -#min_temp: -#max_temp: -# See the heater section in example.cfg for the definition of the -# above parameters. - -# Generic temperature sensors. One can define any number of additional -# temperature sensors that are reported via the M105 command. -#[temperature_sensor my_sensor] -#sensor_type: -#sensor_pin: -#min_temp: -#max_temp: -# See the heater section in example.cfg for the definition of the -# above parameters. -#gcode_id: -# See the heater_generic section above for the definition of this -# parameter. - - -###################################################################### -# Additional fans -###################################################################### - -# Heater cooling fans (one may define any number of sections with a -# "heater_fan" prefix). A "heater fan" is a fan that will be enabled -# whenever its associated heater is active. By default, a heater_fan -# has a shutdown_speed equal to max_power. -#[heater_fan my_nozzle_fan] -#pin: -#max_power: -#shutdown_speed: -#cycle_time: -#hardware_pwm: -#kick_start_time: -#off_below: -# See the "fan" section in example.cfg for a description of the -# above parameters. -#heater: extruder -# Name of the config section defining the heater that this fan is -# associated with. If a comma separated list of heater names is -# provided here, then the fan will be enabled when any of the given -# heaters are enabled. The default is "extruder". -#heater_temp: 50.0 -# A temperature (in Celsius) that the heater must drop below before -# the fan is disabled. The default is 50 Celsius. -#fan_speed: 1.0 -# The fan speed (expressed as a value from 0.0 to 1.0) that the fan -# will be set to when its associated heater is enabled. The default -# is 1.0 - -# Controller cooling fan (one may define any number of sections with a -# "controller_fan" prefix). A "controller fan" is a fan that will be -# enabled whenever its associated heater or any configured stepper -# driver is active. The fan will stop, whenever an idle_timeout is -# reached to ensure no overheating will occur after deactivating a -# watched component. -#[controller_fan my_controller_fan] -#pin: -#max_power: -#shutdown_speed: -#cycle_time: -#hardware_pwm: -#kick_start_time: -#off_below: -# See the "fan" section in example.cfg for a description of the -# above parameters. -#fan_speed: 1.0 -# The fan speed (expressed as a value from 0.0 to 1.0) that the fan -# will be set to when a heater or stepper driver is active. -# The default is 1.0 -#idle_timeout: -# The ammount of time (in seconds) after a stepper driver or heater -# was active and the fan should be kept running. The default -# is 30 seconds. -#idle_speed: -# The fan speed (expressed as a value from 0.0 to 1.0) that the fan -# will be set to when a heater or stepper driver was active and -# before the idle_timeout is reached. The default is fan_speed. -#heater: -# Name of the config section defining the heater that this fan is -# associated with. If a comma separated list of heater names is -# provided here, then the fan will be enabled when any of the given -# heaters are enabled. The default is "extruder". - -# Temperature-triggered cooling fans (one may define any number of -# sections with a "temperature_fan" prefix). A "temperature fan" is a -# fan that will be enabled whenever its associated sensor is above a -# set temperature. By default, a temperature_fan has a shutdown_speed -# equal to max_power. -#[temperature_fan my_temp_fan] -#pin: -#max_power: -#shutdown_speed: -#cycle_time: -#hardware_pwm: -#kick_start_time: -#off_below: -# See the "fan" section in example.cfg for a description of the -# above parameters. -#sensor_type: -#sensor_pin: -#control: -#pid_Kp: -#pid_Ki: -#pid_Kd: -#pid_deriv_time: -#pid_integral_max: -#max_delta: -#min_temp: -#max_temp: -# See the "extruder" section in example.cfg for a description of the -# above parameters. -#target_temp: 40.0 -# A temperature (in Celsius) that will be the target temperature. -# The default is 40 degrees. -#max_speed: 1.0 -# The fan speed (expressed as a value from 0.0 to 1.0) that the fan -# will be set to when the sensor temperature exceeds the set value. -# The default is 1.0. -#min_speed: 0.3 -# The minimum fan speed (expressed as a value from 0.0 to 1.0) that -# the fan will be set to for PID temperature fans. -# The default is 0.3. -#gcode_id: -# If set, the temperature will be reported in M105 queries using the -# given id. The default is to not report the temperature via M105. - -# Manually controlled fan (one may define any number of sections with -# a "fan_generic" prefix). The speed of a manually controlled fan is -# set with the SET_FAN_SPEED gcode command. -#[fan_generic extruder_partfan] -#pin: -#max_power: -#shutdown_speed: -#cycle_time: -#hardware_pwm: -#kick_start_time: -#off_below: -# See the "fan" section in example.cfg for a description of the -# above parameters. - - -###################################################################### -# Additional servos, LEDs, buttons, and other pins -###################################################################### - -# Servos (one may define any number of sections with a "servo" -# prefix). The servos may be controlled using the SET_SERVO g-code -# command. For example: SET_SERVO SERVO=my_servo ANGLE=180 -#[servo my_servo] -#pin: ar7 -# PWM output pin controlling the servo. This parameter must be -# provided. -#maximum_servo_angle: 180 -# The maximum angle (in degrees) that this servo can be set to. The -# default is 180 degrees. -#minimum_pulse_width: 0.001 -# The minimum pulse width time (in seconds). This should correspond -# with an angle of 0 degrees. The default is 0.001 seconds. -#maximum_pulse_width: 0.002 -# The maximum pulse width time (in seconds). This should correspond -# with an angle of maximum_servo_angle. The default is 0.002 -# seconds. -#initial_angle: -# Initial angle (in degrees) to set the servo to. The default is to -# not send any signal at startup. -#initial_pulse_width: -# Initial pulse width time (in seconds) to set the servo to. (This -# is only valid if initial_angle is not set.) The default is to not -# send any signal at startup. - -# Neopixel (aka WS2812) LED support (one may define any number of -# sections with a "neopixel" prefix). One may set the LED color via -# "SET_LED LED=my_neopixel RED=0.1 GREEN=0.1 BLUE=0.1" type extended -# g-code commands. -#[neopixel my_neopixel] -#pin: -# The pin connected to the neopixel. This parameter must be -# provided. -#chain_count: -# The number of Neopixel chips that are "daisy chained" to the -# provided pin. The default is 1 (which indicates only a single -# Neopixel is connected to the pin). -#color_order: GRB -# Set the pixel order required by the LED hardware. Options are GRB, -# RGB, GRBW, or RGBW. The default is GRB. -#initial_RED: 0.0 -#initial_GREEN: 0.0 -#initial_BLUE: 0.0 -#initial_WHITE: 0.0 -# Sets the initial LED color of the Neopixel. Each value should be -# between 0.0 and 1.0. The WHITE option is only available on RGBW -# LEDs. The default for each color is 0. - -# Dotstar (aka APA102) LED support (one may define any number of -# sections with a "dotstar" prefix). One may set the LED color via -# "SET_LED LED=my_dotstar RED=0.1 GREEN=0.1 BLUE=0.1" type extended -# g-code commands. -#[dotstar my_dotstar] -#data_pin: -# The pin connected to the data line of the dotstar. This parameter -# must be provided. -#clock_pin: -# The pin connected to the clock line of the dotstar. This parameter -# must be provided. -#chain_count: -#initial_RED: 0.0 -#initial_GREEN: 0.0 -#initial_BLUE: 0.0 -# See the "neopixel" section for information on these parameters. - -# Execute gcode when a button is pressed or released (or when a pin -# changes state). You can check the state of the button by using -# QUERY_BUTTON button=my_gcode_button -#[gcode_button my_gcode_button] -#pin: -# The pin on which the button is connected. This parameter must be -# provided. -#analog_range: -# Two comma separated resistances (in Ohms) specifying the minimum -# and maximum resistance range for the button. If analog_range is -# provided then the pin must be an analog capable pin. The default -# is to use digital gpio for the button. -#analog_pullup_resistor: -# The pullup resistance (in Ohms) when analog_range is specified. -# The default is 4700 ohms. -#press_gcode: -# A list of G-Code commands to execute when the button is pressed. -# G-Code templates are supported. This parameter must be provided. -#release_gcode: -# A list of G-Code commands to execute when the button is released. -# G-Code templates are supported. The default is to not run any -# commands on a button release. - -# Run-time configurable output pins (one may define any number of -# sections with an "output_pin" prefix). Pins configured here will be -# setup as output pins and one may modify them at run-time using -# "SET_PIN PIN=my_pin VALUE=.1" type extended g-code commands. -#[output_pin my_pin] -#pin: -# The pin to configure as an output. This parameter must be -# provided. -#pwm: False -# Set if the output pin should be capable of pulse-width-modulation. -# If this is true, the value fields should be between 0 and 1; if it -# is false the value fields should be either 0 or 1. The default is -# False. -#static_value: -# If this is set, then the pin is assigned to this value at startup -# and the pin can not be changed during runtime. A static pin uses -# slightly less ram in the micro-controller. The default is to use -# runtime configuration of pins. -#value: -# The value to initially set the pin to during MCU configuration. -# The default is 0 (for low voltage). -#shutdown_value: -# The value to set the pin to on an MCU shutdown event. The default -# is 0 (for low voltage). -#cycle_time: 0.100 -# The amount of time (in seconds) per PWM cycle. It is recommended -# this be 10 milliseconds or greater when using software based PWM. -# The default is 0.100 seconds for pwm pins. -#hardware_pwm: False -# Enable this to use hardware PWM instead of software PWM. When -# using hardware PWM the actual cycle time is constrained by the -# implementation and may be significantly different than the -# requested cycle_time. The default is False. -#scale: -# This parameter can be used to alter how the 'value' and -# 'shutdown_value' parameters are interpreted for pwm pins. If -# provided, then the 'value' parameter should be between 0.0 and -# 'scale'. This may be useful when configuring a PWM pin that -# controls a stepper voltage reference. The 'scale' can be set to -# the equivalent stepper amperage if the PWM were fully enabled, and -# then the 'value' parameter can be specified using the desired -# amperage for the stepper. The default is to not scale the 'value' -# parameter. - -# Statically configured digital output pins (one may define any number -# of sections with a "static_digital_output" prefix). Pins configured -# here will be setup as a GPIO output during MCU configuration. They -# can not be changed at run-time. -#[static_digital_output my_output_pins] -#pins: -# A comma separated list of pins to be set as GPIO output pins. The -# pin will be set to a high level unless the pin name is prefaced -# with "!". This parameter must be provided. - -# Multiple pin outputs (one may define any number of sections with a -# "multi_pin" prefix). A multi_pin output creates an internal pin -# alias that can modify multiple output pins each time the alias pin -# is set. For example, one could define a "[multi_pin my_fan]" object -# containing two pins and then set "pin=multi_pin:my_fan" in the -# "[fan]" section - on each fan change both output pins would be -# updated. These aliases may not be used with stepper motor pins. -#[multi_pin my_multi_pin] -#pins: -# A comma separated list of pins associated with this alias. This -# parameter must be provided. - - -###################################################################### -# TMC stepper driver configuration -###################################################################### - -# Configure a TMC2130 stepper motor driver via SPI bus. To use this -# feature, define a config section with a "tmc2130" prefix followed by -# the name of the corresponding stepper config section (for example, -# "[tmc2130 stepper_x]"). -#[tmc2130 stepper_x] -#cs_pin: -# The pin corresponding to the TMC2130 chip select line. This pin -# will be set to low at the start of SPI messages and raised to high -# after the message completes. This parameter must be provided. -#spi_bus: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. -#microsteps: -# The number of microsteps to configure the driver to use. Valid -# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must -# be provided. -#interpolate: True -# If true, enable step interpolation (the driver will internally -# step at a rate of 256 micro-steps). The default is True. -#run_current: -# The amount of current (in amps RMS) to configure the driver to use -# during stepper movement. This parameter must be provided. -#hold_current: -# The amount of current (in amps RMS) to configure the driver to use -# when the stepper is not moving. The default is to use the same -# value as run_current. -#sense_resistor: 0.110 -# The resistance (in ohms) of the motor sense resistor. The default -# is 0.110 ohms. -#stealthchop_threshold: 0 -# The velocity (in mm/s) to set the "stealthChop" threshold to. When -# set, "stealthChop" mode will be enabled if the stepper motor -# velocity is below this value. The default is 0, which disables -# "stealthChop" mode. -#driver_IHOLDDELAY: 8 -#driver_TPOWERDOWN: 0 -#driver_TBL: 1 -#driver_TOFF: 4 -#driver_HEND: 7 -#driver_HSTRT: 0 -#driver_PWM_AUTOSCALE: True -#driver_PWM_FREQ: 1 -#driver_PWM_GRAD: 4 -#driver_PWM_AMPL: 128 -#driver_SGT: 0 -# Set the given register during the configuration of the TMC2130 -# chip. This may be used to set custom motor parameters. The -# defaults for each parameter are next to the parameter name in the -# above list. -#diag0_pin: -#diag1_pin: -# The micro-controller pin attached to one of the DIAG lines of the -# TMC2130 chip. Only a single diag pin should be specified. -# Setting this creates a "tmc2130_stepper_x:virtual_endstop" virtual -# pin which may be used as the stepper's endstop_pin. Doing this -# enables "sensorless homing". (Be sure to also set driver_SGT to an -# appropriate sensitivity value.) The default is to not enable -# sensorless homing. See docs/Sensorless_Homing.md for details on -# how to configure this. - -# Configure a TMC2208 (or TMC2224) stepper motor driver via single -# wire UART. To use this feature, define a config section with a -# "tmc2208" prefix followed by the name of the corresponding stepper -# config section (for example, "[tmc2208 stepper_x]"). -#[tmc2208 stepper_x] -#uart_pin: -# The pin connected to the TMC2208 PDN_UART line. This parameter -# must be provided. -#tx_pin: -# If using separate receive and transmit lines to communicate with -# the driver then set uart_pin to the receive pin and tx_pin to the -# transmit pin. The default is to use uart_pin for both reading and -# writing. -#select_pins: -# A comma separated list of pins to set prior to accessing the -# tmc2208 UART. This may be useful for configuring an analog mux for -# UART communication. The default is to not configure any pins. -#microsteps: -# The number of microsteps to configure the driver to use. Valid -# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must -# be provided. -#interpolate: True -# If true, enable step interpolation (the driver will internally -# step at a rate of 256 micro-steps). The default is True. -#run_current: -# The amount of current (in amps RMS) to configure the driver to use -# during stepper movement. This parameter must be provided. -#hold_current: -# The amount of current (in amps RMS) to configure the driver to use -# when the stepper is not moving. The default is to use the same -# value as run_current. -#sense_resistor: 0.110 -# The resistance (in ohms) of the motor sense resistor. The default -# is 0.110 ohms. -#stealthchop_threshold: 0 -# The velocity (in mm/s) to set the "stealthChop" threshold to. When -# set, "stealthChop" mode will be enabled if the stepper motor -# velocity is below this value. The default is 0, which disables -# "stealthChop" mode. -#driver_IHOLDDELAY: 8 -#driver_TPOWERDOWN: 20 -#driver_TBL: 2 -#driver_TOFF: 3 -#driver_HEND: 0 -#driver_HSTRT: 5 -#driver_PWM_AUTOGRAD: True -#driver_PWM_AUTOSCALE: True -#driver_PWM_LIM: 12 -#driver_PWM_REG: 8 -#driver_PWM_FREQ: 1 -#driver_PWM_GRAD: 14 -#driver_PWM_OFS: 36 -# Set the given register during the configuration of the TMC2208 -# chip. This may be used to set custom motor parameters. The -# defaults for each parameter are next to the parameter name in the -# above list. - -# Configure a TMC2209 stepper motor driver via single wire UART. To -# use this feature, define a config section with a "tmc2209" prefix -# followed by the name of the corresponding stepper config section -# (for example, "[tmc2209 stepper_x]"). -#[tmc2209 stepper_x] -#uart_pin: -#tx_pin: -#select_pins: -#microsteps: -#interpolate: True -#run_current: -#hold_current: -#sense_resistor: 0.110 -#stealthchop_threshold: 0 -# See the tmc2208 section above for the definition of these -# parameters. -#uart_address: -# The address of the TMC2209 chip for UART messages (an integer -# between 0 and 3). This is typically used when multiple TMC2209 -# chips are connected to the same UART pin. The default is zero. -#driver_IHOLDDELAY: 8 -#driver_TPOWERDOWN: 20 -#driver_TBL: 2 -#driver_TOFF: 3 -#driver_HEND: 0 -#driver_HSTRT: 5 -#driver_PWM_AUTOGRAD: True -#driver_PWM_AUTOSCALE: True -#driver_PWM_LIM: 12 -#driver_PWM_REG: 8 -#driver_PWM_FREQ: 1 -#driver_PWM_GRAD: 14 -#driver_PWM_OFS: 36 -#driver_SGTHRS: 0 -# Set the given register during the configuration of the TMC2209 -# chip. This may be used to set custom motor parameters. The -# defaults for each parameter are next to the parameter name in the -# above list. -#diag_pin: -# The micro-controller pin attached to the DIAG line of the TMC2209 -# chip. Setting this creates a "tmc2209_stepper_x:virtual_endstop" -# virtual pin which may be used as the stepper's endstop_pin. Doing -# this enables "sensorless homing". (Be sure to also set -# driver_SGTHRS to an appropriate sensitivity value.) The default is -# to not enable sensorless homing. - -# Configure a TMC2660 stepper motor driver via SPI bus. To use this -# feature, define a config section with a tmc2660 prefix followed by -# the name of the corresponding stepper config section (for example, -# "[tmc2660 stepper_x]"). -#[tmc2660 stepper_x] -#cs_pin: -# The pin corresponding to the TMC2660 chip select line. This pin -# will be set to low at the start of SPI messages and set to high -# after the message transfer completes. This parameter must be -# provided. -#spi_bus: -# Select the SPI bus the TMC2660 stepper driver is connected to. -# This depends on the physical connections on your board, as well as -# the SPI implementation of your particular micro-controller. The -# default is to use the default micro-controller spi bus. -#spi_speed: 4000000 -# SPI bus frequency used to communicate with the TMC2660 stepper -# driver. The default is 4000000. -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. -#microsteps: -# The number of microsteps to configure the driver to use. Valid -# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must -# be provided. -#interpolate: True -# If true, enable step interpolation (the driver will internally -# step at a rate of 256 micro-steps). This only works if microsteps -# is set to 16. The default is True. -#run_current: -# The amount of current (in amps RMS) used by the driver during -# stepper movement. This parameter must be provided. -#sense_resistor: -# The resistance (in ohms) of the motor sense resistor. This -# parameter must be provided. -#idle_current_percent: 100 -# The percentage of the run_current the stepper driver will be -# lowered to when the idle timeout expires (you need to set up the -# timeout using a [idle_timeout] config section). The current will -# be raised again once the stepper has to move again. Make sure to -# set this to a high enough value such that the steppers do not lose -# their position. There is also small delay until the current is -# raised again, so take this into account when commanding fast moves -# while the stepper is idling. The default is 100 (no reduction). -#driver_TBL: 2 -#driver_RNDTF: 0 -#driver_HDEC: 0 -#driver_CHM: 0 -#driver_HEND: 3 -#driver_HSTRT: 3 -#driver_TOFF: 4 -#driver_SEIMIN: 0 -#driver_SEDN: 0 -#driver_SEMAX: 0 -#driver_SEUP: 0 -#driver_SEMIN: 0 -#driver_SFILT: 1 -#driver_SGT: 0 -#driver_SLPH: 0 -#driver_SLPL: 0 -#driver_DISS2G: 0 -#driver_TS2G: 3 -# Set the given parameter during the configuration of the TMC2660 -# chip. This may be used to set custom driver parameters. The -# defaults for each parameter are next to the parameter name in the -# list above. See the TMC2660 datasheet about what each parameter -# does and what the restrictions on parameter combinations are. Be -# especially aware of the CHOPCONF register, where setting CHM to -# either zero or one will lead to layout changes (the first bit of -# HDEC) is interpreted as the MSB of HSTRT in this case). - -# Configure a TMC5160 stepper motor driver via SPI bus. To use this -# feature, define a config section with a "tmc5160" prefix followed by -# the name of the corresponding stepper config section (for example, -# "[tmc5160 stepper_x]"). -#[tmc5160 stepper_x] -#cs_pin: -# The pin corresponding to the TMC5160 chip select line. This pin -# will be set to low at the start of SPI messages and raised to high -# after the message completes. This parameter must be provided. -#spi_bus: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. -#microsteps: -# The number of microsteps to configure the driver to use. Valid -# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must -# be provided. -#interpolate: True -# If true, enable step interpolation (the driver will internally -# step at a rate of 256 micro-steps). The default is True. -#run_current: -# The amount of current (in amps RMS) to configure the driver to use -# during stepper movement. This parameter must be provided. -#hold_current: -# The amount of current (in amps RMS) to configure the driver to use -# when the stepper is not moving. The default is to use the same -# value as run_current. -#sense_resistor: 0.075 -# The resistance (in ohms) of the motor sense resistor. The default -# is 0.075 ohms. -#stealthchop_threshold: 0 -# The velocity (in mm/s) to set the "stealthChop" threshold to. When -# set, "stealthChop" mode will be enabled if the stepper motor -# velocity is below this value. The default is 0, which disables -# "stealthChop" mode. Try to reexperience this with tmc5160. -# Values can be much higher than other tmcs. -#driver_IHOLDDELAY: 6 -#driver_TPOWERDOWN: 10 -#driver_TBL: 2 -#driver_TOFF: 3 -#driver_HEND: 2 -#driver_HSTRT: 5 -#driver_FD3: 0 -#driver_TPFD: 4 -#driver_CHM: 0 -#driver_VHIGHFS: 0 -#driver_VHIGHCHM: 0 -#driver_DISS2G: 0 -#driver_DISS2VS: 0 -#driver_PWM_AUTOSCALE: True -#driver_PWM_AUTOGRAD: True -#driver_PWM_FREQ: 0 -#driver_FREEWHEEL: 0 -#driver_PWM_GRAD: 0 -#driver_PWM_OFS: 30 -#driver_PWM_REG: 4 -#driver_PWM_LIM: 12 -#driver_SGT: 0 -#driver_SEMIN: 0 -#driver_SEUP: 0 -#driver_SEMAX: 0 -#driver_SEDN: 0 -#driver_SEIMIN: 0 -#driver_SFILT: 0 -# Set the given register during the configuration of the TMC5160 -# chip. This may be used to set custom motor parameters. The -# defaults for each parameter are next to the parameter name in the -# above list. -#diag0_pin: -#diag1_pin: -# The micro-controller pin attached to one of the DIAG lines of the -# TMC5160 chip. Only a single diag pin should be specified. -# Setting this creates a "tmc5160_stepper_x:virtual_endstop" virtual -# pin which may be used as the stepper's endstop_pin. Doing this -# enables "sensorless homing". (Be sure to also set driver_SGT to an -# appropriate sensitivity value.) The default is to not enable -# sensorless homing. See docs/Sensorless_Homing.md for details on -# how to configure this. - - -###################################################################### -# Run-time stepper motor current configuration -###################################################################### - -# Statically configured AD5206 digipots connected via SPI bus (one may -# define any number of sections with an "ad5206" prefix). -#[ad5206 my_digipot] -#enable_pin: -# The pin corresponding to the AD5206 chip select line. This pin -# will be set to low at the start of SPI messages and raised to high -# after the message completes. This parameter must be provided. -#spi_bus: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# These optional parameters allow one to customize the SPI settings -# used to communicate with the chip. -#channel_1: -#channel_2: -#channel_3: -#channel_4: -#channel_5: -#channel_6: -# The value to statically set the given AD5206 channel to. This is -# typically set to a number between 0.0 and 1.0 with 1.0 being the -# highest resistance and 0.0 being the lowest resistance. However, -# the range may be changed with the 'scale' parameter (see below). -# If a channel is not specified then it is left unconfigured. -#scale: -# This parameter can be used to alter how the 'channel_x' parameters -# are interpreted. If provided, then the 'channel_x' parameters -# should be between 0.0 and 'scale'. This may be useful when the -# AD5206 is used to set stepper voltage references. The 'scale' can -# be set to the equivalent stepper amperage if the AD5206 were at -# its highest resistance, and then the 'channel_x' parameters can be -# specified using the desired amperage value for the stepper. The -# default is to not scale the 'channel_x' parameters. - -# Statically configured MCP4451 digipot connected via I2C bus (one may -# define any number of sections with an "mcp4451" prefix). -#[mcp4451 my_digipot] -#i2c_mcu: mcu -# The name of the micro-controller that the MCP4451 chip is -# connected to. The default is "mcu". -#i2c_address: -# The i2c address that the chip is using on the i2c bus. This -# parameter must be provided. -#wiper_0: -#wiper_1: -#wiper_2: -#wiper_3: -# The value to statically set the given MCP4451 "wiper" to. This is -# typically set to a number between 0.0 and 1.0 with 1.0 being the -# highest resistance and 0.0 being the lowest resistance. However, -# the range may be changed with the 'scale' parameter (see below). -# If a wiper is not specified then it is left unconfigured. -#scale: -# This parameter can be used to alter how the 'wiper_x' parameters -# are interpreted. If provided, then the 'wiper_x' parameters should -# be between 0.0 and 'scale'. This may be useful when the MCP4451 is -# used to set stepper voltage references. The 'scale' can be set to -# the equivalent stepper amperage if the MCP4451 were at its highest -# resistance, and then the 'wiper_x' parameters can be specified -# using the desired amperage value for the stepper. The default is -# to not scale the 'wiper_x' parameters. - -# Statically configured MCP4728 digital-to-analog converter connected -# via I2C bus (one may define any number of sections with an "mcp4728" -# prefix). -#[mcp4728 my_dac] -#i2c_mcu: mcu -# The name of the micro-controller that the MCP4451 chip is -# connected to. The default is "mcu". -#i2c_address: 96 -# The i2c address that the chip is using on the i2c bus. The default -# is 96. -#channel_a: -#channel_b: -#channel_c: -#channel_d: -# The value to statically set the given MCP4728 channel to. This is -# typically set to a number between 0.0 and 1.0 with 1.0 being the -# highest voltage (2.048V) and 0.0 being the lowest voltage. -# However, the range may be changed with the 'scale' parameter (see -# below). If a channel is not specified then it is left -# unconfigured. -#scale: -# This parameter can be used to alter how the 'channel_x' parameters -# are interpreted. If provided, then the 'channel_x' parameters -# should be between 0.0 and 'scale'. This may be useful when the -# MCP4728 is used to set stepper voltage references. The 'scale' can -# be set to the equivalent stepper amperage if the MCP4728 were at -# its highest voltage (2.048V), and then the 'channel_x' parameters -# can be specified using the desired amperage value for the -# stepper. The default is to not scale the 'channel_x' parameters. - -# Statically configured MCP4018 digipot connected via two gpio "bit -# banging" pins (one may define any number of sections with an -# "mcp4018" prefix). -#[mcp4018 my_digipot] -#scl_pin: -# The SCL "clock" pin. This parameter must be provided. -#sda_pin: -# The SDA "data" pin. This parameter must be provided. -#wiper: -# The value to statically set the given MCP4018 "wiper" to. This is -# typically set to a number between 0.0 and 1.0 with 1.0 being the -# highest resistance and 0.0 being the lowest resistance. However, -# the range may be changed with the 'scale' parameter (see below). -# This parameter must be provided. -#scale: -# This parameter can be used to alter how the 'wiper' parameter is -# interpreted. If provided, then the 'wiper' parameter should be -# between 0.0 and 'scale'. This may be useful when the MCP4018 is -# used to set stepper voltage references. The 'scale' can be set to -# the equivalent stepper amperage if the MCP4018 is at its highest -# resistance, and then the 'wiper' parameter can be specified using -# the desired amperage value for the stepper. The default is to not -# scale the 'wiper' parameter. - - -###################################################################### -# Display support -###################################################################### - -# Support for a display attached to the micro-controller. -#[display] -#lcd_type: -# The type of LCD chip in use. This may be "hd44780" (which is used -# in "RepRapDiscount 2004 Smart Controller" type displays), "st7920" -# (which is used in "RepRapDiscount 12864 Full Graphic Smart -# Controller" type displays), "uc1701" (which is used in "MKS Mini -# 12864" type displays), "ssd1306", or "sh1106". This parameter must -# be provided. -#rs_pin: -#e_pin: -#d4_pin: -#d5_pin: -#d6_pin: -#d7_pin: -# The pins connected to an hd44780 type lcd. These parameters must -# be provided when using an hd44780 display. -#cs_pin: -#sclk_pin: -#sid_pin: -# The pins connected to an st7920 type lcd. These parameters must be -# provided when using an st7920 display. -#cs_pin: -#a0_pin: -#rst_pin: -# The pins connected to an uc1701 type lcd. The rst_pin is -# optional. The cs_pin and a0_pin parameters must be provided when -# using an uc1701 display. -#contrast: 40 -# The contrast to set when using a uc1701 or SSD1306/SH1106 type -# display For UC1701 the value may range from 0 to 63. Default is -# 40. For SSD1306/SH1106 the value may range from 0 to 256. Default -# is 239. -#vcomh: 0 -# Set the Vcomh value on SSD1306/SH1106 displays. This value is -# associated with a "smearing" effect on some OLED displays. The -# value may range from 0 to 63. Default is 0. -#x_offset: 0 -# Set the horizontal offset value on SSD1306/SH1106 displays. -# Default is 0. -#invert: FALSE -# TRUE inverts the pixels on certain OLED (SSD1306/SH1106) displays. -# The default is FALSE. -#cs_pin: -#dc_pin: -#spi_bus: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# The pins connected to an ssd1306 type lcd when in "4-wire" spi -# mode. The parameters that start with "spi_" are optional and they -# control the spi settings used to communicate with the chip. The -# default is to use i2c mode for ssd1306 displays. -#reset_pin: -# A reset pin may be specified on ssd1306 displays. If it is not -# specified then the hardware must have a pull-up on the -# corresponding lcd line. -#display_group: -# The name of the display_data group to show on the display. This -# controls the content of the screen (see the description of -# [display_data] below for more information). The default is -# _default_20x4 for hd44780 displays and _default_16x4 for other -# displays. -#menu_timeout: -# Timeout for menu. Being inactive this amount of seconds will -# trigger menu exit or return to root menu when having autorun -# enabled. The default is 0 seconds (disabled) -#menu_root: -# Name of the main menu section to show when clicking the encoder -# on the home screen. The defaults is __main, and this shows the -# the default menus as defined in klippy/extras/display/menu.cfg -#menu_reverse_navigation: -# When enabled it will reverse up and down directions for list -# navigation. The default is False. This parameter is optional. -#encoder_pins: -# The pins connected to encoder. 2 pins must be provided when using -# encoder. This parameter must be provided when using menu. -#click_pin: -# The pin connected to 'enter' button or encoder 'click'. This -# parameter must be provided when using menu. The presence of an -# 'analog_range_click_pin' config parameter turns this parameter -# from digital to analog. -#back_pin: -# The pin connected to 'back' button. This parameter is optional, -# menu can be used without it. The presence of an -# 'analog_range_back_pin' config parameter turns this parameter from -# digital to analog. -#up_pin: -# The pin connected to 'up' button. This parameter must be provided -# when using menu without encoder. The presence of an -# 'analog_range_up_pin' config parameter turns this parameter from -# digital to analog. -#down_pin: -# The pin connected to 'down' button. This parameter must be -# provided when using menu without encoder. The presence of an -# 'analog_range_down_pin' config parameter turns this parameter from -# digital to analog. -#kill_pin: -# The pin connected to 'kill' button. This button will call -# emergency stop. The presence of an 'analog_range_kill_pin' config -# parameter turns this parameter from digital to analog. -#analog_pullup_resistor: 4700 -# The resistance (in ohms) of the pullup attached to the analog -# button. The default is 4700 ohms. -#analog_range_click_pin: -# The resistance range for a 'enter' button. Range minimum and -# maximum comma-separated values must be provided when using analog -# button. -#analog_range_back_pin: -# The resistance range for a 'back' button. Range minimum and -# maximum comma-separated values must be provided when using analog -# button. -#analog_range_up_pin: -# The resistance range for a 'up' button. Range minimum and maximum -# comma-separated values must be provided when using analog button. -#analog_range_down_pin: -# The resistance range for a 'down' button. Range minimum and -# maximum comma-separated values must be provided when using analog -# button. -#analog_range_kill_pin: -# The resistance range for a 'kill' button. Range minimum and -# maximum comma-separated values must be provided when using analog -# button. - -# Support for displaying custom data on an lcd screen. One may create -# any number of display groups and any number of data items under -# those groups. The display will show all the data items for a given -# group if the display_group option in the [display] section is set to -# the given group name. -#[display_data my_group_name my_data_name] -#position: 0, 0 -# Comma separated row and column of the display position that should -# be used to display the information. This parameter must be -# provided. -#text: -# The text to show at the given position. This field is evaluated -# using command templates (see docs/Command_Templates.md). This -# parameter must be provided. - -# Display data text "macros" (one may define any number of sections -# with a display_template prefix). This feature allows one to reduce -# repetitive definitions in display_data sections. One may use the -# builtin render() function in display_data sections to evaluate a -# template. For example, if one were to define [display_template -# my_template] then one could use "{ render('my_template') }" in a -# display_data section. -#[display_template my_template_name] -#param_: -# One may specify any number of options with a "param_" prefix. The -# given name will be assigned the given value (parsed as a Python -# literal) and will be available during macro expansion. If the -# parameter is passed in the call to render() then that value will -# be used during macro expansion. For example, a config with -# "param_speed = 75" might have a caller with -# "render('my_template_name', param_speed=80)". Parameter names may -# not use upper case characters. -#text: -# The text to return when the render() function is called for this -# template. This field is evaluated using command templates (see -# docs/Command_Templates.md). This parameter must be provided. - -# Display a custom glyph on displays that support it. The given name -# will be assigned the given display data which can then be referenced -# in the display templates by their name surrounded by two "tilde" -# symbols i.e. ~my_display_glyph~ -#[display_glyph my_display_glyph] -#data: -# The display data, stored as 16 lines consisting of 16 bits (1 per -# pixel) where '.' is a blank pixel and '*' is an on pixel (e.g., -# "****************" to display a solid horizontal line). -# Alternatively, one can use '0' for a blank pixel and '1' for an on -# pixel. Put each display line into a separate config line. The -# glyph must consist of exactly 16 lines with 16 bits each. This -# parameter is optional. -#hd44780_data: -# Glyph to use on 20x4 hd44780 displays. The glyph must consist of -# exactly 8 lines with 5 bits each. This parameter is optional. -#hd44780_slot: -# The hd44780 hardware index (0..7) to store the glyph at. If -# multiple distinct images use the same slot then make sure to only -# use one of those images in any given screen. This parameter is -# required if hd44780_data is specified. - -# If a primary [display] section has been defined in printer.cfg as -# shown above it is possible to define multiple auxilary displays. -# Note that auxilary displays do not currently support menu -# functionality, thus they do not support the "menu" options or button -# configuration. -#[display my_display] -#lcd_type: -#rs_pin: -#e_pin: -#d4_pin: -#d5_pin: -#d6_pin: -#d7_pin: -#cs_pin: -#sclk_pin: -#sid_pin: -#cs_pin: -#a0_pin: -#rst_pin: -#contrast: 40 -#cs_pin: -#dc_pin: -#spi_bus: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -#reset_pin: -#display_group: -# See the [display] section above for details on each configuration -# option above. - - -###################################################################### -# Filament sensors -###################################################################### - -# Filament Switch Sensor. Support for filament insert and runout -# detection using a switch sensor, such as an endstop switch. -#[filament_switch_sensor my_sensor] -#pause_on_runout: True -# When set to True, a PAUSE will execute immediately after a runout -# is detected. Note that if pause_on_runout is False and the -# runout_gcode is omitted then runout detection is disabled. Default -# is True. -#runout_gcode: -# A list of G-Code commands to execute after a filament runout is -# detected. See docs/Command_Templates.md for G-Code format. If -# pause_on_runout is set to True this G-Code will run after the -# PAUSE is complete. The default is not to run any G-Code commands. -#insert_gcode: -# A list of G-Code commands to execute after a filament insert is -# detected. See docs/Command_Templates.md for G-Code format. The -# default is not to run any G-Code commands, which disables insert -# detection. -#event_delay: 3.0 -# The minimum amount of time in seconds to delay between events. -# Events triggered during this time period will be silently -# ignored. The default is 3 seconds. -#pause_delay: 0.5 -# The amount of time to delay, in seconds, between the pause command -# dispatch and execution of the runout_gcode. It may be useful to -# increase this delay if Octoprint exhibits strange pause behavior. -# Default is 0.5 seconds. -#switch_pin: -# The pin on which the switch is connected. This parameter must be -# provided. - -# TSLl401CL Based Filament Width Sensor -#[tsl1401cl_filament_width_sensor] -#pin: analog5 -#default_nominal_filament_diameter: 1.75 # (mm) -# Maximum allowed filament diameter difference as mm. -#max_difference: 0.2 -# The distance from sensor to the melting chamber as mm. -#measurement_delay: 100 - -# Hall filament width sensor (see docs/HallFilamentWidthSensor.md) -#[hall_filament_width_sensor] -#adc1: analog11 -#adc2: analog12 -# Analog input pins connected to the sensor. These parameters must -# be provided. -#cal_dia1: 1.50 -#cal_dia2: 2.00 -# The calibration values (in mm) for the sensors. The default is -# 1.50 for cal_dia1 and 2.00 for cal_dia2. -#raw_dia1: 9500 -#raw_dia2: 10500 -# The raw calibration values for the sensors. The default is 9500 -# for raw_dia1 and 10500 for raw_dia2. -#default_nominal_filament_diameter: 1.75 -# The nominal filament diameter. This parameter must be provided. -#max_difference: 0.200 -# Maximum allowed filament diameter difference in millimeters (mm). -# If difference between nominal filament diameter and sensor output -# is more than +- max_difference, extrusion multiplier is set back -# to %100. The default is 0.200. -#measurement_delay: 70 -# The distance from sensor to the melting chamber/hot-end in -# millimeters (mm). The filament between the sensor and the hot-end -# will be treated as the default_nominal_filament_diameter. Host -# module works with FIFO logic. It keeps each sensor value and -# position in an array and POP them back in correct position. This -# parameter must be provided. -#enable: False -# Sensor enabled or disabled after power on. The default is to -# disable. -#measurement_interval: 10 -# The approximate distance (in mm) between sensor readings. The -# default is 10mm. -#logging: False -# Out diameter to terminal and klipper.log can be turn on|of by -# command. -#min_diameter: 1.0 -# Minimal diameter for trigger virtual filament_switch_sensor. -#use_current_dia_while_delay: False -# Use the current diameter instead of the nominal diamenter while -# the measurement delay has not run through. -#pause_on_runout: -#runout_gcode: -#insert_gcode: -#event_delay: -#pause_delay: -# See [filament_switch_sensor] for a description of the above -# parameters. - - -###################################################################### -# Board specific hardware support -###################################################################### - -# Configure an SX1509 I2C to GPIO expander. Due to the delay incurred -# by I2C communication you should NOT use SX1509 pins as stepper -# enable, step or dir pins or any other pin that requires fast -# bit-banging. They are best used as static or gcode controlled -# digital outputs or hardware-pwm pins for e.g. fans. One may define -# any number of sections with an "sx1509" prefix. Each expander -# provides a set of 16 pins (sx1509_my_sx1509:PIN_0 to -# sx1509_my_sx1509:PIN_15) which can be used in the printer -# configuration. -#[sx1509 my_sx1509] -#i2c_mcu: mcu - -# The name of the micro-controller that the SX1509 chip is connected -# to. The default is "mcu". -#i2c_address: -# I2C address used by this expander. Depending on the hardware -# jumpers this is one out of the following addresses: 62 63 112 -# 113. This parameter must be provided. -#i2c_bus: -# If the I2C implementation of your microcontroller supports -# multiple I2C busses, you may specify the bus name here. The -# default is to use the default micro-controller i2c bus. - -# SAMD SERCOM configuration to specify which pins to use on a given -# SERCOM. One may define one section with the "samd_sercom" prefix per -# SERCOM available. Each SERCOM must be configured prior to using it -# as SPI or I2C peripheral. Place this config section above any other -# section that makes use of SPI or I2C buses. -#[samd_sercom sercom0] -#tx_pin: -# MOSI pin for SPI communication, or SDA (data) pin for I2C -# communication. The pin must have a valid pinmux configuration -# for the given SERCOM peripheral. This parameter must be provided. -#rx_pin: -# MISO pin for SPI communication. This pin is not used for I2C -# communication (I2C uses tx_pin for both sending and receiving). -# The pin must have a valid pinmux configuration for the given -# SERCOM peripheral. This parameter is optional. -#clk_pin: -# CLK pin for SPI communication, or SCL (clock) pin for I2C -# communication. The pin must have a valid pinmux configuration -# for the given SERCOM peripheral. This parameter must be provided. - -# Duet2 Maestro analog scaling by vref and vssa readings. Defining an -# adc_scaled section enables virtual adc pins (such as "my_name:PB0") -# that are automatically adjusted by the board's vref and vssa -# monitoring pins. Be sure to define this config section above any -# config sections that use one these virtual pins. -#[adc_scaled my_name] -#vref_pin: -# The ADC pin to use for VREF monitoring. This parameter must be -# provided. -#vssa_pin: -# The ADC pin to use for VSSA monitoring. This parameter must be -# provided. -#smooth_time: 2.0 -# A time value (in seconds) over which the vref and vssa -# measurements will be smoothed to reduce the impact of measurement -# noise. The default is 2 seconds. - -# Replicape support - see the generic-replicape.cfg file for further -# details. -#[replicape] diff --git a/config/example-menu.cfg b/config/example-menu.cfg deleted file mode 100644 index ea58abfc..00000000 --- a/config/example-menu.cfg +++ /dev/null @@ -1,73 +0,0 @@ -# This file serves as documentation for config parameters. One may -# copy and edit this file to configure a new menu layout. -# The snippets in this file may be copied into the main printer.cfg file. -# See the "example.cfg" file for description of common config parameters. - -# Available options in menu Jinja2 template context: -# Read-only attributes for menu element: -# menu.width - element width (number of display columns) -# menu.ns - element namespace -# menu.event - name of the event that triggered the script -# menu.input - input value, only available in input script context -# List of actions for menu element: -# menu.back(force, update) - will execute menu back command, optional boolean parameters and . -# When is set True then it will also stop editing. Default value is False -# When is set False then parent container items are not updated. Default value is True -# menu.exit(force) - will execute menu exit command, optional boolean parameter default value False -# When is set True then it will also stop editing. Default value is False - -# Common parameters available for all menu config sections. -#[menu some_name] -#type: -# One of command, input, list, text: -# command - basic menu element with various script triggers -# input - same like 'command' but has value changing capabilities. -# Press will start/stop edit mode. -# list - it allows for menu items to be grouped together in a scrollable list. -# Add to the list by creating menu configurations -# using "some_list" as a prefix - for example: [menu some_list some_item_in_the_list] -# vsdlist - same as 'list' but will append files from virtual sdcard (will be removed in the future) -#name: -# Name of menu item - evaluated as a template. -#enable: -# Template that evaluates to True or False. -#index: -# Position where an item needs to be inserted in list -# By default the item is added at the end. This parameter is optional. - -#[menu some_list] -#type: list -#name: -#enable: - -#[menu some_list some_command] -#type: command -#name: -#enable: -#gcode: -# Script to run on button click or long click. Evaluated as a template. - -#[menu some_list some_input] -#type: input -#name: -#enable: -#input: -# Initial value to use when editing - evaluated as a template. -# Result must be float. -#input_min: -# Minimum value of range - evaluated as a template. -# Default -99999. -#input_max: -# Maximum value of range - evaluated as a template. -# Default 99999. -#input_step: -# Editing step - Must be a positive integer or float value. -# It has internal fast rate step. When (input_max - input_min) / input_step > 100 -# then fast rate step is 10 * input_step else fast rate step is same input_step -#realtime: -# This attribute accepts static boolean value. -# When enabled then gcode script is run after each value change. -# The default is False. This parameter is optional. -#gcode: -# Script to run on button click, long click or value change. Evaluated as a template. -# The button click will trigger the edit mode start or end. diff --git a/config/example-polar.cfg b/config/example-polar.cfg index efb7f19f..76d5ad5b 100644 --- a/config/example-polar.cfg +++ b/config/example-polar.cfg @@ -1,27 +1,17 @@ -# This file serves as documentation for config parameters of "polar" -# style printers. One may copy and edit this file to configure a new -# polar printer. +# This file is an example config file for polar style printers. One +# may copy and edit this file to configure a new polar printer. # POLAR KINEMATICS ARE A WORK IN PROGRESS. Moves around the 0,0 # position are known to not work properly. -# Only parameters unique to polar printers are described here - see -# the "example.cfg" file for description of common config parameters. +# See docs/Config_Reference.md for a description of parameters. -# The stepper_bed section is used to describe the stepper controlling -# the bed. [stepper_bed] step_pin: ar54 dir_pin: ar55 enable_pin: !ar38 step_distance: 0.001963495 -# On a polar printer the step_distance is the amount each step pulse -# moves the bed in radians (for example, a 1.8 degree stepper with -# 16 micro-steps would be 2 * pi * (1.8 / 360) / 16 == 0.001963495). -# This parameter must be provided. -# The stepper_arm section is used to describe the stepper controlling -# the carriage on the arm. [stepper_arm] step_pin: ar60 dir_pin: ar61 @@ -32,8 +22,6 @@ position_endstop: 300 position_max: 300 homing_speed: 50 -# The stepper_z section is used to describe the stepper controlling -# the Z axis. [stepper_z] step_pin: ar46 dir_pin: ar48 @@ -77,7 +65,6 @@ pin_map: arduino [printer] kinematics: polar -# This option must be "polar" for polar printers. max_velocity: 300 max_accel: 3000 max_z_velocity: 25 diff --git a/config/example-rotary-delta.cfg b/config/example-rotary-delta.cfg index 8911170c..583b97ec 100644 --- a/config/example-rotary-delta.cfg +++ b/config/example-rotary-delta.cfg @@ -1,49 +1,22 @@ -# This file serves as documentation for config parameters of rotary -# delta style printers. One may copy and edit this file to configure a -# new delta printer. Only parameters unique to delta printers are -# described here - see the "example.cfg" file for description of -# common config parameters. +# This file is an example config file for rotary delta style printers. +# One may copy and edit this file to configure a new delta printer. # ROTARY DELTA KINEMATICS ARE A WORK IN PROGRESS. Homing moves may # timeout and some boundary checks are not implemented. -# The stepper_a section describes the stepper controlling the rear -# right arm (at 30 degrees). This section also controls the homing -# parameters (homing_speed, homing_retract_dist) for all arms. +# See docs/Config_Reference.md for a description of parameters. + [stepper_a] step_pin: ar54 dir_pin: ar55 enable_pin: !ar38 step_distance: 0.001963495 -# On a rotary delta printer the step_distance is the amount each -# step pulse moves the upper arm in radians (for example, a directly -# connected 1.8 degree stepper with 16 micro-steps would be 2 * pi * -# (1.8 / 360) / 16 == 0.001963495). This parameter must be provided. endstop_pin: ^ar2 homing_speed: 50 position_endstop: 252 -# Distance (in mm) between the nozzle and the bed when the nozzle is -# in the center of the build area and the endstop triggers. This -# parameter must be provided for stepper_a; for stepper_b and -# stepper_c this parameter defaults to the value specified for -# stepper_a. upper_arm_length: 170.000 -# Length (in mm) of the arm connecting the "shoulder joint" to the -# "elbow joint". This parameter must be provided for stepper_a; for -# stepper_b and stepper_c this parameter defaults to the value -# specified for stepper_a. lower_arm_length: 320.000 -# Length (in mm) of the arm connecting the "elbow joint" to the -# "effector joint". This parameter must be provided for stepper_a; -# for stepper_b and stepper_c this parameter defaults to the value -# specified for stepper_a. -#angle: -# This option specifies the angle (in degrees) that the arm is at. -# The default is 30 for stepper_a, 150 for stepper_b, and 270 for -# stepper_c. -# The stepper_b section describes the stepper controlling the rear -# left arm (at 150 degrees). [stepper_b] step_pin: ar60 dir_pin: ar61 @@ -51,8 +24,6 @@ enable_pin: !ar56 step_distance: 0.001963495 endstop_pin: ^ar15 -# The stepper_c section describes the stepper controlling the front -# arm (at 270 degrees). [stepper_c] step_pin: ar46 dir_pin: ar48 @@ -85,46 +56,17 @@ control: watermark min_temp: 0 max_temp: 130 -# Print cooling fan (omit section if fan not present). -#[fan] -#pin: ar9 - [mcu] serial: /dev/ttyACM0 pin_map: arduino [printer] kinematics: rotary_delta -# This option must be "rotary_delta" for rotary delta printers. max_velocity: 300 -# Maximum velocity (in mm/s) of the toolhead relative to the -# print. This parameter must be specified. max_accel: 3000 -# Maximum acceleration (in mm/s^2) of the toolhead relative to the -# print. This parameter must be specified. max_z_velocity: 50 -# For delta printers this limits the maximum velocity (in mm/s) of -# moves with z axis movement. This setting can be used to reduce the -# maximum speed of up/down moves (which require a higher step rate -# than other moves on a delta printer). The default is to use -# max_velocity for max_z_velocity. -#minimum_z_position: 0 -# The minimum Z position that the user may command the head to move -# to. The default is 0. shoulder_radius: 33.900 -# Radius (in mm) of the horizontal circle formed by the three -# shoulder joints, minus the radius of the circle formed by the -# effector joints. This parameter may also be calculated as: -# shoulder_radius = (delta_f - delta_e) / sqrt(12) -# This parameter must be provided. shoulder_height: 412.900 -# Distance (in mm) of the shoulder joints from the bed, minus the -# effector toolhead height. This parameter must be provided. -# The delta_calibrate section enables a DELTA_CALIBRATE extended -# g-code command that can calibrate the shoulder endstop positions. [delta_calibrate] radius: 50 -#speed: 50 -#horizontal_move_z: 5 -# See example-delta.cfg for a description of these parameters. diff --git a/config/example-winch.cfg b/config/example-winch.cfg index 3b33f9d8..cb9d0a65 100644 --- a/config/example-winch.cfg +++ b/config/example-winch.cfg @@ -1,6 +1,6 @@ -# This file serves as documentation for config parameters of cable -# winch style printers. One may copy and edit this file to configure a -# new cable winch printer. +# This file is an example config file for cable winch style printers. +# One may copy and edit this file to configure a new cable winch +# printer. # CABLE WINCH SUPPORT IS EXPERIMENTAL - PROCEED WITH CAUTION! @@ -8,26 +8,16 @@ # home the printer, manually send movement commands until the toolhead # is at 0,0,0 and then issue a G28 command. -# Only parameters unique to cable winch printers are described here - -# see the "example.cfg" file for description of common config -# parameters. +# See docs/Config_Reference.md for a description of parameters. -# The stepper_a section describes the stepper connected to the first -# cable winch. A minimum of 3 and a maximum of 26 cable winches may be -# defined (stepper_a to stepper_z) though it is common to define 4. [stepper_a] step_pin: ar54 dir_pin: ar55 enable_pin: !ar38 step_distance: .01 -# The step_distance is the nominal distance (in mm) the toolhead -# moves towards the cable winch on each step pulse. This parameter -# must be provided. anchor_x: 0 anchor_y: -2000 anchor_z: -100 -# The x, y, and z position of the cable winch in cartesian space. -# These parameters must be provided. [stepper_b] step_pin: ar60 @@ -81,16 +71,11 @@ control: watermark min_temp: 0 max_temp: 130 -# Print cooling fan (omit section if fan not present). -#[fan] -#pin: ar9 - [mcu] serial: /dev/ttyACM0 pin_map: arduino [printer] kinematics: winch -# This option must be "winch" for cable winch printers. max_velocity: 300 max_accel: 3000 diff --git a/config/example.cfg b/config/example.cfg deleted file mode 100644 index a25ac737..00000000 --- a/config/example.cfg +++ /dev/null @@ -1,341 +0,0 @@ -# This file serves as documentation for config parameters. One may -# copy and edit this file to configure a new cartesian style -# printer. For delta style printers, see the "example-delta.cfg" -# file. For corexy/h-bot style printers, see the "example-corexy.cfg" -# file. Only common config sections are described here - see the -# "example-extras.cfg" file for configuring less common devices. - -# DO NOT COPY THIS FILE WITHOUT CAREFULLY READING AND UPDATING IT -# FIRST. Incorrectly configured parameters may cause damage. - -# A note on pin names: pins may be configured with a hardware name -# (such as "PA4") or with an Arduino alias name (such as "ar29" or -# "analog3"). In order to use Arduino names, the pin_map variable in -# the mcu section must be present and have a value of "arduino". Pin -# names may be preceded by an '!' to indicate that a reverse polarity -# should be used (eg, trigger on low instead of high). Input pins may -# be preceded by a '^' to indicate that a hardware pull-up resistor -# should be enabled for the pin. If the micro-controller supports -# pull-down resistors then an input pin may alternatively be preceded -# by a '~'. - - -# The stepper_x section is used to describe the stepper controlling -# the X axis in a cartesian robot. -[stepper_x] -step_pin: ar54 -# Step GPIO pin (triggered high). This parameter must be provided. -dir_pin: ar55 -# Direction GPIO pin (high indicates positive direction). This -# parameter must be provided. -enable_pin: !ar38 -# Enable pin (default is enable high; use ! to indicate enable -# low). If this parameter is not provided then the stepper motor -# driver must always be enabled. -step_distance: .0225 -# Distance in mm that each step causes the axis to travel. This -# parameter must be provided. -endstop_pin: ^ar3 -# Endstop switch detection pin. This parameter must be provided for -# the X, Y, and Z steppers on cartesian style printers. -#position_min: 0 -# Minimum valid distance (in mm) the user may command the stepper to -# move to. The default is 0mm. -position_endstop: 0 -# Location of the endstop (in mm). This parameter must be provided -# for the X, Y, and Z steppers on cartesian style printers. -position_max: 200 -# Maximum valid distance (in mm) the user may command the stepper to -# move to. This parameter must be provided for the X, Y, and Z -# steppers on cartesian style printers. -#homing_speed: 5.0 -# Maximum velocity (in mm/s) of the stepper when homing. The default -# is 5mm/s. -#homing_retract_dist: 5.0 -# Distance to backoff (in mm) before homing a second time during -# homing. Set this to zero to disable the second home. The default -# is 5mm. -#homing_retract_speed: -# Speed to use on the retract move after homing in case this should -# be different from the homing speed, which is the default for this -# parameter -#second_homing_speed: -# Velocity (in mm/s) of the stepper when performing the second home. -# The default is homing_speed/2. -#homing_positive_dir: -# If true, homing will cause the stepper to move in a positive -# direction (away from zero); if false, home towards zero. It is -# better to use the default than to specify this parameter. The -# default is true if position_endstop is near position_max and false -# if near position_min. - -# The stepper_y section is used to describe the stepper controlling -# the Y axis in a cartesian robot. It has the same settings as the -# stepper_x section. -[stepper_y] -step_pin: ar60 -dir_pin: !ar61 -enable_pin: !ar56 -step_distance: .0225 -endstop_pin: ^ar14 -position_endstop: 0 -position_max: 200 - -# The stepper_z section is used to describe the stepper controlling -# the Z axis in a cartesian robot. It has the same settings as the -# stepper_x section. -[stepper_z] -step_pin: ar46 -dir_pin: ar48 -enable_pin: !ar62 -step_distance: .005 -endstop_pin: ^ar18 -position_endstop: 0.5 -position_max: 200 - -# The extruder section is used to describe both the stepper -# controlling the printer extruder and the heater parameters for the -# nozzle. The stepper configuration has the same settings as the -# stepper_x section. -[extruder] -step_pin: ar26 -dir_pin: ar28 -enable_pin: !ar24 -step_distance: .004242 -nozzle_diameter: 0.500 -# Diameter of the nozzle orifice (in mm). This parameter must be -# provided. -filament_diameter: 3.500 -# The nominal diameter of the raw filament (in mm) as it enters the -# extruder. This parameter must be provided. -#max_extrude_cross_section: -# Maximum area (in mm^2) of an extrusion cross section (eg, -# extrusion width multiplied by layer height). This setting prevents -# excessive amounts of extrusion during relatively small XY moves. -# If a move requests an extrusion rate that would exceed this value -# it will cause an error to be returned. The default is: 4.0 * -# nozzle_diameter^2 -#instantaneous_corner_velocity: 1.000 -# The maximum instantaneous velocity change (in mm/s) of the -# extruder during the junction of two moves. The default is 1mm/s. -#max_extrude_only_distance: 50.0 -# Maximum length (in mm of raw filament) that a retraction or -# extrude-only move may have. If a retraction or extrude-only move -# requests a distance greater than this value it will cause an error -# to be returned. The default is 50mm. -#max_extrude_only_velocity: -#max_extrude_only_accel: -# Maximum velocity (in mm/s) and acceleration (in mm/s^2) of the -# extruder motor for retractions and extrude-only moves. These -# settings do not have any impact on normal printing moves. If not -# specified then they are calculated to match the limit an XY -# printing move with a cross section of 4.0*nozzle_diameter^2 would -# have. -#pressure_advance: 0.0 -# The amount of raw filament to push into the extruder during -# extruder acceleration. An equal amount of filament is retracted -# during deceleration. It is measured in millimeters per -# millimeter/second. The default is 0, which disables pressure -# advance. -#pressure_advance_smooth_time: 0.040 -# A time range (in seconds) to use when calculating the average -# extruder velocity for pressure advance. A larger value results in -# smoother extruder movements. This parameter may not exceed 200ms. -# This setting only applies if pressure_advance is non-zero. The -# default is 0.040 (40 milliseconds). -# -# The remaining variables describe the extruder heater. -heater_pin: ar10 -# PWM output pin controlling the heater. This parameter must be -# provided. -#max_power: 1.0 -# The maximum power (expressed as a value from 0.0 to 1.0) that the -# heater_pin may be set to. The value 1.0 allows the pin to be set -# fully enabled for extended periods, while a value of 0.5 would -# allow the pin to be enabled for no more than half the time. This -# setting may be used to limit the total power output (over extended -# periods) to the heater. The default is 1.0. -sensor_type: EPCOS 100K B57560G104F -# Type of sensor - common thermistors are "EPCOS 100K B57560G104F", -# "ATC Semitec 104GT-2", "NTC 100K beta 3950", "Honeywell 100K -# 135-104LAG-J01", "NTC 100K MGB18-104F39050L32", -# "SliceEngineering 450", and "TDK NTCG104LH104JT1". See the -# example-extras.cfg file for other sensors. This parameter must be -# provided. -sensor_pin: analog13 -# Analog input pin connected to the sensor. This parameter must be -# provided. -#pullup_resistor: 4700 -# The resistance (in ohms) of the pullup attached to the thermistor. -# This parameter is only valid when the sensor is a thermistor. The -# default is 4700 ohms. -#inline_resistor: 0 -# The resistance (in ohms) of an extra (not heat varying) resistor -# that is placed inline with the thermistor. It is rare to set this. -# This parameter is only valid when the sensor is a thermistor. The -# default is 0 ohms. -#smooth_time: 2.0 -# A time value (in seconds) over which temperature measurements will -# be smoothed to reduce the impact of measurement noise. The default -# is 2 seconds. -control: pid -# Control algorithm (either pid or watermark). This parameter must -# be provided. -pid_Kp: 22.2 -# Kp is the "proportional" constant for the pid. This parameter must -# be provided for PID heaters. -pid_Ki: 1.08 -# Ki is the "integral" constant for the pid. This parameter must be -# provided for PID heaters. -pid_Kd: 114 -# Kd is the "derivative" constant for the pid. This parameter must -# be provided for PID heaters. -#pid_integral_max: -# The maximum "windup" the integral term may accumulate. The default -# is to use the same value as max_power. -#max_delta: 2.0 -# On 'watermark' controlled heaters this is the number of degrees in -# Celsius above the target temperature before disabling the heater -# as well as the number of degrees below the target before -# re-enabling the heater. The default is 2 degrees Celsius. -#pwm_cycle_time: 0.100 -# Time in seconds for each software PWM cycle of the heater. It is -# not recommended to set this unless there is an electrical -# requirement to switch the heater faster than 10 times a second. -# The default is 0.100 seconds. -#min_extrude_temp: 170 -# The minimum temperature (in Celsius) at which extruder move -# commands may be issued. The default is 170 Celsius. -min_temp: 0 -max_temp: 210 -# The maximum range of valid temperatures (in Celsius) that the -# heater must remain within. This controls a safety feature -# implemented in the micro-controller code - should the measured -# temperature ever fall outside this range then the micro-controller -# will go into a shutdown state. This check can help detect some -# heater and sensor hardware failures. Set this range just wide -# enough so that reasonable temperatures do not result in an -# error. These parameters must be provided. - -# The heater_bed section describes a heated bed (if present - omit -# section if not present). It uses the same heater settings described -# in the extruder section. -[heater_bed] -heater_pin: ar8 -sensor_type: EPCOS 100K B57560G104F -sensor_pin: analog14 -control: watermark -min_temp: 0 -max_temp: 110 - -# Print cooling fan (omit section if fan not present). -[fan] -pin: ar9 -# PWM output pin controlling the fan. This parameter must be -# provided. -#max_power: 1.0 -# The maximum power (expressed as a value from 0.0 to 1.0) that the -# pin may be set to. The value 1.0 allows the pin to be set fully -# enabled for extended periods, while a value of 0.5 would allow the -# pin to be enabled for no more than half the time. This setting may -# be used to limit the total power output (over extended periods) to -# the fan. If this value is less than 1.0 then fan speed requests -# will be scaled between zero and max_power (for example, if -# max_power is .9 and a fan speed of 80% is requested then the fan -# power will be set to 72%). The default is 1.0. -#shutdown_speed: 0 -# The desired fan speed (expressed as a value from 0.0 to 1.0) if -# the micro-controller software enters an error state. The default -# is 0. -#cycle_time: 0.010 -# The amount of time (in seconds) for each PWM power cycle to the -# fan. It is recommended this be 10 milliseconds or greater when -# using software based PWM. The default is 0.010 seconds. -#hardware_pwm: False -# Enable this to use hardware PWM instead of software PWM. Most fans -# do not work well with hardware PWM, so it is not recommended to -# enable this unless there is an electrical requirement to switch at -# very high speeds. When using hardware PWM the actual cycle time is -# constrained by the implementation and may be significantly -# different than the requested cycle_time. The default is False. -#kick_start_time: 0.100 -# Time (in seconds) to run the fan at full speed when either first -# enabling or increasing it by more than 50% (helps get the fan -# spinning). The default is 0.100 seconds. -#off_below: 0.0 -# The minimum input speed which will power the fan (expressed as a -# value from 0.0 to 1.0). When a speed lower than off_below is -# requested the fan will instead be turned off. This setting may be -# used to prevent fan stalls and to ensure kick starts are -# effective. The default is 0.0. -# -# This setting should be recalibrated whenever max_power is adjusted. -# To calibrate this setting, start with off_below set to 0.0 and the -# fan spinning. Gradually lower the fan speed to determine the lowest -# input speed which reliably drives the fan without stalls. Set -# off_below to the duty cycle corresponding to this value (for -# example, 12% -> 0.12) or slightly higher. - -# Micro-controller information. -[mcu] -serial: /dev/ttyACM0 -# The serial port to connect to the MCU. If unsure (or if it -# changes) see the "Where's my serial port?" section of the FAQ. The -# default is /dev/ttyS0 -#baud: 250000 -# The baud rate to use. The default is 250000. -pin_map: arduino -# This option may be used to enable Arduino pin name aliases. The -# default is to not enable the aliases. -#restart_method: -# This controls the mechanism the host will use to reset the -# micro-controller. The choices are 'arduino', 'cheetah', 'rpi_usb', -# and 'command'. The 'arduino' method (toggle DTR) is common on -# Arduino boards and clones. The 'cheetah' method is a special -# method needed for some Fysetc Cheetah boards. The 'rpi_usb' method -# is useful on Raspberry Pi boards with micro-controllers powered -# over USB - it briefly disables power to all USB ports to -# accomplish a micro-controller reset. The 'command' method involves -# sending a Klipper command to the micro-controller so that it can -# reset itself. The default is 'arduino' if the micro-controller -# communicates over a serial port, 'command' otherwise. - -# The printer section controls high level printer settings. -[printer] -kinematics: cartesian -# This option must be "cartesian" for cartesian printers. -max_velocity: 500 -# Maximum velocity (in mm/s) of the toolhead (relative to the -# print). This parameter must be specified. -max_accel: 3000 -# Maximum acceleration (in mm/s^2) of the toolhead (relative to the -# print). This parameter must be specified. -#max_accel_to_decel: -# A pseudo acceleration (in mm/s^2) controlling how fast the -# toolhead may go from acceleration to deceleration. It is used to -# reduce the top speed of short zig-zag moves (and thus reduce -# printer vibration from these moves). The default is half of -# max_accel. -max_z_velocity: 25 -# For cartesian printers this sets the maximum velocity (in mm/s) of -# movement along the z axis. This setting can be used to restrict -# the maximum speed of the z stepper motor on cartesian printers. -# The default is to use max_velocity for max_z_velocity. -max_z_accel: 30 -# For cartesian printers this sets the maximum acceleration (in -# mm/s^2) of movement along the z axis. It limits the acceleration -# of the z stepper motor on cartesian printers. The default is to -# use max_accel for max_z_accel. -#square_corner_velocity: 5.0 -# The maximum velocity (in mm/s) that the toolhead may travel a 90 -# degree corner at. A non-zero value can reduce changes in extruder -# flow rates by enabling instantaneous velocity changes of the -# toolhead during cornering. This value configures the internal -# centripetal velocity cornering algorithm; corners with angles -# larger than 90 degrees will have a higher cornering velocity while -# corners with angles less than 90 degrees will have a lower -# cornering velocity. If this is set to zero then the toolhead will -# decelerate to zero at each corner. The default is 5mm/s. - - -# Looking for more options? Check the example-extras.cfg file. diff --git a/config/generic-archim2.cfg b/config/generic-archim2.cfg index 335283c9..a3414242 100644 --- a/config/generic-archim2.cfg +++ b/config/generic-archim2.cfg @@ -2,7 +2,7 @@ # boards. To use this config, the firmware should be compiled for the # SAM3x8e. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC6 diff --git a/config/generic-azteeg-x5-mini-v3.cfg b/config/generic-azteeg-x5-mini-v3.cfg index 5815752e..1bd40d26 100644 --- a/config/generic-azteeg-x5-mini-v3.cfg +++ b/config/generic-azteeg-x5-mini-v3.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for the Azteeg X5 Mini v3. To use # this config, the firmware should be compiled for the LPC1769. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.1 diff --git a/config/generic-bigtreetech-gtr.cfg b/config/generic-bigtreetech-gtr.cfg index c52cba79..d00c421e 100644 --- a/config/generic-bigtreetech-gtr.cfg +++ b/config/generic-bigtreetech-gtr.cfg @@ -7,7 +7,7 @@ # file named "firmware.bin" on an SD card and then restart the GTR # with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC15 diff --git a/config/generic-bigtreetech-skr-e3-dip.cfg b/config/generic-bigtreetech-skr-e3-dip.cfg index d9cedb2b..22c725bc 100644 --- a/config/generic-bigtreetech-skr-e3-dip.cfg +++ b/config/generic-bigtreetech-skr-e3-dip.cfg @@ -9,7 +9,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR E3 # DIP with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC6 diff --git a/config/generic-bigtreetech-skr-mini-e3-v1.0.cfg b/config/generic-bigtreetech-skr-mini-e3-v1.0.cfg index a597633d..5bfee9be 100644 --- a/config/generic-bigtreetech-skr-mini-e3-v1.0.cfg +++ b/config/generic-bigtreetech-skr-mini-e3-v1.0.cfg @@ -9,7 +9,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR # mini E3 with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB13 diff --git a/config/generic-bigtreetech-skr-mini-e3-v1.2.cfg b/config/generic-bigtreetech-skr-mini-e3-v1.2.cfg index 5194f1e9..26c17b8c 100644 --- a/config/generic-bigtreetech-skr-mini-e3-v1.2.cfg +++ b/config/generic-bigtreetech-skr-mini-e3-v1.2.cfg @@ -9,7 +9,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR # mini E3 with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB13 diff --git a/config/generic-bigtreetech-skr-mini-e3-v2.0.cfg b/config/generic-bigtreetech-skr-mini-e3-v2.0.cfg index 7d5dc096..2354dca8 100644 --- a/config/generic-bigtreetech-skr-mini-e3-v2.0.cfg +++ b/config/generic-bigtreetech-skr-mini-e3-v2.0.cfg @@ -9,7 +9,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR # mini E3 with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB13 diff --git a/config/generic-bigtreetech-skr-mini.cfg b/config/generic-bigtreetech-skr-mini.cfg index 453c6e9c..cbdc2719 100644 --- a/config/generic-bigtreetech-skr-mini.cfg +++ b/config/generic-bigtreetech-skr-mini.cfg @@ -7,7 +7,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR # mini with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC6 diff --git a/config/generic-bigtreetech-skr-pro.cfg b/config/generic-bigtreetech-skr-pro.cfg index 8fe44dff..c48ad6cb 100644 --- a/config/generic-bigtreetech-skr-pro.cfg +++ b/config/generic-bigtreetech-skr-pro.cfg @@ -7,7 +7,7 @@ # file named "firmware.bin" on an SD card and then restart the SKR PRO # with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PE9 diff --git a/config/generic-bigtreetech-skr-v1.1.cfg b/config/generic-bigtreetech-skr-v1.1.cfg index 23260c25..172b2585 100644 --- a/config/generic-bigtreetech-skr-v1.1.cfg +++ b/config/generic-bigtreetech-skr-v1.1.cfg @@ -2,7 +2,7 @@ # board. To use this config, the firmware should be compiled for the # LPC1768. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P0.4 diff --git a/config/generic-bigtreetech-skr-v1.3.cfg b/config/generic-bigtreetech-skr-v1.3.cfg index 22a607cc..6e358242 100644 --- a/config/generic-bigtreetech-skr-v1.3.cfg +++ b/config/generic-bigtreetech-skr-v1.3.cfg @@ -2,7 +2,7 @@ # board. To use this config, the firmware should be compiled for the # LPC1768. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.2 diff --git a/config/generic-bigtreetech-skr-v1.4.cfg b/config/generic-bigtreetech-skr-v1.4.cfg index debb2cec..c9aa44d7 100644 --- a/config/generic-bigtreetech-skr-v1.4.cfg +++ b/config/generic-bigtreetech-skr-v1.4.cfg @@ -2,7 +2,7 @@ # board. To use this config, the firmware should be compiled for the # LPC1768 or LPC1769(Turbo). -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.2 diff --git a/config/generic-cramps.cfg b/config/generic-cramps.cfg index 818afa01..0e0fe30b 100644 --- a/config/generic-cramps.cfg +++ b/config/generic-cramps.cfg @@ -8,7 +8,7 @@ # order to set the pin state one must use a "device tree overlay" or # use the config-pin program. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P8_13 diff --git a/config/generic-creality-v4.2.7.cfg b/config/generic-creality-v4.2.7.cfg index 01a45d80..171f050a 100644 --- a/config/generic-creality-v4.2.7.cfg +++ b/config/generic-creality-v4.2.7.cfg @@ -13,7 +13,7 @@ # filename must end in ".bin" and must not match the last filename # that was flashed. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB9 diff --git a/config/generic-duet2-duex.cfg b/config/generic-duet2-duex.cfg index 0960b952..0ee2c1c6 100644 --- a/config/generic-duet2-duex.cfg +++ b/config/generic-duet2-duex.cfg @@ -2,7 +2,7 @@ # that have the Duex expansion board. To use this config, the firmware # should be compiled for the SAM4E8E. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. ## Drivers # Here are the pins for the 10 stepper drivers supported by a Duet2 board diff --git a/config/generic-duet2-maestro.cfg b/config/generic-duet2-maestro.cfg index a5c6bbea..335a9aa0 100644 --- a/config/generic-duet2-maestro.cfg +++ b/config/generic-duet2-maestro.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for the Duet2 Maestro. To use # this config, the firmware should be compiled for the sam4s8c. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC20 diff --git a/config/generic-duet2.cfg b/config/generic-duet2.cfg index 615288d7..aebfa3ba 100644 --- a/config/generic-duet2.cfg +++ b/config/generic-duet2.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Duet2 Eth/Wifi boards. To # use this config, the firmware should be compiled for the SAM4E8E. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD6 diff --git a/config/generic-einsy-rambo.cfg b/config/generic-einsy-rambo.cfg index eca405b5..1e942b0a 100644 --- a/config/generic-einsy-rambo.cfg +++ b/config/generic-einsy-rambo.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Einsy Rambo boards. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/generic-flyboard.cfg b/config/generic-flyboard.cfg index ed07ec10..8b2e1371 100644 --- a/config/generic-flyboard.cfg +++ b/config/generic-flyboard.cfg @@ -8,7 +8,7 @@ # file named "firmware.bin" on an SD card and then restart the FLYBOARD # with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB9 diff --git a/config/generic-fysetc-cheetah-v1.1.cfg b/config/generic-fysetc-cheetah-v1.1.cfg index 9ecacdce..da090cd3 100644 --- a/config/generic-fysetc-cheetah-v1.1.cfg +++ b/config/generic-fysetc-cheetah-v1.1.cfg @@ -7,7 +7,7 @@ # after running "make", run the following command to flash the board: # stm32flash -w out/klipper.bin -v -i rts,-dtr,dtr /dev/ttyUSB0 -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB8 diff --git a/config/generic-fysetc-cheetah-v1.2.cfg b/config/generic-fysetc-cheetah-v1.2.cfg index c9846020..2118d71a 100644 --- a/config/generic-fysetc-cheetah-v1.2.cfg +++ b/config/generic-fysetc-cheetah-v1.2.cfg @@ -7,7 +7,7 @@ # after running "make", run the following command to flash the board: # stm32flash -w out/klipper.bin -v -i rts,-dtr,dtr /dev/ttyUSB0 -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB8 diff --git a/config/generic-fysetc-f6.cfg b/config/generic-fysetc-f6.cfg index f49e405f..5ed058e7 100644 --- a/config/generic-fysetc-f6.cfg +++ b/config/generic-fysetc-f6.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for a Fysetc F6 board. # To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF0 @@ -242,7 +242,6 @@ aliases: # Servos ######################################## -# See the example-extras.cfg file for more information. # All Servo pins support hardware PWM. #[servo my_servo1] @@ -261,7 +260,6 @@ aliases: # RGB header ######################################## -# See the example-extras.cfg file for more information. # All RGB pins support hardware PWM. #[output_pin blue] diff --git a/config/generic-fysetc-s6.cfg b/config/generic-fysetc-s6.cfg index 9a2fc26b..649c9519 100644 --- a/config/generic-fysetc-s6.cfg +++ b/config/generic-fysetc-s6.cfg @@ -4,7 +4,7 @@ # and select the "12MHz crystal" as clock reference # For flashing, write the compiled klipper.bin to memory location 0x08000000 -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PE11 @@ -253,8 +253,6 @@ aliases: # RGB header ######################################## -# See the example-extras.cfg file for more information. - #[output_pin blue] #pin: PB7 @@ -268,8 +266,6 @@ aliases: # Servo ######################################## -# See the example-extras.cfg file for more information. - #[servo my_servo1] #pin: PA3 # shared with ZMAX diff --git a/config/generic-gt2560.cfg b/config/generic-gt2560.cfg index 7d43498e..5f116f37 100644 --- a/config/generic-gt2560.cfg +++ b/config/generic-gt2560.cfg @@ -2,7 +2,7 @@ # board. GT2560 board uses a firmware compiled for the AVR # atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar25 diff --git a/config/generic-melzi.cfg b/config/generic-melzi.cfg index 55b76daf..8d619afd 100644 --- a/config/generic-melzi.cfg +++ b/config/generic-melzi.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/generic-mightyboard.cfg b/config/generic-mightyboard.cfg index 459ebed0..cd62457f 100644 --- a/config/generic-mightyboard.cfg +++ b/config/generic-mightyboard.cfg @@ -2,7 +2,7 @@ # Mightyboard. To use this config, the firmware should be compiled for # the Atmel atmega1280. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF1 diff --git a/config/generic-mini-rambo.cfg b/config/generic-mini-rambo.cfg index 34250a82..7fa7d4c7 100644 --- a/config/generic-mini-rambo.cfg +++ b/config/generic-mini-rambo.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Mini-RAMBo boards. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/generic-minitronics1.cfg b/config/generic-minitronics1.cfg index 80153501..1076e50c 100644 --- a/config/generic-minitronics1.cfg +++ b/config/generic-minitronics1.cfg @@ -7,7 +7,7 @@ # command to flash the board: # avrdude -carduino -patmega1281 -P/dev/ttyUSB0 -b57600 -D -Uout/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF2 diff --git a/config/generic-mks-robin-e3.cfg b/config/generic-mks-robin-e3.cfg index c68a2650..315e28a9 100644 --- a/config/generic-mks-robin-e3.cfg +++ b/config/generic-mks-robin-e3.cfg @@ -13,7 +13,7 @@ # MKS Robin E3 has onboard TMC2209. This config can also be used for # MKS Robin E3D if equipped with TMC2209 stepper drivers. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/generic-mks-robin-nano.cfg b/config/generic-mks-robin-nano.cfg index 0db45693..c92e00a9 100644 --- a/config/generic-mks-robin-nano.cfg +++ b/config/generic-mks-robin-nano.cfg @@ -10,7 +10,7 @@ # Copy the file out/Robin_nano.bin to an SD card and then restart the # printer with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PE3 diff --git a/config/generic-mks-sgenl.cfg b/config/generic-mks-sgenl.cfg index 42f7adbb..3851b30d 100644 --- a/config/generic-mks-sgenl.cfg +++ b/config/generic-mks-sgenl.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for the MKS SGEN_L board. To # use this config, the firmware should be compiled for the LPC1768. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.2 diff --git a/config/generic-printrboard-g2.cfg b/config/generic-printrboard-g2.cfg index d2029330..94b31e4e 100644 --- a/config/generic-printrboard-g2.cfg +++ b/config/generic-printrboard-g2.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Printrboard G2 boards. # To use this config, the firmware should be compiled for the SAM3x8c. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB15 diff --git a/config/generic-printrboard.cfg b/config/generic-printrboard.cfg index 24814864..8db8b2ea 100644 --- a/config/generic-printrboard.cfg +++ b/config/generic-printrboard.cfg @@ -9,7 +9,7 @@ # - Connect via USB and run: # avrdude -c flip1 -p usb1286 -U flash:w:out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PA0 diff --git a/config/generic-radds.cfg b/config/generic-radds.cfg index 5eac5777..c97044ee 100644 --- a/config/generic-radds.cfg +++ b/config/generic-radds.cfg @@ -2,7 +2,7 @@ # use this config, the firmware should be compiled for the Arduino # Due. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. # Temp sensor pins: analog0..analog4 # Mosfet Pins: ar7 (Heatbed), ar8, ar9, ar11, ar12, ar13 diff --git a/config/generic-rambo.cfg b/config/generic-rambo.cfg index 4884871d..f5562e49 100644 --- a/config/generic-rambo.cfg +++ b/config/generic-rambo.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for RAMBo boards. To use this # config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/generic-ramps.cfg b/config/generic-ramps.cfg index 4f96d597..16e3eb89 100644 --- a/config/generic-ramps.cfg +++ b/config/generic-ramps.cfg @@ -2,7 +2,7 @@ # boards. RAMPS boards typically use a firmware compiled for the AVR # atmega2560 (though other AVR chips are also possible). -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/generic-re-arm.cfg b/config/generic-re-arm.cfg index 77ba004a..ba87f416 100644 --- a/config/generic-re-arm.cfg +++ b/config/generic-re-arm.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Re-Arm. To use this # config, the firmware should be compiled for the LPC1768. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.1 diff --git a/config/generic-replicape.cfg b/config/generic-replicape.cfg index 7e8479b9..fe361dea 100644 --- a/config/generic-replicape.cfg +++ b/config/generic-replicape.cfg @@ -11,7 +11,7 @@ # they must be specified in a "device tree overlay" or via the # config-pin program. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [mcu] serial: /dev/rpmsg_pru30 diff --git a/config/generic-rumba.cfg b/config/generic-rumba.cfg index 23ad0f03..2840fa2e 100644 --- a/config/generic-rumba.cfg +++ b/config/generic-rumba.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for RUMBA boards. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar17 diff --git a/config/generic-simulavr.cfg b/config/generic-simulavr.cfg index db6e05e5..b004b8b3 100644 --- a/config/generic-simulavr.cfg +++ b/config/generic-simulavr.cfg @@ -4,7 +4,7 @@ # "simulavr software emulation". Further details are in # docs/Debugging.md. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] # Pins: PA5, PA4, PA1 diff --git a/config/generic-smoothieboard.cfg b/config/generic-smoothieboard.cfg index 6698c866..21803fe3 100644 --- a/config/generic-smoothieboard.cfg +++ b/config/generic-smoothieboard.cfg @@ -1,7 +1,7 @@ # This file contains common pin mappings for Smoothieboard. To use # this config, the firmware should be compiled for the LPC176x. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: P2.0 diff --git a/config/generic-ultimaker-ultimainboard-v2.cfg b/config/generic-ultimaker-ultimainboard-v2.cfg index eb472a71..0ad25a2e 100644 --- a/config/generic-ultimaker-ultimainboard-v2.cfg +++ b/config/generic-ultimaker-ultimainboard-v2.cfg @@ -2,7 +2,7 @@ # boards. To use this config, the firmware should be compiled for the # AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar25 diff --git a/config/kit-voron2-250mm.cfg b/config/kit-voron2-250mm.cfg index 278d4299..2d0bcb47 100644 --- a/config/kit-voron2-250mm.cfg +++ b/config/kit-voron2-250mm.cfg @@ -9,8 +9,9 @@ # for other example Klipper configs created by the VORON community. # This file is only an example - be sure to review and update it -# according to the specifics of your printer. See the example.cfg and -# example-extras.cfg files for a description of available Klipper parameters. +# according to the specifics of your printer. + +# See docs/Config_Reference.md for a description of parameters. # AND PLEASE READ THROUGH THE KLIPPER DOCUMENTATION FIRST! # https://github.com/KevinOConnor/klipper/tree/master/docs diff --git a/config/kit-zav3d-2019.cfg b/config/kit-zav3d-2019.cfg index d1e70ccc..f509cdec 100644 --- a/config/kit-zav3d-2019.cfg +++ b/config/kit-zav3d-2019.cfg @@ -7,8 +7,9 @@ # Created by "Nurmukhamed Artykaly" # This file is only an example - be sure to review and update it -# according to the specifics of your printer. See the example.cfg and -# example-extras.cfg files for a description of available Klipper parameters. +# according to the specifics of your printer. + +# See docs/Config_Reference.md for a description of parameters. # AND PLEASE READ THROUGH THE KLIPPER DOCUMENTATION FIRST! # https://www.klipper3d.org/Overview.html diff --git a/config/printer-adimlab-2018.cfg b/config/printer-adimlab-2018.cfg index 6b0382ea..48a93a72 100644 --- a/config/printer-adimlab-2018.cfg +++ b/config/printer-adimlab-2018.cfg @@ -1,7 +1,7 @@ # This file contains pin mappings for the ADIMLab 3d printer 2018. # To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar25 diff --git a/config/printer-alfawise-u30-2018.cfg b/config/printer-alfawise-u30-2018.cfg index 9786527e..f8291e89 100644 --- a/config/printer-alfawise-u30-2018.cfg +++ b/config/printer-alfawise-u30-2018.cfg @@ -10,7 +10,7 @@ # file named "project.bin" on an SD card and then restart the Alfawise # with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PB4 diff --git a/config/printer-anet-a4-2018.cfg b/config/printer-anet-a4-2018.cfg index ea1565a3..324e2c23 100644 --- a/config/printer-anet-a4-2018.cfg +++ b/config/printer-anet-a4-2018.cfg @@ -6,7 +6,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_a] step_pin: PD7 diff --git a/config/printer-anet-a8-2017.cfg b/config/printer-anet-a8-2017.cfg index 7d53c4d9..04203a1c 100644 --- a/config/printer-anet-a8-2017.cfg +++ b/config/printer-anet-a8-2017.cfg @@ -6,7 +6,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-anet-e10-2018.cfg b/config/printer-anet-e10-2018.cfg index 224bcd57..b4d0c546 100644 --- a/config/printer-anet-e10-2018.cfg +++ b/config/printer-anet-e10-2018.cfg @@ -6,7 +6,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-anet-e16-2019.cfg b/config/printer-anet-e16-2019.cfg index 2d6981ff..3ebf6973 100644 --- a/config/printer-anet-e16-2019.cfg +++ b/config/printer-anet-e16-2019.cfg @@ -6,7 +6,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-anycubic-4max-2018.cfg b/config/printer-anycubic-4max-2018.cfg index 96f25aed..10598a13 100644 --- a/config/printer-anycubic-4max-2018.cfg +++ b/config/printer-anycubic-4max-2018.cfg @@ -1,7 +1,7 @@ # Klipper firmware config file for Anycubic 4Max. To use this config, # the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-anycubic-i3-mega-2017.cfg b/config/printer-anycubic-i3-mega-2017.cfg index 7fafe697..4b057a7a 100644 --- a/config/printer-anycubic-i3-mega-2017.cfg +++ b/config/printer-anycubic-i3-mega-2017.cfg @@ -4,7 +4,7 @@ # endstop_pin in the stepper_z1 section.) To use this config, the # firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-anycubic-kossel-2016.cfg b/config/printer-anycubic-kossel-2016.cfg index 825f6d9a..1209605c 100644 --- a/config/printer-anycubic-kossel-2016.cfg +++ b/config/printer-anycubic-kossel-2016.cfg @@ -5,7 +5,7 @@ # AVR ATmega2560 Arduino + RAMPS compatible board. # To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_a] step_pin: ar54 diff --git a/config/printer-anycubic-kossel-plus-2017.cfg b/config/printer-anycubic-kossel-plus-2017.cfg index b2889b42..fc416296 100644 --- a/config/printer-anycubic-kossel-plus-2017.cfg +++ b/config/printer-anycubic-kossel-plus-2017.cfg @@ -4,8 +4,8 @@ # The Anycubic delta printers use the TriGorilla board which is an # AVR ATmega2560 Arduino + RAMPS compatible board. # To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg, example-delta.cfg and example-extras.cfg files -# for a description of available parameters. + +# See docs/Config_Reference.md for a description of parameters. [stepper_a] step_pin: ar54 diff --git a/config/printer-creality-cr10-2017.cfg b/config/printer-creality-cr10-2017.cfg index f4f6e9df..1920c92a 100644 --- a/config/printer-creality-cr10-2017.cfg +++ b/config/printer-creality-cr10-2017.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-creality-cr10mini-2017.cfg b/config/printer-creality-cr10mini-2017.cfg index 19d68676..12166c8f 100644 --- a/config/printer-creality-cr10mini-2017.cfg +++ b/config/printer-creality-cr10mini-2017.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-creality-cr10s-2017.cfg b/config/printer-creality-cr10s-2017.cfg index e198e5ed..df895ae2 100644 --- a/config/printer-creality-cr10s-2017.cfg +++ b/config/printer-creality-cr10s-2017.cfg @@ -1,7 +1,7 @@ # This file contains pin mappings for the 2017 Creality CR-10S. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-creality-cr20-2018.cfg b/config/printer-creality-cr20-2018.cfg index 51bf2113..39a4e509 100644 --- a/config/printer-creality-cr20-2018.cfg +++ b/config/printer-creality-cr20-2018.cfg @@ -1,7 +1,7 @@ # This file contains pin mappings for the Creality CR-20. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF0 diff --git a/config/printer-creality-cr20-pro-2019.cfg b/config/printer-creality-cr20-pro-2019.cfg index e3ef59f5..8de483bd 100644 --- a/config/printer-creality-cr20-pro-2019.cfg +++ b/config/printer-creality-cr20-pro-2019.cfg @@ -1,7 +1,7 @@ # This file contains pin mappings for the Creality CR-20 Pro. To use # this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF0 diff --git a/config/printer-creality-ender2-2017.cfg b/config/printer-creality-ender2-2017.cfg index 1e80ded5..03e44b2d 100644 --- a/config/printer-creality-ender2-2017.cfg +++ b/config/printer-creality-ender2-2017.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-creality-ender3-2018.cfg b/config/printer-creality-ender3-2018.cfg index 215c98e1..2018f47f 100644 --- a/config/printer-creality-ender3-2018.cfg +++ b/config/printer-creality-ender3-2018.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-creality-ender3-v2-2020.cfg b/config/printer-creality-ender3-v2-2020.cfg index 93663291..695b1d76 100644 --- a/config/printer-creality-ender3-v2-2020.cfg +++ b/config/printer-creality-ender3-v2-2020.cfg @@ -14,7 +14,7 @@ # filename must end in ".bin" and must not match the last filename # that was flashed. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC2 diff --git a/config/printer-creality-ender3pro-2020.cfg b/config/printer-creality-ender3pro-2020.cfg index c49a7e6b..25f54ff4 100644 --- a/config/printer-creality-ender3pro-2020.cfg +++ b/config/printer-creality-ender3pro-2020.cfg @@ -14,7 +14,7 @@ # filename must end in ".bin" and must not match the last filename # that was flashed. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC2 diff --git a/config/printer-creality-ender5-2019.cfg b/config/printer-creality-ender5-2019.cfg index cf9b5926..c0c79898 100644 --- a/config/printer-creality-ender5-2019.cfg +++ b/config/printer-creality-ender5-2019.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-creality-ender5plus-2019.cfg b/config/printer-creality-ender5plus-2019.cfg index c66c73d6..526250c4 100644 --- a/config/printer-creality-ender5plus-2019.cfg +++ b/config/printer-creality-ender5plus-2019.cfg @@ -3,7 +3,7 @@ # To use this config, the firmware should be compiled for the AVR # atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF0 diff --git a/config/printer-lulzbot-mini1-2016.cfg b/config/printer-lulzbot-mini1-2016.cfg index 33336316..795d327e 100644 --- a/config/printer-lulzbot-mini1-2016.cfg +++ b/config/printer-lulzbot-mini1-2016.cfg @@ -1,7 +1,7 @@ #This file contains pin mappings for the Lulzbot Mini 1 using RAMBo Mini and SingleExtruder #To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. #------------------------------------------------------------------------------------------------- # LULZBOT Mini 1 SingleExtruder (RAMBoMini) diff --git a/config/printer-lulzbot-taz6-2017.cfg b/config/printer-lulzbot-taz6-2017.cfg index 5ddd24e3..543a67f4 100644 --- a/config/printer-lulzbot-taz6-2017.cfg +++ b/config/printer-lulzbot-taz6-2017.cfg @@ -4,7 +4,7 @@ # For a TAZ6 with DualV3 extruder, see printer-lulzbot-taz6-dual-v3-2017.cfg. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/printer-lulzbot-taz6-dual-v3-2017.cfg b/config/printer-lulzbot-taz6-dual-v3-2017.cfg index 84add404..c018af27 100644 --- a/config/printer-lulzbot-taz6-dual-v3-2017.cfg +++ b/config/printer-lulzbot-taz6-dual-v3-2017.cfg @@ -1,7 +1,7 @@ #This file contains pin mappings for the Lulzbot TAZ 6 circa 2017 using RAMBo and Dual v3 toolhead. #To use this config, the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. #------------------------------------------------------------------------------------------------- #------------------------------------------------------------------------------------------------- diff --git a/config/printer-micromake-d1-2016.cfg b/config/printer-micromake-d1-2016.cfg index 88dd53f8..4a0ca18b 100644 --- a/config/printer-micromake-d1-2016.cfg +++ b/config/printer-micromake-d1-2016.cfg @@ -2,7 +2,7 @@ # printer (using the Makeboard 1.3 electronics). To use this config, # the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_a] step_pin: ar54 diff --git a/config/printer-monoprice-mini-delta-2017.cfg b/config/printer-monoprice-mini-delta-2017.cfg index b570d270..1ccaeb54 100644 --- a/config/printer-monoprice-mini-delta-2017.cfg +++ b/config/printer-monoprice-mini-delta-2017.cfg @@ -16,7 +16,7 @@ # Note 2: Klipper does not currently support the LCD interface used on this # printer. # -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. # Stepper A is the front-left tower, as originally wired. If you've rewired diff --git a/config/printer-mtw-create-2015.cfg b/config/printer-mtw-create-2015.cfg index 1b8dc0f1..fe6e1c4e 100644 --- a/config/printer-mtw-create-2015.cfg +++ b/config/printer-mtw-create-2015.cfg @@ -2,7 +2,7 @@ # use this config, the firmware should be compiled for the AVR # atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PC0 diff --git a/config/printer-seemecnc-rostock-max-v2-2015.cfg b/config/printer-seemecnc-rostock-max-v2-2015.cfg index 3f1b2337..184b917a 100644 --- a/config/printer-seemecnc-rostock-max-v2-2015.cfg +++ b/config/printer-seemecnc-rostock-max-v2-2015.cfg @@ -2,7 +2,7 @@ # (version 2) delta printer from 2015. To use this config, the # firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_a] step_pin: PC0 diff --git a/config/printer-sovol-sv01-2020.cfg b/config/printer-sovol-sv01-2020.cfg index 81877696..957fd5ab 100644 --- a/config/printer-sovol-sv01-2020.cfg +++ b/config/printer-sovol-sv01-2020.cfg @@ -2,7 +2,7 @@ # use this config, the firmware should be compiled for the AVR # atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-tevo-flash-2018.cfg b/config/printer-tevo-flash-2018.cfg index bd5e9d60..459e64d6 100644 --- a/config/printer-tevo-flash-2018.cfg +++ b/config/printer-tevo-flash-2018.cfg @@ -5,7 +5,7 @@ # (using a Bondtech BMG extruder). If using a stock printer it may be # necessary to update the extruder step_distance parameter. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-tevo-tarantula-pro-2020.cfg b/config/printer-tevo-tarantula-pro-2020.cfg index 5c074be5..06577ee9 100644 --- a/config/printer-tevo-tarantula-pro-2020.cfg +++ b/config/printer-tevo-tarantula-pro-2020.cfg @@ -5,7 +5,7 @@ # It _will not_ work out of the box for the "new orange" Tarantula pro with a # MKS Sgen_l 32-bit board. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-tronxy-p802e-2020.cfg b/config/printer-tronxy-p802e-2020.cfg index 468bcc67..b209ff0e 100644 --- a/config/printer-tronxy-p802e-2020.cfg +++ b/config/printer-tronxy-p802e-2020.cfg @@ -7,7 +7,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-tronxy-p802m-2020.cfg b/config/printer-tronxy-p802m-2020.cfg index 4a37e55a..cc17e17c 100644 --- a/config/printer-tronxy-p802m-2020.cfg +++ b/config/printer-tronxy-p802m-2020.cfg @@ -7,7 +7,7 @@ # the boards are typically flashed with this command: # avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-tronxy-x5s-2018.cfg b/config/printer-tronxy-x5s-2018.cfg index 8c834500..40e755e2 100644 --- a/config/printer-tronxy-x5s-2018.cfg +++ b/config/printer-tronxy-x5s-2018.cfg @@ -9,7 +9,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PD7 diff --git a/config/printer-tronxy-x8-2018.cfg b/config/printer-tronxy-x8-2018.cfg index b2cad58a..a9f8cf9b 100644 --- a/config/printer-tronxy-x8-2018.cfg +++ b/config/printer-tronxy-x8-2018.cfg @@ -10,8 +10,7 @@ # use the following command: # avrdude -p atmega1284p -c arduino -b 115200 -P /dev/ttyUSB0 -U out/klipper.elf.hex -# See the example.cfg and example-extras.cfg files for a description -# of available parameters. +# See docs/Config_Reference.md for a description of parameters. [mcu] serial: /dev/ttyUSB0 diff --git a/config/printer-twotrees-sapphire-pro-2020.cfg b/config/printer-twotrees-sapphire-pro-2020.cfg index 4c9b4c51..d5213441 100644 --- a/config/printer-twotrees-sapphire-pro-2020.cfg +++ b/config/printer-twotrees-sapphire-pro-2020.cfg @@ -12,7 +12,7 @@ # Copy the file out/Robin_nano35.bin to an SD card and then restart the # printer with that SD card. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PE3 diff --git a/config/printer-velleman-k8200-2013.cfg b/config/printer-velleman-k8200-2013.cfg index 4259f320..4c68de9a 100644 --- a/config/printer-velleman-k8200-2013.cfg +++ b/config/printer-velleman-k8200-2013.cfg @@ -4,7 +4,7 @@ # Based on config from Martin Malmqvist and Per Hjort. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar54 diff --git a/config/printer-wanhao-duplicator-6-2016.cfg b/config/printer-wanhao-duplicator-6-2016.cfg index 962d784d..a993bc02 100644 --- a/config/printer-wanhao-duplicator-6-2016.cfg +++ b/config/printer-wanhao-duplicator-6-2016.cfg @@ -2,7 +2,7 @@ # Ultimate). To use this config, the firmware should be compiled for # the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PA3 diff --git a/config/printer-wanhao-duplicator-9-2018.cfg b/config/printer-wanhao-duplicator-9-2018.cfg index 82e1bf79..35c3a3a7 100644 --- a/config/printer-wanhao-duplicator-9-2018.cfg +++ b/config/printer-wanhao-duplicator-9-2018.cfg @@ -2,7 +2,7 @@ # also sold as the Monoprice Maker Pro MK1. To use this config, # the firmware should be compiled for the AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar61 diff --git a/config/printer-wanhao-duplicator-i3-mini-2017.cfg b/config/printer-wanhao-duplicator-i3-mini-2017.cfg index efc35849..ce2f2ec7 100644 --- a/config/printer-wanhao-duplicator-i3-mini-2017.cfg +++ b/config/printer-wanhao-duplicator-i3-mini-2017.cfg @@ -4,7 +4,7 @@ # Pin numbers and other parameters were extracted from the official # Marlin source available at: https://github.com/garychen99/i3Mini -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: ar22 diff --git a/config/printer-wanhao-duplicator-i3-plus-2017.cfg b/config/printer-wanhao-duplicator-i3-plus-2017.cfg index f0e26829..8dd5c0ec 100644 --- a/config/printer-wanhao-duplicator-i3-plus-2017.cfg +++ b/config/printer-wanhao-duplicator-i3-plus-2017.cfg @@ -5,7 +5,7 @@ # official Marlin source available at: # https://github.com/garychen99/Duplicator-i3-plus -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF7 diff --git a/config/printer-wanhao-duplicator-i3-plus-mark2-2019.cfg b/config/printer-wanhao-duplicator-i3-plus-mark2-2019.cfg index 6ed68cab..261a5885 100644 --- a/config/printer-wanhao-duplicator-i3-plus-mark2-2019.cfg +++ b/config/printer-wanhao-duplicator-i3-plus-mark2-2019.cfg @@ -2,7 +2,7 @@ # Mark II. To use this config, the firmware should be compiled for the # AVR atmega2560. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. [stepper_x] step_pin: PF7 diff --git a/config/printer-wanhao-duplicator-i3-v2.1-2017.cfg b/config/printer-wanhao-duplicator-i3-v2.1-2017.cfg index de91617e..18d1ebce 100644 --- a/config/printer-wanhao-duplicator-i3-v2.1-2017.cfg +++ b/config/printer-wanhao-duplicator-i3-v2.1-2017.cfg @@ -12,7 +12,7 @@ # then one may need to flash a bootloader to the board - see the # Klipper docs/Bootloaders.md file for more information. -# See the example.cfg file for a description of available parameters. +# See docs/Config_Reference.md for a description of parameters. # For best results with klipper and the Wanhao Duplicator i3, follow these # guidelines: diff --git a/config/sample-bigtreetech-exp-mot.cfg b/config/sample-bigtreetech-exp-mot.cfg index 20acb9ba..c10682c0 100644 --- a/config/sample-bigtreetech-exp-mot.cfg +++ b/config/sample-bigtreetech-exp-mot.cfg @@ -1,5 +1,5 @@ #Config for the BTT mot-exp -#See the example.cfg file for a description of available parameters. +#See docs/Config_Reference.md for a description of parameters. [stepper_1] step_pin: EXP2_6 diff --git a/config/sample-glyphs.cfg b/config/sample-glyphs.cfg index 01023bf0..c8513a59 100644 --- a/config/sample-glyphs.cfg +++ b/config/sample-glyphs.cfg @@ -1,5 +1,7 @@ -# Some alternate glyphs for use with 128x64 LCDs. These are used by adding them to your printer.cfg. -# See config/example-extras.cfg for more information about setting these up. +# Some alternate glyphs for use with 128x64 LCDs. These are used by +# adding them to your printer.cfg. + +# See docs/Config_Reference.md for a description of parameters. # =============================== diff --git a/config/sample-idex.cfg b/config/sample-idex.cfg index 6c6f8870..8ca57fff 100644 --- a/config/sample-idex.cfg +++ b/config/sample-idex.cfg @@ -1,8 +1,7 @@ # This file contains a configuration snippet for a dual extruder # printer using dual carriages (an "IDEX" printer). -# See example.cfg and example-extras.cfg for a description of -# available parameters. +# See docs/Config_Reference.md for a description of parameters. # Definition for the primary carriage (holding the primary extruder) [stepper_x] diff --git a/config/sample-lcd.cfg b/config/sample-lcd.cfg index 44910ad3..0ae9f4f1 100644 --- a/config/sample-lcd.cfg +++ b/config/sample-lcd.cfg @@ -6,7 +6,7 @@ # aliases for the EXP1/EXP2 plugs, find the appropriate LCD type in # this file, and then copy-and-paste that section into printer.cfg. -# See the "example-extras.cfg" file for description of config parameters. +# See docs/Config_Reference.md for a description of parameters. ###################################################################### diff --git a/config/sample-macros.cfg b/config/sample-macros.cfg index 1d98f5c8..80ff0029 100644 --- a/config/sample-macros.cfg +++ b/config/sample-macros.cfg @@ -1,8 +1,8 @@ # This file provides examples of Klipper G-Code macros. The snippets # in this file may be copied into the main printer.cfg file and # customized. -# -# See the "example.cfg" file for description of common config parameters. + +# See docs/Config_Reference.md for a description of parameters. ###################################################################### diff --git a/config/sample-multi-extruder.cfg b/config/sample-multi-extruder.cfg index 3809d424..048487c4 100644 --- a/config/sample-multi-extruder.cfg +++ b/config/sample-multi-extruder.cfg @@ -1,8 +1,7 @@ # This file contains a configuration snippet for a printer using two # extruders that are selected by a servo. -# See example.cfg and example-extras.cfg for a description of -# available parameters. +# See docs/Config_Reference.md for a description of parameters. # The primary extruder [extruder] diff --git a/config/sample-multi-mcu.cfg b/config/sample-multi-mcu.cfg index e2f2a0b3..45b0e16b 100644 --- a/config/sample-multi-mcu.cfg +++ b/config/sample-multi-mcu.cfg @@ -1,8 +1,7 @@ # This file contains an example configuration with three # micro-controllers simultaneously controlling a single printer. -# See both the example.cfg and example-extras.cfg file for a -# description of available parameters. +# See docs/Config_Reference.md for a description of parameters. # The main micro-controller is used as the timing source for all the diff --git a/config/sample-probe-as-z-endstop.cfg b/config/sample-probe-as-z-endstop.cfg index f242726a..5deb088f 100644 --- a/config/sample-probe-as-z-endstop.cfg +++ b/config/sample-probe-as-z-endstop.cfg @@ -6,8 +6,7 @@ # Be sure to review and update this config with the appropriate pins # and coordinates for your printer. -# See the "example.cfg" and "example-extras.cfg" files for a -# description of config parameters. +# See docs/Config_Reference.md for a description of parameters. # Define a probe [probe] diff --git a/config/sample-raspberry-pi.cfg b/config/sample-raspberry-pi.cfg index 692408ad..92f1c20e 100644 --- a/config/sample-raspberry-pi.cfg +++ b/config/sample-raspberry-pi.cfg @@ -1,7 +1,6 @@ # This file contains an example configuration with RPi as secondary mcu -# See both the example.cfg and example-extras.cfg file for a -# description of available parameters. +# See docs/Config_Reference.md for a description of parameters. # The rpi microcontroller is used as secondary. # Typically, both the X and Y axes diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index 976e7b7f..d62a47f2 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -427,5 +427,5 @@ It is possible to run timing tests on the host software using the large and complex G-Code file and timing how long it takes for the host software to process it. For example: ``` -time ~/klippy-env/bin/python ./klippy/klippy.py config/example.cfg -i something_complex.gcode -o /dev/null -d out/klipper.dict +time ~/klippy-env/bin/python ./klippy/klippy.py config/example-cartesian.cfg -i something_complex.gcode -o /dev/null -d out/klipper.dict ``` diff --git a/docs/Config_Reference.md b/docs/Config_Reference.md new file mode 100644 index 00000000..4ef71833 --- /dev/null +++ b/docs/Config_Reference.md @@ -0,0 +1,3400 @@ +This document is a reference for options available in the Klipper +config file. + +The descriptions in this document are formatted so that it is possible +to cut-and-paste them into a printer config file. See the +[installation document](Installation.md) for information on setting up +Klipper and choosing an initial config file. + +# Format of micro-controller pin names + +Many config options require the name of a micro-controller pin. +Klipper uses the hardware names for these pins - for example `PA4`. + +For AVR micro-controllers one may also use an Arduino alias (such as +"ar29" or "analog3"). In order to use Arduino names, the `pin_map` +variable in the `[mcu]` section must be present and have a value of +`arduino`. + +Pin names may be preceded by `!` to indicate that a reverse polarity +should be used (eg, trigger on low instead of high). + +Input pins may be preceded by `^` to indicate that a hardware pull-up +resistor should be enabled for the pin. If the micro-controller +supports pull-down resistors then an input pin may alternatively be +preceded by `~`. + +Note, some config sections may "create" additional pins. Where this +occurs, the config section defining the pins must be listed in the +config file before any sections using those pins. + +# Common kinematic settings + +## [printer] + +The printer section controls high level printer settings. + +``` +[printer] +kinematics: +# The type of printer in use. This option may be one of: cartesian, +# corexy, corexz, delta, rotary_delta, polar, winch, or none. This +# parameter must be specified. +max_velocity: 500 +# Maximum velocity (in mm/s) of the toolhead (relative to the +# print). This parameter must be specified. +max_accel: 3000 +# Maximum acceleration (in mm/s^2) of the toolhead (relative to the +# print). This parameter must be specified. +#max_accel_to_decel: +# A pseudo acceleration (in mm/s^2) controlling how fast the +# toolhead may go from acceleration to deceleration. It is used to +# reduce the top speed of short zig-zag moves (and thus reduce +# printer vibration from these moves). The default is half of +# max_accel. +#square_corner_velocity: 5.0 +# The maximum velocity (in mm/s) that the toolhead may travel a 90 +# degree corner at. A non-zero value can reduce changes in extruder +# flow rates by enabling instantaneous velocity changes of the +# toolhead during cornering. This value configures the internal +# centripetal velocity cornering algorithm; corners with angles +# larger than 90 degrees will have a higher cornering velocity while +# corners with angles less than 90 degrees will have a lower +# cornering velocity. If this is set to zero then the toolhead will +# decelerate to zero at each corner. The default is 5mm/s. +``` + +## [stepper] + +Stepper motor definitions. Different printer types (as specified by +the "kinematics" option in the [printer] config section) require +different names for the stepper (eg, `stepper_x` vs `stepper_a`). +Below are common stepper definitions. + +``` +[stepper_x] +step_pin: +# Step GPIO pin (triggered high). This parameter must be provided. +dir_pin: +# Direction GPIO pin (high indicates positive direction). This +# parameter must be provided. +enable_pin: +# Enable pin (default is enable high; use ! to indicate enable +# low). If this parameter is not provided then the stepper motor +# driver must always be enabled. +step_distance: +# Distance in mm that each step causes the axis to travel. This +# parameter must be provided. +endstop_pin: +# Endstop switch detection pin. This parameter must be provided for +# the X, Y, and Z steppers on cartesian style printers. +#position_min: 0 +# Minimum valid distance (in mm) the user may command the stepper to +# move to. The default is 0mm. +position_endstop: +# Location of the endstop (in mm). This parameter must be provided +# for the X, Y, and Z steppers on cartesian style printers. +position_max: +# Maximum valid distance (in mm) the user may command the stepper to +# move to. This parameter must be provided for the X, Y, and Z +# steppers on cartesian style printers. +#homing_speed: 5.0 +# Maximum velocity (in mm/s) of the stepper when homing. The default +# is 5mm/s. +#homing_retract_dist: 5.0 +# Distance to backoff (in mm) before homing a second time during +# homing. Set this to zero to disable the second home. The default +# is 5mm. +#homing_retract_speed: +# Speed to use on the retract move after homing in case this should +# be different from the homing speed, which is the default for this +# parameter +#second_homing_speed: +# Velocity (in mm/s) of the stepper when performing the second home. +# The default is homing_speed/2. +#homing_positive_dir: +# If true, homing will cause the stepper to move in a positive +# direction (away from zero); if false, home towards zero. It is +# better to use the default than to specify this parameter. The +# default is true if position_endstop is near position_max and false +# if near position_min. +``` + +## Cartesian Kinematics + +See +[example-cartesian.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-cartesian.cfg) +for an example cartesian kinematics config file. + +Only parameters specific to cartesian printers are described here - +see [common kinematic settings](#common-kinematic-settings) for +available parameters. + +``` +[printer] +kinematics: cartesian +max_z_velocity: +# This sets the maximum velocity (in mm/s) of movement along the z +# axis. This setting can be used to restrict the maximum speed of +# the z stepper motor. The default is to use max_velocity for +# max_z_velocity. +max_z_accel: +# This sets the maximum acceleration (in mm/s^2) of movement along +# the z axis. It limits the acceleration of the z stepper motor. The +# default is to use max_accel for max_z_accel. + +# The stepper_x section is used to describe the stepper controlling +# the X axis in a cartesian robot. +[stepper_x] + +# The stepper_y section is used to describe the stepper controlling +# the Y axis in a cartesian robot. +[stepper_y] + +# The stepper_z section is used to describe the stepper controlling +# the Z axis in a cartesian robot. +[stepper_z] +``` + +## Linear Delta Kinematics + +See +[example-delta.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-delta.cfg) +for an example linear delta kinematics config file. + +Only parameters specific to linear delta printers are described here - +see [common kinematic settings](#common-kinematic-settings) for +available parameters. + +``` +[printer] +kinematics: delta +max_z_velocity: +# For delta printers this limits the maximum velocity (in mm/s) of +# moves with z axis movement. This setting can be used to reduce the +# maximum speed of up/down moves (which require a higher step rate +# than other moves on a delta printer). The default is to use +# max_velocity for max_z_velocity. +#minimum_z_position: 0 +# The minimum Z position that the user may command the head to move +# to. The default is 0. +delta_radius: +# Radius (in mm) of the horizontal circle formed by the three linear +# axis towers. This parameter may also be calculated as: +# delta_radius = smooth_rod_offset - effector_offset - carriage_offset +# This parameter must be provided. +#print_radius: +# The radius (in mm) of valid toolhead XY coordinates. One may use +# this setting to customize the range checking of toolhead moves. If +# a large value is specified here then it may be possible to command +# the toolhead into a collision with a tower. The default is to use +# delta_radius for print_radius (which would normally prevent a +# tower collision). + +# The stepper_a section describes the stepper controlling the front +# left tower (at 210 degrees). This section also controls the homing +# parameters (homing_speed, homing_retract_dist) for all towers. +[stepper_a] +position_endstop: 297.05 +# Distance (in mm) between the nozzle and the bed when the nozzle is +# in the center of the build area and the endstop triggers. This +# parameter must be provided for stepper_a; for stepper_b and +# stepper_c this parameter defaults to the value specified for +# stepper_a. +arm_length: 333.0 +# Length (in mm) of the diagonal rod that connects this tower to the +# print head. This parameter must be provided for stepper_a; for +# stepper_b and stepper_c this parameter defaults to the value +# specified for stepper_a. +#angle: +# This option specifies the angle (in degrees) that the tower is +# at. The default is 210 for stepper_a, 330 for stepper_b, and 90 +# for stepper_c. + +# The stepper_b section describes the stepper controlling the front +# right tower (at 330 degrees). +[stepper_b] + +# The stepper_c section describes the stepper controlling the rear +# tower (at 90 degrees). +[stepper_c] + +# The delta_calibrate section enables a DELTA_CALIBRATE extended +# g-code command that can calibrate the tower endstop positions and +# angles. +[delta_calibrate] +radius: 50 +# Radius (in mm) of the area that may be probed. This is the radius +# of nozzle coordinates to be probed; if using an automatic probe +# with an XY offset then choose a radius small enough so that the +# probe always fits over the bed. This parameter must be provided. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +``` + +## CoreXY Kinematics + +See +[example-corexy.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-corexy.cfg) +for an example corexy (and h-bot) kinematics file. + +Only parameters specific to corexy printers are described here - see +[common kinematic settings](#common-kinematic-settings) for available +parameters. + +``` +[printer] +kinematics: corexy +max_z_velocity: +# This sets the maximum velocity (in mm/s) of movement along the z +# axis. This setting can be used to restrict the maximum speed of +# the z stepper motor. The default is to use max_velocity for +# max_z_velocity. +max_z_accel: +# This sets the maximum acceleration (in mm/s^2) of movement along +# the z axis. It limits the acceleration of the z stepper motor. The +# default is to use max_accel for max_z_accel. + +# The stepper_x section is used to describe the X axis as well as the +# stepper controlling the X+Y movement. +[stepper_x] + +# The stepper_y section is used to describe the Y axis as well as the +# stepper controlling the X-Y movement. +[stepper_y] + +# The stepper_z section is used to describe the stepper controlling +# the Z axis. +[stepper_z] +``` + +## CoreXZ Kinematics + +See +[example-corexz.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-corexz.cfg) +for an example corexz kinematics config file. + +Only parameters specific to corexz printers are described here - see +[common kinematic settings](#common-kinematic-settings) for available +parameters. + +``` +[printer] +kinematics: corexz +max_z_velocity: +# This sets the maximum velocity (in mm/s) of movement along the z +# axis. The default is to use max_velocity for max_z_velocity. +max_z_accel: +# This sets the maximum acceleration (in mm/s^2) of movement along +# the z axis. The default is to use max_accel for max_z_accel. + +# The stepper_x section is used to describe the X axis as well as the +# stepper controlling the X+Z movement. +[stepper_x] + +# The stepper_y section is used to describe the stepper controlling +# the Y axis. +[stepper_y] + +# The stepper_z section is used to describe the Z axis as well as the +# stepper controlling the X-Z movement. +[stepper_z] +``` + +## Polar Kinematics + +See +[example-polar.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-polar.cfg) +for an example polar kinematics config file. + +Only parameters specific to polar printers are described here - see +[common kinematic settings](#common-kinematic-settings) for available +parameters. + +POLAR KINEMATICS ARE A WORK IN PROGRESS. Moves around the `0,0` +position are known to not work properly. + +``` +[printer] +kinematics: polar + +# The stepper_bed section is used to describe the stepper controlling +# the bed. +[stepper_bed] +step_distance: 0.001963495 +# On a polar printer the step_distance is the amount each step pulse +# moves the bed in radians (for example, a 1.8 degree stepper with +# 16 micro-steps would be 2 * pi * (1.8 / 360) / 16 == 0.001963495). +# This parameter must be provided. +max_z_velocity: +# This sets the maximum velocity (in mm/s) of movement along the z +# axis. This setting can be used to restrict the maximum speed of +# the z stepper motor. The default is to use max_velocity for +# max_z_velocity. +max_z_accel: +# This sets the maximum acceleration (in mm/s^2) of movement along +# the z axis. It limits the acceleration of the z stepper motor. The +# default is to use max_accel for max_z_accel. + +# The stepper_arm section is used to describe the stepper controlling +# the carriage on the arm. +[stepper_arm] + +# The stepper_z section is used to describe the stepper controlling +# the Z axis. +[stepper_z] +``` + +## Rotary delta Kinematics + +See +[example-rotary-delta.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-rotary-delta.cfg) +for an example rotary delta kinematics config file. + +Only parameters specific to rotary delta printers are described here - +see [common kinematic settings](#common-kinematic-settings) for +available parameters. + +ROTARY DELTA KINEMATICS ARE A WORK IN PROGRESS. Homing moves may +timeout and some boundary checks are not implemented. + +``` +[printer] +kinematics: rotary_delta +max_z_velocity: 50 +# For delta printers this limits the maximum velocity (in mm/s) of +# moves with z axis movement. This setting can be used to reduce the +# maximum speed of up/down moves (which require a higher step rate +# than other moves on a delta printer). The default is to use +# max_velocity for max_z_velocity. +#minimum_z_position: 0 +# The minimum Z position that the user may command the head to move +# to. The default is 0. +shoulder_radius: 33.900 +# Radius (in mm) of the horizontal circle formed by the three +# shoulder joints, minus the radius of the circle formed by the +# effector joints. This parameter may also be calculated as: +# shoulder_radius = (delta_f - delta_e) / sqrt(12) +# This parameter must be provided. +shoulder_height: 412.900 +# Distance (in mm) of the shoulder joints from the bed, minus the +# effector toolhead height. This parameter must be provided. + +# The stepper_a section describes the stepper controlling the rear +# right arm (at 30 degrees). This section also controls the homing +# parameters (homing_speed, homing_retract_dist) for all arms. +[stepper_a] +step_distance: 0.001963495 +# On a rotary delta printer the step_distance is the amount each +# step pulse moves the upper arm in radians (for example, a directly +# connected 1.8 degree stepper with 16 micro-steps would be 2 * pi * +# (1.8 / 360) / 16 == 0.001963495). This parameter must be provided. +position_endstop: 252 +# Distance (in mm) between the nozzle and the bed when the nozzle is +# in the center of the build area and the endstop triggers. This +# parameter must be provided for stepper_a; for stepper_b and +# stepper_c this parameter defaults to the value specified for +# stepper_a. +upper_arm_length: 170.000 +# Length (in mm) of the arm connecting the "shoulder joint" to the +# "elbow joint". This parameter must be provided for stepper_a; for +# stepper_b and stepper_c this parameter defaults to the value +# specified for stepper_a. +lower_arm_length: 320.000 +# Length (in mm) of the arm connecting the "elbow joint" to the +# "effector joint". This parameter must be provided for stepper_a; +# for stepper_b and stepper_c this parameter defaults to the value +# specified for stepper_a. +#angle: +# This option specifies the angle (in degrees) that the arm is at. +# The default is 30 for stepper_a, 150 for stepper_b, and 270 for +# stepper_c. + +# The stepper_b section describes the stepper controlling the rear +# left arm (at 150 degrees). +[stepper_b] + +# The stepper_c section describes the stepper controlling the front +# arm (at 270 degrees). +[stepper_c] + +# The delta_calibrate section enables a DELTA_CALIBRATE extended +# g-code command that can calibrate the shoulder endstop positions. +[delta_calibrate] +radius: 50 +# Radius (in mm) of the area that may be probed. This is the radius +# of nozzle coordinates to be probed; if using an automatic probe +# with an XY offset then choose a radius small enough so that the +# probe always fits over the bed. This parameter must be provided. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +``` + +## Cable winch Kinematics + +See the +[example-winch.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-winch.cfg) +for an example cable winch kinematics config file. + +Only parameters specific to cable winch printers are described here - +see [common kinematic settings](#common-kinematic-settings) for +available parameters. + +CABLE WINCH SUPPORT IS EXPERIMENTAL. Homing is not implemented on +cable winch kinematics. In order to home the printer, manually send +movement commands until the toolhead is at 0,0,0 and then issue a +`G28` command. + +``` +[printer] +kinematics: winch + +# The stepper_a section describes the stepper connected to the first +# cable winch. A minimum of 3 and a maximum of 26 cable winches may be +# defined (stepper_a to stepper_z) though it is common to define 4. +[stepper_a] +step_distance: .01 +# The step_distance is the nominal distance (in mm) the toolhead +# moves towards the cable winch on each step pulse. This parameter +# must be provided. +anchor_x: 0 +anchor_y: -2000 +anchor_z: -100 +# The x, y, and z position of the cable winch in cartesian space. +# These parameters must be provided. +``` + +## None Kinematics + +It is possible to define a special "none" kinematics to disable +kinematic support in Klipper. This may be useful for controlling +devices that are not typical 3d-printers or for debugging purposes. + +``` +[printer] +kinematics: none +max_velocity: 1 +max_accel: 1 +# The max_velocity and max_accel parameters must be defined. The +# values are not used for "none" kinematics. +``` + +# Primary micro-controller support + +## [mcu] + +Configuration of the primary micro-controller. + +``` +[mcu] +serial: +# The serial port to connect to the MCU. If unsure (or if it +# changes) see the "Where's my serial port?" section of the FAQ. +# This parameter must be provided. +#baud: 250000 +# The baud rate to use. The default is 250000. +#pin_map: +# This option may be used to enable Arduino pin name aliases. The +# default is to not enable the aliases. +#restart_method: +# This controls the mechanism the host will use to reset the +# micro-controller. The choices are 'arduino', 'cheetah', 'rpi_usb', +# and 'command'. The 'arduino' method (toggle DTR) is common on +# Arduino boards and clones. The 'cheetah' method is a special +# method needed for some Fysetc Cheetah boards. The 'rpi_usb' method +# is useful on Raspberry Pi boards with micro-controllers powered +# over USB - it briefly disables power to all USB ports to +# accomplish a micro-controller reset. The 'command' method involves +# sending a Klipper command to the micro-controller so that it can +# reset itself. The default is 'arduino' if the micro-controller +# communicates over a serial port, 'command' otherwise. +``` + +# Common extruder and heated bed support + +## [extruder] + +The extruder section is used to describe both the stepper +controlling the printer extruder and the heater parameters for the +nozzle. + +``` +[extruder] +step_pin: +dir_pin: +enable_pin: +step_distance: +# See the "stepper" section for a description of the above parameters. +nozzle_diameter: 0.400 +# Diameter of the nozzle orifice (in mm). This parameter must be +# provided. +filament_diameter: 1.750 +# The nominal diameter of the raw filament (in mm) as it enters the +# extruder. This parameter must be provided. +#max_extrude_cross_section: +# Maximum area (in mm^2) of an extrusion cross section (eg, +# extrusion width multiplied by layer height). This setting prevents +# excessive amounts of extrusion during relatively small XY moves. +# If a move requests an extrusion rate that would exceed this value +# it will cause an error to be returned. The default is: 4.0 * +# nozzle_diameter^2 +#instantaneous_corner_velocity: 1.000 +# The maximum instantaneous velocity change (in mm/s) of the +# extruder during the junction of two moves. The default is 1mm/s. +#max_extrude_only_distance: 50.0 +# Maximum length (in mm of raw filament) that a retraction or +# extrude-only move may have. If a retraction or extrude-only move +# requests a distance greater than this value it will cause an error +# to be returned. The default is 50mm. +#max_extrude_only_velocity: +#max_extrude_only_accel: +# Maximum velocity (in mm/s) and acceleration (in mm/s^2) of the +# extruder motor for retractions and extrude-only moves. These +# settings do not have any impact on normal printing moves. If not +# specified then they are calculated to match the limit an XY +# printing move with a cross section of 4.0*nozzle_diameter^2 would +# have. +#pressure_advance: 0.0 +# The amount of raw filament to push into the extruder during +# extruder acceleration. An equal amount of filament is retracted +# during deceleration. It is measured in millimeters per +# millimeter/second. The default is 0, which disables pressure +# advance. +#pressure_advance_smooth_time: 0.040 +# A time range (in seconds) to use when calculating the average +# extruder velocity for pressure advance. A larger value results in +# smoother extruder movements. This parameter may not exceed 200ms. +# This setting only applies if pressure_advance is non-zero. The +# default is 0.040 (40 milliseconds). +# +# The remaining variables describe the extruder heater. +heater_pin: +# PWM output pin controlling the heater. This parameter must be +# provided. +#max_power: 1.0 +# The maximum power (expressed as a value from 0.0 to 1.0) that the +# heater_pin may be set to. The value 1.0 allows the pin to be set +# fully enabled for extended periods, while a value of 0.5 would +# allow the pin to be enabled for no more than half the time. This +# setting may be used to limit the total power output (over extended +# periods) to the heater. The default is 1.0. +sensor_type: EPCOS 100K B57560G104F +# Type of sensor - common thermistors are "EPCOS 100K B57560G104F", +# "ATC Semitec 104GT-2", "NTC 100K beta 3950", "Honeywell 100K +# 135-104LAG-J01", "NTC 100K MGB18-104F39050L32", "SliceEngineering +# 450", and "TDK NTCG104LH104JT1". See the "Heaters and temperature +# sensors" section for other sensors. This parameter must be +# provided. +sensor_pin: +# Analog input pin connected to the sensor. This parameter must be +# provided. +#pullup_resistor: 4700 +# The resistance (in ohms) of the pullup attached to the thermistor. +# This parameter is only valid when the sensor is a thermistor. The +# default is 4700 ohms. +#inline_resistor: 0 +# The resistance (in ohms) of an extra (not heat varying) resistor +# that is placed inline with the thermistor. It is rare to set this. +# This parameter is only valid when the sensor is a thermistor. The +# default is 0 ohms. +#smooth_time: 2.0 +# A time value (in seconds) over which temperature measurements will +# be smoothed to reduce the impact of measurement noise. The default +# is 2 seconds. +control: pid +# Control algorithm (either pid or watermark). This parameter must +# be provided. +pid_Kp: 22.2 +# Kp is the "proportional" constant for the pid. This parameter must +# be provided for PID heaters. +pid_Ki: 1.08 +# Ki is the "integral" constant for the pid. This parameter must be +# provided for PID heaters. +pid_Kd: 114 +# Kd is the "derivative" constant for the pid. This parameter must +# be provided for PID heaters. +#pid_integral_max: +# The maximum "windup" the integral term may accumulate. The default +# is to use the same value as max_power. +#max_delta: 2.0 +# On 'watermark' controlled heaters this is the number of degrees in +# Celsius above the target temperature before disabling the heater +# as well as the number of degrees below the target before +# re-enabling the heater. The default is 2 degrees Celsius. +#pwm_cycle_time: 0.100 +# Time in seconds for each software PWM cycle of the heater. It is +# not recommended to set this unless there is an electrical +# requirement to switch the heater faster than 10 times a second. +# The default is 0.100 seconds. +#min_extrude_temp: 170 +# The minimum temperature (in Celsius) at which extruder move +# commands may be issued. The default is 170 Celsius. +min_temp: 0 +max_temp: 210 +# The maximum range of valid temperatures (in Celsius) that the +# heater must remain within. This controls a safety feature +# implemented in the micro-controller code - should the measured +# temperature ever fall outside this range then the micro-controller +# will go into a shutdown state. This check can help detect some +# heater and sensor hardware failures. Set this range just wide +# enough so that reasonable temperatures do not result in an error. +# These parameters must be provided. +``` + +## [heater_bed] + +The heater_bed section describes a heated bed. It uses the same heater +settings described in the "extruder" section. + +``` +[heater_bed] +heater_pin: +sensor_type: +sensor_pin: +control: +min_temp: +max_temp: +# See the "extruder" section for a description of the above parameters. +``` + +# Bed level support + +## [bed_mesh] + +Mesh Bed Leveling. One may define a bed_mesh config section to enable +move transformations that offset the z axis based on a mesh generated +from probed points. When using a probe to home the z-axis, it is +recommended to define a safe_z_home section in printer.cfg to home +toward the center of the print area. + +Visual Examples: +``` + rectangular bed, probe_count = 3,3: + x---x---x (max_point) + | + x---x---x + | + (min_point) x---x---x + + round bed, round_probe_count = 5, bed_radius = r: + x (0,r) end + / + x---x---x + \ + (-r,0) x---x---x---x---x (r,0) + \ + x---x---x + / + x (0,-r) start +``` + +``` +[bed_mesh] +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +#mesh_radius: +# Defines the radius of the mesh to probe for round beds. Note that +# the radius is relative to the coordinate specified by the +# mesh_origin option. This parameter must be provided for round beds +# and omitted for rectangular beds. +#mesh_origin: +# Defines the center x,y coordinate of the mesh for round beds. This +# coordinate is relative to the probe's location. It may be useful +# to adjust the mesh_origin in an effort to maximize the size of the +# mesh radius. Default is 0,0. This parameter must be omitted for +# rectangular beds. +#mesh_min: +# Defines the minimum x,y coordinate of the mesh for rectangular +# beds. This coordinate is relative to the probe's location. This +# will be the first point probed, nearest to the origin. This +# parameter must be provided for rectangular beds. +#mesh_max: +# Defines the maximum x,y coordinate of the mesh for rectangular +# beds. Adheres to the same principle as mesh_min, however this will +# be the furthest point probed from the bed's origin. This parameter +# must be provided for rectangular beds. +#probe_count: 3,3 +# For rectangular beds, this is a comma separate pair of integer +# values (X,Y) defining the number of points to probe along each +# axis. A single value is also valid, in which case that value will +# be applied to both axes. Default is 3,3. +#round_probe_count: 5 +# For round beds, this integer value defines the maximum number of +# points to probe along each axis. This value must be an odd number. +# Default is 5. +#fade_start: 1.0 +# The gcode z position in which to start phasing out z-adjustment +# when fade is enabled. Default is 1.0. +#fade_end: 0.0 +# The gcode z position in which phasing out completes. When set to a +# value below fade_start, fade is disabled. It should be noted that +# fade may add unwanted scaling along the z-axis of a print. If a +# user wishes to enable fade, a value of 10.0 is recommended. +# Default is 0.0, which disables fade. +#fade_target: +# The z position in which fade should converge. When this value is +# set to a non-zero value it must be within the range of z-values in +# the mesh. Users that wish to converge to the z homing position +# should set this to 0. Default is the average z value of the mesh. +#split_delta_z: .025 +# The amount of Z difference (in mm) along a move that will trigger +# a split. Default is .025. +#move_check_distance: 5.0 +# The distance (in mm) along a move to check for split_delta_z. +# This is also the minimum length that a move can be split. Default +# is 5.0. +#mesh_pps: 2,2 +# A comma separated pair of integers (X,Y) defining the number of +# points per segment to interpolate in the mesh along each axis. A +# "segment" can be defined as the space between each probed point. +# The user may enter a single value which will be applied to both +# axes. Default is 2,2. +#algorithm: lagrange +# The interpolation algorithm to use. May be either "lagrange" or +# "bicubic". This option will not affect 3x3 grids, which are forced +# to use lagrange sampling. Default is lagrange. +#bicubic_tension: .2 +# When using the bicubic algorithm the tension parameter above may +# be applied to change the amount of slope interpolated. Larger +# numbers will increase the amount of slope, which results in more +# curvature in the mesh. Default is .2. +#relative_reference_index: +# A point index in the mesh to reference all z values to. Enabling +# this parameter produces a mesh relative to the probed z position +# at the provided index. +``` + +## [bed_tilt] + +Bed tilt compensation. One may define a bed_tilt config section to +enable move transformations that account for a tilted bed. Note that +bed_mesh and bed_tilt are incompatible; both cannot be defined. + +``` +[bed_tilt] +#x_adjust: 0 +# The amount to add to each move's Z height for each mm on the X +# axis. The default is 0. +#y_adjust: 0 +# The amount to add to each move's Z height for each mm on the Y +# axis. The default is 0. +#z_adjust: 0 +# The amount to add to the Z height when the nozzle is nominally at +# 0,0. The default is 0. +# The remaining parameters control a BED_TILT_CALIBRATE extended +# g-code command that may be used to calibrate appropriate x and y +# adjustment parameters. +#points: +# A list of X,Y coordinates (one per line; subsequent lines +# indented) that should be probed during a BED_TILT_CALIBRATE +# command. Specify coordinates of the nozzle and be sure the probe +# is above the bed at the given nozzle coordinates. The default is +# to not enable the command. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +``` + +## [bed_screws] + +Tool to help adjust bed leveling screws. One may define a [bed_screws] +config section to enable a BED_SCREWS_ADJUST g-code command. + +``` +[bed_screws] +#screw1: 100,100 +# The X,Y coordinate of the first bed leveling screw. This is a +# position to command the nozzle to that is directly above the bed +# screw (or as close as possible while still being above the bed). +# This parameter must be provided. +#screw1_name: front screw +# An arbitrary name for the given screw. This name is displayed when +# the helper script runs. The default is to use a name based upon +# the screw XY location. +#screw1_fine_adjust: +# An X,Y coordinate to command the nozzle to so that one can fine +# tune the bed leveling screw. The default is to not perform fine +# adjustments on the bed screw. +#screw2: +#screw2_name: +#screw2_fine_adjust: +#... +# Additional bed leveling screws. At least three screws must be +# defined. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# when moving from one screw location to the next. The default is 5. +#probe_height: 0 +# The height of the probe (in mm) after adjusting for the thermal +# expansion of bed and nozzle. The default is zero. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#probe_speed: 5 +# The speed (in mm/s) when moving from a horizontal_move_z position +# to a probe_height position. The default is 5. +``` + +## [screws_tilt_adjust] + +Tool to help adjust bed screws tilt using Z probe. One may define a +screws_tilt_adjust config section to enable a SCREWS_TILT_CALCULATE +g-code command. + +``` +[screws_tilt_adjust] +#screw1: 100,100 +# The X,Y coordinate of the first bed leveling screw. This is a +# position to command the nozzle to that is directly above the bed +# screw (or as close as possible while still being above the bed). +# This is the base screw used in calculations. This parameter must +# be provided. +#screw1_name: front screw +# An arbitrary name for the given screw. This name is displayed when +# the helper script runs. The default is to use a name based upon +# the screw XY location. +#screw2: +#screw2_name: +#... +# Additional bed leveling screws. At least two screws must be +# defined. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +#screw_thread: CW-M3 +# The type of screw used for bed level, M3, M4 or M5 and the +# direction of the knob used to level the bed, clockwise decrease +# counter-clockwise decrease. +# Accepted values: CW-M3, CCW-M3, CW-M4, CCW-M4, CW-M5, CCW-M5. +# Default value is CW-M3, most printers use an M3 screw and +# turning the knob clockwise decrease distance. +``` + +## [z_tilt] + +Multiple Z stepper tilt adjustment. This feature enables independent +adjustment of multiple z steppers (see the "stepper_z1" section) to +adjust for tilt. If this section is present then a Z_TILT_ADJUST +extended G-Code command becomes available. + +``` +[z_tilt] +#z_positions: +# A list of X,Y coordinates (one per line; subsequent lines +# indented) describing the location of each bed "pivot point". The +# "pivot point" is the point where the bed attaches to the given Z +# stepper. It is described using nozzle coordinates (the XY position +# of the nozzle if it could move directly above the point). The +# first entry corresponds to stepper_z, the second to stepper_z1, +# the third to stepper_z2, etc. This parameter must be provided. +#points: +# A list of X,Y coordinates (one per line; subsequent lines +# indented) that should be probed during a Z_TILT_ADJUST command. +# Specify coordinates of the nozzle and be sure the probe is above +# the bed at the given nozzle coordinates. This parameter must be +# provided. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +#retries: 0 +# Number of times to retry if the probed points aren't within +# tolerance. +#retry_tolerance: 0 +# If retries are enabled then retry if largest and smallest probed +# points differ more than retry_tolerance. Note the smallest unit of +# change here would be a single step. However if you are probing +# more points than steppers then you will likely have a fixed +# minimum value for the range of probed points which you can learn +# by observing command output. +``` + +Moving gantry leveling using 4 independently controlled Z motors. +Corrects hyperbolic parabola effects (potato chip) on moving gantry +which is more flexible. +WARNING: Using this on a moving bed may lead to undesirable results. +If this section is present then a QUAD_GANTRY_LEVEL extended G-Code +command becomes available. This routine assumes the following Z motor +configuration: +``` + ---------------- + |Z1 Z2| + | --------- | + | | | | + | | | | + | x-------- | + |Z Z3| + ---------------- +``` +Where x is the (0,0) point on the bed + +``` +[quad_gantry_level] +#gantry_corners: +# A newline separated list of X,Y coordinates describing the two +# opposing corners of the gantry. The first entry corresponds to Z, +# the second to Z2. This parameter must be provided. +#points: +# A newline separated list of four X,Y points that should be probed +# during a QUAD_GANTRY_LEVEL command. Order of the locations is +# important, and should correspond to Z, Z1, Z2, and Z3 location in +# order. This parameter must be provided. For maximum accuracy, +# ensure your probe offsets are configured. +#speed: 50 +# The speed (in mm/s) of non-probing moves during the calibration. +# The default is 50. +#horizontal_move_z: 5 +# The height (in mm) that the head should be commanded to move to +# just prior to starting a probe operation. The default is 5. +#max_adjust: 4 +# Safety limit if an adjustment greater than this value is requested +# quad_gantry_level will abort. +#retries: 0 +# Number of times to retry if the probed points aren't within +# tolerance. +#retry_tolerance: 0 +# If retries are enabled then retry if largest and smallest probed +# points differ more than retry_tolerance. +``` + +## [skew_correction] + +Printer Skew Correction. It is possible to use software to correct +printer skew across 3 planes, xy, xz, yz. This is done by printing a +calibration model along a plane and measuring three lengths. Due to +the nature of skew correction these lengths are set via gcode. See +[skew correction](skew_correction.md) and [G-Codes](G-Codes.md) for +details. + +``` +[skew_correction] +``` + +# Customized homing + +## [safe_z_home] + +Safe Z homing. One may use this mechanism to home the Z axis at a +specific XY coordinate. This is useful if the toolhead, for example +has to move to the center of the bed before Z can be homed. + +``` +[safe_z_home] +home_xy_position: +# A X,Y coordinate (e.g. 100,100) where the Z homing should be +# performed. This parameter must be provided. +#speed: 50.0 +# Speed at which the toolhead is moved to the safe Z home +# coordinate. The default is 50 mm/s +#z_hop: +# Distance (in mm) to lift the Z axis prior to homing. This is +# applied to any homing command, even if it doesn't home the Z axis. +# If the Z axis is already homed and the current Z position is less +# than z_hop, then this will lift the head to a height of z_hop. If +# the Z axis is not already homed, then prior to any XY homing +# movement the Z axis boundary checks are disabled and the head is +# lifted by z_hop. If z_hop is specified, be sure to home the Z +# immediately after any XY home requests so that the Z boundary +# checks are accurate. The default is to not implement Z hop. +#z_hop_speed: 20.0 +# Speed (in mm/s) at which the Z axis is lifted prior to homing. The +# default is 20mm/s. +#move_to_previous: False +# When set to True, xy are reset to their previous positions after z +# homing. The default is False. +``` + +## [homing_override] + +Homing override. One may use this mechanism to run a series of g-code +commands in place of a G28 found in the normal g-code input. This may +be useful on printers that require a specific procedure to home the +machine. + +``` +[homing_override] +gcode: +# A list of G-Code commands to execute in place of G28 commands +# found in the normal g-code input. See docs/Command_Templates.md +# for G-Code format. If a G28 is contained in this list of commands +# then it will invoke the normal homing procedure for the printer. +# The commands listed here must home all axes. This parameter must +# be provided. +#axes: xyz +# The axes to override. For example, if this is set to "z" then the +# override script will only be run when the z axis is homed (eg, via +# a "G28" or "G28 Z0" command). Note, the override script should +# still home all axes. The default is "xyz" which causes the +# override script to be run in place of all G28 commands. +#set_position_x: +#set_position_y: +#set_position_z: +# If specified, the printer will assume the axis is at the specified +# position prior to running the above g-code commands. Setting this +# disables homing checks for that axis. This may be useful if the +# head must move prior to invoking the normal G28 mechanism for an +# axis. The default is to not force a position for an axis. +``` + +## [endstop_phase] + +Stepper phase adjusted endstops. To use this feature, define a config +section with an "endstop_phase" prefix followed by the name of the +corresponding stepper config section (for example, +"[endstop_phase stepper_z]"). This feature can improve the accuracy of +endstop switches. Add a bare "[endstop_phase]" declaration to enable +the ENDSTOP_PHASE_CALIBRATE command. + +``` +[endstop_phase stepper_z] +#phases: +# This specifies the number of phases of the given stepper motor +# driver (which is the number of micro-steps multiplied by four). +# This setting is automatically determined if one uses a TMC driver +# with run-time configuration. Otherwise, this parameter must be +# provided. +#endstop_accuracy: 0.200 +# Sets the expected accuracy (in mm) of the endstop. This represents +# the maximum error distance the endstop may trigger (eg, if an +# endstop may occasionally trigger 100um early or up to 100um late +# then set this to 0.200 for 200um). The default is +# phases*step_distance. +#endstop_phase: +# This specifies the phase of the stepper motor driver to expect +# when hitting the endstop. Only set this value if one is sure the +# stepper motor driver is reset every time the mcu is reset. If this +# is not set, then the stepper phase will be detected on the first +# home and that phase will be used on all subsequent homes. +#endstop_align_zero: False +# If true then the position_endstop of the axis will effectively be +# modified so that the zero position for the axis occurs at a full +# step on the stepper motor. (If used on the Z axis and the print +# layer height is a multiple of a full step distance then every +# layer will occur on a full step.) The default is False. +``` + +# G-Code macros and events + +## [gcode_macro] + +G-Code macros (one may define any number of sections with a +"gcode_macro" prefix). + +``` +[gcode_macro my_cmd] +#gcode: +# A list of G-Code commands to execute in place of "my_cmd". See +# docs/Command_Templates.md for G-Code format. This parameter must +# be provided. +#default_parameter_: +# One may define any number of options with a "default_parameter_" +# prefix. Use this to define default values for g-code parameters. +# For example, if one were to define the macro MY_DELAY with gcode +# "G4 P{DELAY}" along with "default_parameter_DELAY = 50" then the +# command "MY_DELAY" would evaluate to "G4 P50". To override the +# default parameter when calling the command then using +# "MY_DELAY DELAY=30" would evaluate to "G4 P30". The default is +# to require that all parameters used in the gcode script be +# present in the command invoking the macro. +#variable_: +# One may specify any number of options with a "variable_" prefix. +# The given variable name will be assigned the given value (parsed +# as a Python literal) and will be available during macro expansion. +# For example, a config with "variable_fan_speed = 75" might have +# gcode commands containing "M106 S{ fan_speed * 255 }". Variables +# can be changed at run-time using the SET_GCODE_VARIABLE command +# (see docs/Command_Templates.md for details). Variable names may +# not use upper case characters. +#rename_existing: +# This option will cause the macro to override an existing G-Code +# command and provide the previous definition of the command via the +# name provided here. This can be used to override builtin G-Code +# commands. Care should be taken when overriding commands as it can +# cause complex and unexpected results. The default is to not +# override an existing G-Code command. +``` + +## [delayed_gcode] + +Execute a gcode on a set delay. + +``` +[delayed_gcode my_delayed_gcode] +gcode: +# A list of G-Code commands to execute when the delay duration has +# elapsed. G-Code templates are supported. This parameter must be +# provided. +#initial_duration: 0.0 +# The duration of the initial delay (in seconds). If set to a +# non-zero value the delayed_gcode will execute the specified number +# of seconds after the printer enters the "ready" state. This can be +# useful for initialization procedures or a repeating delayed_gcode. +# If set to 0 the delayed_gcode will not execute on startup. +# Default is 0. +``` + +## [idle_timeout] + +Idle timeout. An idle timeout is automatically enabled - add an +explicit idle_timeout config section to change the default settings. + +``` +[idle_timeout] +#gcode: +# A list of G-Code commands to execute on an idle timeout. See +# docs/Command_Templates.md for G-Code format. The default is to run +# "TURN_OFF_HEATERS" and "M84". +#timeout: 600 +# Idle time (in seconds) to wait before running the above G-Code +# commands. The default is 600 seconds. +``` + +# Optional G-Code features + +## [virtual_sdcard] + +A virtual sdcard may be useful if the host machine is not fast enough +to run OctoPrint well. It allows the Klipper host software to directly +print gcode files stored in a directory on the host using standard +sdcard G-Code commands (eg, M24). + +``` +[virtual_sdcard] +path: ~/.octoprint/uploads/ +# The path of the local directory on the host machine to look for +# g-code files. This is a read-only directory (sdcard file writes +# are not supported). One may point this to OctoPrint's upload +# directory (generally ~/.octoprint/uploads/ ). This parameter must +# be provided. +``` + +## [force_move] + +Support manually moving stepper motors for diagnostic purposes. Note, +using this feature may place the printer in an invalid state - see +[G-Codes](G-Codes.md) for important details. + +``` +[force_move] +#enable_force_move: False +# Set to true to enable FORCE_MOVE and SET_KINEMATIC_POSITION +# extended G-Code commands. The default is false. +``` + +## [pause_resume] + +Pause/Resume functionality with support of position capture and +restore. + +``` +[pause_resume] +#recover_velocity: 50. +# When capture/restore is enabled, the speed at which to return to +# the captured position (in mm/s). Default is 50.0 mm/s. +``` + +## [firmware_retraction] + +Firmware filament retraction. This enables G10 (retract) and G11 +(unretract) GCODE commands issued by many slicers. The parameters +below provide startup defaults, although the values can be adjusted +via the SET_RETRACTION command, allowing per-filament settings and +runtime tuning. + +``` +[firmware_retraction] +#retract_length: 0 +# The length of filament (in mm) to retract when G10 is activated, +# and to unretract when G11 is activated (but see +# unretract_extra_length below). The default is 0 mm. +#retract_speed: 20 +# The speed of retraction, in mm/s. The default is 20 mm/s. +#unretract_extra_length: 0 +# The length (in mm) of *additional* filament to add when +# unretracting. +#unretract_speed: 10 +# The speed of unretraction, in mm/s. The default is 10 mm/s. +``` + +## [gcode_arcs] + +Support for gcode arc (G2/G3) commands. + +``` +[gcode_arcs] +#resolution: 1.0 +# An arc will be split into segments. Each segment's length will +# equal the resolution in mm set above. Lower values will produce a +# finer arc, but also more work for your machine. Arcs smaller than +# the configured value will become straight lines. The default is +# 1mm. +``` + +## [respond] + +Enable the "M118" and "RESPOND" extended commands. + +``` +[respond] +#default_type: echo +# Sets the default prefix of the "M118" and "RESPOND" output to one +# of the following: +# echo: "echo: " (This is the default) +# command: "// " +# error: "!! " +#default_prefix: echo: +# Directly sets the default prefix. If present, this value will +# override the "default_type". +``` + +# Resonance compensation + +## [input_shaper] + +Enables input shaping. + +``` +[input_shaper] +#shaper_freq_x: 0 +# A frequency (in Hz) of the input shaper for X axis. This is +# usually a resonance frequency of X axis that the input shaper +# should suppress. For more complex shapers, like 2- and 3-hump EI +# input shapers, this parameter can be set from different +# considerations. The default value is 0, which disables input +# shaping for X axis. +#shaper_freq_y: 0 +# A frequency (in Hz) of the input shaper for Y axis. This is +# usually a resonance frequency of Y axis that the input shaper +# should suppress. For more complex shapers, like 2- and 3-hump EI +# input shapers, this parameter can be set from different +# considerations. The default value is 0, which disables input +# shaping for Y axis. +#shaper_type: mzv +# A type of the input shaper to use for both X and Y axes. Supported +# shapers are zv, mzv, zvd, ei, 2hump_ei, and 3hump_ei. The default +# is mzv input shaper. +#shaper_type_x: +#shaper_type_y: +# If shaper_type is not set, these two parameters can be used to +# configure different input shapers for X and Y axes. The same +# values are supported as for shaper_type parameter. +#damping_ratio_x: 0.1 +#damping_ratio_y: 0.1 +# Damping ratios of vibrations of X and Y axes used by input shapers +# to improve vibration suppression. Should not be changed without +# some proper measurements, e.g. with an accelerometer. Default +# value is 0.1 which is a good all-round value for most printers. +``` + +## [adxl345] + +Support for ADXL345 accelerometers. This support allows one to query +accelerometer measurements from the sensor. This enables an +ACCELEROMETER_MEASURE command (see [G-Codes](G-Codes.md) for more +information). The default chip name is "default", but one may specify +an explicit name (eg, [adxl345 my_chip_name]). + +``` +[adxl345] +cs_pin: +# The SPI enable pin for the sensor. This parameter must be +# provided. +#spi_speed: 5000000 +# The SPI speed (in hz) to use when communicating with the chip. +# The default is 5000000. +#spi_bus: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +#axes_map: x,y,z +# The accelerometer axis for each of the printer's x, y, and z axes. +# This may be useful if the accelerometer is mounted in an +# orientation that does not match the printer orientation. For +# example, one could set this to "y,x,z" to swap the x and y axes. +# It is also possible to negate an axis if the accelerometer +# direction is reversed (eg, "x,z,-y"). The default is "x,y,z". +#rate: 3200 +# Output data rate for ADXL345. ADXL345 supports the following data +# rates: 3200, 1600, 800, 400, 200, 100, 50, and 25. Note that it is +# not recommended to change this rate from the default 3200, and +# rates below 800 will considerably affect the quality of resonance +# measurements. +``` + +## [resonance_tester] + +Support for resonance testing and automatic input shaper calibration. +In order to use most of the functionality of this module, additional +software dependencies must be installed; refer to +[Measuring Resonances](Measuring_Resonances.md) for more information. + +``` +[resonance_tester] +#probe_points: +# A list of X,Y,Z coordinates of points (one point per line) to test +# resonances at. At least one point is required. Make sure that all +# points with some safety margin in XY plane (~a few centimeters) +# are reachable by the toolhead. +#accel_chip: +# A name of the accelerometer chip to use for measurements. If +# adxl345 chip was defined without an explicit name, this parameter +# can simply reference it as "accel_chip: adxl345", otherwise an +# explicit name must be supplied as well, e.g. "accel_chip: adxl345 +# my_chip_name". Either this, or the next two parameters must be +# set. +#accel_chip_x: +#accel_chip_y: +# Names of the accelerometer chips to use for measurements for each +# of the axis. Can be useful, for instance, on bed slinger printer, +# if two separate accelerometers are mounted on the bed (for Y axis) +# and on the toolhead (for X axis). These parameters have the same +# format as 'accel_chip' parameter. Only 'accel_chip' or these two +# parameters must be provided. +#min_freq: 5 +# Minimum frequency to test for resonances. The default is 5 Hz. +#max_freq: 120 +# Maximum frequency to test for resonances. The default is 120 Hz. +#accel_per_hz: 75 +# This parameter is used to determine which acceleration to use to +# test a specific frequency: accel = accel_per_hz * freq. Higher the +# value, the higher is the energy of the oscillations. Can be set to +# a lower than the default value if the resonances get too strong on +# the printer. However, lower values make measurements of +# high-frequency resonances less precise. The default value is 75 +# (mm/sec). +#hz_per_sec: 1 +# Determines the speed of the test. When testing all frequencies in +# range [min_freq, max_freq], each second the frequency increases by +# hz_per_sec. Small values make the test slow, and the large values +# will decrease the precision of the test. The default value is 1.0 +# (Hz/sec == sec^-2). +``` + +# Config file helpers + +## [board_pins] + +Board pin aliases. One may define aliases for the pins on a +micro-controller. (If a micro-controller name is omitted in the +board_pins config section name then it defaults to "mcu".) + +``` +[board_pins mcu] +aliases: +# A comma separated list of "name=value" aliases to create for the +# given micro-controller. For example, "EXP1_1=PE6" would create an +# "EXP1_1" alias for the "PE6" pin. However, if "value" is enclosed +# in "<>" then "name" is created as a reserved pin (for example, +# "EXP1_9=" would reserve "EXP1_9"). This parameter must be +# provided. +``` + +## [include] + +Include file support. One may include additional config file from the +main printer config file. Wildcards may also be used (eg, +"configs/*.cfg"). + +``` +[include my_other_config.cfg] +``` + +# Bed probing hardware + +## [probe] + +Z height probe. One may define this section to enable Z height probing +hardware. When this section is enabled, PROBE and QUERY_PROBE extended +g-code commands become available. The probe section also creates a +virtual "probe:z_virtual_endstop" pin. One may set the stepper_z +endstop_pin to this virtual pin on cartesian style printers that use +the probe in place of a z endstop. If using "probe:z_virtual_endstop" +then do not define a position_endstop in the stepper_z config section. + +``` +[probe] +pin: +# Probe detection pin. This parameter must be provided. +#x_offset: 0.0 +# The distance (in mm) between the probe and the nozzle along the +# x-axis. The default is 0. +#y_offset: 0.0 +# The distance (in mm) between the probe and the nozzle along the +# y-axis. The default is 0. +z_offset: +# The distance (in mm) between the bed and the nozzle when the probe +# triggers. This parameter must be provided. +#speed: 5.0 +# Speed (in mm/s) of the Z axis when probing. The default is 5mm/s. +#samples: 1 +# The number of times to probe each point. The probed z-values will +# be averaged. The default is to probe 1 time. +#sample_retract_dist: 2.0 +# The distance (in mm) to lift the toolhead between each sample (if +# sampling more than once). The default is 2mm. +#lift_speed: 5.0 +# Speed (in mm/s) of the Z axis when lifting the probe between +# samples. The default is to use the same value as the 'speed' +# parameter. +#samples_result: average +# The calculation method when sampling more than once - either +# "median" or "average". The default is average. +#samples_tolerance: 0.100 +# The maximum Z distance (in mm) that a sample may differ from other +# samples. If this tolerance is exceeded then either an error is +# reported or the attempt is restarted (see +# samples_tolerance_retries). The default is 0.100mm. +#samples_tolerance_retries: 0 +# The number of times to retry if a sample is found that exceeds +# samples_tolerance. On a retry, all current samples are discarded +# and the probe attempt is restarted. If a valid set of samples are +# not obtained in the given number of retries then an error is +# reported. The default is zero which causes an error to be reported +# on the first sample that exceeds samples_tolerance. +#activate_gcode: +# A list of G-Code commands to execute prior to each probe attempt. +# See docs/Command_Templates.md for G-Code format. This may be +# useful if the probe needs to be activated in some way. Do not +# issue any commands here that move the toolhead (eg, G1). The +# default is to not run any special G-Code commands on activation. +#deactivate_gcode: +# A list of G-Code commands to execute after each probe attempt +# completes. See docs/Command_Templates.md for G-Code format. Do not +# issue any commands here that move the toolhead. The default is to +# not run any special G-Code commands on deactivation. +``` + +## [bltouch] + +BLTouch probe. One may define this section (instead of a probe +section) to enable a BLTouch probe. See [BL-Touch guide](BLTouch.md) +for further information on configuring a BLTouch. A virtual +"probe:z_virtual_endstop" pin is also created (see the "probe" section +for the details). + +``` +[bltouch] +sensor_pin: +# Pin connected to the BLTouch sensor pin. This parameter must be +# provided. +control_pin: +# Pin connected to the BLTouch control pin. This parameter must be +# provided. +#pin_move_time: 0.680 +# The amount of time (in seconds) to wait for the BLTouch pin to +# move up or down. The default is 0.680 seconds. +#stow_on_each_sample: True +# This determines if Klipper should command the pin to move up +# between each probe attempt when performing a multiple probe +# sequence. Read the directions in docs/BLTouch.md before setting +# this to False. The default is True. +#probe_with_touch_mode: False +# If this is set to True then Klipper will probe with the device in +# "touch_mode". The default is False (probing in "pin_down" mode). +#pin_up_reports_not_triggered: True +# Set if the BLTouch consistently reports the probe in a "not +# triggered" state after a successful "pin_up" command. This should +# be True for all genuine BLTouch devices. Read the directions in +# docs/BLTouch.md before setting this to False. The default is True. +#pin_up_touch_mode_reports_triggered: True +# Set if the BLTouch consistently reports a "triggered" state after +# the commands "pin_up" followed by "touch_mode". This should be +# True for all genuine BLTouch devices. Read the directions in +# docs/BLTouch.md before setting this to False. The default is True. +#set_output_mode: +# Request a specific sensor pin output mode on the BLTouch V3.0 (and +# later). This setting should not be used on other types of probes. +# Set to "5V" to request a sensor pin output of 5 Volts (only use if +# the controller board needs 5V mode and is 5V tolerant on its input +# signal line). Set to "OD" to request the sensor pin output use +# open drain mode. The default is to not request an output mode. +#x_offset: +#y_offset: +#z_offset: +#speed: +#samples: +#sample_retract_dist: +#samples_result: +#samples_tolerance: +#samples_tolerance_retries: +# See the "probe" section for information on these parameters. +``` + +# Additional micro-controllers + +## [mcu my_extra_mcu] + +Additional micro-controllers (one may define any number of sections +with an "mcu" prefix). Additional micro-controllers introduce +additional pins that may be configured as heaters, steppers, fans, +etc.. For example, if an "[mcu extra_mcu]" section is introduced, then +pins such as "extra_mcu:ar9" may then be used elsewhere in the config +(where "ar9" is a hardware pin name or alias name on the given mcu). + +``` +[mcu my_extra_mcu] +# See the "mcu" section for configuration parameters. +``` + +# Additional stepper motors and extruders + +## [stepper_z1] + +Multi-stepper axes. On a cartesian style printer, the stepper +controlling a given axis may have additional config blocks defining +steppers that should be stepped in concert with the primary stepper. +One may define any number of sections with a numeric suffix starting +at 1 (for example, "stepper_z1", "stepper_z2", etc.). + +``` +[stepper_z1] +#step_pin: +#dir_pin: +#enable_pin: +#step_distance: +# See the "stepper" section for the definition of the above parameters. +#endstop_pin: +# If an endstop_pin is defined for the additional stepper then the +# stepper will home until the endstop is triggered. Otherwise, the +# stepper will home until the endstop on the primary stepper for the +# axis is triggered. +``` + +## [extruder1] + +In a multi-extruder printer add an additional extruder section for +each additional extruder. The additional extruder sections should be +named "extruder1", "extruder2", "extruder3", and so on. See the +"extruder" section for a description of available parameters. + +``` +[extruder1] +#step_pin: +#dir_pin: +#... +# See the "extruder" section for available stepper and heater +# parameters. +#shared_heater: +# If this extruder uses the same heater already defined for another +# extruder then place the name of that extruder here. For example, +# should extruder3 and extruder4 share a heater then the extruder3 +# config section should define the heater and the extruder4 section +# should specify "shared_heater: extruder3". The default is to not +# reuse an existing heater. +``` + +## [dual_carriage] + +Support for cartesian printers with dual carriages on a single +axis. The active carriage is set via the SET_DUAL_CARRIAGE extended +g-code command. The "SET_DUAL_CARRIAGE CARRIAGE=1" command will +activate the carriage defined in this section (CARRIAGE=0 will return +activation to the primary carriage). Dual carriage support is +typically combined with extra extruders - the SET_DUAL_CARRIAGE +command is often called at the same time as the ACTIVATE_EXTRUDER +command. Be sure to park the carriages during deactivation. + +``` +[dual_carriage] +axis: +# The axis this extra carriage is on (either x or y). This parameter +# must be provided. +#step_pin: +#dir_pin: +#enable_pin: +#step_distance: +#endstop_pin: +#position_endstop: +#position_min: +#position_max: +# See the "stepper" section for the definition of the above parameters. +``` + +## [extruder_stepper] + +Support for additional steppers synchronized to the movement of an +extruder (one may define any number of sections with an +"extruder_stepper" prefix). + +``` +[extruder_stepper my_extra_stepper] +#extruder: extruder +# The extruder this stepper is synchronized to. The default is +# "extruder". +#step_pin: +#dir_pin: +#enable_pin: +#step_distance: +# See the "stepper" section for the definition of the above +# parameters. +``` + +## [manual_stepper] + +Manual steppers (one may define any number of sections with a +"manual_stepper" prefix). These are steppers that are controlled by +the MANUAL_STEPPER g-code command. For example: "MANUAL_STEPPER +STEPPER=my_stepper MOVE=10 SPEED=5". See [G-Codes](G-Codes.md) file +for a description of the MANUAL_STEPPER command. The steppers are not +connected to the normal printer kinematics. + +``` +[manual_stepper my_stepper] +#step_pin: +#dir_pin: +#enable_pin: +#step_distance: +# See the "stepper" section for a description of these parameters. +#velocity: +# Set the default velocity (in mm/s) for the stepper. This value +# will be used if a MANUAL_STEPPER command does not specify a SPEED +# parameter. The default is 5mm/s. +#accel: +# Set the default acceleration (in mm/s^2) for the stepper. An +# acceleration of zero will result in no acceleration. This value +# will be used if a MANUAL_STEPPER command does not specify an ACCEL +# parameter. The default is zero. +#endstop_pin: +# Endstop switch detection pin. If specified, then one may perform +# "homing moves" by adding a STOP_ON_ENDSTOP parameter to +# MANUAL_STEPPER movement commands. +``` + +# Heaters and temperature sensors + +## [verify_heater] + +Heater and temperature sensor verification. Heater verification is +automatically enabled for each heater that is configured on the +printer. Use verify_heater sections to change the default settings. + +``` +[verify_heater heater_config_name] +#max_error: 120 +# The maximum "cumulative temperature error" before raising an +# error. Smaller values result in stricter checking and larger +# values allow for more time before an error is reported. +# Specifically, the temperature is inspected once a second and if it +# is close to the target temperature then an internal "error +# counter" is reset; otherwise, if the temperature is below the +# target range then the counter is increased by the amount the +# reported temperature differs from that range. Should the counter +# exceed this "max_error" then an error is raised. The default is +# 120. +#check_gain_time: +# This controls heater verification during initial heating. Smaller +# values result in stricter checking and larger values allow for +# more time before an error is reported. Specifically, during +# initial heating, as long as the heater increases in temperature +# within this time frame (specified in seconds) then the internal +# "error counter" is reset. The default is 20 seconds for extruders +# and 60 seconds for heater_bed. +#hysteresis: 5 +# The maximum temperature difference (in Celsius) to a target +# temperature that is considered in range of the target. This +# controls the max_error range check. It is rare to customize this +# value. The default is 5. +#heating_gain: 2 +# The minimum temperature (in Celsius) that the heater must increase +# by during the check_gain_time check. It is rare to customize this +# value. The default is 2. +``` + +## [homing_heaters] + +Tool to disable heaters when homing or probing an axis. + +``` +[homing_heaters] +#steppers: +# A comma separated list of steppers that should cause heaters to be +# disabled. The default is to disable heaters for any homing/probing +# move. +# Typical example: stepper_z +#heaters: +# A comma separated list of heaters to disable during homing/probing +# moves. The default is to disable all heaters. +# Typical example: extruder, heater_bed +``` + +## MAXxxxxx temperature sensors + +MAXxxxxx serial peripheral interface (SPI) temperature based +sensors. The following parameters are available in heater sections +that use one of these sensor types. + +``` +#[extruder] +# See the "extruder" section for a description of heater parameters. +# The parameters below describe sensor parameters. +#sensor_type: +# One of "MAX6675", "MAX31855", "MAX31856", or "MAX31865". +#spi_speed: 4000000 +# The SPI speed (in hz) to use when communicating with the chip. +# The default is 4000000. +#spi_bus: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +#sensor_pin: +# The chip select line for the sensor chip. This parameter must be +# provided. +#tc_type: K +#tc_use_50Hz_filter: False +#tc_averaging_count: 1 +# The above parameters control the sensor parameters of MAX31856 +# chips. The defaults for each parameter are next to the parameter +# name in the above list. +#rtd_nominal_r: 100 +#rtd_reference_r: 430 +#rtd_num_of_wires: 2 +#rtd_use_50Hz_filter: False +# The above parameters control the sensor parameters of MAX31865 +# chips. The defaults for each parameter are next to the parameter +# name in the above list. +``` + +## Common temperature amplifiers + +Common temperature amplifiers. The following parameters are available +in heater sections that use one of these sensors. + +``` +#[extruder] +# See the "extruder" section for a description of heater parameters. +# The parameters below describe sensor parameters. +#sensor_type: +# One of "PT100 INA826", "AD595", "AD597", "AD8494", "AD8495", +# "AD8496", or "AD8497". +#sensor_pin: +# Analog input pin connected to the sensor. This parameter must be +# provided. +#adc_voltage: 5.0 +# The ADC comparison voltage (in Volts). The default is 5 volts. +#voltage_offset: 0 +# The ADC voltage offset (in Volts). The default is 0. +``` + +## Directly connected PT1000 sensor + +Directly connected PT1000 sensor. The following parameters are +available in heater sections that use one of these sensors. + +``` +#[extruder] +# See the "extruder" section for a description of heater parameters. +# The parameters below describe sensor parameters. +#sensor_type: PT1000 +#sensor_pin: +# Analog input pin connected to the sensor. This parameter must be +# provided. +#pullup_resistor: 4700 +# The resistance (in ohms) of the pullup attached to the sensor. The +# default is 4700 ohms. +``` + +## [thermistor] + +Custom thermistors (one may define any number of sections with a +"thermistor" prefix). A custom thermistor may be used in the +sensor_type field of a heater config section. (For example, if one +defines a "[thermistor my_thermistor]" section then one may use a +"sensor_type: my_thermistor" when defining a heater.) Be sure to place +the thermistor section in the config file above its first use in a +heater section. + +``` +[thermistor my_thermistor] +#temperature1: +#resistance1: +#temperature2: +#resistance2: +#temperature3: +#resistance3: +# Three resistance measurements (in Ohms) at the given temperatures +# (in Celsius). The three measurements will be used to calculate the +# Steinhart-Hart coefficients for the thermistor. These parameters +# must be provided when using Steinhart-Hart to define the +# thermistor. +#beta: +# Alternatively, one may define temperature1, resistance1, and beta +# to define the thermistor parameters. This parameter must be +# provided when using "beta" to define the thermistor. +``` + +## [adc_temperature] + +Custom ADC temperature sensors (one may define any number of sections +with an "adc_temperature" prefix). This allows one to define a custom +temperature sensor that measures a voltage on an Analog to Digital +Converter (ADC) pin and uses linear interpolation between a set of +configured temperature/voltage (or temperature/resistance) +measurements to determine the temperature. The resulting sensor can be +used as a sensor_type in a heater section. (For example, if one +defines a "[adc_temperature my_sensor]" section then one may use a +"sensor_type: my_sensor" when defining a heater.) Be sure to place the +sensor section in the config file above its first use in a heater +section. + +``` +[adc_temperature my_sensor] +#temperature1: +#voltage1: +#temperature2: +#voltage2: +#... +# A set of temperatures (in Celsius) and voltages (in Volts) to use +# as reference when converting a temperature. A heater section using +# this sensor may also specify adc_voltage and voltage_offset +# parameters to define the ADC voltage (see "Common temperature +# amplifiers" section for details). At least two measurements must +# be provided. +#temperature1: +#resistance1: +#temperature2: +#resistance2: +#... +# Alternatively one may specify a set of temperatures (in Celsius) +# and resistance (in Ohms) to use as reference when converting a +# temperature. A heater section using this sensor may also specify a +# pullup_resistor parameter (see "extruder" section for details). At +# least two measurements must be provided. +``` + +## bme280 temperature sensor + +BME280 two wire interface (I2C) environmental sensor. Note that this +sensor is not intended for use with extruders and heater beds, but +rather for monitoring ambient temperature (C), pressure (hPa), and +relative humidity. See +[sample-macros.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/sample-macros.cfg) +for a gcode_macro that may be used to report pressure and humidity in +addition to temperature. + +``` +#[temperature_sensor my_sensor] +# See the "temperature_sensor" section for a description of its +# parameters. The parameters below describe BME280 sensor parameters. +#sensor_type: +# Must be "BME280" +#i2c_address: +# Default is 118 (0x76). Some BME280 sensors have an address of 119 +# (0x77). +#i2c_mcu: +# MCU the sensor is connected to. Default is the primary mcu. +#i2c_bus: +# The I2C bus the sensor is connected to. On some MCU platforms the +# default is bus 0. On platforms without bus 0 this parameter is +# required. +#i2c_speed: +# The I2C speed (in Hz) to use when communicating with the sensor. +# Default is 100000. On some MCUs changing this value has no effect. +``` + +## HTU21D sensor + +HTU21D family two wire interface (I2C) environmental sensor. Note that +this sensor is not intended for use with extruders and heater beds, +but rather for monitoring ambient temperature (C) and relative +humidity. See +[sample-macros.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/sample-macros.cfg) +for a gcode_macro that may be used to report humidity in addition to +temperature. + +``` +#[temperature_sensor my_sensor] +# See the "temperature_sensor" section for a description of its +# parameters. The parameters below describe HTU21D family sensor +# parameters. +#sensor_type: +# Must be "HTU21D" , "SI7013", "SI7020", "SI7021" or "SHT21" +#i2c_address: +# Default is 64 (0x40). +#i2c_mcu: +# MCU the sensor is connected to. Default is the primary mcu. +#i2c_bus: +# The I2C bus the sensor is connected to. On some MCU platforms the +# default is bus 0. On platforms without bus 0 this parameter is +# required. +#i2c_speed: +# The I2C speed (in Hz) to use when communicating with the sensor. +# Default is 100000. On some MCUs changing this value has no effect. +#htu21d_hold_master: +# If the sensor can hold the I2C buf while reading. If True no other +# bus communication can be performed while reading is in progress. +# Default is False. +#htu21d_resolution: +# The resolution of temperature and humidity reading. +# Valid values are: +# 'TEMP14_HUM12' -> 14bit for Temp and 12bit for humidity +# 'TEMP13_HUM10' -> 13bit for Temp and 10bit for humidity +# 'TEMP12_HUM08' -> 12bit for Temp and 08bit for humidity +# 'TEMP11_HUM11' -> 11bit for Temp and 11bit for humidity +# Default is: "TEMP11_HUM11" +#htu21d_report_time: +# Interval in seconds between readings. Default is 30 +``` + +## LM75 temperature sensor + +LM75/LM75A two wire (I2C) connected temperature sensors. These sensors +have range up to 125 C, so are usable for e.g. chamber temperature +monitoring. They can also function as simple fan/heater controllers +but this mode is not used here. + +``` +#[temperature_sensor my_sensor] +# See the "temperature_sensor" section for a description of its +# parameters. The parameters below describe LM75 family sensor +# parameters. +#sensor_type: +# Must be "LM75". +#i2c_address: +# Default is 72 (0x48). Normal range is 72-79 (0x48-0x4F) and the 3 +# low bits of the address are configured via pins on the chip +# (usually with jumpers or hard wired). +#i2c_mcu: +# MCU the sensor is connected to. Default is the primary mcu. +#i2c_bus: +# The I2C bus the sensor is connected to. On some MCU platforms the +# default is bus 0. On platforms without bus 0 this parameter is +# required. +#i2c_speed: +# The I2C speed (in Hz) to use when communicating with the sensor. +# Default is 100000. On some MCUs changing this value has no effect. +#lm75_report_time: +# Interval in seconds between readings. Default is 0.8, with minimum +# 0.5. +``` + +## [heater_generic] + +Generic heaters (one may define any number of sections with a +"heater_generic" prefix). These heaters behave similarly to standard +heaters (extruders, heated beds). Use the SET_HEATER_TEMPERATURE +command (see [G-Codes](G-Codes.md) for details) to set the target +temperature. + +``` +[heater_generic my_generic_heater] +#gcode_id: C +# The id to use when reporting the temperature in the M105 command. +# This parameter must be provided. +#heater_pin: +#max_power: +#sensor_type: +#sensor_pin: +#smooth_time: +#control: +#pid_Kp: +#pid_Ki: +#pid_Kd: +#pid_integral_max: +#pwm_cycle_time: +#min_temp: +#max_temp: +# See the "extruder" section for the definition of the above +# parameters. +``` + +## [temperature_sensor] + +Generic temperature sensors. One can define any number of additional +temperature sensors that are reported via the M105 command. + +``` +[temperature_sensor my_sensor] +#sensor_type: +#sensor_pin: +#min_temp: +#max_temp: +# See the "extruder" section for the definition of the above +# parameters. +#gcode_id: +# See the "heater_generic" section for the definition of this +# parameter. +``` + +# Fans + +## [fan] + +Print cooling fan. + +``` +[fan] +pin: +# Output pin controlling the fan. This parameter must be provided. +#max_power: 1.0 +# The maximum power (expressed as a value from 0.0 to 1.0) that the +# pin may be set to. The value 1.0 allows the pin to be set fully +# enabled for extended periods, while a value of 0.5 would allow the +# pin to be enabled for no more than half the time. This setting may +# be used to limit the total power output (over extended periods) to +# the fan. If this value is less than 1.0 then fan speed requests +# will be scaled between zero and max_power (for example, if +# max_power is .9 and a fan speed of 80% is requested then the fan +# power will be set to 72%). The default is 1.0. +#shutdown_speed: 0 +# The desired fan speed (expressed as a value from 0.0 to 1.0) if +# the micro-controller software enters an error state. The default +# is 0. +#cycle_time: 0.010 +# The amount of time (in seconds) for each PWM power cycle to the +# fan. It is recommended this be 10 milliseconds or greater when +# using software based PWM. The default is 0.010 seconds. +#hardware_pwm: False +# Enable this to use hardware PWM instead of software PWM. Most fans +# do not work well with hardware PWM, so it is not recommended to +# enable this unless there is an electrical requirement to switch at +# very high speeds. When using hardware PWM the actual cycle time is +# constrained by the implementation and may be significantly +# different than the requested cycle_time. The default is False. +#kick_start_time: 0.100 +# Time (in seconds) to run the fan at full speed when either first +# enabling or increasing it by more than 50% (helps get the fan +# spinning). The default is 0.100 seconds. +#off_below: 0.0 +# The minimum input speed which will power the fan (expressed as a +# value from 0.0 to 1.0). When a speed lower than off_below is +# requested the fan will instead be turned off. This setting may be +# used to prevent fan stalls and to ensure kick starts are +# effective. The default is 0.0. +# +# This setting should be recalibrated whenever max_power is adjusted. +# To calibrate this setting, start with off_below set to 0.0 and the +# fan spinning. Gradually lower the fan speed to determine the lowest +# input speed which reliably drives the fan without stalls. Set +# off_below to the duty cycle corresponding to this value (for +# example, 12% -> 0.12) or slightly higher. +``` + +## [heater_fan] + +Heater cooling fans (one may define any number of sections with a +"heater_fan" prefix). A "heater fan" is a fan that will be enabled +whenever its associated heater is active. By default, a heater_fan has +a shutdown_speed equal to max_power. + +``` +[heater_fan my_nozzle_fan] +#pin: +#max_power: +#shutdown_speed: +#cycle_time: +#hardware_pwm: +#kick_start_time: +#off_below: +# See the "fan" section for a description of the above parameters. +#heater: extruder +# Name of the config section defining the heater that this fan is +# associated with. If a comma separated list of heater names is +# provided here, then the fan will be enabled when any of the given +# heaters are enabled. The default is "extruder". +#heater_temp: 50.0 +# A temperature (in Celsius) that the heater must drop below before +# the fan is disabled. The default is 50 Celsius. +#fan_speed: 1.0 +# The fan speed (expressed as a value from 0.0 to 1.0) that the fan +# will be set to when its associated heater is enabled. The default +# is 1.0 +``` + +## [controller_fan] + +Controller cooling fan (one may define any number of sections with a +"controller_fan" prefix). A "controller fan" is a fan that will be +enabled whenever its associated heater or any configured stepper +driver is active. The fan will stop whenever an idle_timeout is +reached to ensure no overheating will occur after deactivating a +watched component. + +``` +[controller_fan my_controller_fan] +#pin: +#max_power: +#shutdown_speed: +#cycle_time: +#hardware_pwm: +#kick_start_time: +#off_below: +# See the "fan" section for a description of the above parameters. +#fan_speed: 1.0 +# The fan speed (expressed as a value from 0.0 to 1.0) that the fan +# will be set to when a heater or stepper driver is active. +# The default is 1.0 +#idle_timeout: +# The amount of time (in seconds) after a stepper driver or heater +# was active and the fan should be kept running. The default +# is 30 seconds. +#idle_speed: +# The fan speed (expressed as a value from 0.0 to 1.0) that the fan +# will be set to when a heater or stepper driver was active and +# before the idle_timeout is reached. The default is fan_speed. +#heater: +# Name of the config section defining the heater that this fan is +# associated with. If a comma separated list of heater names is +# provided here, then the fan will be enabled when any of the given +# heaters are enabled. The default is "extruder". +``` + +## [temperature_fan] + +Temperature-triggered cooling fans (one may define any number of +sections with a "temperature_fan" prefix). A "temperature fan" is a +fan that will be enabled whenever its associated sensor is above a set +temperature. By default, a temperature_fan has a shutdown_speed equal +to max_power. + +``` +[temperature_fan my_temp_fan] +#pin: +#max_power: +#shutdown_speed: +#cycle_time: +#hardware_pwm: +#kick_start_time: +#off_below: +# See the "fan" section for a description of the above parameters. +#sensor_type: +#sensor_pin: +#control: +#pid_Kp: +#pid_Ki: +#pid_Kd: +#pid_deriv_time: +#pid_integral_max: +#max_delta: +#min_temp: +#max_temp: +# See the "extruder" section for a description of the above parameters. +#target_temp: 40.0 +# A temperature (in Celsius) that will be the target temperature. +# The default is 40 degrees. +#max_speed: 1.0 +# The fan speed (expressed as a value from 0.0 to 1.0) that the fan +# will be set to when the sensor temperature exceeds the set value. +# The default is 1.0. +#min_speed: 0.3 +# The minimum fan speed (expressed as a value from 0.0 to 1.0) that +# the fan will be set to for PID temperature fans. +# The default is 0.3. +#gcode_id: +# If set, the temperature will be reported in M105 queries using the +# given id. The default is to not report the temperature via M105. +``` + +## [fan_generic] + +Manually controlled fan (one may define any number of sections with a +"fan_generic" prefix). The speed of a manually controlled fan is set +with the SET_FAN_SPEED gcode command. + +``` +[fan_generic extruder_partfan] +#pin: +#max_power: +#shutdown_speed: +#cycle_time: +#hardware_pwm: +#kick_start_time: +#off_below: +# See the "fan" section for a description of the above parameters. +``` + +# Additional servos, LEDs, buttons, and other pins + +## [servo] + +Servos (one may define any number of sections with a "servo" +prefix). The servos may be controlled using the SET_SERVO g-code +command. For example: SET_SERVO SERVO=my_servo ANGLE=180 + +``` +[servo my_servo] +pin: +# PWM output pin controlling the servo. This parameter must be +# provided. +#maximum_servo_angle: 180 +# The maximum angle (in degrees) that this servo can be set to. The +# default is 180 degrees. +#minimum_pulse_width: 0.001 +# The minimum pulse width time (in seconds). This should correspond +# with an angle of 0 degrees. The default is 0.001 seconds. +#maximum_pulse_width: 0.002 +# The maximum pulse width time (in seconds). This should correspond +# with an angle of maximum_servo_angle. The default is 0.002 +# seconds. +#initial_angle: +# Initial angle (in degrees) to set the servo to. The default is to +# not send any signal at startup. +#initial_pulse_width: +# Initial pulse width time (in seconds) to set the servo to. (This +# is only valid if initial_angle is not set.) The default is to not +# send any signal at startup. +``` + +## [neopixel] + +Neopixel (aka WS2812) LED support (one may define any number of +sections with a "neopixel" prefix). One may set the LED color via +"SET_LED LED=my_neopixel RED=0.1 GREEN=0.1 BLUE=0.1" type extended +g-code commands. + +``` +[neopixel my_neopixel] +pin: +# The pin connected to the neopixel. This parameter must be +# provided. +#chain_count: +# The number of Neopixel chips that are "daisy chained" to the +# provided pin. The default is 1 (which indicates only a single +# Neopixel is connected to the pin). +#color_order: GRB +# Set the pixel order required by the LED hardware. Options are GRB, +# RGB, GRBW, or RGBW. The default is GRB. +#initial_RED: 0.0 +#initial_GREEN: 0.0 +#initial_BLUE: 0.0 +#initial_WHITE: 0.0 +# Sets the initial LED color of the Neopixel. Each value should be +# between 0.0 and 1.0. The WHITE option is only available on RGBW +# LEDs. The default for each color is 0. +``` + +## [dotstar] + +Dotstar (aka APA102) LED support (one may define any number of +sections with a "dotstar" prefix). One may set the LED color via +"SET_LED LED=my_dotstar RED=0.1 GREEN=0.1 BLUE=0.1" type extended +g-code commands. + +``` +[dotstar my_dotstar] +data_pin: +# The pin connected to the data line of the dotstar. This parameter +# must be provided. +clock_pin: +# The pin connected to the clock line of the dotstar. This parameter +# must be provided. +#chain_count: +#initial_RED: 0.0 +#initial_GREEN: 0.0 +#initial_BLUE: 0.0 +# See the "neopixel" section for information on these parameters. +``` + +## [gcode_button] + +Execute gcode when a button is pressed or released (or when a pin +changes state). You can check the state of the button by using +`QUERY_BUTTON button=my_gcode_button`. + +``` +[gcode_button my_gcode_button] +pin: +# The pin on which the button is connected. This parameter must be +# provided. +#analog_range: +# Two comma separated resistances (in Ohms) specifying the minimum +# and maximum resistance range for the button. If analog_range is +# provided then the pin must be an analog capable pin. The default +# is to use digital gpio for the button. +#analog_pullup_resistor: +# The pullup resistance (in Ohms) when analog_range is specified. +# The default is 4700 ohms. +#press_gcode: +# A list of G-Code commands to execute when the button is pressed. +# G-Code templates are supported. This parameter must be provided. +#release_gcode: +# A list of G-Code commands to execute when the button is released. +# G-Code templates are supported. The default is to not run any +# commands on a button release. +``` + +## [output_pin] + +Run-time configurable output pins (one may define any number of +sections with an "output_pin" prefix). Pins configured here will be +setup as output pins and one may modify them at run-time using +"SET_PIN PIN=my_pin VALUE=.1" type extended g-code commands. + +``` +[output_pin my_pin] +pin: +# The pin to configure as an output. This parameter must be +# provided. +#pwm: False +# Set if the output pin should be capable of pulse-width-modulation. +# If this is true, the value fields should be between 0 and 1; if it +# is false the value fields should be either 0 or 1. The default is +# False. +#static_value: +# If this is set, then the pin is assigned to this value at startup +# and the pin can not be changed during runtime. A static pin uses +# slightly less ram in the micro-controller. The default is to use +# runtime configuration of pins. +#value: +# The value to initially set the pin to during MCU configuration. +# The default is 0 (for low voltage). +#shutdown_value: +# The value to set the pin to on an MCU shutdown event. The default +# is 0 (for low voltage). +#cycle_time: 0.100 +# The amount of time (in seconds) per PWM cycle. It is recommended +# this be 10 milliseconds or greater when using software based PWM. +# The default is 0.100 seconds for pwm pins. +#hardware_pwm: False +# Enable this to use hardware PWM instead of software PWM. When +# using hardware PWM the actual cycle time is constrained by the +# implementation and may be significantly different than the +# requested cycle_time. The default is False. +#scale: +# This parameter can be used to alter how the 'value' and +# 'shutdown_value' parameters are interpreted for pwm pins. If +# provided, then the 'value' parameter should be between 0.0 and +# 'scale'. This may be useful when configuring a PWM pin that +# controls a stepper voltage reference. The 'scale' can be set to +# the equivalent stepper amperage if the PWM were fully enabled, and +# then the 'value' parameter can be specified using the desired +# amperage for the stepper. The default is to not scale the 'value' +# parameter. +``` + +## [static_digital_output] + +Statically configured digital output pins (one may define any number +of sections with a "static_digital_output" prefix). Pins configured +here will be setup as a GPIO output during MCU configuration. They can +not be changed at run-time. + +``` +[static_digital_output my_output_pins] +pins: +# A comma separated list of pins to be set as GPIO output pins. The +# pin will be set to a high level unless the pin name is prefaced +# with "!". This parameter must be provided. +``` + +## [multi_pin] + +Multiple pin outputs (one may define any number of sections with a +"multi_pin" prefix). A multi_pin output creates an internal pin alias +that can modify multiple output pins each time the alias pin is +set. For example, one could define a "[multi_pin my_fan]" object +containing two pins and then set "pin=multi_pin:my_fan" in the "[fan]" +section - on each fan change both output pins would be updated. These +aliases may not be used with stepper motor pins. + +``` +[multi_pin my_multi_pin] +pins: +# A comma separated list of pins associated with this alias. This +# parameter must be provided. +``` + +# TMC stepper driver configuration + +## [tmc2130] + +Configure a TMC2130 stepper motor driver via SPI bus. To use this +feature, define a config section with a "tmc2130" prefix followed by +the name of the corresponding stepper config section (for example, +"[tmc2130 stepper_x]"). + +``` +[tmc2130 stepper_x] +cs_pin: +# The pin corresponding to the TMC2130 chip select line. This pin +# will be set to low at the start of SPI messages and raised to high +# after the message completes. This parameter must be provided. +#spi_bus: +#spi_speed: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +microsteps: +# The number of microsteps to configure the driver to use. Valid +# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must +# be provided. +#interpolate: True +# If true, enable step interpolation (the driver will internally +# step at a rate of 256 micro-steps). The default is True. +run_current: +# The amount of current (in amps RMS) to configure the driver to use +# during stepper movement. This parameter must be provided. +#hold_current: +# The amount of current (in amps RMS) to configure the driver to use +# when the stepper is not moving. The default is to use the same +# value as run_current. +#sense_resistor: 0.110 +# The resistance (in ohms) of the motor sense resistor. The default +# is 0.110 ohms. +#stealthchop_threshold: 0 +# The velocity (in mm/s) to set the "stealthChop" threshold to. When +# set, "stealthChop" mode will be enabled if the stepper motor +# velocity is below this value. The default is 0, which disables +# "stealthChop" mode. +#driver_IHOLDDELAY: 8 +#driver_TPOWERDOWN: 0 +#driver_TBL: 1 +#driver_TOFF: 4 +#driver_HEND: 7 +#driver_HSTRT: 0 +#driver_PWM_AUTOSCALE: True +#driver_PWM_FREQ: 1 +#driver_PWM_GRAD: 4 +#driver_PWM_AMPL: 128 +#driver_SGT: 0 +# Set the given register during the configuration of the TMC2130 +# chip. This may be used to set custom motor parameters. The +# defaults for each parameter are next to the parameter name in the +# above list. +#diag0_pin: +#diag1_pin: +# The micro-controller pin attached to one of the DIAG lines of the +# TMC2130 chip. Only a single diag pin should be specified. +# Setting this creates a "tmc2130_stepper_x:virtual_endstop" virtual +# pin which may be used as the stepper's endstop_pin. Doing this +# enables "sensorless homing". (Be sure to also set driver_SGT to an +# appropriate sensitivity value.) The default is to not enable +# sensorless homing. See docs/Sensorless_Homing.md for details on +# how to configure this. +``` + +## [tmc2208] + +Configure a TMC2208 (or TMC2224) stepper motor driver via single wire +UART. To use this feature, define a config section with a "tmc2208" +prefix followed by the name of the corresponding stepper config +section (for example, "[tmc2208 stepper_x]"). + +``` +[tmc2208 stepper_x] +uart_pin: +# The pin connected to the TMC2208 PDN_UART line. This parameter +# must be provided. +#tx_pin: +# If using separate receive and transmit lines to communicate with +# the driver then set uart_pin to the receive pin and tx_pin to the +# transmit pin. The default is to use uart_pin for both reading and +# writing. +#select_pins: +# A comma separated list of pins to set prior to accessing the +# tmc2208 UART. This may be useful for configuring an analog mux for +# UART communication. The default is to not configure any pins. +microsteps: +# The number of microsteps to configure the driver to use. Valid +# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must +# be provided. +#interpolate: True +# If true, enable step interpolation (the driver will internally +# step at a rate of 256 micro-steps). The default is True. +run_current: +# The amount of current (in amps RMS) to configure the driver to use +# during stepper movement. This parameter must be provided. +#hold_current: +# The amount of current (in amps RMS) to configure the driver to use +# when the stepper is not moving. The default is to use the same +# value as run_current. +#sense_resistor: 0.110 +# The resistance (in ohms) of the motor sense resistor. The default +# is 0.110 ohms. +#stealthchop_threshold: 0 +# The velocity (in mm/s) to set the "stealthChop" threshold to. When +# set, "stealthChop" mode will be enabled if the stepper motor +# velocity is below this value. The default is 0, which disables +# "stealthChop" mode. +#driver_IHOLDDELAY: 8 +#driver_TPOWERDOWN: 20 +#driver_TBL: 2 +#driver_TOFF: 3 +#driver_HEND: 0 +#driver_HSTRT: 5 +#driver_PWM_AUTOGRAD: True +#driver_PWM_AUTOSCALE: True +#driver_PWM_LIM: 12 +#driver_PWM_REG: 8 +#driver_PWM_FREQ: 1 +#driver_PWM_GRAD: 14 +#driver_PWM_OFS: 36 +# Set the given register during the configuration of the TMC2208 +# chip. This may be used to set custom motor parameters. The +# defaults for each parameter are next to the parameter name in the +# above list. +``` + +## [tmc2209] + +Configure a TMC2209 stepper motor driver via single wire UART. To use +this feature, define a config section with a "tmc2209" prefix followed +by the name of the corresponding stepper config section (for example, +"[tmc2209 stepper_x]"). + +``` +[tmc2209 stepper_x] +uart_pin: +#tx_pin: +#select_pins: +#microsteps: +#interpolate: True +run_current: +#hold_current: +#sense_resistor: 0.110 +#stealthchop_threshold: 0 +# See the "tmc2208" section for the definition of these parameters. +#uart_address: +# The address of the TMC2209 chip for UART messages (an integer +# between 0 and 3). This is typically used when multiple TMC2209 +# chips are connected to the same UART pin. The default is zero. +#driver_IHOLDDELAY: 8 +#driver_TPOWERDOWN: 20 +#driver_TBL: 2 +#driver_TOFF: 3 +#driver_HEND: 0 +#driver_HSTRT: 5 +#driver_PWM_AUTOGRAD: True +#driver_PWM_AUTOSCALE: True +#driver_PWM_LIM: 12 +#driver_PWM_REG: 8 +#driver_PWM_FREQ: 1 +#driver_PWM_GRAD: 14 +#driver_PWM_OFS: 36 +#driver_SGTHRS: 0 +# Set the given register during the configuration of the TMC2209 +# chip. This may be used to set custom motor parameters. The +# defaults for each parameter are next to the parameter name in the +# above list. +#diag_pin: +# The micro-controller pin attached to the DIAG line of the TMC2209 +# chip. Setting this creates a "tmc2209_stepper_x:virtual_endstop" +# virtual pin which may be used as the stepper's endstop_pin. Doing +# this enables "sensorless homing". (Be sure to also set +# driver_SGTHRS to an appropriate sensitivity value.) The default is +# to not enable sensorless homing. +``` + +## [tmc2660] + +Configure a TMC2660 stepper motor driver via SPI bus. To use this +feature, define a config section with a tmc2660 prefix followed by the +name of the corresponding stepper config section (for example, +"[tmc2660 stepper_x]"). + +``` +[tmc2660 stepper_x] +cs_pin: +# The pin corresponding to the TMC2660 chip select line. This pin +# will be set to low at the start of SPI messages and set to high +# after the message transfer completes. This parameter must be +# provided. +#spi_bus: +# Select the SPI bus the TMC2660 stepper driver is connected to. +# This depends on the physical connections on your board, as well as +# the SPI implementation of your particular micro-controller. The +# default is to use the default micro-controller spi bus. +#spi_speed: 4000000 +# SPI bus frequency used to communicate with the TMC2660 stepper +# driver. The default is 4000000. +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +microsteps: +# The number of microsteps to configure the driver to use. Valid +# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must +# be provided. +#interpolate: True +# If true, enable step interpolation (the driver will internally +# step at a rate of 256 micro-steps). This only works if microsteps +# is set to 16. The default is True. +run_current: +# The amount of current (in amps RMS) used by the driver during +# stepper movement. This parameter must be provided. +#sense_resistor: +# The resistance (in ohms) of the motor sense resistor. This +# parameter must be provided. +#idle_current_percent: 100 +# The percentage of the run_current the stepper driver will be +# lowered to when the idle timeout expires (you need to set up the +# timeout using a [idle_timeout] config section). The current will +# be raised again once the stepper has to move again. Make sure to +# set this to a high enough value such that the steppers do not lose +# their position. There is also small delay until the current is +# raised again, so take this into account when commanding fast moves +# while the stepper is idling. The default is 100 (no reduction). +#driver_TBL: 2 +#driver_RNDTF: 0 +#driver_HDEC: 0 +#driver_CHM: 0 +#driver_HEND: 3 +#driver_HSTRT: 3 +#driver_TOFF: 4 +#driver_SEIMIN: 0 +#driver_SEDN: 0 +#driver_SEMAX: 0 +#driver_SEUP: 0 +#driver_SEMIN: 0 +#driver_SFILT: 1 +#driver_SGT: 0 +#driver_SLPH: 0 +#driver_SLPL: 0 +#driver_DISS2G: 0 +#driver_TS2G: 3 +# Set the given parameter during the configuration of the TMC2660 +# chip. This may be used to set custom driver parameters. The +# defaults for each parameter are next to the parameter name in the +# list above. See the TMC2660 datasheet about what each parameter +# does and what the restrictions on parameter combinations are. Be +# especially aware of the CHOPCONF register, where setting CHM to +# either zero or one will lead to layout changes (the first bit of +# HDEC) is interpreted as the MSB of HSTRT in this case). +``` + +## [tmc5160] + +Configure a TMC5160 stepper motor driver via SPI bus. To use this +feature, define a config section with a "tmc5160" prefix followed by +the name of the corresponding stepper config section (for example, +"[tmc5160 stepper_x]"). + +``` +[tmc5160 stepper_x] +cs_pin: +# The pin corresponding to the TMC5160 chip select line. This pin +# will be set to low at the start of SPI messages and raised to high +# after the message completes. This parameter must be provided. +#spi_bus: +#spi_speed: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +microsteps: +# The number of microsteps to configure the driver to use. Valid +# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must +# be provided. +#interpolate: True +# If true, enable step interpolation (the driver will internally +# step at a rate of 256 micro-steps). The default is True. +run_current: +# The amount of current (in amps RMS) to configure the driver to use +# during stepper movement. This parameter must be provided. +#hold_current: +# The amount of current (in amps RMS) to configure the driver to use +# when the stepper is not moving. The default is to use the same +# value as run_current. +#sense_resistor: 0.075 +# The resistance (in ohms) of the motor sense resistor. The default +# is 0.075 ohms. +#stealthchop_threshold: 0 +# The velocity (in mm/s) to set the "stealthChop" threshold to. When +# set, "stealthChop" mode will be enabled if the stepper motor +# velocity is below this value. The default is 0, which disables +# "stealthChop" mode. Try to reexperience this with tmc5160. +# Values can be much higher than other tmcs. +#driver_IHOLDDELAY: 6 +#driver_TPOWERDOWN: 10 +#driver_TBL: 2 +#driver_TOFF: 3 +#driver_HEND: 2 +#driver_HSTRT: 5 +#driver_FD3: 0 +#driver_TPFD: 4 +#driver_CHM: 0 +#driver_VHIGHFS: 0 +#driver_VHIGHCHM: 0 +#driver_DISS2G: 0 +#driver_DISS2VS: 0 +#driver_PWM_AUTOSCALE: True +#driver_PWM_AUTOGRAD: True +#driver_PWM_FREQ: 0 +#driver_FREEWHEEL: 0 +#driver_PWM_GRAD: 0 +#driver_PWM_OFS: 30 +#driver_PWM_REG: 4 +#driver_PWM_LIM: 12 +#driver_SGT: 0 +#driver_SEMIN: 0 +#driver_SEUP: 0 +#driver_SEMAX: 0 +#driver_SEDN: 0 +#driver_SEIMIN: 0 +#driver_SFILT: 0 +# Set the given register during the configuration of the TMC5160 +# chip. This may be used to set custom motor parameters. The +# defaults for each parameter are next to the parameter name in the +# above list. +#diag0_pin: +#diag1_pin: +# The micro-controller pin attached to one of the DIAG lines of the +# TMC5160 chip. Only a single diag pin should be specified. +# Setting this creates a "tmc5160_stepper_x:virtual_endstop" virtual +# pin which may be used as the stepper's endstop_pin. Doing this +# enables "sensorless homing". (Be sure to also set driver_SGT to an +# appropriate sensitivity value.) The default is to not enable +# sensorless homing. See docs/Sensorless_Homing.md for details on +# how to configure this. +``` + +# Run-time stepper motor current configuration + +## [ad5206] + +Statically configured AD5206 digipots connected via SPI bus (one may +define any number of sections with an "ad5206" prefix). + +``` +[ad5206 my_digipot] +enable_pin: +# The pin corresponding to the AD5206 chip select line. This pin +# will be set to low at the start of SPI messages and raised to high +# after the message completes. This parameter must be provided. +#spi_bus: +#spi_speed: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# These optional parameters allow one to customize the SPI settings +# used to communicate with the chip. +#channel_1: +#channel_2: +#channel_3: +#channel_4: +#channel_5: +#channel_6: +# The value to statically set the given AD5206 channel to. This is +# typically set to a number between 0.0 and 1.0 with 1.0 being the +# highest resistance and 0.0 being the lowest resistance. However, +# the range may be changed with the 'scale' parameter (see below). +# If a channel is not specified then it is left unconfigured. +#scale: +# This parameter can be used to alter how the 'channel_x' parameters +# are interpreted. If provided, then the 'channel_x' parameters +# should be between 0.0 and 'scale'. This may be useful when the +# AD5206 is used to set stepper voltage references. The 'scale' can +# be set to the equivalent stepper amperage if the AD5206 were at +# its highest resistance, and then the 'channel_x' parameters can be +# specified using the desired amperage value for the stepper. The +# default is to not scale the 'channel_x' parameters. +``` + +## [mcp4451] + +Statically configured MCP4451 digipot connected via I2C bus (one may +define any number of sections with an "mcp4451" prefix). + +``` +[mcp4451 my_digipot] +#i2c_mcu: mcu +# The name of the micro-controller that the MCP4451 chip is +# connected to. The default is "mcu". +i2c_address: +# The i2c address that the chip is using on the i2c bus. This +# parameter must be provided. +#wiper_0: +#wiper_1: +#wiper_2: +#wiper_3: +# The value to statically set the given MCP4451 "wiper" to. This is +# typically set to a number between 0.0 and 1.0 with 1.0 being the +# highest resistance and 0.0 being the lowest resistance. However, +# the range may be changed with the 'scale' parameter (see below). +# If a wiper is not specified then it is left unconfigured. +#scale: +# This parameter can be used to alter how the 'wiper_x' parameters +# are interpreted. If provided, then the 'wiper_x' parameters should +# be between 0.0 and 'scale'. This may be useful when the MCP4451 is +# used to set stepper voltage references. The 'scale' can be set to +# the equivalent stepper amperage if the MCP4451 were at its highest +# resistance, and then the 'wiper_x' parameters can be specified +# using the desired amperage value for the stepper. The default is +# to not scale the 'wiper_x' parameters. +``` + +## [mcp4728] + +Statically configured MCP4728 digital-to-analog converter connected +via I2C bus (one may define any number of sections with an "mcp4728" +prefix). + +``` +[mcp4728 my_dac] +#i2c_mcu: mcu +# The name of the micro-controller that the MCP4451 chip is +# connected to. The default is "mcu". +#i2c_address: 96 +# The i2c address that the chip is using on the i2c bus. The default +# is 96. +#channel_a: +#channel_b: +#channel_c: +#channel_d: +# The value to statically set the given MCP4728 channel to. This is +# typically set to a number between 0.0 and 1.0 with 1.0 being the +# highest voltage (2.048V) and 0.0 being the lowest voltage. +# However, the range may be changed with the 'scale' parameter (see +# below). If a channel is not specified then it is left +# unconfigured. +#scale: +# This parameter can be used to alter how the 'channel_x' parameters +# are interpreted. If provided, then the 'channel_x' parameters +# should be between 0.0 and 'scale'. This may be useful when the +# MCP4728 is used to set stepper voltage references. The 'scale' can +# be set to the equivalent stepper amperage if the MCP4728 were at +# its highest voltage (2.048V), and then the 'channel_x' parameters +# can be specified using the desired amperage value for the +# stepper. The default is to not scale the 'channel_x' parameters. +``` + +## [mcp4018] + +Statically configured MCP4018 digipot connected via two gpio "bit +banging" pins (one may define any number of sections with an "mcp4018" +prefix). + +``` +[mcp4018 my_digipot] +scl_pin: +# The SCL "clock" pin. This parameter must be provided. +sda_pin: +# The SDA "data" pin. This parameter must be provided. +wiper: +# The value to statically set the given MCP4018 "wiper" to. This is +# typically set to a number between 0.0 and 1.0 with 1.0 being the +# highest resistance and 0.0 being the lowest resistance. However, +# the range may be changed with the 'scale' parameter (see below). +# This parameter must be provided. +#scale: +# This parameter can be used to alter how the 'wiper' parameter is +# interpreted. If provided, then the 'wiper' parameter should be +# between 0.0 and 'scale'. This may be useful when the MCP4018 is +# used to set stepper voltage references. The 'scale' can be set to +# the equivalent stepper amperage if the MCP4018 is at its highest +# resistance, and then the 'wiper' parameter can be specified using +# the desired amperage value for the stepper. The default is to not +# scale the 'wiper' parameter. +``` + +# Display support + +## [display] + +Support for a display attached to the micro-controller. + +``` +[display] +lcd_type: +# The type of LCD chip in use. This may be "hd44780" (which is used +# in "RepRapDiscount 2004 Smart Controller" type displays), "st7920" +# (which is used in "RepRapDiscount 12864 Full Graphic Smart +# Controller" type displays), "uc1701" (which is used in "MKS Mini +# 12864" type displays), "ssd1306", or "sh1106". This parameter must +# be provided. +#rs_pin: +#e_pin: +#d4_pin: +#d5_pin: +#d6_pin: +#d7_pin: +# The pins connected to an hd44780 type lcd. These parameters must +# be provided when using an hd44780 display. +#cs_pin: +#sclk_pin: +#sid_pin: +# The pins connected to an st7920 type lcd. These parameters must be +# provided when using an st7920 display. +#cs_pin: +#a0_pin: +#rst_pin: +# The pins connected to an uc1701 type lcd. The rst_pin is +# optional. The cs_pin and a0_pin parameters must be provided when +# using an uc1701 display. +#contrast: 40 +# The contrast to set when using a uc1701 or SSD1306/SH1106 type +# display For UC1701 the value may range from 0 to 63. Default is +# 40. For SSD1306/SH1106 the value may range from 0 to 256. Default +# is 239. +#vcomh: 0 +# Set the Vcomh value on SSD1306/SH1106 displays. This value is +# associated with a "smearing" effect on some OLED displays. The +# value may range from 0 to 63. Default is 0. +#x_offset: 0 +# Set the horizontal offset value on SSD1306/SH1106 displays. +# Default is 0. +#invert: FALSE +# TRUE inverts the pixels on certain OLED (SSD1306/SH1106) displays. +# The default is FALSE. +#cs_pin: +#dc_pin: +#spi_bus: +#spi_speed: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# The pins connected to an ssd1306 type lcd when in "4-wire" spi +# mode. The parameters that start with "spi_" are optional and they +# control the spi settings used to communicate with the chip. The +# default is to use i2c mode for ssd1306 displays. +#reset_pin: +# A reset pin may be specified on ssd1306 displays. If it is not +# specified then the hardware must have a pull-up on the +# corresponding lcd line. +#display_group: +# The name of the display_data group to show on the display. This +# controls the content of the screen (see the "display_data" section +# for more information). The default is _default_20x4 for hd44780 +# displays and _default_16x4 for other displays. +#menu_timeout: +# Timeout for menu. Being inactive this amount of seconds will +# trigger menu exit or return to root menu when having autorun +# enabled. The default is 0 seconds (disabled) +#menu_root: +# Name of the main menu section to show when clicking the encoder +# on the home screen. The defaults is __main, and this shows the +# the default menus as defined in klippy/extras/display/menu.cfg +#menu_reverse_navigation: +# When enabled it will reverse up and down directions for list +# navigation. The default is False. This parameter is optional. +#encoder_pins: +# The pins connected to encoder. 2 pins must be provided when using +# encoder. This parameter must be provided when using menu. +#click_pin: +# The pin connected to 'enter' button or encoder 'click'. This +# parameter must be provided when using menu. The presence of an +# 'analog_range_click_pin' config parameter turns this parameter +# from digital to analog. +#back_pin: +# The pin connected to 'back' button. This parameter is optional, +# menu can be used without it. The presence of an +# 'analog_range_back_pin' config parameter turns this parameter from +# digital to analog. +#up_pin: +# The pin connected to 'up' button. This parameter must be provided +# when using menu without encoder. The presence of an +# 'analog_range_up_pin' config parameter turns this parameter from +# digital to analog. +#down_pin: +# The pin connected to 'down' button. This parameter must be +# provided when using menu without encoder. The presence of an +# 'analog_range_down_pin' config parameter turns this parameter from +# digital to analog. +#kill_pin: +# The pin connected to 'kill' button. This button will call +# emergency stop. The presence of an 'analog_range_kill_pin' config +# parameter turns this parameter from digital to analog. +#analog_pullup_resistor: 4700 +# The resistance (in ohms) of the pullup attached to the analog +# button. The default is 4700 ohms. +#analog_range_click_pin: +# The resistance range for a 'enter' button. Range minimum and +# maximum comma-separated values must be provided when using analog +# button. +#analog_range_back_pin: +# The resistance range for a 'back' button. Range minimum and +# maximum comma-separated values must be provided when using analog +# button. +#analog_range_up_pin: +# The resistance range for a 'up' button. Range minimum and maximum +# comma-separated values must be provided when using analog button. +#analog_range_down_pin: +# The resistance range for a 'down' button. Range minimum and +# maximum comma-separated values must be provided when using analog +# button. +#analog_range_kill_pin: +# The resistance range for a 'kill' button. Range minimum and +# maximum comma-separated values must be provided when using analog +# button. +``` + +## [display_data] + +Support for displaying custom data on an lcd screen. One may create +any number of display groups and any number of data items under those +groups. The display will show all the data items for a given group if +the display_group option in the [display] section is set to the given +group name. + +``` +[display_data my_group_name my_data_name] +position: 0, 0 +# Comma separated row and column of the display position that should +# be used to display the information. This parameter must be +# provided. +text: +# The text to show at the given position. This field is evaluated +# using command templates (see docs/Command_Templates.md). This +# parameter must be provided. +``` + +## [display_template] + +Display data text "macros" (one may define any number of sections +with a display_template prefix). This feature allows one to reduce +repetitive definitions in display_data sections. One may use the +builtin render() function in display_data sections to evaluate a +template. For example, if one were to define [display_template +my_template] then one could use `{ render('my_template') }` in a +display_data section. + +``` +[display_template my_template_name] +#param_: +# One may specify any number of options with a "param_" prefix. The +# given name will be assigned the given value (parsed as a Python +# literal) and will be available during macro expansion. If the +# parameter is passed in the call to render() then that value will +# be used during macro expansion. For example, a config with +# "param_speed = 75" might have a caller with +# "render('my_template_name', param_speed=80)". Parameter names may +# not use upper case characters. +#text: +# The text to return when the render() function is called for this +# template. This field is evaluated using command templates (see +# docs/Command_Templates.md). This parameter must be provided. +``` + +## [display_glyph] + +Display a custom glyph on displays that support it. The given name +will be assigned the given display data which can then be referenced +in the display templates by their name surrounded by two "tilde" +symbols i.e. `~my_display_glyph~` + +``` +[display_glyph my_display_glyph] +#data: +# The display data, stored as 16 lines consisting of 16 bits (1 per +# pixel) where '.' is a blank pixel and '*' is an on pixel (e.g., +# "****************" to display a solid horizontal line). +# Alternatively, one can use '0' for a blank pixel and '1' for an on +# pixel. Put each display line into a separate config line. The +# glyph must consist of exactly 16 lines with 16 bits each. This +# parameter is optional. +#hd44780_data: +# Glyph to use on 20x4 hd44780 displays. The glyph must consist of +# exactly 8 lines with 5 bits each. This parameter is optional. +#hd44780_slot: +# The hd44780 hardware index (0..7) to store the glyph at. If +# multiple distinct images use the same slot then make sure to only +# use one of those images in any given screen. This parameter is +# required if hd44780_data is specified. +``` + +## [display my_extra_display] + +If a primary [display] section has been defined in printer.cfg as +shown above it is possible to define multiple auxiliary displays. Note +that auxiliary displays do not currently support menu functionality, +thus they do not support the "menu" options or button configuration. + +``` +[display my_extra_display] +# See the "display" section for available parameters. +``` + +## [menu] + +Available options in menu Jinja2 template context: + +Read-only attributes for menu element: +* menu.width - element width (number of display columns) +* menu.ns - element namespace +* menu.event - name of the event that triggered the script +* menu.input - input value, only available in input script context + +List of actions for menu element: +* menu.back(force, update): will execute menu back command, optional + boolean parameters and . + * When is set True then it will also stop editing. Default + value is False + * When is set False then parent container items are not + updated. Default value is True +* menu.exit(force) - will execute menu exit command, optional boolean + parameter default value False + * When is set True then it will also stop editing. Default + value is False + +``` +# Common parameters available for all menu config sections. +#[menu some_name] +#type: +# One of command, input, list, text: +# command - basic menu element with various script triggers +# input - same like 'command' but has value changing capabilities. +# Press will start/stop edit mode. +# list - it allows for menu items to be grouped together in a +# scrollable list. Add to the list by creating menu +# configurations using "some_list" as a prefix - for +# example: [menu some_list some_item_in_the_list] +# vsdlist - same as 'list' but will append files from virtual sdcard +# (will be removed in the future) +#name: +# Name of menu item - evaluated as a template. +#enable: +# Template that evaluates to True or False. +#index: +# Position where an item needs to be inserted in list. By default +# the item is added at the end. + +#[menu some_list] +#type: list +#name: +#enable: +# See above for a description of these parameters. + +#[menu some_list some_command] +#type: command +#name: +#enable: +# See above for a description of these parameters. +#gcode: +# Script to run on button click or long click. Evaluated as a +# template. + +#[menu some_list some_input] +#type: input +#name: +#enable: +# See above for a description of these parameters. +#input: +# Initial value to use when editing - evaluated as a template. +# Result must be float. +#input_min: +# Minimum value of range - evaluated as a template. Default -99999. +#input_max: +# Maximum value of range - evaluated as a template. Default 99999. +#input_step: +# Editing step - Must be a positive integer or float value. It has +# internal fast rate step. When "(input_max - input_min) / +# input_step > 100" then fast rate step is 10 * input_step else fast +# rate step is same input_step. +#realtime: +# This attribute accepts static boolean value. When enabled then +# gcode script is run after each value change. The default is False. +#gcode: +# Script to run on button click, long click or value change. +# Evaluated as a template. The button click will trigger the edit +# mode start or end. +``` + +# Filament sensors + +## [filament_switch_sensor] + +Filament Switch Sensor. Support for filament insert and runout +detection using a switch sensor, such as an endstop switch. + +``` +[filament_switch_sensor my_sensor] +#pause_on_runout: True +# When set to True, a PAUSE will execute immediately after a runout +# is detected. Note that if pause_on_runout is False and the +# runout_gcode is omitted then runout detection is disabled. Default +# is True. +#runout_gcode: +# A list of G-Code commands to execute after a filament runout is +# detected. See docs/Command_Templates.md for G-Code format. If +# pause_on_runout is set to True this G-Code will run after the +# PAUSE is complete. The default is not to run any G-Code commands. +#insert_gcode: +# A list of G-Code commands to execute after a filament insert is +# detected. See docs/Command_Templates.md for G-Code format. The +# default is not to run any G-Code commands, which disables insert +# detection. +#event_delay: 3.0 +# The minimum amount of time in seconds to delay between events. +# Events triggered during this time period will be silently +# ignored. The default is 3 seconds. +#pause_delay: 0.5 +# The amount of time to delay, in seconds, between the pause command +# dispatch and execution of the runout_gcode. It may be useful to +# increase this delay if OctoPrint exhibits strange pause behavior. +# Default is 0.5 seconds. +#switch_pin: +# The pin on which the switch is connected. This parameter must be +# provided. +``` + +## [tsl1401cl_filament_width_sensor] + +TSLl401CL Based Filament Width Sensor + +``` +[tsl1401cl_filament_width_sensor] +#pin: +#default_nominal_filament_diameter: 1.75 # (mm) +# Maximum allowed filament diameter difference as mm. +#max_difference: 0.2 +# The distance from sensor to the melting chamber as mm. +#measurement_delay: 100 +``` + +## [hall_filament_width_sensor] + +Hall filament width sensor (see +[Hall Filament Width Sensor](HallFilamentWidthSensor.md)). + +``` +[hall_filament_width_sensor] +adc1: +adc2: +# Analog input pins connected to the sensor. These parameters must +# be provided. +#cal_dia1: 1.50 +#cal_dia2: 2.00 +# The calibration values (in mm) for the sensors. The default is +# 1.50 for cal_dia1 and 2.00 for cal_dia2. +#raw_dia1: 9500 +#raw_dia2: 10500 +# The raw calibration values for the sensors. The default is 9500 +# for raw_dia1 and 10500 for raw_dia2. +#default_nominal_filament_diameter: 1.75 +# The nominal filament diameter. This parameter must be provided. +#max_difference: 0.200 +# Maximum allowed filament diameter difference in millimeters (mm). +# If difference between nominal filament diameter and sensor output +# is more than +- max_difference, extrusion multiplier is set back +# to %100. The default is 0.200. +#measurement_delay: 70 +# The distance from sensor to the melting chamber/hot-end in +# millimeters (mm). The filament between the sensor and the hot-end +# will be treated as the default_nominal_filament_diameter. Host +# module works with FIFO logic. It keeps each sensor value and +# position in an array and POP them back in correct position. This +# parameter must be provided. +#enable: False +# Sensor enabled or disabled after power on. The default is to +# disable. +#measurement_interval: 10 +# The approximate distance (in mm) between sensor readings. The +# default is 10mm. +#logging: False +# Out diameter to terminal and klipper.log can be turn on|of by +# command. +#min_diameter: 1.0 +# Minimal diameter for trigger virtual filament_switch_sensor. +#use_current_dia_while_delay: False +# Use the current diameter instead of the nominal diameter while +# the measurement delay has not run through. +#pause_on_runout: +#runout_gcode: +#insert_gcode: +#event_delay: +#pause_delay: +# See the "filament_switch_sensor" section for a description of the +# above parameters. +``` + +# Board specific hardware support + +## [sx1509] + +Configure an SX1509 I2C to GPIO expander. Due to the delay incurred by +I2C communication you should NOT use SX1509 pins as stepper enable, +step or dir pins or any other pin that requires fast bit-banging. They +are best used as static or gcode controlled digital outputs or +hardware-pwm pins for e.g. fans. One may define any number of sections +with an "sx1509" prefix. Each expander provides a set of 16 pins +(sx1509_my_sx1509:PIN_0 to sx1509_my_sx1509:PIN_15) which can be used +in the printer configuration. + +``` +[sx1509 my_sx1509] +i2c_address: +# I2C address used by this expander. Depending on the hardware +# jumpers this is one out of the following addresses: 62 63 112 +# 113. This parameter must be provided. +#i2c_mcu: mcu +# The name of the micro-controller that the SX1509 chip is connected +# to. The default is "mcu". +#i2c_bus: +# If the I2C implementation of your micro-controller supports +# multiple I2C busses, you may specify the bus name here. The +# default is to use the default micro-controller i2c bus. +``` + +## [samd_sercom] + +SAMD SERCOM configuration to specify which pins to use on a given +SERCOM. One may define one section with the "samd_sercom" prefix per +SERCOM available. Each SERCOM must be configured prior to using it as +SPI or I2C peripheral. Place this config section above any other +section that makes use of SPI or I2C buses. + +``` +[samd_sercom sercom0] +tx_pin: +# MOSI pin for SPI communication, or SDA (data) pin for I2C +# communication. The pin must have a valid pinmux configuration +# for the given SERCOM peripheral. This parameter must be provided. +#rx_pin: +# MISO pin for SPI communication. This pin is not used for I2C +# communication (I2C uses tx_pin for both sending and receiving). +# The pin must have a valid pinmux configuration for the given +# SERCOM peripheral. This parameter is optional. +clk_pin: +# CLK pin for SPI communication, or SCL (clock) pin for I2C +# communication. The pin must have a valid pinmux configuration +# for the given SERCOM peripheral. This parameter must be provided. +``` + +## [adc_scaled] + +Duet2 Maestro analog scaling by vref and vssa readings. Defining an +adc_scaled section enables virtual adc pins (such as "my_name:PB0") +that are automatically adjusted by the board's vref and vssa +monitoring pins. Be sure to define this config section above any +config sections that use one these virtual pins. + +``` +[adc_scaled my_name] +vref_pin: +# The ADC pin to use for VREF monitoring. This parameter must be +# provided. +vssa_pin: +# The ADC pin to use for VSSA monitoring. This parameter must be +# provided. +#smooth_time: 2.0 +# A time value (in seconds) over which the vref and vssa +# measurements will be smoothed to reduce the impact of measurement +# noise. The default is 2 seconds. +``` + +## [replicape] + +Replicape support - see the +[generic-replicape.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/generic-replicape.cfg) +file for further details. + +``` +[replicape] +``` diff --git a/docs/Endstop_Phase.md b/docs/Endstop_Phase.md index f9944857..ec9ee68e 100644 --- a/docs/Endstop_Phase.md +++ b/docs/Endstop_Phase.md @@ -105,8 +105,8 @@ Additional notes enable this feature be sure the G-Code slicer is configured with a layer height that is a multiple of a "full step", manually enable the endstop_align_zero option in the endstop_phase config section - (see config/example-extras.cfg for further details), and then - re-level the bed screws. + (see [config reference](Config_Reference.md#endstop_phase) for + further details), and then re-level the bed screws. * It is possible to use this system with traditional (non-Trinamic) stepper motor drivers. However, doing this requires making sure that @@ -122,4 +122,5 @@ Additional notes power reset, which would arrange for both the micro-controller and stepper motor drivers to be reset together. If using this mechanism, one would then need to manually configure the "endstop_phase" config - sections (see config/example-extras.cfg for the details). + sections (see [config reference](Config_Reference.md#endstop_phase) + for the details). diff --git a/docs/FAQ.md b/docs/FAQ.md index 95bbff12..abcb501b 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -121,8 +121,9 @@ If you want to change the baud rate anyway, then the new rate will need to be configured in the micro-controller (during **make menuconfig**) and that updated code will need to be compiled and flashed to the micro-controller. The Klipper printer.cfg file will -also need to be updated to match that baud rate (see the example.cfg -file for details). For example: +also need to be updated to match that baud rate (see the +[config reference](Config_Reference.md#mcu) for details). For +example: ``` [mcu] baud: 250000 @@ -149,8 +150,7 @@ when printing directly from OctoPrint. (The printer may move faster than OctoPrint can send movement commands.) If you wish to run on one one of these slower boards anyway, consider using the "virtual_sdcard" feature when printing (see -[config/example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -for details). +[config reference](Config_Reference.md#virtual_sdcard) for details). For running on the Beaglebone, see the [Beaglebone specific installation instructions](beaglebone.md). @@ -237,8 +237,7 @@ process itself (or fundamentally does not have a homing process) then consider using a safe_z_home or homing_override section in the config file. If you need to move a stepper for diagnostic or debugging purposes then consider adding a force_move section to the config -file. See -[example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) +file. See [config reference](Config_Reference.md#customized_homing) for further details on these options. ### Why is the Z position_endstop set to 0.5 in the default configs? @@ -341,16 +340,14 @@ See the "config_digital_out" command in the In addition, the micro-controller software is configured with a minimum and maximum temperature range for each heater at startup (see the min_temp and max_temp parameters in the -[example.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example.cfg) -file for details). If the micro-controller detects that the -temperature is outside of that range then it will also enter a -"shutdown" state. +[config reference](Config_Reference.md#extruder) for details). If the +micro-controller detects that the temperature is outside of that range +then it will also enter a "shutdown" state. Separately, the host software also implements code to check that heaters and temperature sensors are functioning correctly. See the -"verify_heater" section of the -[example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -for further details. +[config reference](Config_Reference.md#verify_heater) for further +details. ### How do I convert a Marlin pin number to a Klipper pin name? diff --git a/docs/G-Codes.md b/docs/G-Codes.md index 43a3ae85..31ada1c3 100644 --- a/docs/G-Codes.md +++ b/docs/G-Codes.md @@ -44,9 +44,9 @@ possible G-Code command. Instead, Klipper prefers human readable If one requires a less common G-Code command then it may be possible to implement it with a custom Klipper gcode_macro (see -[example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -for details). For example, one might use this to implement: `G12`, -`G29`, `G30`, `G31`, `M42`, `M80`, `M81`, `T1`, etc. +[config reference](Config_Reference.md#gcode_macro) for details). For +example, one might use this to implement: `G12`, `G29`, `G30`, `G31`, +`M42`, `M80`, `M81`, `T1`, etc. ## G-Code SD card commands @@ -320,9 +320,7 @@ enabled: [SAMPLES_RESULT=median|average]`: Move the nozzle downwards until the probe triggers. If any of the optional parameters are provided they override their equivalent setting in the probe config section - (see - [example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) - for details). + (see [config reference](Config_Reference.md#probe) for details). - `QUERY_PROBE`: Report the current status of the probe ("triggered" or "open"). - `PROBE_ACCURACY [PROBE_SPEED=] [SAMPLES=] @@ -622,15 +620,17 @@ been enabled: The following command is enabled if an [input_shaper] config section has been enabled: - `SET_INPUT_SHAPER [SHAPER_FREQ_X=] - [SHAPER_FREQ_Y=] [DAMPING_RATIO_X=] + [SHAPER_FREQ_Y=] + [DAMPING_RATIO_X=] [DAMPING_RATIO_Y=] [SHAPER_TYPE=] - [SHAPER_TYPE_X=] [SHAPER_TYPE_Y=]`: Modify - input shaper parameters. Note that SHAPER_TYPE parameter resets input shaper - for both X and Y axes even if different shaper types have been configured - in [input_shaper] section. SHAPER_TYPE cannot be used together with either - of SHAPER_TYPE_X and SHAPER_TYPE_Y parameters. See - [example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) - for more details on each of these parameters. + [SHAPER_TYPE_X=] [SHAPER_TYPE_Y=]`: + Modify input shaper parameters. Note that SHAPER_TYPE parameter + resets input shaper for both X and Y axes even if different shaper + types have been configured in [input_shaper] section. SHAPER_TYPE + cannot be used together with either of SHAPER_TYPE_X and + SHAPER_TYPE_Y parameters. See + [config reference](Config_Reference.md#input_shaper) for more + details on each of these parameters. ## Temperature Fan Commands diff --git a/docs/Installation.md b/docs/Installation.md index 50fc3c78..049690b4 100644 --- a/docs/Installation.md +++ b/docs/Installation.md @@ -127,10 +127,8 @@ Configuring Klipper The Klipper configuration is stored in a text file on the Raspberry Pi. Take a look at the example config files in the [config directory](https://github.com/KevinOConnor/klipper/tree/master/config/). The -[example.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example.cfg) -file contains documentation on command parameters and it can also be -used as an initial config file template. However, for most printers, -one of the other config files may be a more concise starting point. +[config reference](Config_Reference.md) contains documentation on +config parameters. Arguably the easiest way to update the Klipper configuration file is to use a desktop editor that supports editing files over the "scp" @@ -144,7 +142,7 @@ Alternatively, one can also copy and edit the file directly on the Raspberry Pi via ssh - for example: ``` -cp ~/klipper/config/example.cfg ~/printer.cfg +cp ~/klipper/config/example-cartesian.cfg ~/printer.cfg nano ~/printer.cfg ``` diff --git a/docs/Overview.md b/docs/Overview.md index f7ffe574..5cd815b5 100644 --- a/docs/Overview.md +++ b/docs/Overview.md @@ -15,8 +15,8 @@ communication with the Klipper developers. # Configuration and Tuning Guides - [Installation](Installation.md): Guide to installing Klipper. - - [config/example.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example.cfg) - a reference for the config file. +- [Config Reference](Config_Reference.md): Description of config + parameters. - [Config checks](Config_checks.md): Verify basic pin settings in the config file. - [Bed level](Bed_Level.md): Information on "bed leveling" in Klipper. diff --git a/docs/Probe_Calibrate.md b/docs/Probe_Calibrate.md index 5ec06bda..9b7a08e5 100644 --- a/docs/Probe_Calibrate.md +++ b/docs/Probe_Calibrate.md @@ -130,9 +130,8 @@ different parameters to see their impact - see the generally obtains repeatable results but has an occasional outlier, then it may be possible to account for that by using multiple samples on each probe - read the description of the probe `samples` config -parameters in the -[example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -file for more details. +parameters in the [config reference](Config_Reference.md#probe) for +more details. If new probe speed, samples count, or other settings are needed, then update the printer.cfg file and issue a `RESTART` command. If so, it diff --git a/docs/Sensorless_Homing.md b/docs/Sensorless_Homing.md index d8f95fdb..949866a3 100644 --- a/docs/Sensorless_Homing.md +++ b/docs/Sensorless_Homing.md @@ -61,7 +61,7 @@ The name of the virtual end stop pin is derived from the name of the TMC2130 sec The TMC2130 and TMC5160 have both a `diag0_pin` and `diag1_pin` in most known hardware the `diag1_pin` is appropriate. In order for klipper to correctly configure the driver for sensorless homing, the correct configuration property name `diag0_pin` or `diag1_pin` must be used. Which is used is determined by which driver pin is connected to the MCU pin. -ATTENTION: This guide only mentions the mandatory parameters and the ones needed to set up sensorless homing. There are many other options to configure on a TMC2130, make sure to take a look at `config/example-extras.cfg` for all the available options. +ATTENTION: This guide only mentions the mandatory parameters and the ones needed to set up sensorless homing. There are many other options to configure on a TMC2130, make sure to take a look at [config reference](Config_Reference.md#tmc2130) for all the available options. ## Testing of SPI/UART communication Now that the stepper driver is configured, let's make sure that Klipper can communicate with the TMC2130 by sending the following extended G-Code command to the printer: diff --git a/docs/Slicers.md b/docs/Slicers.md index b3863dc3..35c9bde0 100644 --- a/docs/Slicers.md +++ b/docs/Slicers.md @@ -22,9 +22,8 @@ See [sample-macros.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/sample-macros.cfg) for example START_PRINT and END_PRINT macros. -See the -[example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -file for details on defining a gcode_macro. +See the [config reference](Config_Reference.md#gcode_macro) for +details on defining a gcode_macro. # Large retraction settings may require tuning Klipper diff --git a/docs/beaglebone.md b/docs/beaglebone.md index af0d6d1d..114dbf6a 100644 --- a/docs/beaglebone.md +++ b/docs/beaglebone.md @@ -100,6 +100,5 @@ Unfortunately, the Beaglebone processor can sometimes struggle to run OctoPrint well. Print stalls have been known to occur on complex prints (the printer may move faster than OctoPrint can send movement commands). If this occurs, consider using the "virtual_sdcard" feature -(see -[config/example-extras.cfg](https://github.com/KevinOConnor/klipper/tree/master/config/example-extras.cfg) -for details) to print directly from Klipper. +(see [config reference](Config_Reference.md#virtual_sdcard) for +details) to print directly from Klipper. diff --git a/klippy/extras/verify_heater.py b/klippy/extras/verify_heater.py index 8c5360d5..6726e479 100644 --- a/klippy/extras/verify_heater.py +++ b/klippy/extras/verify_heater.py @@ -6,7 +6,7 @@ import logging HINT_THERMAL = """ -See the 'verify_heater' section in config/example-extras.cfg +See the 'verify_heater' section in docs/Config_Reference.md for the parameters that control this check. """ diff --git a/test/klippy/commands.test b/test/klippy/commands.test index 42237cef..50e71ab3 100644 --- a/test/klippy/commands.test +++ b/test/klippy/commands.test @@ -1,6 +1,6 @@ # Tests for miscellaneous g-code commands DICTIONARY atmega2560.dict -CONFIG ../../config/example.cfg +CONFIG ../../config/example-cartesian.cfg # Simple status commands GET_POSITION diff --git a/test/klippy/out_of_bounds.test b/test/klippy/out_of_bounds.test index 9a56dea9..e07ea071 100644 --- a/test/klippy/out_of_bounds.test +++ b/test/klippy/out_of_bounds.test @@ -1,5 +1,5 @@ # Test that basic bounds checks work -CONFIG ../../config/example.cfg +CONFIG ../../config/example-cartesian.cfg DICTIONARY atmega2560.dict SHOULD_FAIL diff --git a/test/klippy/printers.test b/test/klippy/printers.test index bd4287ef..d7479700 100644 --- a/test/klippy/printers.test +++ b/test/klippy/printers.test @@ -3,7 +3,7 @@ GCODE move.gcode # Example kinematic files DICTIONARY atmega2560.dict -CONFIG ../../config/example.cfg +CONFIG ../../config/example-cartesian.cfg CONFIG ../../config/example-corexy.cfg CONFIG ../../config/example-corexz.cfg CONFIG ../../config/example-delta.cfg -- cgit v1.2.3-70-g09d2