# 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. # 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. #activate_gcode: # A list of G-Code commands (one per line; subsequent lines # indented) to execute prior to each probe attempt. 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 (one per line; subsequent lines # indented) to execute after each probe attempt completes. 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. 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.200 # The amount of time (in seconds) that it takes the BLTouch pin to # move up or down. The default is 0.200 seconds. #test_sensor_pin: True # This enables a software test of the BLTouch sensor pin during the # first probe attempt. The test can help catch cases where the # BLTouch is not responding correctly. It may be necessary to # disable this test for some BLTouch "clones" if they consistently # report "BLTouch sensor test failed" errors. The default is True. #x_offset: #y_offset: #z_offset: #speed: # See the "probe" section for information on these parameters. # 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. #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 retract between each sample if # sampling more than once. Default is 2mm. # 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. #[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. #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 retract between each sample if # sampling more than once. Default is 2mm. #min_point: # An X,Y point defining the minimum coordinate to probe on # the bed. Note that this refers to the nozzle position, # and take care that you do not define a point that will move # the probe off of the bed. This parameter must be provided. #max_point: # An X,Y point defining the maximum coordinate to probe on # the bed. Follow the same precautions as listed in min_point. # Also note that this does not necessarily define the last point # probed, only the maximum coordinate. This parameter must be provided. #probe_count: 3,3 # A comma separated 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 for both axes. Default is 3,3 # which probes a 3x3 grid. #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. # 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 Z stepper. 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. #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 retract between each sample if # sampling more than once. Default is 2mm. # 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 #samples: 1 # Number of probe samples per point. The defaut is 1 #sample_retract_dist: 2.0 # Distance in mm to retract the probe between samples. Default is 2. # 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. #deactivate_gcode: # A list of G-Code commands (one per line; subsequent lines # indented) to execute on a G-Code tool change command (eg, "T1") # that deactivates this extruder and activates some other # extruder. It only makes sense to define this section on # multi-extruder printers. The default is to not run any special # G-Code commands on deactivation. #activate_gcode: # A list of G-Code commands (one per line; subsequent lines # indented) to execute on a G-Code tool change command (eg, "T0") # that activates this extruder. It only makes sense to define this # section on multi-extruder printers. The default is to not run any # special G-Code commands on activation. # 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 - use the SET_DUAL_CARRIAGE # command in the activate_gcode / deactivate_gcode section of the # appropriate extruder. Be sure to also use that mechanism 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. # 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] #heating_gain: 2 # The minimum temperature (in Celsius) that the heater must increase # by when approaching a new target temperature. The default is 2. #check_gain_time: # The amount of time (in seconds) that the heating_gain must be met # in before an error is raised. The default is 20 seconds for # extruders and 60 seconds for heater_bed. #hysteresis: 5 # The difference between the target temperature and the current # temperature for the heater to be considered within range of the # target temperature. The default is 5. #max_error: 120 # The maximum temperature difference a heater that falls outside the # target temperature range may accumulate before an error is # raised. For example, if the target temperature is 200, the # hysteresis is 5, the max_error is 120, and the temperature is # reported at 185 degrees for 12 seconds then an error would be # raised (or 24 seconds at 190, or 120 seconds at 194, etc.). The # default is 120. # 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 (one per line; subsequent lines # indented) to execute on an idle timeout. 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. # 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 the 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. # 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 TMC2130, # TMC2208, TMC2224 or TMC2660 drivers 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. # 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: # 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 # 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: # See the "fan" section in example.cfg for a description of the # above parameters. #sensor_type: EPCOS 100K B57560G104F #sensor_pin: analog13 # See the "heater" section for details about the sensor_type and # sensor_pin parameters. #min_temp: 0 #max_temp: 100 # The maximum range of valid temperatures (in Celsius) that the # sensor 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. Set this range just wide enough so # that reasonable temperatures do not result in an error. These # parameters must be provided. #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 when the sensor temperature is the set # value. The default is 0.3. #control: watermark # Control algorithm (either watermark or pid). This parameter must # be provided. #pid_Kp: 40 # Kp is the "proportional" constant for the pid. This parameter must # be provided for PID heaters. #pid_Ki: 0.2 # Ki is the "integral" constant for the pid. This parameter must be # provided for PID heaters. #pid_Kd: 0.1 # Kd is the "derivative" constant for the pid. This parameter must # be provided for PID heaters. #pid_deriv_time: 2.0 # A time value (in seconds) over which the derivative in the pid # will be smoothed to reduce the impact of measurement noise. The # default is 2 seconds. #pid_integral_max: # The maximum "windup" the integral term may accumulate. The default # is to use the same value as max_power. # 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. # 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: 70 # Initial angle to set the servo to when the mcu resets. Must be between # 0 and maximum_servo_angle This parameter is optional. If both # initial_angle and initial_pulse_width are set initial_angle will be used. #initial_pulse_width: 0.0015 # Initial pulse width time (in seconds) to set the servo to when # the mcu resets. Must be between minimum_pulse_width and maximum_pulse_width. # This parameter is optional. If both initial_angle and initial_pulse_width # are set initial_angle will be used #enable: True # Enable or disable servo. It can be enabled or disabled later using # SET_SERVO SERVO=my_servo ENABLE=<0|1> g-command. The default is True (=enabled) # 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. # 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. 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. # 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. # 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. #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. # 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] #address: # I2C address used by this expander. Depending on the hardware jumpers # this is one out of the following addresses: 0x3E 0x3F 0x70 0x71. This # parameter must be provided #bus: 0 # If the I2C implementation of your microcontroller supports multiple I2C # busses, you may specify the bus number here. The default is 0. # 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. #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) to configure the driver to use # during stepper movement. This parameter must be provided. #hold_current: # The amount of current (in amps) 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_BLANK_TIME_SELECT: 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. #diag1_pin: # The micro-controller pin attached to the DIAG1 line of the TMC2130 # chip. 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. # 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. #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) to configure the driver to use # during stepper movement. This parameter must be provided. #hold_current: # The amount of current (in amps) 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_BLANK_TIME_SELECT: 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 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]"). The current of the TMC2660 stepper driver # is adjustable at run-time using # "SET_TMC_CURRENT STEPPER=stepper_x CURRENT=.1" type extended g-code # commands. #[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 bus 0. #spi_speed: 2000000 # SPI bus frequency used to communicate with the TMC2660 stepper # driver. The default is 2000000. #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 ampere) used by the driver during stepper # movement. 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_DEDGE: False #driver_TBL: 36 # Valid values are 16, 24, 36, 54. #driver_CHM: spreadcycle # Valid values are 'spreadcycle' and 'constant_toff' #driver_RNDTF: False #driver_HDEC: False #driver_HEND: 7 if spreadcycle is used, 3 otherwise #driver_HSTRT: 5 if spreadcycle is used, 4 otherwise #driver_TOFF: 7 if spreadcycle is used, 4 otherwise #driver_SEIMIN: half # Valid values are 'quarter' and 'half'. #driver_SEDN: 32 # Valid values are 1, 2, 8, 32. #driver_SEMAX: 0 #driver_SEUP: 1 # Valid values are 1, 2, 4, 8. #driver_SEMIN: 0 #driver_SFILT: True #driver_SGT: -64 #driver_SLPH: min # Valid values are 'min', 'min_tc', 'med_tc', 'max' #driver_SLPL: min # Valid values are 'min', 'med', 'max' #driver_DISS2G: False #driver_TS2G: 0.8 # Valid values are 0.8, 1.2, 1.6, 3.2. #driver_VSENSE: high # Valid values are 'high' and 'low' # # 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. # 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 (one per line; subsequent lines # indented) to execute in place of G28 commands found in the normal # g-code input. 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. # 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. # 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 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), or "ssd1306". 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: # The pins connected to an uc1701 type lcd. These parameters must be # provided when using an uc1701 display. #cs_pin: #dc_pin: # The pins connected to an ssd1306 type lcd when in "4-wire" spi # mode. The default is to use i2c mode for ssd1306 displays. #menu_root: # Entry point for menu, root menu container name. If this parameter # is not provided then default menu root is used. When provided # menu entry is 'deck' type then it'll be initiated immediately at startup. # Description of menu items is located in example-menu.cfg file. #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) #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. #back_pin: # The pin connected to 'back' button. This parameter is optional, menu # can be used without it. #up_pin: # The pin connected to 'up' button. This parameter must be provided # when using menu without encoder. #down_pin: # The pin connected to 'down' button. This parameter must be provided # when using menu without encoder. #kill_pin: # The pin connected to 'kill' button. This button will call # emergency stop. # 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 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. At least two # measurements must be provided. # 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. #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. # 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 (one per line; subsequent lines # indented) to execute in place of "my_cmd". This parameter is # evaluated using Python "string format syntax" with the command # parameters as named arguments. For example, if one were to define # a macro MY_DELAY with gcode "G4 P{DELAY}" then the command # "MY_DELAY DELAY=100" would evaluate to "G4 P100". 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". The default is to # require that all parameters used in the gcode script be present in # the command invoking the macro. # Replicape support - see the generic-replicape.cfg file for further # details. #[replicape]