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
unload();
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);
}
bool MMU2::cut_filament(uint8_t slot){
bool MMU2::cut_filament(uint8_t slot, bool enableFullScreenMsg /* = true */){
if( ! WaitForMMUReady())
return false;
FullScreenMsg(_T(MSG_CUT_FILAMENT), slot);
if( enableFullScreenMsg ){
FullScreenMsg(_T(MSG_CUT_FILAMENT), slot);
}
{
if( FindaDetectsFilament() ){
unload();
@ -544,11 +546,13 @@ bool MMU2::load_filament_to_nozzle(uint8_t slot) {
return true;
}
bool MMU2::eject_filament(uint8_t slot, bool recover) {
bool MMU2::eject_filament(uint8_t slot, bool enableFullScreenMsg /* = true */) {
if( ! WaitForMMUReady())
return false;
FullScreenMsg(_T(MSG_EJECT_FILAMENT), slot);
if( enableFullScreenMsg ){
FullScreenMsg(_T(MSG_EJECT_FILAMENT), slot);
}
{
if( FindaDetectsFilament() ){
unload();

View File

@ -126,12 +126,12 @@ public:
/// 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.
bool eject_filament(uint8_t slot, bool recover);
bool eject_filament(uint8_t slot, bool enableFullScreenMsg = true);
/// Issue a Cut command into the MMU
/// Requires unloaded filament from the printer (obviously)
/// @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
void get_statistics();