Disable filRunout when MMU.Enabled()
It turned out the runout is caused by the ramming sequence in the G-code, which is interpreted before the actual MMU command gets into processing. The frequency of these errors/runouts differed one machine from another and was really hard to track down. Therefore - once the MMU is enabled (active and running) we'll disable filament runout handling caused by the printer's filament sensor.
This commit is contained in:
parent
a1881b4a07
commit
45a5e719a2
|
|
@ -117,6 +117,7 @@ void Filament_sensor::triggerFilamentInserted() {
|
||||||
void Filament_sensor::triggerFilamentRemoved() {
|
void Filament_sensor::triggerFilamentRemoved() {
|
||||||
// SERIAL_ECHOLNPGM("triggerFilamentRemoved");
|
// SERIAL_ECHOLNPGM("triggerFilamentRemoved");
|
||||||
if (runoutEnabled
|
if (runoutEnabled
|
||||||
|
&& (! MMU2::mmu2.Enabled() ) // quick and dirty hack to prevent spurious runouts just before the toolchange
|
||||||
&& (eFilamentAction == FilamentAction::None)
|
&& (eFilamentAction == FilamentAction::None)
|
||||||
&& !saved_printing
|
&& !saved_printing
|
||||||
&& (
|
&& (
|
||||||
|
|
@ -130,7 +131,7 @@ void Filament_sensor::triggerFilamentRemoved() {
|
||||||
// SERIAL_ECHOPGM("runoutEnabled="); SERIAL_ECHOLN((int)runoutEnabled);
|
// SERIAL_ECHOPGM("runoutEnabled="); SERIAL_ECHOLN((int)runoutEnabled);
|
||||||
// SERIAL_ECHOPGM("eFilamentAction="); SERIAL_ECHOLN((int)eFilamentAction);
|
// SERIAL_ECHOPGM("eFilamentAction="); SERIAL_ECHOLN((int)eFilamentAction);
|
||||||
// SERIAL_ECHOPGM("saved_printing="); SERIAL_ECHOLN((int)saved_printing);
|
// SERIAL_ECHOPGM("saved_printing="); SERIAL_ECHOLN((int)saved_printing);
|
||||||
// filRunout();
|
filRunout();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -146,7 +147,7 @@ void Filament_sensor::filAutoLoad() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Filament_sensor::filRunout() {
|
void Filament_sensor::filRunout() {
|
||||||
SERIAL_ECHOLNPGM("filRunout");
|
// SERIAL_ECHOLNPGM("filRunout");
|
||||||
runoutEnabled = false;
|
runoutEnabled = false;
|
||||||
autoLoadEnabled = false;
|
autoLoadEnabled = false;
|
||||||
stop_and_save_print_to_ram(0, 0);
|
stop_and_save_print_to_ram(0, 0);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue