Merge pull request #2989 from AnHardt/fix2661
Pre home display - Stepper release
This commit is contained in:
commit
eb85342fd9
36 changed files with 251 additions and 66 deletions
|
@ -349,11 +349,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -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_INACTIVE_? 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
|
||||
|
|
|
@ -259,6 +259,7 @@ extern float home_offset[3]; // axis[n].home_offset
|
|||
extern float min_pos[3]; // axis[n].min_pos
|
||||
extern float max_pos[3]; // axis[n].max_pos
|
||||
extern bool axis_known_position[3]; // axis[n].is_known
|
||||
extern bool axis_homed[3]; // axis[n].is_homed
|
||||
|
||||
#if ENABLED(DELTA)
|
||||
extern float delta[3];
|
||||
|
|
|
@ -245,6 +245,7 @@ static float feedrate = 1500.0, saved_feedrate;
|
|||
float current_position[NUM_AXIS] = { 0.0 };
|
||||
static float destination[NUM_AXIS] = { 0.0 };
|
||||
bool axis_known_position[3] = { false };
|
||||
bool axis_homed[3] = { false };
|
||||
|
||||
static long gcode_N, gcode_LastN, Stopped_gcode_LastN = 0;
|
||||
|
||||
|
@ -1280,6 +1281,8 @@ static void setup_for_endstop_move() {
|
|||
|
||||
static void run_z_probe() {
|
||||
|
||||
refresh_cmd_timeout(); // to prevent stepper_inactive_time from running out and EXTRUDER_RUNOUT_PREVENT from extruding
|
||||
|
||||
#if ENABLED(DELTA)
|
||||
|
||||
float start_z = current_position[Z_AXIS];
|
||||
|
@ -1983,6 +1986,7 @@ static void homeaxis(AxisEnum axis) {
|
|||
feedrate = 0.0;
|
||||
endstops_hit_on_purpose(); // clear endstop hit flags
|
||||
axis_known_position[axis] = true;
|
||||
axis_homed[axis] = true;
|
||||
|
||||
#if ENABLED(Z_PROBE_SLED)
|
||||
// bring Z probe back
|
||||
|
@ -3980,6 +3984,7 @@ inline void gcode_M109() {
|
|||
}
|
||||
|
||||
idle();
|
||||
refresh_cmd_timeout(); // to prevent stepper_inactive_time from running out
|
||||
|
||||
#ifdef TEMP_RESIDENCY_TIME
|
||||
// start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time
|
||||
|
@ -3994,7 +3999,6 @@ inline void gcode_M109() {
|
|||
}
|
||||
|
||||
LCD_MESSAGEPGM(MSG_HEATING_COMPLETE);
|
||||
refresh_cmd_timeout();
|
||||
print_job_start_ms = previous_cmd_ms;
|
||||
}
|
||||
|
||||
|
@ -4029,9 +4033,9 @@ inline void gcode_M109() {
|
|||
#endif
|
||||
}
|
||||
idle();
|
||||
refresh_cmd_timeout(); // to prevent stepper_inactive_time from running out
|
||||
}
|
||||
LCD_MESSAGEPGM(MSG_BED_DONE);
|
||||
refresh_cmd_timeout();
|
||||
}
|
||||
|
||||
#endif // HAS_TEMP_BED
|
||||
|
@ -6972,16 +6976,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_INACTIVE_X == true
|
||||
disable_x();
|
||||
#endif
|
||||
#if DISABLE_Y == true
|
||||
#if DISABLE_INACTIVE_Y == true
|
||||
disable_y();
|
||||
#endif
|
||||
#if DISABLE_Z == true
|
||||
#if DISABLE_INACTIVE_Z == true
|
||||
disable_z();
|
||||
#endif
|
||||
#if DISABLE_E == true
|
||||
#if DISABLE_INACTIVE_E == true
|
||||
disable_e0();
|
||||
disable_e1();
|
||||
disable_e2();
|
||||
|
|
|
@ -270,7 +270,7 @@ static void _draw_heater_status(int x, int heater) {
|
|||
lcd_print(itostr3(int(heater >= 0 ? degHotend(heater) : degBed()) + 0.5));
|
||||
|
||||
lcd_printPGM(PSTR(LCD_STR_DEGREE " "));
|
||||
if (!isHeatingHotend(0)) {
|
||||
if (heater >= 0 ? !isHeatingHotend(heater) : !isHeatingBed()) {
|
||||
u8g.drawBox(x+7,y,2,2);
|
||||
}
|
||||
else {
|
||||
|
@ -338,6 +338,9 @@ static void lcd_implementation_status_screen() {
|
|||
}
|
||||
|
||||
// X, Y, Z-Coordinates
|
||||
// Before homing the axis letters are blinking 'X' <-> '?'.
|
||||
// When axis is homed but axis_known_position is false the axis letters are blinking 'X' <-> ' '.
|
||||
// When everything is ok you see a constant 'X'.
|
||||
#define XYZ_BASELINE 38
|
||||
lcd_setFont(FONT_STATUSMENU);
|
||||
|
||||
|
@ -348,32 +351,61 @@ static void lcd_implementation_status_screen() {
|
|||
#endif
|
||||
u8g.setColorIndex(0); // white on black
|
||||
u8g.setPrintPos(2, XYZ_BASELINE);
|
||||
lcd_print('X');
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("X"));
|
||||
else {
|
||||
if (!axis_homed[X_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[X_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("X"));
|
||||
}
|
||||
u8g.drawPixel(8, XYZ_BASELINE - 5);
|
||||
u8g.drawPixel(8, XYZ_BASELINE - 3);
|
||||
u8g.setPrintPos(10, XYZ_BASELINE);
|
||||
if (axis_known_position[X_AXIS])
|
||||
lcd_print(ftostr31ns(current_position[X_AXIS]));
|
||||
else
|
||||
lcd_printPGM(PSTR("---"));
|
||||
|
||||
u8g.setPrintPos(43, XYZ_BASELINE);
|
||||
lcd_print('Y');
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("Y"));
|
||||
else {
|
||||
if (!axis_homed[Y_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[Y_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("Y"));
|
||||
}
|
||||
u8g.drawPixel(49, XYZ_BASELINE - 5);
|
||||
u8g.drawPixel(49, XYZ_BASELINE - 3);
|
||||
u8g.setPrintPos(51, XYZ_BASELINE);
|
||||
if (axis_known_position[Y_AXIS])
|
||||
lcd_print(ftostr31ns(current_position[Y_AXIS]));
|
||||
else
|
||||
lcd_printPGM(PSTR("---"));
|
||||
|
||||
u8g.setPrintPos(83, XYZ_BASELINE);
|
||||
lcd_print('Z');
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("Z"));
|
||||
else {
|
||||
if (!axis_homed[Z_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[Z_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("Z"));
|
||||
}
|
||||
u8g.drawPixel(89, XYZ_BASELINE - 5);
|
||||
u8g.drawPixel(89, XYZ_BASELINE - 3);
|
||||
u8g.setPrintPos(91, XYZ_BASELINE);
|
||||
if (axis_known_position[Z_AXIS])
|
||||
lcd_print(ftostr32sp(current_position[Z_AXIS]));
|
||||
else
|
||||
lcd_printPGM(PSTR("---.--"));
|
||||
u8g.setColorIndex(1); // black on white
|
||||
|
||||
// Feedrate
|
||||
|
|
|
@ -331,11 +331,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -315,11 +315,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
#define DISABLE_E false // For all extruders
|
||||
#define DISABLE_INACTIVE_EXTRUDER true //disable only inactive extruders and keep active extruder enabled
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -341,11 +341,13 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
|
|||
#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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -364,11 +364,13 @@ 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
|
||||
#define DISABLE_Z false // not for K8200 -> looses Steps
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -237,7 +237,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -349,11 +349,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -340,11 +340,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -357,11 +357,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 240
|
||||
#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
|
||||
|
|
|
@ -369,11 +369,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -240,7 +240,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -341,11 +341,13 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
|
|||
#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
|
||||
#define DISABLE_Z true
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -349,11 +349,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -384,11 +384,13 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
|
|||
#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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 0
|
||||
#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
|
||||
|
|
|
@ -384,11 +384,13 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
|
|||
#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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -384,11 +384,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -371,11 +371,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -236,7 +236,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -352,11 +352,13 @@ 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -339,11 +339,13 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
|
|||
#define Z_ENABLE_ON 1
|
||||
#define E_ENABLE_ON 1 // 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
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
|
|
|
@ -232,7 +232,13 @@
|
|||
#define INVERT_E_STEP_PIN false
|
||||
|
||||
// Default stepper release if idle. Set to 0 to deactivate.
|
||||
// Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
|
||||
// Time can be set by M18 and M84.
|
||||
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
|
||||
#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
|
||||
|
|
|
@ -1736,20 +1736,22 @@ void lcd_update() {
|
|||
}
|
||||
#if ENABLED(DOGLCD) // Changes due to different driver architecture of the DOGM display
|
||||
if (lcdDrawUpdate) {
|
||||
blink++; // Variable for fan animation and alive dot
|
||||
blink++; // Variable for animation and alive dot
|
||||
u8g.firstPage();
|
||||
do {
|
||||
lcd_setFont(FONT_MENU);
|
||||
u8g.setPrintPos(125, 0);
|
||||
if (blink % 2) u8g.setColorIndex(1); else u8g.setColorIndex(0); // Set color for the alive dot
|
||||
if (blink & 1) u8g.setColorIndex(1); else u8g.setColorIndex(0); // Set color for the alive dot
|
||||
u8g.drawPixel(127, 63); // draw alive dot
|
||||
u8g.setColorIndex(1); // black on white
|
||||
(*currentMenu)();
|
||||
} while (u8g.nextPage());
|
||||
}
|
||||
#else
|
||||
if (lcdDrawUpdate)
|
||||
if (lcdDrawUpdate) {
|
||||
blink++; // Variable for animation
|
||||
(*currentMenu)();
|
||||
}
|
||||
#endif
|
||||
|
||||
#if ENABLED(LCD_HAS_STATUS_INDICATORS)
|
||||
|
|
|
@ -3,14 +3,10 @@
|
|||
|
||||
/**
|
||||
* Implementation of the LCD display routines for a Hitachi HD44780 display. These are common LCD character displays.
|
||||
* When selecting the Russian language, a slightly different LCD implementation is used to handle UTF8 characters.
|
||||
**/
|
||||
|
||||
//#if DISABLED(REPRAPWORLD_KEYPAD)
|
||||
// extern volatile uint8_t buttons; //the last checked buttons in a bit array.
|
||||
//#else
|
||||
extern volatile uint8_t buttons; //an extended version of the last checked buttons in a bit array.
|
||||
//#endif
|
||||
static unsigned char blink = 0; // Variable for animation
|
||||
extern volatile uint8_t buttons; //an extended version of the last checked buttons in a bit array.
|
||||
|
||||
////////////////////////////////////
|
||||
// Setup button and encode mappings for each panel (into 'buttons' variable
|
||||
|
@ -627,29 +623,61 @@ static void lcd_implementation_status_screen() {
|
|||
LCD_TEMP(degBed(), degTargetBed(), LCD_STR_BEDTEMP[0]);
|
||||
|
||||
#else
|
||||
// Before homing the axis letters are blinking 'X' <-> '?'.
|
||||
// When axis is homed but axis_known_position is false the axis letters are blinking 'X' <-> ' '.
|
||||
// When everything is ok you see a constant 'X'.
|
||||
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("X"));
|
||||
else {
|
||||
if (!axis_homed[X_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[X_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("X"));
|
||||
}
|
||||
|
||||
lcd.print('X');
|
||||
if (axis_known_position[X_AXIS])
|
||||
lcd.print(ftostr4sign(current_position[X_AXIS]));
|
||||
else
|
||||
lcd_printPGM(PSTR(" ---"));
|
||||
|
||||
lcd_printPGM(PSTR(" Y"));
|
||||
if (axis_known_position[Y_AXIS])
|
||||
lcd.print(ftostr4sign(current_position[Y_AXIS]));
|
||||
lcd_printPGM(PSTR(" "));
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("Y"));
|
||||
else {
|
||||
if (!axis_homed[Y_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
lcd_printPGM(PSTR(" ---"));
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[Y_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("Y"));
|
||||
}
|
||||
lcd.print(ftostr4sign(current_position[Y_AXIS]));
|
||||
|
||||
#endif // EXTRUDERS > 1 || TEMP_SENSOR_BED != 0
|
||||
|
||||
#endif // LCD_WIDTH >= 20
|
||||
|
||||
lcd.setCursor(LCD_WIDTH - 8, 1);
|
||||
lcd_printPGM(PSTR("Z "));
|
||||
if (axis_known_position[Z_AXIS])
|
||||
lcd.print(ftostr32sp(current_position[Z_AXIS] + 0.00001));
|
||||
if (blink & 1)
|
||||
lcd_printPGM(PSTR("Z"));
|
||||
else {
|
||||
if (!axis_homed[Z_AXIS])
|
||||
lcd_printPGM(PSTR("?"));
|
||||
else
|
||||
lcd_printPGM(PSTR("---.--"));
|
||||
#if DISABLED(DISABLE_REDUCED_ACCURACY_WARNING)
|
||||
if (!axis_known_position[Z_AXIS])
|
||||
lcd_printPGM(PSTR(" "));
|
||||
else
|
||||
#endif
|
||||
lcd_printPGM(PSTR("Z"));
|
||||
}
|
||||
lcd.print(ftostr32sp(current_position[Z_AXIS] + 0.00001));
|
||||
|
||||
#endif // LCD_HEIGHT > 2
|
||||
|
||||
|
|
Reference in a new issue