mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-23 12:04:19 +00:00
Make stepper shutdown after inactivity dependent
Make stepper shutdown after inactivity dependent on a new set of #defines. DISABLE_INACTIV_X DISABLE_INACTIV_Y DISABLE_INACTIV_Z DISABLE_INACTIV_E And make exemplaric Configuration. Names can be discussed. This makes the disabling of the steppers independent from the DISABLE_? settings witch shut down the steppers immediately.
This commit is contained in:
parent
051325ccd7
commit
b6e69e71ce
@ -349,7 +349,7 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
|
||||
#define Z_ENABLE_ON 0
|
||||
#define E_ENABLE_ON 0 // For all extruders
|
||||
|
||||
// Disables axis when it's not being used.
|
||||
// Disables axis stepper immediately when it's not being used.
|
||||
// WARNING: When motors turn off there is a chance of losing position accuracy!
|
||||
#define DISABLE_X false
|
||||
#define DISABLE_Y false
|
||||
|
@ -52,7 +52,7 @@
|
||||
* The maximum buffered steps/sec of the extruder motor is called "se".
|
||||
* Start autotemp mode with M109 S<mintemp> B<maxtemp> F<factor>
|
||||
* The target temperature is set to mintemp+factor*se[steps/sec] and is limited by
|
||||
* mintemp and maxtemp. Turn this off by excuting M109 without F*
|
||||
* mintemp and maxtemp. Turn this off by executing M109 without F*
|
||||
* Also, if the temperature is set to a value below mintemp, it will not be changed by autotemp.
|
||||
* On an Ultimaker, some initial testing worked with M109 S215 B260 F1 in the start.gcode
|
||||
*/
|
||||
@ -232,7 +232,13 @@
|
||||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIV_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 120
|
||||
#define DISABLE_INACTIVE_X true
|
||||
#define DISABLE_INACTIVE_Y true
|
||||
#define DISABLE_INACTIVE_Z true // set to false if the nozzle will fall down on your printed part when print has finished.
|
||||
#define DISABLE_INACTIVE_E true
|
||||
|
||||
#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate
|
||||
#define DEFAULT_MINTRAVELFEEDRATE 0.0
|
||||
|
@ -6956,16 +6956,16 @@ void manage_inactivity(bool ignore_stepper_queue/*=false*/) {
|
||||
|
||||
if (stepper_inactive_time && ms > previous_cmd_ms + stepper_inactive_time
|
||||
&& !ignore_stepper_queue && !blocks_queued()) {
|
||||
#if DISABLE_X == true
|
||||
#if DISABLE_INACTIV_X == true
|
||||
disable_x();
|
||||
#endif
|
||||
#if DISABLE_Y == true
|
||||
#if DISABLE_INACTIV_Y == true
|
||||
disable_y();
|
||||
#endif
|
||||
#if DISABLE_Z == true
|
||||
#if DISABLE_INACTIV_Z == true
|
||||
disable_z();
|
||||
#endif
|
||||
#if DISABLE_E == true
|
||||
#if DISABLE_INACTIV_E == true
|
||||
disable_e0();
|
||||
disable_e1();
|
||||
disable_e2();
|
||||
|
Loading…
Reference in New Issue
Block a user