|
@@ -1585,13 +1585,17 @@ static void lcd_menu_fails_stats()
|
|
|
|
|
|
|
|
|
#ifdef DEBUG_BUILD
|
|
|
+#ifdef DEBUG_STACK_MONITOR
|
|
|
extern uint16_t SP_min;
|
|
|
extern char* __malloc_heap_start;
|
|
|
extern char* __malloc_heap_end;
|
|
|
+#endif //DEBUG_STACK_MONITOR
|
|
|
|
|
|
static void lcd_menu_debug()
|
|
|
{
|
|
|
+#ifdef DEBUG_STACK_MONITOR
|
|
|
fprintf_P(lcdout, PSTR(ESC_H(1,1)"RAM statistics"ESC_H(5,1)"SP_min: 0x%04x"ESC_H(1,2)"heap_start: 0x%04x"ESC_H(3,3)"heap_end: 0x%04x"), SP_min, __malloc_heap_start, __malloc_heap_end);
|
|
|
+#endif //DEBUG_STACK_MONITOR
|
|
|
|
|
|
if (lcd_clicked())
|
|
|
{
|
|
@@ -5836,7 +5840,7 @@ static void lcd_selftest_v()
|
|
|
static bool lcd_selftest()
|
|
|
{
|
|
|
int _progress = 0;
|
|
|
- bool _result = false;
|
|
|
+ bool _result = true;
|
|
|
lcd_wait_for_cool_down();
|
|
|
lcd_implementation_clear();
|
|
|
lcd.setCursor(0, 0); lcd_printPGM(MSG_SELFTEST_START);
|
|
@@ -5845,8 +5849,12 @@ static bool lcd_selftest()
|
|
|
#endif // TMC2130
|
|
|
delay(2000);
|
|
|
KEEPALIVE_STATE(IN_HANDLER);
|
|
|
- _progress = lcd_selftest_screen(-1, _progress, 3, true, 2000);
|
|
|
- _result = lcd_selftest_fan_dialog(0);
|
|
|
+
|
|
|
+ if (_result)
|
|
|
+ {
|
|
|
+ _progress = lcd_selftest_screen(-1, _progress, 3, true, 2000);
|
|
|
+ _result = lcd_selftest_fan_dialog(0);
|
|
|
+ }
|
|
|
|
|
|
if (_result)
|
|
|
{
|
|
@@ -5929,6 +5937,15 @@ static bool lcd_selftest()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if (_result)
|
|
|
+ {
|
|
|
+ _progress = lcd_selftest_screen(13, 0, 2, true, 0);
|
|
|
+ tmc2130_home_calibrate(X_AXIS);
|
|
|
+ _progress = lcd_selftest_screen(13, 1, 2, true, 0);
|
|
|
+ tmc2130_home_calibrate(Y_AXIS);
|
|
|
+ _progress = lcd_selftest_screen(13, 2, 2, true, 0);
|
|
|
+ }
|
|
|
+
|
|
|
if (_result)
|
|
|
{
|
|
|
_progress = lcd_selftest_screen(7, _progress, 3, true, 2000); //check bed
|
|
@@ -6712,6 +6729,7 @@ static int lcd_selftest_screen(int _step, int _progress, int _progress_scale, bo
|
|
|
if (_step == 10) lcd_printPGM(MSG_SELFTEST_CHECK_FSENSOR);
|
|
|
if (_step == 11) lcd_printPGM(MSG_SELFTEST_CHECK_ALLCORRECT);
|
|
|
if (_step == 12) lcd_printPGM(MSG_SELFTEST_FAILED);
|
|
|
+ if (_step == 13) lcd_printPGM(PSTR("Calibrating home"));
|
|
|
|
|
|
lcd.setCursor(0, 1);
|
|
|
lcd.print("--------------------");
|