Make FWRetract class for 2.0.x parity
This commit is contained in:
parent
518d9beb83
commit
e7bf7e6031
7 changed files with 352 additions and 238 deletions
|
|
@ -215,6 +215,10 @@ MarlinSettings settings;
|
|||
#include "ubl.h"
|
||||
#endif
|
||||
|
||||
#if ENABLED(FWRETRACT)
|
||||
#include "fwretract.h"
|
||||
#endif
|
||||
|
||||
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
||||
extern void refresh_bed_level();
|
||||
#endif
|
||||
|
|
@ -555,24 +559,20 @@ void MarlinSettings::postprocess() {
|
|||
|
||||
#if DISABLED(FWRETRACT)
|
||||
const bool autoretract_enabled = false;
|
||||
const float retract_length = 3,
|
||||
retract_feedrate_mm_s = 45,
|
||||
retract_zlift = 0,
|
||||
retract_recover_length = 0,
|
||||
retract_recover_feedrate_mm_s = 0,
|
||||
swap_retract_length = 13,
|
||||
swap_retract_recover_length = 0,
|
||||
swap_retract_recover_feedrate_mm_s = 8;
|
||||
const float autoretract_defaults[] = { 3, 45, 0, 0, 0, 13, 0, 8 };
|
||||
EEPROM_WRITE(autoretract_enabled);
|
||||
EEPROM_WRITE(autoretract_defaults);
|
||||
#else
|
||||
EEPROM_WRITE(fwretract.autoretract_enabled);
|
||||
EEPROM_WRITE(fwretract.retract_length);
|
||||
EEPROM_WRITE(fwretract.retract_feedrate_mm_s);
|
||||
EEPROM_WRITE(fwretract.retract_zlift);
|
||||
EEPROM_WRITE(fwretract.retract_recover_length);
|
||||
EEPROM_WRITE(fwretract.retract_recover_feedrate_mm_s);
|
||||
EEPROM_WRITE(fwretract.swap_retract_length);
|
||||
EEPROM_WRITE(fwretract.swap_retract_recover_length);
|
||||
EEPROM_WRITE(fwretract.swap_retract_recover_feedrate_mm_s);
|
||||
#endif
|
||||
EEPROM_WRITE(autoretract_enabled);
|
||||
EEPROM_WRITE(retract_length);
|
||||
EEPROM_WRITE(retract_feedrate_mm_s);
|
||||
EEPROM_WRITE(retract_zlift);
|
||||
EEPROM_WRITE(retract_recover_length);
|
||||
EEPROM_WRITE(retract_recover_feedrate_mm_s);
|
||||
EEPROM_WRITE(swap_retract_length);
|
||||
EEPROM_WRITE(swap_retract_recover_length);
|
||||
EEPROM_WRITE(swap_retract_recover_feedrate_mm_s);
|
||||
|
||||
//
|
||||
// Volumetric & Filament Size
|
||||
|
|
@ -1070,15 +1070,15 @@ void MarlinSettings::postprocess() {
|
|||
//
|
||||
|
||||
#if ENABLED(FWRETRACT)
|
||||
EEPROM_READ(autoretract_enabled);
|
||||
EEPROM_READ(retract_length);
|
||||
EEPROM_READ(retract_feedrate_mm_s);
|
||||
EEPROM_READ(retract_zlift);
|
||||
EEPROM_READ(retract_recover_length);
|
||||
EEPROM_READ(retract_recover_feedrate_mm_s);
|
||||
EEPROM_READ(swap_retract_length);
|
||||
EEPROM_READ(swap_retract_recover_length);
|
||||
EEPROM_READ(swap_retract_recover_feedrate_mm_s);
|
||||
EEPROM_READ(fwretract.autoretract_enabled);
|
||||
EEPROM_READ(fwretract.retract_length);
|
||||
EEPROM_READ(fwretract.retract_feedrate_mm_s);
|
||||
EEPROM_READ(fwretract.retract_zlift);
|
||||
EEPROM_READ(fwretract.retract_recover_length);
|
||||
EEPROM_READ(fwretract.retract_recover_feedrate_mm_s);
|
||||
EEPROM_READ(fwretract.swap_retract_length);
|
||||
EEPROM_READ(fwretract.swap_retract_recover_length);
|
||||
EEPROM_READ(fwretract.swap_retract_recover_feedrate_mm_s);
|
||||
#else
|
||||
EEPROM_READ(dummyb);
|
||||
for (uint8_t q=8; q--;) EEPROM_READ(dummy);
|
||||
|
|
@ -1549,16 +1549,8 @@ void MarlinSettings::reset() {
|
|||
#endif
|
||||
|
||||
#if ENABLED(FWRETRACT)
|
||||
autoretract_enabled = false;
|
||||
retract_length = RETRACT_LENGTH;
|
||||
retract_feedrate_mm_s = RETRACT_FEEDRATE;
|
||||
retract_zlift = RETRACT_ZLIFT;
|
||||
retract_recover_length = RETRACT_RECOVER_LENGTH;
|
||||
retract_recover_feedrate_mm_s = RETRACT_RECOVER_FEEDRATE;
|
||||
swap_retract_length = RETRACT_LENGTH_SWAP;
|
||||
swap_retract_recover_length = RETRACT_RECOVER_LENGTH_SWAP;
|
||||
swap_retract_recover_feedrate_mm_s = RETRACT_RECOVER_FEEDRATE_SWAP;
|
||||
#endif // FWRETRACT
|
||||
fwretract.reset();
|
||||
#endif
|
||||
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
|
||||
|
|
@ -2052,26 +2044,26 @@ void MarlinSettings::reset() {
|
|||
SERIAL_ECHOLNPGM("Retract: S<length> F<units/m> Z<lift>");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOPAIR(" M207 S", LINEAR_UNIT(retract_length));
|
||||
SERIAL_ECHOPAIR(" W", LINEAR_UNIT(swap_retract_length));
|
||||
SERIAL_ECHOPAIR(" F", MMS_TO_MMM(LINEAR_UNIT(retract_feedrate_mm_s)));
|
||||
SERIAL_ECHOLNPAIR(" Z", LINEAR_UNIT(retract_zlift));
|
||||
SERIAL_ECHOPAIR(" M207 S", LINEAR_UNIT(fwretract.retract_length));
|
||||
SERIAL_ECHOPAIR(" W", LINEAR_UNIT(fwretract.swap_retract_length));
|
||||
SERIAL_ECHOPAIR(" F", MMS_TO_MMM(LINEAR_UNIT(fwretract.retract_feedrate_mm_s)));
|
||||
SERIAL_ECHOLNPAIR(" Z", LINEAR_UNIT(fwretract.retract_zlift));
|
||||
|
||||
if (!forReplay) {
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOLNPGM("Recover: S<length> F<units/m>");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOPAIR(" M208 S", LINEAR_UNIT(retract_recover_length));
|
||||
SERIAL_ECHOPAIR(" W", LINEAR_UNIT(swap_retract_recover_length));
|
||||
SERIAL_ECHOLNPAIR(" F", MMS_TO_MMM(LINEAR_UNIT(retract_recover_feedrate_mm_s)));
|
||||
SERIAL_ECHOPAIR(" M208 S", LINEAR_UNIT(fwretract.retract_recover_length));
|
||||
SERIAL_ECHOPAIR(" W", LINEAR_UNIT(fwretract.swap_retract_recover_length));
|
||||
SERIAL_ECHOLNPAIR(" F", MMS_TO_MMM(LINEAR_UNIT(fwretract.retract_recover_feedrate_mm_s)));
|
||||
|
||||
if (!forReplay) {
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOLNPGM("Auto-Retract: S=0 to disable, 1 to interpret E-only moves as retract/recover");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOLNPAIR(" M209 S", autoretract_enabled ? 1 : 0);
|
||||
SERIAL_ECHOLNPAIR(" M209 S", fwretract.autoretract_enabled ? 1 : 0);
|
||||
|
||||
#endif // FWRETRACT
|
||||
|
||||
|
|
@ -2210,7 +2202,7 @@ void MarlinSettings::reset() {
|
|||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
||||
if (!forReplay) {
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOLNPGM("Filament load & unload lengths:");
|
||||
SERIAL_ECHOLNPGM("Filament load/unload lengths:");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
#if EXTRUDERS == 1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue