Extruder settings control one material path: Steps per millimeter, speed, temperature, and retraction affect different parts of the feed.
Extruder settings control one material path #
V1 Setting V2 Setting Description

Whether to activate this extruder instance. All configuration for it is ignored if set to false.

Each enabled extruder creates a separate extruder module instance that can be controlled with tool change commands (T0, T1, etc.).

Use the pattern to create multiple extruder instances (e.g., extruder.hotend.enable, extruder.hotend2.enable).

Number of stepper motor steps required to move one millimeter of filament through the extruder — a critical calibration value.

Depends on your stepper motor steps/revolution (typically 200 for 1.8° motors), microstepping setting (e.g. 16x = 3200 steps/rev), and your extruder gear ratio/hobbed bolt diameter. Calculate as: (motor_steps_per_rev × microstepping) / (hobbed_bolt_circumference × gear_ratio). Example: (200 × 16) / (3.14159 × 7mm × 1) ≈ 145 steps/mm.

Fine-tune by extruding a known length and measuring actual extrusion. Can be adjusted at runtime with M92 E<value> and saved with M500. [Learn more](extruder.md#steps_per_millimeter)

Filament diameter in millimeters for volumetric extrusion mode. When set to a value greater than 0.01mm, E values in G-code are interpreted as cubic millimeters of filament volume instead of linear millimeters.

  • Standard values: 1.75mm or 3.0mm (2.85mm)
  • 0: disables volumetric extrusion, using standard linear E values

Can be changed at runtime with M200 D<diameter> (e.g., M200 D1.75) or disabled with M200 D0. Useful when switching between different filament sizes or when your slicer outputs volumetric E values. [Learn more](extruder.md#filament-diameter)

Maximum acceleration for the extruder stepper motor in mm/s², controlling how quickly the extruder can change speed during extrusion moves.

Higher values allow faster speed changes but may cause filament grinding or skipped steps if too aggressive; lower values produce smoother extrusion but may cause artifacts during rapid direction changes. Typical values: 500-3000 mm/s².

Affects extruder-only moves (retractions) and the E-axis component of combined moves. Adjust based on your extruder's mechanical capabilities and filament characteristics. Can be changed at runtime with M204 E<value>.

Maximum allowable speed for the extruder stepper motor in mm/s — the firmware never moves the extruder faster than this, regardless of what speeds are requested in G-code or calculated during motion planning.

Typical values: 50-200 mm/s, depending on extruder type and hotend capabilities. Direct drive extruders can typically handle higher speeds than Bowden extruders.

Too high a value may cause grinding or skipped steps; too low limits print speed. Affects both printing moves and retractions, and can be set per-extruder for multi-extruder setups.

Pin for the extruder stepper motor driver's step signal. Each step pulse moves the motor one microstep according to the driver's microstepping configuration, toggling high/low to create the pulse train that drives the motor.

  • Typical Smoothieboard pins: 2.3 (E0/delta axis), 2.8 (E1/epsilon axis)
  • Can be inverted by appending ! (e.g., 2.3!)

Step frequency equals speed_mm_s × steps_per_mm, so a 100mm/s move with 145 steps/mm produces 14,500 steps/second. Ensure your controller can handle the step frequency at maximum speed.

Pin for the extruder stepper motor driver's direction signal. Controls whether the motor rotates forward (extrude) or backward (retract); the direction pin must be set before step pulses are sent.

Typical Smoothieboard pins: 0.22 (E0/delta axis), 2.13 (E1/epsilon axis). If your extruder moves the wrong way (retracting when it should extrude), invert this pin by appending ! (e.g., 0.22!).

Test direction by sending G1 E10 F100 and verify filament extrudes forward out of the nozzle.

Pin for the extruder stepper motor driver's enable signal. When active, the motor driver is powered and holds position with full torque; when inactive, the driver is disabled and the motor freewheels (no holding torque).

Typical Smoothieboard pins: 0.21 (E0/delta axis), 0.10 (E1/epsilon axis). Most drivers are active-low (enabled when pin is LOW), but some are active-high — append ! to invert if needed (e.g., 0.21!).

The motor automatically enables before moves and can disable after a timeout (see ). Manual control: M17 enables, M18/M84 disables.

X-axis offset of this extruder's nozzle from the primary extruder (T0), in millimeters. Used only in multi-extruder setups to compensate for physical nozzle position differences; the firmware automatically applies these offsets when switching tools with T1, T2, etc.

Positive values mean this extruder's nozzle is to the right of T0. Measure the offset by homing, moving to a reference point with T0, switching to this tool, and measuring the distance needed to return to the same point.

The primary extruder (T0) should always have offsets of 0,0,0; only set offsets for secondary extruders (T1, T2, etc.).

Y-axis offset of this extruder's nozzle from the primary extruder (T0), in millimeters. Used only in multi-extruder setups to compensate for physical nozzle position differences.

Positive values mean this extruder's nozzle is toward the back (away from Y=0) compared to T0. See for the calibration procedure and usage details.

Must be accurately calibrated for proper layer alignment when switching between extruders during multi-material or multi-color prints.

Z-axis offset of this extruder's nozzle from the primary extruder (T0), in millimeters. Used only in multi-extruder setups to compensate for different nozzle heights — critical for proper first layer when switching extruders.

Positive values mean this extruder's nozzle is higher (further from the bed) than T0. Calibrate by homing Z, moving to a known position with T0, switching to this tool, and measuring the height difference. Even small differences (0.05mm) can cause first layer problems.

Some slicers can compensate for Z-offset in G-code, but it's best to configure it in firmware for consistent behavior across all print jobs.

Amount of filament to retract during firmware retraction, in millimeters. Used by G10 (retract) and G11 (unretract) to pull filament back, relieving nozzle pressure and preventing oozing/stringing during travel moves.

  • Typical values: 0.5-2mm for direct drive, 4-7mm for Bowden

Too little retraction causes stringing; too much can cause clogs or air gaps. The total retract amount includes this length plus (if negative). Can be changed at runtime with M207 S<length> (e.g., M207 S1.5). Many slicers can use firmware retraction instead of generating explicit E moves. [Learn more about retraction](extruder.md#retract)

Speed at which filament is retracted during firmware retraction, in mm/s. Used by G10. Stored and used internally in mm/s, but the M207 command expects mm/min (multiply by 60).

  • Typical values: 25-60 mm/s (1500-3600 mm/min)

Faster retractions reduce stringing but may cause grinding or skipped steps if too fast. Direct drive can typically handle faster retractions than Bowden. Speed should be fast enough to quickly relieve pressure but not so fast that it damages filament or causes extruder jamming. Can be changed at runtime with M207 F<mm_per_min>.

Additional length of filament to extrude when recovering (unretract) beyond the retracted amount. Used by G11. Total recover distance = + this value.

  • Typical values: -0.2 to +0.2mm
  • Positive: primes the nozzle (useful after long travels)
  • Negative: recovers slightly less than retracted (can help with oozy materials)
  • 0: recovers exactly the retracted amount

Compensates for material properties, oozing during travel, or pressure changes in the melt zone. Fine-tune to eliminate blobs (reduce value) or gaps (increase value) after travel moves. Can be changed at runtime with M208 S<length>.

Speed at which filament is recovered (unretracted) during firmware unretraction, in mm/s. Used by G11. Stored and used internally in mm/s, but the M208 command expects mm/min (multiply by 60).

  • Typical values: 10-40 mm/s (600-2400 mm/min), usually slower than retract speed

Slower recovery speeds help prevent blobs and allow time for pressure in the nozzle to build back up smoothly. Too fast can cause blobs; too slow can cause gaps at the start of extrusion. Should generally be less than . Can be changed at runtime with M208 F<mm_per_min>.

Amount to lift the Z-axis during retraction, in millimeters (Z-hop / Z-lift feature). When G10 runs, the nozzle lifts by this amount after retracting; during G11, it lowers back to the original height after unretraction.

  • Typical values: 0.2-1.0mm
  • 0: disables Z-lift

Z-hop reduces the chance of the nozzle dragging through or knocking over printed parts during travel moves — especially useful for tall thin features, parts with significant Z-variation, or materials prone to warping. Trade-off: increases print time due to extra Z movements. Can be changed at runtime with M207 Z<length>.

Speed for Z-axis movement during Z-lift operations, in mm/min — used for both lifting (during G10) and lowering (during G11) moves when is greater than zero. Note: this is specified in mm/min (not mm/s like most other extruder speeds).

  • Typical values: 3000-9000 mm/min (50-150 mm/s)

Faster Z-lift reduces travel time overhead but may cause ringing or mechanical stress on Z-axis components. Should not exceed the Z-axis maximum speed. Can be changed at runtime with M207 Q<mm_per_min>.

This is a wiki! If you'd like to improve this page, you can edit it on GitHub.