aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/gcode.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2019-02-25 20:50:34 -0500
committerKevin O'Connor <kevin@koconnor.net>2019-02-25 21:04:02 -0500
commitff9605c082b79f4054d57ee660f909b5b2a90010 (patch)
tree031d5e9a1c097ede8db0150ac2d67a9d338fd297 /klippy/gcode.py
parentc54c81dc2af44fbc797283670ba18d91d565711d (diff)
downloadkutter-ff9605c082b79f4054d57ee660f909b5b2a90010.tar.gz
kutter-ff9605c082b79f4054d57ee660f909b5b2a90010.tar.xz
kutter-ff9605c082b79f4054d57ee660f909b5b2a90010.zip
gcode: The set_temp() takes an extruder number not a heater id
Commit cf6c5e6f did not fix the shared heater case - a set_temp() request takes the extruder id, not the heater id (nor the gcode sensor id). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/gcode.py')
-rw-r--r--klippy/gcode.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/klippy/gcode.py b/klippy/gcode.py
index 184f3a81..b7d737c6 100644
--- a/klippy/gcode.py
+++ b/klippy/gcode.py
@@ -389,18 +389,24 @@ class GCodeParser:
eventtime = self.reactor.pause(eventtime + 1.)
def set_temp(self, params, is_bed=False, wait=False):
temp = self.get_float('S', params, 0.)
+ heater = None
if is_bed:
- heater_name = 'heater_bed'
- else:
- index = self.get_int('T', params, 0, minval=0)
- heater_name = 'extruder%d' % (index,)
+ heater = self.printer.lookup_object('heater_bed', None)
+ elif 'T' in params:
+ index = self.get_int('T', params, minval=0)
+ extruder = self.printer.lookup_object('extruder%d' % (index,), None)
+ if extruder is not None:
+ heater = extruder.get_heater()
+ elif self.extruder is not None:
+ heater = self.extruder.get_heater()
+ if heater is None:
+ if temp > 0.:
+ self.respond_error("Heater not configured")
+ return
print_time = self.toolhead.get_last_move_time()
try:
- heater = self.heaters.lookup_heater(heater_name)
heater.set_temp(print_time, temp)
except heater.error as e:
- if not temp:
- return
raise error(str(e))
if wait and temp:
self.bg_temp(heater)