aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/gcode.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2017-10-11 22:16:02 -0400
committerKevin O'Connor <kevin@koconnor.net>2017-10-12 11:59:27 -0400
commitd03cf2b83f9df6b802af72860d8d3b56df89956f (patch)
treeb9f61292f67fcf0548eaa8f5b3a7c491290689fd /klippy/gcode.py
parent744c6d114e3681a2e8cfcd4475424a7d19774d52 (diff)
downloadkutter-d03cf2b83f9df6b802af72860d8d3b56df89956f.tar.gz
kutter-d03cf2b83f9df6b802af72860d8d3b56df89956f.tar.xz
kutter-d03cf2b83f9df6b802af72860d8d3b56df89956f.zip
adccmds: Continue to query analog inputs after a shutdown
Continue to sample the ADC input pins even if the MCU goes into a shutdown state. This enables the printer to continue reporting temperatures even on an mcu error. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/gcode.py')
-rw-r--r--klippy/gcode.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/klippy/gcode.py b/klippy/gcode.py
index 45da131c..37e1c2af 100644
--- a/klippy/gcode.py
+++ b/klippy/gcode.py
@@ -210,18 +210,18 @@ class GCodeParser:
except ValueError as e:
raise error("Malformed command '%s'" % (params['#original'],))
# Temperature wrappers
- def get_temp(self):
- if not self.is_printer_ready:
- return "T:0"
+ def get_temp(self, eventtime):
# Tn:XXX /YYY B:XXX /YYY
out = []
for i, heater in enumerate(self.heaters):
if heater is not None:
- cur, target = heater.get_temp()
+ cur, target = heater.get_temp(eventtime)
name = "B"
if i < len(self.heaters) - 1:
name = "T%d" % (i,)
out.append("%s:%.1f /%.1f" % (name, cur, target))
+ if not out:
+ return "T:0"
return " ".join(out)
def bg_temp(self, heater):
if self.is_fileinput:
@@ -229,7 +229,7 @@ class GCodeParser:
eventtime = self.reactor.monotonic()
while self.is_printer_ready and heater.check_busy(eventtime):
print_time = self.toolhead.get_last_move_time()
- self.respond(self.get_temp())
+ self.respond(self.get_temp(eventtime))
eventtime = self.reactor.pause(eventtime + 1.)
def set_temp(self, params, is_bed=False, wait=False):
temp = self.get_float('S', params, 0.)
@@ -387,7 +387,7 @@ class GCodeParser:
cmd_M105_when_not_ready = True
def cmd_M105(self, params):
# Get Extruder Temperature
- self.ack(self.get_temp())
+ self.ack(self.get_temp(self.reactor.monotonic()))
def cmd_M104(self, params):
# Set Extruder Temperature
self.set_temp(params)