@@ -1048,8 +1048,8 @@ static void fw_crash_init()
1048
1048
1049
1049
static void xflash_err_msg ()
1050
1050
{
1051
- lcd_clear ( );
1052
- lcd_puts_P (_n (" External SPI flash\n XFLASH is not res-\n ponding. Language\n switch unavailable." ));
1051
+ puts_P ( _n ( " XFLASH not responding. " ) );
1052
+ lcd_show_fullscreen_message_and_wait_P (_n (" External SPI flash\n XFLASH is not res-\n ponding. Language\n switch unavailable." ));
1053
1053
}
1054
1054
1055
1055
// "Setup" function is called by the Arduino framework on startup.
@@ -1085,10 +1085,6 @@ void setup()
1085
1085
update_sec_lang_from_external_flash ();
1086
1086
#endif // (LANG_MODE != 0)
1087
1087
}
1088
- else
1089
- {
1090
- xflash_err_msg ();
1091
- }
1092
1088
#else
1093
1089
const bool xflash_success = true ;
1094
1090
#endif // XFLASH
@@ -1321,12 +1317,6 @@ void setup()
1321
1317
1322
1318
tp_init (); // Initialize temperature loop
1323
1319
1324
- if (xflash_success) lcd_splash (); // we need to do this again, because tp_init() kills lcd
1325
- else
1326
- {
1327
- xflash_err_msg ();
1328
- puts_P (_n (" XFLASH not responding." ));
1329
- }
1330
1320
#ifdef EXTRUDER_ALTFAN_DETECT
1331
1321
SERIAL_ECHORPGM (_n (" Extruder fan type: " ));
1332
1322
if (extruder_altfan_detect ())
@@ -1421,6 +1411,10 @@ void setup()
1421
1411
clamp_to_software_endstops (current_position);
1422
1412
plan_set_position_curposXYZE ();
1423
1413
1414
+ // Show the xflash error message now that serial, lcd and encoder are available
1415
+ if (!xflash_success)
1416
+ xflash_err_msg ();
1417
+
1424
1418
#ifdef FILAMENT_SENSOR
1425
1419
fsensor_init ();
1426
1420
#endif // FILAMENT_SENSOR
0 commit comments