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 <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2019-12-16 19:16:58 -05:00
parent 254789f4c5
commit 665323eb29
3 changed files with 6 additions and 12 deletions

View File

@ -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:

View File

@ -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))
if wait and temp:
self.bg_temp(heater)
# G-Code special command handlers

View File

@ -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,7 +99,8 @@ 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)"
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