Explorar el Código

Merge pull request #7991 from thinkyhead/bf1_M106_memorize

[1.1.x] Add EXTRA_FAN_SPEED feature
Scott Lahteine hace 7 años
padre
commit
10d72f31c2
Se han modificado 33 ficheros con 333 adiciones y 17 borrados
  1. 9
    0
      Marlin/Configuration_adv.h
  2. 4
    0
      Marlin/Marlin.h
  3. 37
    6
      Marlin/Marlin_main.cpp
  4. 9
    0
      Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h
  5. 9
    0
      Marlin/example_configurations/Anet/A6/Configuration_adv.h
  6. 9
    0
      Marlin/example_configurations/Anet/A8/Configuration_adv.h
  7. 9
    0
      Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h
  8. 9
    0
      Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h
  9. 9
    0
      Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h
  10. 9
    0
      Marlin/example_configurations/Cartesio/Configuration_adv.h
  11. 9
    0
      Marlin/example_configurations/Creality/CR-10/Configuration_adv.h
  12. 9
    0
      Marlin/example_configurations/Felix/Configuration_adv.h
  13. 9
    0
      Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h
  14. 9
    0
      Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h
  15. 9
    0
      Marlin/example_configurations/Malyan/M150/Configuration_adv.h
  16. 9
    0
      Marlin/example_configurations/RigidBot/Configuration_adv.h
  17. 9
    0
      Marlin/example_configurations/SCARA/Configuration_adv.h
  18. 9
    0
      Marlin/example_configurations/Sanguinololu/Configuration_adv.h
  19. 9
    0
      Marlin/example_configurations/TinyBoy2/Configuration_adv.h
  20. 9
    0
      Marlin/example_configurations/Velleman/K8200/Configuration_adv.h
  21. 9
    0
      Marlin/example_configurations/Velleman/K8400/Configuration_adv.h
  22. 9
    0
      Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h
  23. 9
    0
      Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h
  24. 9
    0
      Marlin/example_configurations/delta/generic/Configuration_adv.h
  25. 9
    0
      Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h
  26. 9
    0
      Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h
  27. 9
    0
      Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h
  28. 9
    0
      Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h
  29. 9
    0
      Marlin/example_configurations/makibox/Configuration_adv.h
  30. 9
    0
      Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h
  31. 9
    0
      Marlin/example_configurations/wt150/Configuration_adv.h
  32. 3
    0
      Marlin/language_en.h
  33. 28
    11
      Marlin/ultralcd.cpp

+ 9
- 0
Marlin/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 4
- 0
Marlin/Marlin.h Ver fichero

@@ -354,6 +354,10 @@ extern float soft_endstop_min[XYZ], soft_endstop_max[XYZ];
354 354
 
355 355
 #if FAN_COUNT > 0
356 356
   extern int16_t fanSpeeds[FAN_COUNT];
357
+  #if ENABLED(EXTRA_FAN_SPEED)
358
+    extern int16_t old_fanSpeeds[FAN_COUNT],
359
+                   new_fanSpeeds[FAN_COUNT];
360
+  #endif
357 361
   #if ENABLED(PROBING_FANS_OFF)
358 362
     extern bool fans_paused;
359 363
     extern int16_t paused_fanSpeeds[FAN_COUNT];

+ 37
- 6
Marlin/Marlin_main.cpp Ver fichero

@@ -117,8 +117,8 @@
117 117
  * M100 - Watch Free Memory (for debugging) (Requires M100_FREE_MEMORY_WATCHER)
118 118
  * M104 - Set extruder target temp.
119 119
  * M105 - Report current temperatures.
120
- * M106 - Fan on.
121
- * M107 - Fan off.
120
+ * M106 - Set print fan speed.
121
+ * M107 - Print fan off.
122 122
  * M108 - Break out of heating loops (M109, M190, M303). With no controller, breaks out of M0/M1. (Requires EMERGENCY_PARSER)
123 123
  * M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating
124 124
  *        Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling
@@ -479,6 +479,10 @@ float soft_endstop_min[XYZ] = { X_MIN_BED, Y_MIN_BED, Z_MIN_POS },
479 479
 
480 480
 #if FAN_COUNT > 0
481 481
   int16_t fanSpeeds[FAN_COUNT] = { 0 };
482
+  #if ENABLED(EXTRA_FAN_SPEED)
483
+    int16_t old_fanSpeeds[FAN_COUNT],
484
+            new_fanSpeeds[FAN_COUNT];
485
+  #endif
482 486
   #if ENABLED(PROBING_FANS_OFF)
483 487
     bool fans_paused = false;
484 488
     int16_t paused_fanSpeeds[FAN_COUNT] = { 0 };
@@ -7453,12 +7457,39 @@ inline void gcode_M105() {
7453 7457
    *
7454 7458
    *  S<int>   Speed between 0-255
7455 7459
    *  P<index> Fan index, if more than one fan
7460
+   *
7461
+   * With EXTRA_FAN_SPEED enabled:
7462
+   *
7463
+   *  T<int>   Restore/Use/Set Temporary Speed:
7464
+   *           1     = Restore previous speed after T2
7465
+   *           2     = Use temporary speed set with T3-255
7466
+   *           3-255 = Set the speed for use with T2
7456 7467
    */
7457 7468
   inline void gcode_M106() {
7458
-    uint16_t s = parser.ushortval('S', 255);
7459
-    NOMORE(s, 255);
7460
-    const uint8_t p = parser.byteval('P', 0);
7461
-    if (p < FAN_COUNT) fanSpeeds[p] = s;
7469
+    const uint8_t p = parser.byteval('P');
7470
+    if (p < FAN_COUNT) {
7471
+      #if ENABLED(EXTRA_FAN_SPEED)
7472
+        const int16_t t = parser.intval('T');
7473
+        NOMORE(t, 255);
7474
+        if (t > 0) {
7475
+          switch (t) {
7476
+            case 1:
7477
+              fanSpeeds[p] = old_fanSpeeds[p];
7478
+              break;
7479
+            case 2:
7480
+              old_fanSpeeds[p] = fanSpeeds[p];
7481
+              fanSpeeds[p] = new_fanSpeeds[p];
7482
+              break;
7483
+            default:
7484
+              new_fanSpeeds[p] = t;
7485
+              break;
7486
+          }
7487
+          return;
7488
+        }
7489
+      #endif // EXTRA_FAN_SPEED
7490
+      const uint16_t s = parser.ushortval('S', 255);
7491
+      fanSpeeds[p] = min(s, 255);
7492
+    }
7462 7493
   }
7463 7494
 
7464 7495
   /**

+ 9
- 0
Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Anet/A6/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Anet/A8/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h Ver fichero

@@ -808,6 +808,15 @@
808 808
 #endif
809 809
 
810 810
 /**
811
+ * Extra Fan Speed
812
+ * Adds a secondary fan speed for each print-cooling fan.
813
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
814
+ *   'M106 P<fan> T2'     : Use the set secondary speed
815
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
816
+ */
817
+//#define EXTRA_FAN_SPEED
818
+
819
+/**
811 820
  * Advanced Pause
812 821
  * Experimental feature for filament change support and for parking the nozzle when paused.
813 822
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Cartesio/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Creality/CR-10/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Felix/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Malyan/M150/Configuration_adv.h Ver fichero

@@ -808,6 +808,15 @@
808 808
 #endif
809 809
 
810 810
 /**
811
+ * Extra Fan Speed
812
+ * Adds a secondary fan speed for each print-cooling fan.
813
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
814
+ *   'M106 P<fan> T2'     : Use the set secondary speed
815
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
816
+ */
817
+//#define EXTRA_FAN_SPEED
818
+
819
+/**
811 820
  * Advanced Pause
812 821
  * Experimental feature for filament change support and for parking the nozzle when paused.
813 822
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/RigidBot/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/SCARA/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Sanguinololu/Configuration_adv.h Ver fichero

@@ -778,6 +778,15 @@
778 778
 #endif
779 779
 
780 780
 /**
781
+ * Extra Fan Speed
782
+ * Adds a secondary fan speed for each print-cooling fan.
783
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
784
+ *   'M106 P<fan> T2'     : Use the set secondary speed
785
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
786
+ */
787
+//#define EXTRA_FAN_SPEED
788
+
789
+/**
781 790
  * Advanced Pause
782 791
  * Experimental feature for filament change support and for parking the nozzle when paused.
783 792
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/TinyBoy2/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Velleman/K8200/Configuration_adv.h Ver fichero

@@ -821,6 +821,15 @@
821 821
 #endif
822 822
 
823 823
 /**
824
+ * Extra Fan Speed
825
+ * Adds a secondary fan speed for each print-cooling fan.
826
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
827
+ *   'M106 P<fan> T2'     : Use the set secondary speed
828
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
829
+ */
830
+//#define EXTRA_FAN_SPEED
831
+
832
+/**
824 833
  * Advanced Pause
825 834
  * Experimental feature for filament change support and for parking the nozzle when paused.
826 835
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/Velleman/K8400/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h Ver fichero

@@ -813,6 +813,15 @@
813 813
 #endif
814 814
 
815 815
 /**
816
+ * Extra Fan Speed
817
+ * Adds a secondary fan speed for each print-cooling fan.
818
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
819
+ *   'M106 P<fan> T2'     : Use the set secondary speed
820
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
821
+ */
822
+//#define EXTRA_FAN_SPEED
823
+
824
+/**
816 825
  * Advanced Pause
817 826
  * Experimental feature for filament change support and for parking the nozzle when paused.
818 827
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h Ver fichero

@@ -813,6 +813,15 @@
813 813
 #endif
814 814
 
815 815
 /**
816
+ * Extra Fan Speed
817
+ * Adds a secondary fan speed for each print-cooling fan.
818
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
819
+ *   'M106 P<fan> T2'     : Use the set secondary speed
820
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
821
+ */
822
+//#define EXTRA_FAN_SPEED
823
+
824
+/**
816 825
  * Advanced Pause
817 826
  * Experimental feature for filament change support and for parking the nozzle when paused.
818 827
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/generic/Configuration_adv.h Ver fichero

@@ -813,6 +813,15 @@
813 813
 #endif
814 814
 
815 815
 /**
816
+ * Extra Fan Speed
817
+ * Adds a secondary fan speed for each print-cooling fan.
818
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
819
+ *   'M106 P<fan> T2'     : Use the set secondary speed
820
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
821
+ */
822
+//#define EXTRA_FAN_SPEED
823
+
824
+/**
816 825
  * Advanced Pause
817 826
  * Experimental feature for filament change support and for parking the nozzle when paused.
818 827
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h Ver fichero

@@ -813,6 +813,15 @@
813 813
 #endif
814 814
 
815 815
 /**
816
+ * Extra Fan Speed
817
+ * Adds a secondary fan speed for each print-cooling fan.
818
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
819
+ *   'M106 P<fan> T2'     : Use the set secondary speed
820
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
821
+ */
822
+//#define EXTRA_FAN_SPEED
823
+
824
+/**
816 825
  * Advanced Pause
817 826
  * Experimental feature for filament change support and for parking the nozzle when paused.
818 827
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h Ver fichero

@@ -818,6 +818,15 @@
818 818
 #endif
819 819
 
820 820
 /**
821
+ * Extra Fan Speed
822
+ * Adds a secondary fan speed for each print-cooling fan.
823
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
824
+ *   'M106 P<fan> T2'     : Use the set secondary speed
825
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
826
+ */
827
+//#define EXTRA_FAN_SPEED
828
+
829
+/**
821 830
  * Advanced Pause
822 831
  * Experimental feature for filament change support and for parking the nozzle when paused.
823 832
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h Ver fichero

@@ -813,6 +813,15 @@
813 813
 #endif
814 814
 
815 815
 /**
816
+ * Extra Fan Speed
817
+ * Adds a secondary fan speed for each print-cooling fan.
818
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
819
+ *   'M106 P<fan> T2'     : Use the set secondary speed
820
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
821
+ */
822
+//#define EXTRA_FAN_SPEED
823
+
824
+/**
816 825
  * Advanced Pause
817 826
  * Experimental feature for filament change support and for parking the nozzle when paused.
818 827
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/makibox/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 9
- 0
Marlin/example_configurations/wt150/Configuration_adv.h Ver fichero

@@ -811,6 +811,15 @@
811 811
 #endif
812 812
 
813 813
 /**
814
+ * Extra Fan Speed
815
+ * Adds a secondary fan speed for each print-cooling fan.
816
+ *   'M106 P<fan> T3-255' : Set a secondary speed for <fan>
817
+ *   'M106 P<fan> T2'     : Use the set secondary speed
818
+ *   'M106 P<fan> T1'     : Restore the previous fan speed
819
+ */
820
+//#define EXTRA_FAN_SPEED
821
+
822
+/**
814 823
  * Advanced Pause
815 824
  * Experimental feature for filament change support and for parking the nozzle when paused.
816 825
  * Adds the GCode M600 for initiating filament change.

+ 3
- 0
Marlin/language_en.h Ver fichero

@@ -398,6 +398,9 @@
398 398
 #ifndef MSG_FAN_SPEED
399 399
   #define MSG_FAN_SPEED                       _UxGT("Fan speed")
400 400
 #endif
401
+#ifndef MSG_EXTRA_FAN_SPEED
402
+  #define MSG_EXTRA_FAN_SPEED                 _UxGT("Extra fan speed")
403
+#endif
401 404
 #ifndef MSG_FLOW
402 405
   #define MSG_FLOW                            _UxGT("Flow")
403 406
 #endif

+ 28
- 11
Marlin/ultralcd.cpp Ver fichero

@@ -1241,6 +1241,15 @@ void kill_screen(const char* lcd_msg) {
1241 1241
 
1242 1242
   #endif // ADVANCED_PAUSE_FEATURE
1243 1243
 
1244
+  // First Fan Speed title in "Tune" and "Control>Temperature" menus
1245
+  #if FAN_COUNT > 0 && HAS_FAN0
1246
+    #if FAN_COUNT > 1
1247
+      #define FAN_SPEED_1_SUFFIX " 1"
1248
+    #else
1249
+      #define FAN_SPEED_1_SUFFIX ""
1250
+    #endif
1251
+  #endif
1252
+
1244 1253
   /**
1245 1254
    *
1246 1255
    * "Tune" submenu
@@ -1296,18 +1305,22 @@ void kill_screen(const char* lcd_msg) {
1296 1305
     //
1297 1306
     #if FAN_COUNT > 0
1298 1307
       #if HAS_FAN0
1299
-        #if FAN_COUNT > 1
1300
-          #define MSG_1ST_FAN_SPEED MSG_FAN_SPEED " 1"
1301
-        #else
1302
-          #define MSG_1ST_FAN_SPEED MSG_FAN_SPEED
1303
-        #endif
1304
-        MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_1ST_FAN_SPEED, &fanSpeeds[0], 0, 255);
1308
+        MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED FAN_SPEED_1_SUFFIX, &fanSpeeds[0], 0, 255);
1309
+       #if ENABLED(EXTRA_FAN_SPEED)
1310
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED FAN_SPEED_1_SUFFIX, &new_fanSpeeds[0], 3, 255);
1311
+       #endif
1305 1312
       #endif
1306 1313
       #if HAS_FAN1
1307 1314
         MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED " 2", &fanSpeeds[1], 0, 255);
1315
+        #if ENABLED(EXTRA_FAN_SPEED)
1316
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED " 2", &new_fanSpeeds[1], 3, 255);
1317
+        #endif
1308 1318
       #endif
1309 1319
       #if HAS_FAN2
1310 1320
         MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED " 3", &fanSpeeds[2], 0, 255);
1321
+        #if ENABLED(EXTRA_FAN_SPEED)
1322
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED " 3", &new_fanSpeeds[2], 3, 255);
1323
+        #endif
1311 1324
       #endif
1312 1325
     #endif // FAN_COUNT > 0
1313 1326
 
@@ -3317,18 +3330,22 @@ void kill_screen(const char* lcd_msg) {
3317 3330
     //
3318 3331
     #if FAN_COUNT > 0
3319 3332
       #if HAS_FAN0
3320
-        #if FAN_COUNT > 1
3321
-          #define MSG_1ST_FAN_SPEED MSG_FAN_SPEED " 1"
3322
-        #else
3323
-          #define MSG_1ST_FAN_SPEED MSG_FAN_SPEED
3333
+        MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED FAN_SPEED_1_SUFFIX, &fanSpeeds[0], 0, 255);
3334
+        #if ENABLED(EXTRA_FAN_SPEED)
3335
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED FAN_SPEED_1_SUFFIX, &new_fanSpeeds[0], 3, 255);
3324 3336
         #endif
3325
-        MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_1ST_FAN_SPEED, &fanSpeeds[0], 0, 255);
3326 3337
       #endif
3327 3338
       #if HAS_FAN1
3328 3339
         MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED " 2", &fanSpeeds[1], 0, 255);
3340
+        #if ENABLED(EXTRA_FAN_SPEED)
3341
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED " 2", &new_fanSpeeds[1], 3, 255);
3342
+        #endif
3329 3343
       #endif
3330 3344
       #if HAS_FAN2
3331 3345
         MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_FAN_SPEED " 3", &fanSpeeds[2], 0, 255);
3346
+        #if ENABLED(EXTRA_FAN_SPEED)
3347
+          MENU_MULTIPLIER_ITEM_EDIT(int3, MSG_EXTRA_FAN_SPEED " 3", &new_fanSpeeds[2], 3, 255);
3348
+        #endif
3332 3349
       #endif
3333 3350
     #endif // FAN_COUNT > 0
3334 3351
 

Loading…
Cancelar
Guardar