From 2981bd601b2604135d36e064e385badbe6ab4201 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Thu, 7 Nov 2019 09:45:36 -0500 Subject: [PATCH] extruder: Treat extrude with Z only movement to be an "extrude only" move Do not apply max_extrude_cross_section check, and do apply extrude_only_xxx checks to Z only moves that also extrude. Some printer start scripts will prime the extruder while moving the Z. Signed-off-by: Kevin O'Connor --- config/example.cfg | 2 +- klippy/kinematics/extruder.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/example.cfg b/config/example.cfg index a1a9ed44..b44bae52 100644 --- a/config/example.cfg +++ b/config/example.cfg @@ -121,7 +121,7 @@ filament_diameter: 3.500 #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 place any limit on normal printing moves. If not +# 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. diff --git a/klippy/kinematics/extruder.py b/klippy/kinematics/extruder.py index 7d702280..c31a956c 100644 --- a/klippy/kinematics/extruder.py +++ b/klippy/kinematics/extruder.py @@ -96,7 +96,7 @@ class PrinterExtruder: raise homing.EndstopError( "Extrude below minimum temp\n" "See the 'min_extrude_temp' config option for details") - if not move.is_kinematic_move or move.extrude_r < 0.: + if (not move.axes_d[0] and not move.axes_d[1]) or move.extrude_r < 0.: # Extrude only move (or retraction move) - limit accel and velocity if abs(move.axes_d[3]) > self.max_e_dist: raise homing.EndstopError(