Quellcode durchsuchen

More reliable PROBING_HEATERS_OFF with BED_LIMIT_SWITCHING

Scott Lahteine vor 7 Jahren
Ursprung
Commit
e698998343
1 geänderte Dateien mit 12 neuen und 1 gelöschten Zeilen
  1. 12
    1
      Marlin/src/module/temperature.cpp

+ 12
- 1
Marlin/src/module/temperature.cpp Datei anzeigen

@@ -744,6 +744,10 @@ float Temperature::get_pid_output(const int8_t e) {
744 744
  */
745 745
 void Temperature::manage_heater() {
746 746
 
747
+  #if ENABLED(PROBING_HEATERS_OFF) && ENABLED(BED_LIMIT_SWITCHING)
748
+    static bool last_pause_state;
749
+  #endif
750
+
747 751
   if (!temp_meas_ready) return;
748 752
 
749 753
   updateTemperaturesFromRawValues(); // also resets the watchdog
@@ -820,8 +824,15 @@ void Temperature::manage_heater() {
820 824
   #endif // WATCH_THE_BED
821 825
 
822 826
   #if DISABLED(PIDTEMPBED)
823
-    if (PENDING(ms, next_bed_check_ms)) return;
827
+    if (PENDING(ms, next_bed_check_ms)
828
+      #if ENABLED(PROBING_HEATERS_OFF) && ENABLED(BED_LIMIT_SWITCHING)
829
+        && paused == last_pause_state
830
+      #endif
831
+    ) return;
824 832
     next_bed_check_ms = ms + BED_CHECK_INTERVAL;
833
+    #if ENABLED(PROBING_HEATERS_OFF) && ENABLED(BED_LIMIT_SWITCHING)
834
+      last_pause_state = paused;
835
+    #endif
825 836
   #endif
826 837
 
827 838
   #if HAS_TEMP_BED

Laden…
Abbrechen
Speichern