浏览代码

Improve BLTOUCH_HEATERS_OFF functionality

 - rename to PROBING_HEATERS_OFF
 - move heater pausing functionality into thermalManager
   - add variables, pause(), ispaused(), other functions
 - add fan pausing functionality -> PROBING_FANS_OFF
 - add probing_pause() wrapper
 - move pausing into do_homing_move() and do_probe_move() to minimize quiet time and so other probe types can benefit
 - example configs
Brian 8 年前
父节点
当前提交
a68084f417
共有 32 个文件被更改,包括 468 次插入108 次删除
  1. 9
    0
      Marlin/Conditionals_post.h
  2. 11
    2
      Marlin/Configuration.h
  3. 4
    0
      Marlin/Marlin.h
  4. 77
    53
      Marlin/Marlin_main.cpp
  5. 11
    2
      Marlin/example_configurations/Cartesio/Configuration.h
  6. 11
    2
      Marlin/example_configurations/Felix/Configuration.h
  7. 11
    2
      Marlin/example_configurations/Felix/DUAL/Configuration.h
  8. 11
    2
      Marlin/example_configurations/FolgerTech-i3-2020/Configuration.h
  9. 11
    2
      Marlin/example_configurations/Hephestos/Configuration.h
  10. 11
    2
      Marlin/example_configurations/Hephestos_2/Configuration.h
  11. 11
    2
      Marlin/example_configurations/K8200/Configuration.h
  12. 11
    2
      Marlin/example_configurations/K8400/Configuration.h
  13. 11
    2
      Marlin/example_configurations/K8400/Dual-head/Configuration.h
  14. 11
    2
      Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h
  15. 11
    2
      Marlin/example_configurations/RigidBot/Configuration.h
  16. 11
    2
      Marlin/example_configurations/SCARA/Configuration.h
  17. 11
    2
      Marlin/example_configurations/TAZ4/Configuration.h
  18. 11
    2
      Marlin/example_configurations/TinyBoy2/Configuration.h
  19. 11
    2
      Marlin/example_configurations/WITBOX/Configuration.h
  20. 11
    2
      Marlin/example_configurations/adafruit/ST7565/Configuration.h
  21. 11
    2
      Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration.h
  22. 11
    2
      Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration.h
  23. 11
    2
      Marlin/example_configurations/delta/generic/Configuration.h
  24. 11
    2
      Marlin/example_configurations/delta/kossel_mini/Configuration.h
  25. 11
    2
      Marlin/example_configurations/delta/kossel_pro/Configuration.h
  26. 11
    2
      Marlin/example_configurations/delta/kossel_xl/Configuration.h
  27. 14
    3
      Marlin/example_configurations/gCreate_gMax1.5+/Configuration.h
  28. 11
    2
      Marlin/example_configurations/makibox/Configuration.h
  29. 11
    2
      Marlin/example_configurations/tvrrug/Round2/Configuration.h
  30. 11
    2
      Marlin/example_configurations/wt150/Configuration.h
  31. 64
    0
      Marlin/temperature.cpp
  32. 14
    0
      Marlin/temperature.h

+ 9
- 0
Marlin/Conditionals_post.h 查看文件

645
   #endif
645
   #endif
646
   #define WRITE_FAN_N(n, v) WRITE_FAN##n(v)
646
   #define WRITE_FAN_N(n, v) WRITE_FAN##n(v)
647
 
647
 
648
+
649
+  /**
650
+   * Heater & Fan Pausing
651
+   */
652
+  #if ENABLED(PROBING_FANS_OFF) && FAN_COUNT == 0
653
+    #undef PROBING_FANS_OFF
654
+  #endif
655
+  #define QUIET_PROBING (ENABLED(PROBING_HEATERS_OFF) || ENABLED(PROBING_FANS_OFF))
656
+
648
   /**
657
   /**
649
    * Servos and probes
658
    * Servos and probes
650
    */
659
    */

+ 11
- 2
Marlin/Configuration.h 查看文件

584
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
584
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
585
 
585
 
586
 /**
586
 /**
587
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
587
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
588
  */
588
  */
589
 //#define BLTOUCH
589
 //#define BLTOUCH
590
 #if ENABLED(BLTOUCH)
590
 #if ENABLED(BLTOUCH)
591
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
591
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
592
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
593
 #endif
592
 #endif
594
 
593
 
594
+/**
595
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
596
+ * options selected below - will be disabled during probing so as to minimize
597
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
598
+ * in current flowing through the wires).  This is likely most useful to users of the
599
+ * BLTouch probe, but may also help those with inductive or other probe types.
600
+ */
601
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
602
+//#define PROBING_FANS_OFF          // Turn fans off when probing
603
+
595
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
604
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
596
 //#define SOLENOID_PROBE
605
 //#define SOLENOID_PROBE
597
 
606
 

+ 4
- 0
Marlin/Marlin.h 查看文件

362
 
362
 
363
 #if FAN_COUNT > 0
363
 #if FAN_COUNT > 0
364
   extern int16_t fanSpeeds[FAN_COUNT];
364
   extern int16_t fanSpeeds[FAN_COUNT];
365
+  #if ENABLED(PROBING_FANS_OFF)
366
+    extern bool fans_paused;
367
+    extern int16_t paused_fanSpeeds[FAN_COUNT];
368
+  #endif
365
 #endif
369
 #endif
366
 
370
 
367
 #if ENABLED(BARICUDA)
371
 #if ENABLED(BARICUDA)

+ 77
- 53
Marlin/Marlin_main.cpp 查看文件

441
 
441
 
442
 #if FAN_COUNT > 0
442
 #if FAN_COUNT > 0
443
   int16_t fanSpeeds[FAN_COUNT] = { 0 };
443
   int16_t fanSpeeds[FAN_COUNT] = { 0 };
444
+  #if ENABLED(PROBING_FANS_OFF)
445
+    bool fans_paused = false;
446
+    int16_t paused_fanSpeeds[FAN_COUNT] = { 0 };
447
+  #endif
444
 #endif
448
 #endif
445
 
449
 
446
 // The active extruder (tool). Set with T<extruder> command.
450
 // The active extruder (tool). Set with T<extruder> command.
2041
 
2045
 
2042
 #endif
2046
 #endif
2043
 
2047
 
2048
+#if ENABLED(PROBING_FANS_OFF)
2049
+  void fans_pause(bool p) {
2050
+    if (p && fans_paused) { // If called out of order something is wrong
2051
+      SERIAL_ERROR_START;
2052
+      SERIAL_ERRORLNPGM("Fans already paused!");
2053
+      return;
2054
+    }
2055
+
2056
+    if (!p && !fans_paused) {
2057
+      SERIAL_ERROR_START;
2058
+      SERIAL_ERRORLNPGM("Fans already unpaused!");
2059
+      return;
2060
+    }
2061
+
2062
+    if (p) {
2063
+      for (uint8_t x = 0;x < FAN_COUNT;x++) {
2064
+        paused_fanSpeeds[x] = fanSpeeds[x];
2065
+        fanSpeeds[x] = 0;
2066
+      }
2067
+    }
2068
+    else {
2069
+      for (uint8_t x = 0;x < FAN_COUNT;x++)
2070
+        fanSpeeds[x] = paused_fanSpeeds[x];
2071
+    }
2072
+
2073
+    fans_paused = p;
2074
+  }
2075
+#endif
2076
+
2044
 #if HAS_BED_PROBE
2077
 #if HAS_BED_PROBE
2045
 
2078
 
2046
   // TRIGGERED_WHEN_STOWED_TEST can easily be extended to servo probes, ... if needed.
2079
   // TRIGGERED_WHEN_STOWED_TEST can easily be extended to servo probes, ... if needed.
2052
     #endif
2085
     #endif
2053
   #endif
2086
   #endif
2054
 
2087
 
2088
+  #if QUIET_PROBING
2089
+    void probing_pause(bool pause) {
2090
+      #if ENABLED(PROBING_HEATERS_OFF)
2091
+        thermalManager.pause(pause);
2092
+      #endif
2093
+
2094
+      #if ENABLED(PROBING_FANS_OFF)
2095
+        fans_pause(pause);
2096
+      #endif
2097
+
2098
+      if(pause) safe_delay(25);
2099
+    }
2100
+  #endif
2101
+
2055
   #if ENABLED(BLTOUCH)
2102
   #if ENABLED(BLTOUCH)
2056
 
2103
 
2057
     void bltouch_command(int angle) {
2104
     void bltouch_command(int angle) {
2059
       safe_delay(BLTOUCH_DELAY);
2106
       safe_delay(BLTOUCH_DELAY);
2060
     }
2107
     }
2061
 
2108
 
2062
-    /**
2063
-     * BLTouch probes have a Hall effect sensor. The high currents switching
2064
-     * on and off cause a magnetic field that can affect the repeatability of the
2065
-     * sensor. So for BLTouch probes, heaters are turned off during the probe,
2066
-     * then quickly turned back on after the point is sampled.
2067
-     */
2068
-    #if ENABLED(BLTOUCH_HEATERS_OFF)
2069
-
2070
-      void set_heaters_for_bltouch(const bool deploy) {
2071
-        static bool heaters_were_disabled = false;
2072
-        static millis_t next_emi_protection = 0;
2073
-        static int16_t temps_at_entry[HOTENDS];
2074
-
2075
-        #if HAS_TEMP_BED
2076
-          static int16_t bed_temp_at_entry;
2077
-        #endif
2078
-
2079
-        // If called out of order or far apart something is seriously wrong
2080
-        if (deploy == heaters_were_disabled
2081
-            || (next_emi_protection && ELAPSED(millis(), next_emi_protection)))
2082
-          kill(PSTR(MSG_KILLED));
2083
-
2084
-        if (deploy) {
2085
-          next_emi_protection = millis() + 20 * 1000UL;
2086
-          HOTEND_LOOP() {
2087
-            temps_at_entry[e] = thermalManager.degTargetHotend(e);
2088
-            thermalManager.setTargetHotend(0, e);
2089
-          }
2090
-          #if HAS_TEMP_BED
2091
-            bed_temp_at_entry = thermalManager.degTargetBed();
2092
-            thermalManager.setTargetBed(0);
2093
-          #endif
2094
-        }
2095
-        else {
2096
-          next_emi_protection = 0;
2097
-          HOTEND_LOOP() thermalManager.setTargetHotend(temps_at_entry[e], e);
2098
-          #if HAS_TEMP_BED
2099
-            thermalManager.setTargetBed(bed_temp_at_entry);
2100
-          #endif
2101
-        }
2102
-        heaters_were_disabled = deploy;
2103
-      }
2104
-
2105
-    #endif // BLTOUCH_HEATERS_OFF
2106
-
2107
     void set_bltouch_deployed(const bool deploy) {
2109
     void set_bltouch_deployed(const bool deploy) {
2108
       if (deploy && TEST_BLTOUCH()) {      // If BL-Touch says it's triggered
2110
       if (deploy && TEST_BLTOUCH()) {      // If BL-Touch says it's triggered
2109
         bltouch_command(BLTOUCH_RESET);    //  try to reset it.
2111
         bltouch_command(BLTOUCH_RESET);    //  try to reset it.
2118
           stop();                          // punt!
2120
           stop();                          // punt!
2119
         }
2121
         }
2120
       }
2122
       }
2121
-      #if ENABLED(BLTOUCH_HEATERS_OFF)
2122
-        set_heaters_for_bltouch(deploy);
2123
-      #endif
2124
 
2123
 
2125
       bltouch_command(deploy ? BLTOUCH_DEPLOY : BLTOUCH_STOW);
2124
       bltouch_command(deploy ? BLTOUCH_DEPLOY : BLTOUCH_STOW);
2126
 
2125
 
2249
       set_bltouch_deployed(true);
2248
       set_bltouch_deployed(true);
2250
     #endif
2249
     #endif
2251
 
2250
 
2251
+    #if QUIET_PROBING
2252
+      probing_pause(true);
2253
+    #endif
2254
+
2252
     // Move down until probe triggered
2255
     // Move down until probe triggered
2253
     do_blocking_move_to_z(LOGICAL_Z_POSITION(z), MMM_TO_MMS(fr_mm_m));
2256
     do_blocking_move_to_z(LOGICAL_Z_POSITION(z), MMM_TO_MMS(fr_mm_m));
2254
 
2257
 
2258
+    #if QUIET_PROBING
2259
+      probing_pause(false);
2260
+    #endif
2261
+
2255
     // Retract BLTouch immediately after a probe
2262
     // Retract BLTouch immediately after a probe
2256
     #if ENABLED(BLTOUCH)
2263
     #if ENABLED(BLTOUCH)
2257
       set_bltouch_deployed(false);
2264
       set_bltouch_deployed(false);
2809
     if (deploy_bltouch) set_bltouch_deployed(true);
2816
     if (deploy_bltouch) set_bltouch_deployed(true);
2810
   #endif
2817
   #endif
2811
 
2818
 
2819
+  #if QUIET_PROBING
2820
+    if (axis == Z_AXIS) probing_pause(true);
2821
+  #endif
2822
+
2812
   // Tell the planner we're at Z=0
2823
   // Tell the planner we're at Z=0
2813
   current_position[axis] = 0;
2824
   current_position[axis] = 0;
2814
 
2825
 
2825
 
2836
 
2826
   stepper.synchronize();
2837
   stepper.synchronize();
2827
 
2838
 
2839
+  #if QUIET_PROBING
2840
+    if (axis == Z_AXIS) probing_pause(false);
2841
+  #endif
2842
+
2828
   #if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
2843
   #if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
2829
     if (deploy_bltouch) set_bltouch_deployed(false);
2844
     if (deploy_bltouch) set_bltouch_deployed(false);
2830
   #endif
2845
   #endif
6474
   if (code_seen('S')) {
6489
   if (code_seen('S')) {
6475
     const int16_t temp = code_value_temp_abs();
6490
     const int16_t temp = code_value_temp_abs();
6476
     thermalManager.setTargetHotend(temp, target_extruder);
6491
     thermalManager.setTargetHotend(temp, target_extruder);
6492
+
6477
     #if ENABLED(DUAL_X_CARRIAGE)
6493
     #if ENABLED(DUAL_X_CARRIAGE)
6478
       if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && target_extruder == 0)
6494
       if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && target_extruder == 0)
6479
         thermalManager.setTargetHotend(temp ? temp + duplicate_extruder_temp_offset : 0, 1);
6495
         thermalManager.setTargetHotend(temp ? temp + duplicate_extruder_temp_offset : 0, 1);
6669
   if (no_wait_for_cooling || code_seen('R')) {
6685
   if (no_wait_for_cooling || code_seen('R')) {
6670
     const int16_t temp = code_value_temp_abs();
6686
     const int16_t temp = code_value_temp_abs();
6671
     thermalManager.setTargetHotend(temp, target_extruder);
6687
     thermalManager.setTargetHotend(temp, target_extruder);
6688
+
6672
     #if ENABLED(DUAL_X_CARRIAGE)
6689
     #if ENABLED(DUAL_X_CARRIAGE)
6673
       if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && target_extruder == 0)
6690
       if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && target_extruder == 0)
6674
         thermalManager.setTargetHotend(temp ? temp + duplicate_extruder_temp_offset : 0, 1);
6691
         thermalManager.setTargetHotend(temp ? temp + duplicate_extruder_temp_offset : 0, 1);
6820
     const bool no_wait_for_cooling = code_seen('S');
6837
     const bool no_wait_for_cooling = code_seen('S');
6821
     if (no_wait_for_cooling || code_seen('R')) {
6838
     if (no_wait_for_cooling || code_seen('R')) {
6822
       thermalManager.setTargetBed(code_value_temp_abs());
6839
       thermalManager.setTargetBed(code_value_temp_abs());
6840
+
6823
       #if ENABLED(PRINTJOB_TIMER_AUTOSTART)
6841
       #if ENABLED(PRINTJOB_TIMER_AUTOSTART)
6824
         if (code_value_temp_abs() > BED_MINTEMP)
6842
         if (code_value_temp_abs() > BED_MINTEMP)
6825
           print_job_timer.start();
6843
           print_job_timer.start();
7113
   thermalManager.disable_all_heaters();
7131
   thermalManager.disable_all_heaters();
7114
   stepper.finish_and_disable();
7132
   stepper.finish_and_disable();
7115
   #if FAN_COUNT > 0
7133
   #if FAN_COUNT > 0
7116
-    #if FAN_COUNT > 1
7117
-      for (uint8_t i = 0; i < FAN_COUNT; i++) fanSpeeds[i] = 0;
7118
-    #else
7119
-      fanSpeeds[0] = 0;
7134
+    for (uint8_t i = 0; i < FAN_COUNT; i++) fanSpeeds[i] = 0;
7135
+
7136
+    #if ENABLED(PROBING_FANS_OFF)
7137
+      fans_paused = false;
7138
+      ZERO(paused_fanSpeeds);
7120
     #endif
7139
     #endif
7121
   #endif
7140
   #endif
7122
   safe_delay(1000); // Wait 1 second before switching off
7141
   safe_delay(1000); // Wait 1 second before switching off
12093
  * After a stop the machine may be resumed with M999
12112
  * After a stop the machine may be resumed with M999
12094
  */
12113
  */
12095
 void stop() {
12114
 void stop() {
12096
-  thermalManager.disable_all_heaters();
12115
+  thermalManager.disable_all_heaters(); // 'unpause' taken care of in here
12116
+
12117
+  #if ENABLED(PROBING_FANS_OFF)
12118
+    if (fans_paused) fans_pause(false); // put things back the way they were
12119
+  #endif
12120
+
12097
   if (IsRunning()) {
12121
   if (IsRunning()) {
12098
     Stopped_gcode_LastN = gcode_LastN; // Save last g_code for restart
12122
     Stopped_gcode_LastN = gcode_LastN; // Save last g_code for restart
12099
     SERIAL_ERROR_START;
12123
     SERIAL_ERROR_START;

+ 11
- 2
Marlin/example_configurations/Cartesio/Configuration.h 查看文件

582
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
582
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 
583
 
584
 /**
584
 /**
585
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
585
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
586
  */
586
  */
587
 //#define BLTOUCH
587
 //#define BLTOUCH
588
 #if ENABLED(BLTOUCH)
588
 #if ENABLED(BLTOUCH)
589
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
589
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
591
 #endif
590
 #endif
592
 
591
 
592
+/**
593
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
594
+ * options selected below - will be disabled during probing so as to minimize
595
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
596
+ * in current flowing through the wires).  This is likely most useful to users of the
597
+ * BLTouch probe, but may also help those with inductive or other probe types.
598
+ */
599
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
600
+//#define PROBING_FANS_OFF          // Turn fans off when probing
601
+
593
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
602
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
594
 //#define SOLENOID_PROBE
603
 //#define SOLENOID_PROBE
595
 
604
 

+ 11
- 2
Marlin/example_configurations/Felix/Configuration.h 查看文件

566
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
566
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
567
 
567
 
568
 /**
568
 /**
569
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
569
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
570
  */
570
  */
571
 //#define BLTOUCH
571
 //#define BLTOUCH
572
 #if ENABLED(BLTOUCH)
572
 #if ENABLED(BLTOUCH)
573
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
573
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
574
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
575
 #endif
574
 #endif
576
 
575
 
576
+/**
577
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
578
+ * options selected below - will be disabled during probing so as to minimize
579
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
580
+ * in current flowing through the wires).  This is likely most useful to users of the
581
+ * BLTouch probe, but may also help those with inductive or other probe types.
582
+ */
583
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
584
+//#define PROBING_FANS_OFF          // Turn fans off when probing
585
+
577
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
586
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
578
 //#define SOLENOID_PROBE
587
 //#define SOLENOID_PROBE
579
 
588
 

+ 11
- 2
Marlin/example_configurations/Felix/DUAL/Configuration.h 查看文件

566
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
566
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
567
 
567
 
568
 /**
568
 /**
569
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
569
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
570
  */
570
  */
571
 //#define BLTOUCH
571
 //#define BLTOUCH
572
 #if ENABLED(BLTOUCH)
572
 #if ENABLED(BLTOUCH)
573
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
573
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
574
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
575
 #endif
574
 #endif
576
 
575
 
576
+/**
577
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
578
+ * options selected below - will be disabled during probing so as to minimize
579
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
580
+ * in current flowing through the wires).  This is likely most useful to users of the
581
+ * BLTouch probe, but may also help those with inductive or other probe types.
582
+ */
583
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
584
+//#define PROBING_FANS_OFF          // Turn fans off when probing
585
+
577
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
586
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
578
 //#define SOLENOID_PROBE
587
 //#define SOLENOID_PROBE
579
 
588
 

+ 11
- 2
Marlin/example_configurations/FolgerTech-i3-2020/Configuration.h 查看文件

590
 #define Z_SERVO_ANGLES {40,85}  // Z Servo Deploy and Stow angles
590
 #define Z_SERVO_ANGLES {40,85}  // Z Servo Deploy and Stow angles
591
 
591
 
592
 /**
592
 /**
593
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
593
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
594
  */
594
  */
595
 //#define BLTOUCH
595
 //#define BLTOUCH
596
 #if ENABLED(BLTOUCH)
596
 #if ENABLED(BLTOUCH)
597
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
597
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
598
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
599
 #endif
598
 #endif
600
 
599
 
600
+/**
601
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
602
+ * options selected below - will be disabled during probing so as to minimize
603
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
604
+ * in current flowing through the wires).  This is likely most useful to users of the
605
+ * BLTouch probe, but may also help those with inductive or other probe types.
606
+ */
607
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
608
+//#define PROBING_FANS_OFF          // Turn fans off when probing
609
+
601
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
610
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
602
 //#define SOLENOID_PROBE
611
 //#define SOLENOID_PROBE
603
 
612
 

+ 11
- 2
Marlin/example_configurations/Hephestos/Configuration.h 查看文件

574
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
574
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
575
 
575
 
576
 /**
576
 /**
577
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
577
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
578
  */
578
  */
579
 //#define BLTOUCH
579
 //#define BLTOUCH
580
 #if ENABLED(BLTOUCH)
580
 #if ENABLED(BLTOUCH)
581
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
581
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
582
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
583
 #endif
582
 #endif
584
 
583
 
584
+/**
585
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
586
+ * options selected below - will be disabled during probing so as to minimize
587
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
588
+ * in current flowing through the wires).  This is likely most useful to users of the
589
+ * BLTouch probe, but may also help those with inductive or other probe types.
590
+ */
591
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
592
+//#define PROBING_FANS_OFF          // Turn fans off when probing
593
+
585
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
586
 //#define SOLENOID_PROBE
595
 //#define SOLENOID_PROBE
587
 
596
 

+ 11
- 2
Marlin/example_configurations/Hephestos_2/Configuration.h 查看文件

577
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
577
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
578
 
578
 
579
 /**
579
 /**
580
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
580
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
581
  */
581
  */
582
 //#define BLTOUCH
582
 //#define BLTOUCH
583
 #if ENABLED(BLTOUCH)
583
 #if ENABLED(BLTOUCH)
584
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
584
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
585
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
586
 #endif
585
 #endif
587
 
586
 
587
+/**
588
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
589
+ * options selected below - will be disabled during probing so as to minimize
590
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
591
+ * in current flowing through the wires).  This is likely most useful to users of the
592
+ * BLTouch probe, but may also help those with inductive or other probe types.
593
+ */
594
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
595
+//#define PROBING_FANS_OFF          // Turn fans off when probing
596
+
588
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
597
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
589
 //#define SOLENOID_PROBE
598
 //#define SOLENOID_PROBE
590
 
599
 

+ 11
- 2
Marlin/example_configurations/K8200/Configuration.h 查看文件

612
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
612
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
613
 
613
 
614
 /**
614
 /**
615
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
615
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
616
  */
616
  */
617
 //#define BLTOUCH
617
 //#define BLTOUCH
618
 #if ENABLED(BLTOUCH)
618
 #if ENABLED(BLTOUCH)
619
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
619
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
620
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
621
 #endif
620
 #endif
622
 
621
 
622
+/**
623
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
624
+ * options selected below - will be disabled during probing so as to minimize
625
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
626
+ * in current flowing through the wires).  This is likely most useful to users of the
627
+ * BLTouch probe, but may also help those with inductive or other probe types.
628
+ */
629
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
630
+//#define PROBING_FANS_OFF          // Turn fans off when probing
631
+
623
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
632
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
624
 //#define SOLENOID_PROBE
633
 //#define SOLENOID_PROBE
625
 
634
 

+ 11
- 2
Marlin/example_configurations/K8400/Configuration.h 查看文件

583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
584
 
584
 
585
 /**
585
 /**
586
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
586
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
587
  */
587
  */
588
 //#define BLTOUCH
588
 //#define BLTOUCH
589
 #if ENABLED(BLTOUCH)
589
 #if ENABLED(BLTOUCH)
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
591
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
592
 #endif
591
 #endif
593
 
592
 
593
+/**
594
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
595
+ * options selected below - will be disabled during probing so as to minimize
596
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
597
+ * in current flowing through the wires).  This is likely most useful to users of the
598
+ * BLTouch probe, but may also help those with inductive or other probe types.
599
+ */
600
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
601
+//#define PROBING_FANS_OFF          // Turn fans off when probing
602
+
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
603
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
595
 //#define SOLENOID_PROBE
604
 //#define SOLENOID_PROBE
596
 
605
 

+ 11
- 2
Marlin/example_configurations/K8400/Dual-head/Configuration.h 查看文件

583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
584
 
584
 
585
 /**
585
 /**
586
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
586
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
587
  */
587
  */
588
 //#define BLTOUCH
588
 //#define BLTOUCH
589
 #if ENABLED(BLTOUCH)
589
 #if ENABLED(BLTOUCH)
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
591
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
592
 #endif
591
 #endif
593
 
592
 
593
+/**
594
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
595
+ * options selected below - will be disabled during probing so as to minimize
596
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
597
+ * in current flowing through the wires).  This is likely most useful to users of the
598
+ * BLTouch probe, but may also help those with inductive or other probe types.
599
+ */
600
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
601
+//#define PROBING_FANS_OFF          // Turn fans off when probing
602
+
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
603
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
595
 //#define SOLENOID_PROBE
604
 //#define SOLENOID_PROBE
596
 
605
 

+ 11
- 2
Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h 查看文件

583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
584
 
584
 
585
 /**
585
 /**
586
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
586
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
587
  */
587
  */
588
 //#define BLTOUCH
588
 //#define BLTOUCH
589
 #if ENABLED(BLTOUCH)
589
 #if ENABLED(BLTOUCH)
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
591
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
592
 #endif
591
 #endif
593
 
592
 
593
+/**
594
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
595
+ * options selected below - will be disabled during probing so as to minimize
596
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
597
+ * in current flowing through the wires).  This is likely most useful to users of the
598
+ * BLTouch probe, but may also help those with inductive or other probe types.
599
+ */
600
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
601
+//#define PROBING_FANS_OFF          // Turn fans off when probing
602
+
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
603
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
595
 //#define SOLENOID_PROBE
604
 //#define SOLENOID_PROBE
596
 
605
 

+ 11
- 2
Marlin/example_configurations/RigidBot/Configuration.h 查看文件

582
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
582
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 
583
 
584
 /**
584
 /**
585
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
585
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
586
  */
586
  */
587
 //#define BLTOUCH
587
 //#define BLTOUCH
588
 #if ENABLED(BLTOUCH)
588
 #if ENABLED(BLTOUCH)
589
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
589
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
591
 #endif
590
 #endif
592
 
591
 
592
+/**
593
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
594
+ * options selected below - will be disabled during probing so as to minimize
595
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
596
+ * in current flowing through the wires).  This is likely most useful to users of the
597
+ * BLTouch probe, but may also help those with inductive or other probe types.
598
+ */
599
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
600
+//#define PROBING_FANS_OFF          // Turn fans off when probing
601
+
593
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
602
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
594
 //#define SOLENOID_PROBE
603
 //#define SOLENOID_PROBE
595
 
604
 

+ 11
- 2
Marlin/example_configurations/SCARA/Configuration.h 查看文件

598
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
598
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
599
 
599
 
600
 /**
600
 /**
601
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
601
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
602
  */
602
  */
603
 //#define BLTOUCH
603
 //#define BLTOUCH
604
 #if ENABLED(BLTOUCH)
604
 #if ENABLED(BLTOUCH)
605
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
605
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
606
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
607
 #endif
606
 #endif
608
 
607
 
608
+/**
609
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
610
+ * options selected below - will be disabled during probing so as to minimize
611
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
612
+ * in current flowing through the wires).  This is likely most useful to users of the
613
+ * BLTouch probe, but may also help those with inductive or other probe types.
614
+ */
615
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
616
+//#define PROBING_FANS_OFF          // Turn fans off when probing
617
+
609
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
618
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
610
 //#define SOLENOID_PROBE
619
 //#define SOLENOID_PROBE
611
 
620
 

+ 11
- 2
Marlin/example_configurations/TAZ4/Configuration.h 查看文件

603
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
603
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
604
 
604
 
605
 /**
605
 /**
606
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
606
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
607
  */
607
  */
608
 //#define BLTOUCH
608
 //#define BLTOUCH
609
 #if ENABLED(BLTOUCH)
609
 #if ENABLED(BLTOUCH)
610
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
610
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
611
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
612
 #endif
611
 #endif
613
 
612
 
613
+/**
614
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
615
+ * options selected below - will be disabled during probing so as to minimize
616
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
617
+ * in current flowing through the wires).  This is likely most useful to users of the
618
+ * BLTouch probe, but may also help those with inductive or other probe types.
619
+ */
620
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
621
+//#define PROBING_FANS_OFF          // Turn fans off when probing
622
+
614
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
623
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
615
 //#define SOLENOID_PROBE
624
 //#define SOLENOID_PROBE
616
 
625
 

+ 11
- 2
Marlin/example_configurations/TinyBoy2/Configuration.h 查看文件

634
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
634
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
635
 
635
 
636
 /**
636
 /**
637
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
637
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
638
  */
638
  */
639
 //#define BLTOUCH
639
 //#define BLTOUCH
640
 #if ENABLED(BLTOUCH)
640
 #if ENABLED(BLTOUCH)
641
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
641
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
642
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
643
 #endif
642
 #endif
644
 
643
 
644
+/**
645
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
646
+ * options selected below - will be disabled during probing so as to minimize
647
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
648
+ * in current flowing through the wires).  This is likely most useful to users of the
649
+ * BLTouch probe, but may also help those with inductive or other probe types.
650
+ */
651
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
652
+//#define PROBING_FANS_OFF          // Turn fans off when probing
653
+
645
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
654
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
646
 //#define SOLENOID_PROBE
655
 //#define SOLENOID_PROBE
647
 
656
 

+ 11
- 2
Marlin/example_configurations/WITBOX/Configuration.h 查看文件

574
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
574
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
575
 
575
 
576
 /**
576
 /**
577
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
577
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
578
  */
578
  */
579
 //#define BLTOUCH
579
 //#define BLTOUCH
580
 #if ENABLED(BLTOUCH)
580
 #if ENABLED(BLTOUCH)
581
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
581
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
582
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
583
 #endif
582
 #endif
584
 
583
 
584
+/**
585
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
586
+ * options selected below - will be disabled during probing so as to minimize
587
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
588
+ * in current flowing through the wires).  This is likely most useful to users of the
589
+ * BLTouch probe, but may also help those with inductive or other probe types.
590
+ */
591
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
592
+//#define PROBING_FANS_OFF          // Turn fans off when probing
593
+
585
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
586
 //#define SOLENOID_PROBE
595
 //#define SOLENOID_PROBE
587
 
596
 

+ 11
- 2
Marlin/example_configurations/adafruit/ST7565/Configuration.h 查看文件

583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
583
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
584
 
584
 
585
 /**
585
 /**
586
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
586
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
587
  */
587
  */
588
 //#define BLTOUCH
588
 //#define BLTOUCH
589
 #if ENABLED(BLTOUCH)
589
 #if ENABLED(BLTOUCH)
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
590
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
591
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
592
 #endif
591
 #endif
593
 
592
 
593
+/**
594
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
595
+ * options selected below - will be disabled during probing so as to minimize
596
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
597
+ * in current flowing through the wires).  This is likely most useful to users of the
598
+ * BLTouch probe, but may also help those with inductive or other probe types.
599
+ */
600
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
601
+//#define PROBING_FANS_OFF          // Turn fans off when probing
602
+
594
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
603
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
595
 //#define SOLENOID_PROBE
604
 //#define SOLENOID_PROBE
596
 
605
 

+ 11
- 2
Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration.h 查看文件

651
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
651
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
652
 
652
 
653
 /**
653
 /**
654
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
654
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
655
  */
655
  */
656
 //#define BLTOUCH
656
 //#define BLTOUCH
657
 #if ENABLED(BLTOUCH)
657
 #if ENABLED(BLTOUCH)
658
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
658
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
659
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
660
 #endif
659
 #endif
661
 
660
 
661
+/**
662
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
663
+ * options selected below - will be disabled during probing so as to minimize
664
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
665
+ * in current flowing through the wires).  This is likely most useful to users of the
666
+ * BLTouch probe, but may also help those with inductive or other probe types.
667
+ */
668
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
669
+//#define PROBING_FANS_OFF          // Turn fans off when probing
670
+
662
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
671
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
663
 //#define SOLENOID_PROBE
672
 //#define SOLENOID_PROBE
664
 
673
 

+ 11
- 2
Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration.h 查看文件

658
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
658
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
659
 
659
 
660
 /**
660
 /**
661
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
661
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
662
  */
662
  */
663
 //#define BLTOUCH
663
 //#define BLTOUCH
664
 #if ENABLED(BLTOUCH)
664
 #if ENABLED(BLTOUCH)
665
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
665
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
666
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
667
 #endif
666
 #endif
668
 
667
 
668
+/**
669
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
670
+ * options selected below - will be disabled during probing so as to minimize
671
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
672
+ * in current flowing through the wires).  This is likely most useful to users of the
673
+ * BLTouch probe, but may also help those with inductive or other probe types.
674
+ */
675
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
676
+//#define PROBING_FANS_OFF          // Turn fans off when probing
677
+
669
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
678
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
670
 //#define SOLENOID_PROBE
679
 //#define SOLENOID_PROBE
671
 
680
 

+ 11
- 2
Marlin/example_configurations/delta/generic/Configuration.h 查看文件

647
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
647
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
648
 
648
 
649
 /**
649
 /**
650
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
650
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
651
  */
651
  */
652
 //#define BLTOUCH
652
 //#define BLTOUCH
653
 #if ENABLED(BLTOUCH)
653
 #if ENABLED(BLTOUCH)
654
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
654
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
655
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
656
 #endif
655
 #endif
657
 
656
 
657
+/**
658
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
659
+ * options selected below - will be disabled during probing so as to minimize
660
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
661
+ * in current flowing through the wires).  This is likely most useful to users of the
662
+ * BLTouch probe, but may also help those with inductive or other probe types.
663
+ */
664
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
665
+//#define PROBING_FANS_OFF          // Turn fans off when probing
666
+
658
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
667
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
659
 //#define SOLENOID_PROBE
668
 //#define SOLENOID_PROBE
660
 
669
 

+ 11
- 2
Marlin/example_configurations/delta/kossel_mini/Configuration.h 查看文件

642
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
642
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
643
 
643
 
644
 /**
644
 /**
645
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
645
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
646
  */
646
  */
647
 //#define BLTOUCH
647
 //#define BLTOUCH
648
 #if ENABLED(BLTOUCH)
648
 #if ENABLED(BLTOUCH)
649
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
649
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
650
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
651
 #endif
650
 #endif
652
 
651
 
652
+/**
653
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
654
+ * options selected below - will be disabled during probing so as to minimize
655
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
656
+ * in current flowing through the wires).  This is likely most useful to users of the
657
+ * BLTouch probe, but may also help those with inductive or other probe types.
658
+ */
659
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
660
+//#define PROBING_FANS_OFF          // Turn fans off when probing
661
+
653
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
662
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
654
 //#define SOLENOID_PROBE
663
 //#define SOLENOID_PROBE
655
 
664
 

+ 11
- 2
Marlin/example_configurations/delta/kossel_pro/Configuration.h 查看文件

641
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
641
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
642
 
642
 
643
 /**
643
 /**
644
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
644
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
645
  */
645
  */
646
 //#define BLTOUCH
646
 //#define BLTOUCH
647
 #if ENABLED(BLTOUCH)
647
 #if ENABLED(BLTOUCH)
648
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
648
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
649
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
650
 #endif
649
 #endif
651
 
650
 
651
+/**
652
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
653
+ * options selected below - will be disabled during probing so as to minimize
654
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
655
+ * in current flowing through the wires).  This is likely most useful to users of the
656
+ * BLTouch probe, but may also help those with inductive or other probe types.
657
+ */
658
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
659
+//#define PROBING_FANS_OFF          // Turn fans off when probing
660
+
652
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
661
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
653
 //#define SOLENOID_PROBE
662
 //#define SOLENOID_PROBE
654
 
663
 

+ 11
- 2
Marlin/example_configurations/delta/kossel_xl/Configuration.h 查看文件

660
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
660
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
661
 
661
 
662
 /**
662
 /**
663
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
663
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
664
  */
664
  */
665
 //#define BLTOUCH
665
 //#define BLTOUCH
666
 #if ENABLED(BLTOUCH)
666
 #if ENABLED(BLTOUCH)
667
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
667
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
668
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
669
 #endif
668
 #endif
670
 
669
 
670
+/**
671
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
672
+ * options selected below - will be disabled during probing so as to minimize
673
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
674
+ * in current flowing through the wires).  This is likely most useful to users of the
675
+ * BLTouch probe, but may also help those with inductive or other probe types.
676
+ */
677
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
678
+//#define PROBING_FANS_OFF          // Turn fans off when probing
679
+
671
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
680
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
672
 //#define SOLENOID_PROBE
681
 //#define SOLENOID_PROBE
673
 
682
 

+ 14
- 3
Marlin/example_configurations/gCreate_gMax1.5+/Configuration.h 查看文件

599
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
599
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
600
 
600
 
601
 /**
601
 /**
602
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
602
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
603
  */
603
  */
604
 #define BLTOUCH
604
 #define BLTOUCH
605
-#define BLTOUCH_DELAY 500   // (ms) Enable and increase if needed
606
-#define BLTOUCH_HEATERS_OFF // if defined the printer's heaters are turned off during probe event
605
+#if ENABLED(BLTOUCH)
606
+  #define BLTOUCH_DELAY 500   // (ms) Enable and increase if needed
607
+#endif
608
+
609
+/**
610
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
611
+ * options selected below - will be disabled during probing so as to minimize
612
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
613
+ * in current flowing through the wires).  This is likely most useful to users of the
614
+ * BLTouch probe, but may also help those with inductive or other probe types.
615
+ */
616
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
617
+//#define PROBING_FANS_OFF          // Turn fans off when probing
607
 
618
 
608
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
619
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
609
 //#define SOLENOID_PROBE
620
 //#define SOLENOID_PROBE

+ 11
- 2
Marlin/example_configurations/makibox/Configuration.h 查看文件

586
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
586
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
587
 
587
 
588
 /**
588
 /**
589
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
589
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
590
  */
590
  */
591
 //#define BLTOUCH
591
 //#define BLTOUCH
592
 #if ENABLED(BLTOUCH)
592
 #if ENABLED(BLTOUCH)
593
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
593
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
594
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
595
 #endif
594
 #endif
596
 
595
 
596
+/**
597
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
598
+ * options selected below - will be disabled during probing so as to minimize
599
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
600
+ * in current flowing through the wires).  This is likely most useful to users of the
601
+ * BLTouch probe, but may also help those with inductive or other probe types.
602
+ */
603
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
604
+//#define PROBING_FANS_OFF          // Turn fans off when probing
605
+
597
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
606
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
598
 //#define SOLENOID_PROBE
607
 //#define SOLENOID_PROBE
599
 
608
 

+ 11
- 2
Marlin/example_configurations/tvrrug/Round2/Configuration.h 查看文件

579
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
579
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
580
 
580
 
581
 /**
581
 /**
582
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
582
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
583
  */
583
  */
584
 //#define BLTOUCH
584
 //#define BLTOUCH
585
 #if ENABLED(BLTOUCH)
585
 #if ENABLED(BLTOUCH)
586
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
586
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
587
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
588
 #endif
587
 #endif
589
 
588
 
589
+/**
590
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
591
+ * options selected below - will be disabled during probing so as to minimize
592
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
593
+ * in current flowing through the wires).  This is likely most useful to users of the
594
+ * BLTouch probe, but may also help those with inductive or other probe types.
595
+ */
596
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
597
+//#define PROBING_FANS_OFF          // Turn fans off when probing
598
+
590
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
599
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
591
 //#define SOLENOID_PROBE
600
 //#define SOLENOID_PROBE
592
 
601
 

+ 11
- 2
Marlin/example_configurations/wt150/Configuration.h 查看文件

588
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
588
 //#define Z_SERVO_ANGLES {70,0}  // Z Servo Deploy and Stow angles
589
 
589
 
590
 /**
590
 /**
591
- * The BLTouch probe is a Hall effect sensor that emulates a servo.
591
+ * The BLTouch probe uses a Hall effect sensor and emulates a servo.
592
  */
592
  */
593
 //#define BLTOUCH
593
 //#define BLTOUCH
594
 #if ENABLED(BLTOUCH)
594
 #if ENABLED(BLTOUCH)
595
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
595
   //#define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
596
-  //#define BLTOUCH_HEATERS_OFF // Enable if the probe seems unreliable. Heaters will be disabled for each probe.
597
 #endif
596
 #endif
598
 
597
 
598
+/**
599
+ * Enable if probing seems unreliable. Heaters and/or fans - consistent with the
600
+ * options selected below - will be disabled during probing so as to minimize
601
+ * potential EM interference by quieting/silencing the source of the 'noise' (the change
602
+ * in current flowing through the wires).  This is likely most useful to users of the
603
+ * BLTouch probe, but may also help those with inductive or other probe types.
604
+ */
605
+//#define PROBING_HEATERS_OFF       // Turn heaters off when probing
606
+//#define PROBING_FANS_OFF          // Turn fans off when probing
607
+
599
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
608
 // A probe that is deployed and stowed with a solenoid pin (SOL1_PIN)
600
 //#define SOLENOID_PROBE
609
 //#define SOLENOID_PROBE
601
 
610
 

+ 64
- 0
Marlin/temperature.cpp 查看文件

204
   int Temperature::current_raw_filwidth = 0;  //Holds measured filament diameter - one extruder only
204
   int Temperature::current_raw_filwidth = 0;  //Holds measured filament diameter - one extruder only
205
 #endif
205
 #endif
206
 
206
 
207
+#if ENABLED(PROBING_HEATERS_OFF)
208
+  bool Temperature::paused;
209
+  int16_t Temperature::paused_hotend_temps[HOTENDS];
210
+  #if HAS_TEMP_BED
211
+    int16_t Temperature::paused_bed_temp;
212
+  #endif
213
+#endif
214
+
207
 #if HAS_PID_HEATING
215
 #if HAS_PID_HEATING
208
 
216
 
209
   void Temperature::PID_autotune(float temp, int hotend, int ncycles, bool set_result/*=false*/) {
217
   void Temperature::PID_autotune(float temp, int hotend, int ncycles, bool set_result/*=false*/) {
1194
       #endif
1202
       #endif
1195
     }
1203
     }
1196
   #endif //BED_MAXTEMP
1204
   #endif //BED_MAXTEMP
1205
+
1206
+  #if ENABLED(PROBING_HEATERS_OFF)
1207
+    paused = false;
1208
+    ZERO(paused_hotend_temps);
1209
+    #if HAS_TEMP_BED
1210
+      paused_bed_temp = 0;
1211
+    #endif
1212
+  #endif
1197
 }
1213
 }
1198
 
1214
 
1199
 #if WATCH_HOTENDS
1215
 #if WATCH_HOTENDS
1297
   HOTEND_LOOP() setTargetHotend(0, e);
1313
   HOTEND_LOOP() setTargetHotend(0, e);
1298
   setTargetBed(0);
1314
   setTargetBed(0);
1299
 
1315
 
1316
+  // Unpause and reset everything
1317
+  #if ENABLED(PROBING_HEATERS_OFF)
1318
+    paused = false;
1319
+    ZERO(paused_hotend_temps);
1320
+    #if HAS_TEMP_BED
1321
+      paused_bed_temp = 0;
1322
+    #endif
1323
+  #endif
1324
+
1300
   // If all heaters go down then for sure our print job has stopped
1325
   // If all heaters go down then for sure our print job has stopped
1301
   print_job_timer.stop();
1326
   print_job_timer.stop();
1302
 
1327
 
1331
   #endif
1356
   #endif
1332
 }
1357
 }
1333
 
1358
 
1359
+#if ENABLED(PROBING_HEATERS_OFF)
1360
+  void Temperature::pause(bool p) {
1361
+    if (p && paused) { // If called out of order something is wrong
1362
+      SERIAL_ERROR_START;
1363
+      SERIAL_ERRORLNPGM("Heaters already paused!");
1364
+      return;
1365
+    }
1366
+
1367
+    if (!p && !paused) {
1368
+      SERIAL_ERROR_START;
1369
+      SERIAL_ERRORLNPGM("Heaters already unpaused!");
1370
+      return;
1371
+    }
1372
+
1373
+    if (p) {
1374
+      HOTEND_LOOP() {
1375
+        paused_hotend_temps[e] = degTargetHotend(e);
1376
+        setTargetHotend(0, e);
1377
+      }
1378
+      #if HAS_TEMP_BED
1379
+        paused_bed_temp = degTargetBed();
1380
+        setTargetBed(0);
1381
+      #endif
1382
+    }
1383
+    else {
1384
+      HOTEND_LOOP() setTargetHotend(paused_hotend_temps[e], e);
1385
+      #if HAS_TEMP_BED
1386
+        setTargetBed(paused_bed_temp);
1387
+      #endif
1388
+    }
1389
+
1390
+    paused = p;
1391
+  }
1392
+
1393
+  bool Temperature::ispaused() {
1394
+    return paused;
1395
+  }
1396
+#endif
1397
+
1334
 #if ENABLED(HEATER_0_USES_MAX6675)
1398
 #if ENABLED(HEATER_0_USES_MAX6675)
1335
 
1399
 
1336
   #define MAX6675_HEAT_INTERVAL 250u
1400
   #define MAX6675_HEAT_INTERVAL 250u

+ 14
- 0
Marlin/temperature.h 查看文件

259
       static int current_raw_filwidth;  //Holds measured filament diameter - one extruder only
259
       static int current_raw_filwidth;  //Holds measured filament diameter - one extruder only
260
     #endif
260
     #endif
261
 
261
 
262
+    #if ENABLED(PROBING_HEATERS_OFF)
263
+      static bool paused;
264
+      static int16_t paused_hotend_temps[HOTENDS];
265
+
266
+      #if HAS_TEMP_BED
267
+        static int16_t paused_bed_temp;
268
+      #endif
269
+    #endif
270
+
262
   public:
271
   public:
263
 
272
 
264
     /**
273
     /**
452
 
461
 
453
     #endif // BABYSTEPPING
462
     #endif // BABYSTEPPING
454
 
463
 
464
+    #if ENABLED(PROBING_HEATERS_OFF)
465
+      static void pause(bool p);
466
+      static bool ispaused();
467
+    #endif
468
+
455
   private:
469
   private:
456
 
470
 
457
     static void set_current_temp_raw();
471
     static void set_current_temp_raw();

正在加载...
取消
保存