From 665323eb29c7794776ce64a17786032690ef3a2a Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Mon, 16 Dec 2019 19:16:58 -0500 Subject: [PATCH] heater: Use printer.command_error() instead of internal heater.error() Use the more standard command_error to report invalid temperature requests. Signed-off-by: Kevin O'Connor --- klippy/extras/pid_calibrate.py | 4 ++-- klippy/gcode.py | 5 +---- klippy/heater.py | 9 +++------ 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/klippy/extras/pid_calibrate.py b/klippy/extras/pid_calibrate.py index 0eb7c382..9c9dc0a4 100644 --- a/klippy/extras/pid_calibrate.py +++ b/klippy/extras/pid_calibrate.py @@ -28,9 +28,9 @@ class PIDCalibrate: old_control = heater.set_control(calibrate) try: heater.set_temp(print_time, target) - except heater.error as e: + except self.printer.command_error as e: heater.set_control(old_control) - raise self.gcode.error(str(e)) + raise self.gcode.bg_temp(heater) heater.set_control(old_control) if write_file: diff --git a/klippy/gcode.py b/klippy/gcode.py index b228c499..2406a67c 100644 --- a/klippy/gcode.py +++ b/klippy/gcode.py @@ -418,10 +418,7 @@ class GCodeParser: self.respond_error("Heater not configured") return print_time = self.toolhead.get_last_move_time() - try: - heater.set_temp(print_time, temp) - except heater.error as e: - raise self.error(str(e)) + heater.set_temp(print_time, temp) if wait and temp: self.bg_temp(heater) # G-Code special command handlers diff --git a/klippy/heater.py b/klippy/heater.py index 3631db38..c16cafaa 100644 --- a/klippy/heater.py +++ b/klippy/heater.py @@ -15,11 +15,7 @@ MAX_HEAT_TIME = 5.0 AMBIENT_TEMP = 25. PID_PARAM_BASE = 255. -class error(Exception): - pass - class Heater: - error = error def __init__(self, config, sensor): self.printer = config.get_printer() self.gcode = self.printer.lookup_object("gcode") @@ -103,8 +99,9 @@ class Heater: return self.smooth_time def set_temp(self, print_time, degrees): if degrees and (degrees < self.min_temp or degrees > self.max_temp): - raise error("Requested temperature (%.1f) out of range (%.1f:%.1f)" - % (degrees, self.min_temp, self.max_temp)) + raise self.printer.command_error( + "Requested temperature (%.1f) out of range (%.1f:%.1f)" + % (degrees, self.min_temp, self.max_temp)) with self.lock: self.target_temp = degrees def get_temp(self, eventtime):