diff --git a/src/octoprint/plugins/virtual_printer/virtual.py b/src/octoprint/plugins/virtual_printer/virtual.py index b20b36a6cf..1d3afb08b0 100644 --- a/src/octoprint/plugins/virtual_printer/virtual.py +++ b/src/octoprint/plugins/virtual_printer/virtual.py @@ -1422,9 +1422,13 @@ def _simulateTemps(self, delta=0.5): self.lastTempAt = monotonic_time() def simulate(actual, target, ambient): - if target > 0 and abs(actual - target) > delta: + if target > 0: goal = target - factor = 10 + remaining = abs(actual - target) + if remaining > delta: + factor = 10 + elif remaining < delta: + factor = remaining elif not target and abs(actual - ambient) > delta: goal = ambient factor = 2