diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 130a7bd5b..f943568fd 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -431,7 +431,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously) #define DEFAULT_XYJERK 20.0 // (mm/sec) +#ifdef DELTA +#define DEFAULT_ZJERK 20.0 // (mm/sec) Must be same as XY for delta +#else #define DEFAULT_ZJERK 0.4 // (mm/sec) +#endif // DELTA #define DEFAULT_EJERK 5.0 // (mm/sec) //=========================================================================== diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index fd4bda0db..943e9e1e1 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -177,7 +177,10 @@ #define DEFAULT_MINSEGMENTTIME 20000 // If defined the movements slow down when the look ahead buffer is only half full +// (don't use SLOWDOWN with DELTA because DELTA generates hundreds of segments per second) +#ifndef DELTA #define SLOWDOWN +#endif // Frequency limit // See nophead's blog for more info diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 38da1db08..fc0c95224 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -712,7 +712,11 @@ static void homeaxis(int axis) { st_synchronize(); destination[axis] = 2*home_retract_mm(axis) * home_dir(axis); +#ifdef DELTA + feedrate = homing_feedrate[axis]/10; +#else feedrate = homing_feedrate[axis]/2 ; +#endif plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize();