浏览代码

Add option to enable/disable autoretract altogether (#11904)

Victor Tseng 6 年前
父节点
当前提交
93839e2f73
共有 63 个文件被更改,包括 392 次插入197 次删除
  1. 6
    3
      Marlin/Configuration_adv.h
  2. 6
    3
      Marlin/src/config/default/Configuration_adv.h
  3. 6
    3
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h
  4. 6
    3
      Marlin/src/config/examples/Anet/A2/Configuration_adv.h
  5. 6
    3
      Marlin/src/config/examples/Anet/A2plus/Configuration_adv.h
  6. 6
    3
      Marlin/src/config/examples/Anet/A6/Configuration_adv.h
  7. 6
    3
      Marlin/src/config/examples/Anet/A8/Configuration_adv.h
  8. 6
    3
      Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h
  9. 6
    3
      Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h
  10. 6
    3
      Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h
  11. 6
    3
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h
  12. 6
    3
      Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h
  13. 6
    3
      Marlin/src/config/examples/Cartesio/Configuration_adv.h
  14. 6
    3
      Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h
  15. 6
    3
      Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h
  16. 6
    3
      Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h
  17. 6
    3
      Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h
  18. 6
    3
      Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h
  19. 6
    3
      Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h
  20. 6
    3
      Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h
  21. 6
    3
      Marlin/src/config/examples/Einstart-S/Configuration_adv.h
  22. 6
    3
      Marlin/src/config/examples/Felix/Configuration_adv.h
  23. 6
    3
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h
  24. 9
    2
      Marlin/src/config/examples/Formbot/Raptor/Configuration_adv.h
  25. 6
    3
      Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration_adv.h
  26. 6
    3
      Marlin/src/config/examples/Formbot/T_Rex_3/Configuration_adv.h
  27. 6
    3
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h
  28. 6
    3
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h
  29. 6
    3
      Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h
  30. 6
    3
      Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h
  31. 6
    3
      Marlin/src/config/examples/MakerParts/Configuration_adv.h
  32. 6
    3
      Marlin/src/config/examples/Malyan/M150/Configuration_adv.h
  33. 6
    3
      Marlin/src/config/examples/Malyan/M200/Configuration_adv.h
  34. 6
    3
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h
  35. 6
    3
      Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h
  36. 6
    3
      Marlin/src/config/examples/RigidBot/Configuration_adv.h
  37. 6
    3
      Marlin/src/config/examples/SCARA/Configuration_adv.h
  38. 6
    3
      Marlin/src/config/examples/Sanguinololu/Configuration_adv.h
  39. 6
    3
      Marlin/src/config/examples/TheBorg/Configuration_adv.h
  40. 6
    3
      Marlin/src/config/examples/TinyBoy2/Configuration_adv.h
  41. 6
    3
      Marlin/src/config/examples/Tronxy/X3A/Configuration_adv.h
  42. 6
    3
      Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h
  43. 6
    3
      Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h
  44. 6
    3
      Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h
  45. 6
    3
      Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h
  46. 6
    3
      Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration_adv.h
  47. 6
    3
      Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h
  48. 6
    3
      Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h
  49. 6
    3
      Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h
  50. 6
    3
      Marlin/src/config/examples/delta/generic/Configuration_adv.h
  51. 6
    3
      Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h
  52. 6
    3
      Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h
  53. 6
    3
      Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h
  54. 6
    3
      Marlin/src/config/examples/makibox/Configuration_adv.h
  55. 6
    3
      Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h
  56. 6
    3
      Marlin/src/config/examples/wt150/Configuration_adv.h
  57. 4
    2
      Marlin/src/feature/fwretract.h
  58. 11
    10
      Marlin/src/gcode/feature/fwretract/M207-M209.cpp
  59. 5
    3
      Marlin/src/gcode/gcode.cpp
  60. 4
    2
      Marlin/src/gcode/gcode.h
  61. 2
    2
      Marlin/src/gcode/motion/G0_G1.cpp
  62. 3
    1
      Marlin/src/lcd/ultralcd.cpp
  63. 24
    10
      Marlin/src/module/configuration_store.cpp

+ 6
- 3
Marlin/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/default/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Anet/A2/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Anet/A2plus/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Anet/A6/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Anet/A8/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h 查看文件

@@ -1001,10 +1001,13 @@
1001 1001
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
1002 1002
  *
1003 1003
  */
1004
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
1004
+//#define FWRETRACT
1005 1005
 #if ENABLED(FWRETRACT)
1006
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1007
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1006
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1007
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1008
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1009
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1010
+  #endif
1008 1011
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1009 1012
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1010 1013
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Cartesio/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Einstart-S/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Felix/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 9
- 2
Marlin/src/config/examples/Formbot/Raptor/Configuration_adv.h 查看文件

@@ -995,10 +995,17 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
+<<<<<<< HEAD:Marlin/src/config/examples/Formbot/Raptor/Configuration_adv.h
998 999
 #define FWRETRACT  // ONLY PARTIALLY TESTED
1000
+=======
1001
+//#define FWRETRACT
1002
+>>>>>>> patch:Marlin/src/config/examples/Azteeg/X5GT/Configuration_adv.h
999 1003
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1004
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1005
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1006
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1007
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1008
+  #endif
1002 1009
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1010
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1011
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration_adv.h 查看文件

@@ -997,10 +997,13 @@
997 997
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
998 998
  *
999 999
  */
1000
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
1000
+//#define FWRETRACT
1001 1001
 #if ENABLED(FWRETRACT)
1002
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1003
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1002
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1003
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1004
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1005
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1006
+  #endif
1004 1007
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1005 1008
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1006 1009
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Formbot/T_Rex_3/Configuration_adv.h 查看文件

@@ -998,10 +998,13 @@
998 998
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
999 999
  *
1000 1000
  */
1001
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
1001
+//#define FWRETRACT
1002 1002
 #if ENABLED(FWRETRACT)
1003
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1004
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1003
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1004
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1005
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1006
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1007
+  #endif
1005 1008
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1006 1009
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1007 1010
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/MakerParts/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Malyan/M150/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Malyan/M200/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h 查看文件

@@ -1001,10 +1001,13 @@
1001 1001
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
1002 1002
  *
1003 1003
  */
1004
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
1004
+//#define FWRETRACT
1005 1005
 #if ENABLED(FWRETRACT)
1006
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1007
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1006
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1007
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1008
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1009
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1010
+  #endif
1008 1011
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1009 1012
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1010 1013
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/RigidBot/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/SCARA/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 35             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Sanguinololu/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/TheBorg/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/TinyBoy2/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Tronxy/X3A/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h 查看文件

@@ -1006,10 +1006,13 @@
1006 1006
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
1007 1007
  *
1008 1008
  */
1009
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
1009
+//#define FWRETRACT
1010 1010
 #if ENABLED(FWRETRACT)
1011
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1012
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1011
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1012
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1013
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1014
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1015
+  #endif
1013 1016
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1014 1017
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1015 1018
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/generic/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h 查看文件

@@ -995,10 +995,13 @@
995 995
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
996 996
  *
997 997
  */
998
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
998
+//#define FWRETRACT
999 999
 #if ENABLED(FWRETRACT)
1000
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1001
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
1000
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1001
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1002
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1003
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1004
+  #endif
1002 1005
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1003 1006
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1004 1007
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/makibox/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h 查看文件

@@ -993,10 +993,13 @@
993 993
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
994 994
  *
995 995
  */
996
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
996
+//#define FWRETRACT
997 997
 #if ENABLED(FWRETRACT)
998
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
999
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
998
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
999
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1000
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1001
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1002
+  #endif
1000 1003
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1001 1004
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1002 1005
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 6
- 3
Marlin/src/config/examples/wt150/Configuration_adv.h 查看文件

@@ -994,10 +994,13 @@
994 994
  * Note that M207 / M208 / M209 settings are saved to EEPROM.
995 995
  *
996 996
  */
997
-//#define FWRETRACT  // ONLY PARTIALLY TESTED
997
+//#define FWRETRACT
998 998
 #if ENABLED(FWRETRACT)
999
-  #define MIN_AUTORETRACT 0.1             // When auto-retract is on, convert E moves of this length and over
1000
-  #define MAX_AUTORETRACT 10.0            // Upper limit for auto-retract conversion
999
+  #define FWRETRACT_AUTORETRACT           // costs ~500 bytes of PROGMEM
1000
+  #if ENABLED(FWRETRACT_AUTORETRACT)
1001
+    #define MIN_AUTORETRACT 0.1           // When auto-retract is on, convert E moves of this length and over
1002
+    #define MAX_AUTORETRACT 10.0          // Upper limit for auto-retract conversion
1003
+  #endif
1001 1004
   #define RETRACT_LENGTH 3                // Default retract length (positive mm)
1002 1005
   #define RETRACT_LENGTH_SWAP 13          // Default swap retract length (positive mm), for extruder change
1003 1006
   #define RETRACT_FEEDRATE 45             // Default feedrate for retracting (mm/s)

+ 4
- 2
Marlin/src/feature/fwretract.h 查看文件

@@ -58,8 +58,10 @@ public:
58 58
   }
59 59
 
60 60
   static void enable_autoretract(const bool enable) {
61
-    autoretract_enabled = enable;
62
-    refresh_autoretract();
61
+    #if ENABLED(FWRETRACT_AUTORETRACT)
62
+      autoretract_enabled = enable;
63
+      refresh_autoretract();
64
+    #endif
63 65
   }
64 66
 
65 67
   static void retract(const bool retracting

+ 11
- 10
Marlin/src/gcode/feature/fwretract/M207-M209.cpp 查看文件

@@ -57,17 +57,18 @@ void GcodeSuite::M208() {
57 57
   if (parser.seen('W')) fwretract.swap_retract_recover_length = parser.value_axis_units(E_AXIS);
58 58
 }
59 59
 
60
-/**
61
- * M209: Enable automatic retract (M209 S1)
62
- *   For slicers that don't support G10/11, reversed extrude-only
63
- *   moves will be classified as retraction.
64
- */
65
-void GcodeSuite::M209() {
66
-  if (MIN_AUTORETRACT <= MAX_AUTORETRACT) {
67
-    if (parser.seen('S')) {
60
+#if ENABLED(FWRETRACT_AUTORETRACT)
61
+
62
+  /**
63
+   * M209: Enable automatic retract (M209 S1)
64
+   *   For slicers that don't support G10/11, reversed extrude-only
65
+   *   moves will be classified as retraction.
66
+   */
67
+  void GcodeSuite::M209() {
68
+    if (MIN_AUTORETRACT <= MAX_AUTORETRACT && parser.seen('S'))
68 69
       fwretract.enable_autoretract(parser.value_bool());
69
-    }
70 70
   }
71
-}
71
+
72
+#endif // FWRETRACT_AUTORETRACT
72 73
 
73 74
 #endif // FWRETRACT

+ 5
- 3
Marlin/src/gcode/gcode.cpp 查看文件

@@ -474,9 +474,11 @@ void GcodeSuite::process_parsed_command(
474 474
       #if ENABLED(FWRETRACT)
475 475
         case 207: M207(); break;                                  // M207: Set Retract Length, Feedrate, and Z lift
476 476
         case 208: M208(); break;                                  // M208: Set Recover (unretract) Additional Length and Feedrate
477
-        case 209:
478
-          if (MIN_AUTORETRACT <= MAX_AUTORETRACT) M209();         // M209: Turn Automatic Retract Detection on/off
479
-          break;
477
+        #if ENABLED(FWRETRACT_AUTORETRACT)
478
+          case 209:
479
+            if (MIN_AUTORETRACT <= MAX_AUTORETRACT) M209();       // M209: Turn Automatic Retract Detection on/off
480
+            break;
481
+        #endif
480 482
       #endif
481 483
 
482 484
       case 211: M211(); break;                                    // M211: Enable, Disable, and/or Report software endstops

+ 4
- 2
Marlin/src/gcode/gcode.h 查看文件

@@ -161,7 +161,7 @@
161 161
  * M206 - Set additional homing offset. (Disabled by NO_WORKSPACE_OFFSETS or DELTA)
162 162
  * M207 - Set Retract Length: S<length>, Feedrate: F<units/min>, and Z lift: Z<distance>. (Requires FWRETRACT)
163 163
  * M208 - Set Recover (unretract) Additional (!) Length: S<length> and Feedrate: F<units/min>. (Requires FWRETRACT)
164
- * M209 - Turn Automatic Retract Detection on/off: S<0|1> (For slicers that don't support G10/11). (Requires FWRETRACT)
164
+ * M209 - Turn Automatic Retract Detection on/off: S<0|1> (For slicers that don't support G10/11). (Requires FWRETRACT_AUTORETRACT)
165 165
           Every normal extrude-only move will be classified as retract depending on the direction.
166 166
  * M211 - Enable, Disable, and/or Report software endstops: S<0|1> (Requires MIN_SOFTWARE_ENDSTOPS or MAX_SOFTWARE_ENDSTOPS)
167 167
  * M218 - Set/get a tool offset: "M218 T<index> X<offset> Y<offset>". (Requires 2 or more extruders)
@@ -605,7 +605,9 @@ private:
605 605
   #if ENABLED(FWRETRACT)
606 606
     static void M207();
607 607
     static void M208();
608
-    static void M209();
608
+    #if ENABLED(FWRETRACT_AUTORETRACT)
609
+      static void M209();
610
+    #endif
609 611
   #endif
610 612
 
611 613
   static void M211();

+ 2
- 2
Marlin/src/gcode/motion/G0_G1.cpp 查看文件

@@ -25,7 +25,7 @@
25 25
 
26 26
 #include "../../Marlin.h"
27 27
 
28
-#if ENABLED(FWRETRACT)
28
+#if ENABLED(FWRETRACT) && ENABLED(FWRETRACT_AUTORETRACT)
29 29
   #include "../../feature/fwretract.h"
30 30
 #endif
31 31
 
@@ -54,7 +54,7 @@ void GcodeSuite::G0_G1(
54 54
   if (IsRunning() && G0_G1_CONDITION) {
55 55
     get_destination_from_command(); // For X Y Z E F
56 56
 
57
-    #if ENABLED(FWRETRACT)
57
+    #if ENABLED(FWRETRACT) && ENABLED(FWRETRACT_AUTORETRACT)
58 58
 
59 59
       if (MIN_AUTORETRACT <= MAX_AUTORETRACT) {
60 60
         // When M209 Autoretract is enabled, convert E-only moves to firmware retract/recover moves

+ 3
- 1
Marlin/src/lcd/ultralcd.cpp 查看文件

@@ -4147,7 +4147,9 @@ void lcd_quick_feedback(const bool clear_buttons) {
4147 4147
     void lcd_config_retract_menu() {
4148 4148
       START_MENU();
4149 4149
       MENU_BACK(MSG_CONTROL);
4150
-      MENU_ITEM_EDIT_CALLBACK(bool, MSG_AUTORETRACT, &fwretract.autoretract_enabled, fwretract.refresh_autoretract);
4150
+      #if ENABLED(FWRETRACT_AUTORETRACT)
4151
+        MENU_ITEM_EDIT_CALLBACK(bool, MSG_AUTORETRACT, &fwretract.autoretract_enabled, fwretract.refresh_autoretract);
4152
+      #endif
4151 4153
       MENU_ITEM_EDIT(float52sign, MSG_CONTROL_RETRACT, &fwretract.retract_length, 0, 100);
4152 4154
       #if EXTRUDERS > 1
4153 4155
         MENU_ITEM_EDIT(float52sign, MSG_CONTROL_RETRACT_SWAP, &fwretract.swap_retract_length, 0, 100);

+ 24
- 10
Marlin/src/module/configuration_store.cpp 查看文件

@@ -672,13 +672,19 @@ void MarlinSettings::postprocess() {
672 672
     #endif
673 673
     EEPROM_WRITE(lcd_contrast);
674 674
 
675
+    const bool autoretract_enabled =
676
+      #if DISABLED(FWRETRACT_AUTORETRACT)
677
+        false
678
+      #else
679
+        fwretract.autoretract_enabled
680
+      #endif
681
+    ;
682
+    EEPROM_WRITE(autoretract_enabled);
683
+
675 684
     #if DISABLED(FWRETRACT)
676
-      const bool autoretract_enabled = false;
677 685
       const float autoretract_defaults[] = { 3, 45, 0, 0, 0, 13, 0, 8 };
678
-      EEPROM_WRITE(autoretract_enabled);
679 686
       EEPROM_WRITE(autoretract_defaults);
680 687
     #else
681
-      EEPROM_WRITE(fwretract.autoretract_enabled);
682 688
       EEPROM_WRITE(fwretract.retract_length);
683 689
       EEPROM_WRITE(fwretract.retract_feedrate_mm_s);
684 690
       EEPROM_WRITE(fwretract.retract_zlift);
@@ -1070,7 +1076,7 @@ void MarlinSettings::postprocess() {
1070 1076
     }
1071 1077
     else {
1072 1078
       float dummy = 0;
1073
-      #if DISABLED(AUTO_BED_LEVELING_UBL) || DISABLED(FWRETRACT) || ENABLED(NO_VOLUMETRICS)
1079
+      #if DISABLED(AUTO_BED_LEVELING_UBL) || DISABLED(FWRETRACT) || DISABLED(FWRETRACT_AUTORETRACT) || ENABLED(NO_VOLUMETRICS)
1074 1080
         bool dummyb;
1075 1081
       #endif
1076 1082
 
@@ -1374,7 +1380,11 @@ void MarlinSettings::postprocess() {
1374 1380
       //
1375 1381
 
1376 1382
       #if ENABLED(FWRETRACT)
1377
-        EEPROM_READ(fwretract.autoretract_enabled);
1383
+        #if DISABLED(FWRETRACT_AUTORETRACT)
1384
+          EEPROM_READ(dummyb);
1385
+        #else
1386
+          EEPROM_READ(fwretract.autoretract_enabled);
1387
+        #endif
1378 1388
         EEPROM_READ(fwretract.retract_length);
1379 1389
         EEPROM_READ(fwretract.retract_feedrate_mm_s);
1380 1390
         EEPROM_READ(fwretract.retract_zlift);
@@ -2620,12 +2630,16 @@ void MarlinSettings::reset(PORTARG_SOLO) {
2620 2630
       SERIAL_ECHOPAIR_P(port, " W", LINEAR_UNIT(fwretract.swap_retract_recover_length));
2621 2631
       SERIAL_ECHOLNPAIR_P(port, " F", MMS_TO_MMM(LINEAR_UNIT(fwretract.retract_recover_feedrate_mm_s)));
2622 2632
 
2623
-      if (!forReplay) {
2633
+      #if ENABLED(FWRETRACT_AUTORETRACT)
2634
+
2635
+        if (!forReplay) {
2636
+          CONFIG_ECHO_START;
2637
+          SERIAL_ECHOLNPGM_P(port, "Auto-Retract: S=0 to disable, 1 to interpret E-only moves as retract/recover");
2638
+        }
2624 2639
         CONFIG_ECHO_START;
2625
-        SERIAL_ECHOLNPGM_P(port, "Auto-Retract: S=0 to disable, 1 to interpret E-only moves as retract/recover");
2626
-      }
2627
-      CONFIG_ECHO_START;
2628
-      SERIAL_ECHOLNPAIR_P(port, "  M209 S", fwretract.autoretract_enabled ? 1 : 0);
2640
+        SERIAL_ECHOLNPAIR_P(port, "  M209 S", fwretract.autoretract_enabled ? 1 : 0);
2641
+
2642
+      #endif // FWRETRACT_AUTORETRACT
2629 2643
 
2630 2644
     #endif // FWRETRACT
2631 2645
 

正在加载...
取消
保存