Permalink
Browse files

Made a more granular configuration possible PREVENT_LENGTHY_EXTRUDE.…

… You can now decide to allow/disallow large length of extrusions to be executed.

Turning off the protection might be beneficial to those who want to do fast and long reversals.
  • Loading branch information...
1 parent d88205d commit e3fe1f0d007e7306ac3b20bd99b3a7debbf91fcd @ErikDeBruijn ErikDeBruijn committed May 8, 2012
Showing with 5 additions and 0 deletions.
  1. +3 −0 Marlin/Configuration.h
  2. +2 −0 Marlin/planner.cpp
View
@@ -108,6 +108,9 @@
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit
//can be software-disabled for whatever purposes by
#define PREVENT_DANGEROUS_EXTRUDE
+//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately.
+#define PREVENT_LENGTHY_EXTRUDE
+
#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
View
@@ -495,12 +495,14 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa
SERIAL_ECHO_START;
SERIAL_ECHOLNPGM(MSG_ERR_COLD_EXTRUDE_STOP);
}
+ #ifdef PREVENT_LENGTHY_EXTRUDE
if(labs(target[E_AXIS]-position[E_AXIS])>axis_steps_per_unit[E_AXIS]*EXTRUDE_MAXLENGTH)
{
position[E_AXIS]=target[E_AXIS]; //behave as if the move really took place, but ignore E part
SERIAL_ECHO_START;
SERIAL_ECHOLNPGM(MSG_ERR_LONG_EXTRUDE_STOP);
}
+ #endif
#endif
// Prepare to set up new block

0 comments on commit e3fe1f0

Please sign in to comment.