Avoid FullScreenMsg "Eject/Cut Filament" when called inside a toolchange

CutFilament and EjectFilament got a flag: enable/disable FullScreenMsg
This commit is contained in:
D.R.racer 2023-01-06 14:27:25 +01:00 committed by DRracer
parent 48ce22d41f
commit 472f84e46a
2 changed files with 11 additions and 7 deletions

View File

@ -302,7 +302,7 @@ bool MMU2::ToolChangeCommonOnce(uint8_t slot){
} else { // Prepare a retry attempt } else { // Prepare a retry attempt
unload(); unload();
if( retries == 2 && eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED) == EEPROM_MMU_CUTTER_ENABLED_enabled){ if( retries == 2 && eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED) == EEPROM_MMU_CUTTER_ENABLED_enabled){
cut_filament(slot); // try cutting filament tip at the last attempt cut_filament(slot, false); // try cutting filament tip at the last attempt
} }
} }
} }
@ -452,11 +452,13 @@ void FullScreenMsg(const char *pgmS, uint8_t slot){
lcd_print(slot + 1); lcd_print(slot + 1);
} }
bool MMU2::cut_filament(uint8_t slot){ bool MMU2::cut_filament(uint8_t slot, bool enableFullScreenMsg /* = true */){
if( ! WaitForMMUReady()) if( ! WaitForMMUReady())
return false; return false;
FullScreenMsg(_T(MSG_CUT_FILAMENT), slot); if( enableFullScreenMsg ){
FullScreenMsg(_T(MSG_CUT_FILAMENT), slot);
}
{ {
if( FindaDetectsFilament() ){ if( FindaDetectsFilament() ){
unload(); unload();
@ -544,11 +546,13 @@ bool MMU2::load_filament_to_nozzle(uint8_t slot) {
return true; return true;
} }
bool MMU2::eject_filament(uint8_t slot, bool recover) { bool MMU2::eject_filament(uint8_t slot, bool enableFullScreenMsg /* = true */) {
if( ! WaitForMMUReady()) if( ! WaitForMMUReady())
return false; return false;
FullScreenMsg(_T(MSG_EJECT_FILAMENT), slot); if( enableFullScreenMsg ){
FullScreenMsg(_T(MSG_EJECT_FILAMENT), slot);
}
{ {
if( FindaDetectsFilament() ){ if( FindaDetectsFilament() ){
unload(); unload();

View File

@ -126,12 +126,12 @@ public:
/// Move MMU's selector aside and push the selected filament forward. /// Move MMU's selector aside and push the selected filament forward.
/// Usable for improving filament's tip or pulling the remaining piece of filament out completely. /// Usable for improving filament's tip or pulling the remaining piece of filament out completely.
bool eject_filament(uint8_t slot, bool recover); bool eject_filament(uint8_t slot, bool enableFullScreenMsg = true);
/// Issue a Cut command into the MMU /// Issue a Cut command into the MMU
/// Requires unloaded filament from the printer (obviously) /// Requires unloaded filament from the printer (obviously)
/// @returns false if the operation cannot be performed (Stopped) /// @returns false if the operation cannot be performed (Stopped)
bool cut_filament(uint8_t slot); bool cut_filament(uint8_t slot, bool enableFullScreenMsg = true);
/// Issue a planned request for statistics data from MMU /// Issue a planned request for statistics data from MMU
void get_statistics(); void get_statistics();