aboutsummaryrefslogtreecommitdiffstats
path: root/klippy
diff options
context:
space:
mode:
authorPaul McGowan <mental405@gmail.com>2020-09-09 23:10:35 -0400
committerGitHub <noreply@github.com>2020-09-09 23:10:35 -0400
commit5a2f406fd1e67c29744a194dedcecde20ba09107 (patch)
treecce353952622782a89c8067f047ec36bd2f8bd56 /klippy
parentc7ea4b89c961b5f0db4c88eef3ae1fc8f3db074a (diff)
downloadkutter-5a2f406fd1e67c29744a194dedcecde20ba09107.tar.gz
kutter-5a2f406fd1e67c29744a194dedcecde20ba09107.tar.xz
kutter-5a2f406fd1e67c29744a194dedcecde20ba09107.zip
probe: add get_status wrapper to probe for last_query from query_probe command (#3296)
Add get_status wrapper with last_query status for macros It is sometimes useful to determine the state of the probe from a macro. If the probe is connected to an endstop pin, the results can be obtained via QUERY_ENDSTOPS but if a physical endstop is in use in addition to the probe the probe state cannot be obtained. This change allows one to use QUERY_PROBE and then access the printer.probe.last_query object to obtain the state. Signed-off-by: Paul McGowan <mental405@gmail.com>
Diffstat (limited to 'klippy')
-rw-r--r--klippy/extras/probe.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/klippy/extras/probe.py b/klippy/extras/probe.py
index e3fdb81c..faf65f99 100644
--- a/klippy/extras/probe.py
+++ b/klippy/extras/probe.py
@@ -25,6 +25,7 @@ class PrinterProbe:
self.z_offset = config.getfloat('z_offset')
self.probe_calibrate_z = 0.
self.multi_probe_pending = False
+ self.last_state = False
# Infer Z position to move to during a probe
if config.has_section('stepper_z'):
zconfig = config.getsection('stepper_z')
@@ -187,7 +188,10 @@ class PrinterProbe:
toolhead = self.printer.lookup_object('toolhead')
print_time = toolhead.get_last_move_time()
res = self.mcu_probe.query_endstop(print_time)
+ self.last_state = res
gcmd.respond_info("probe: %s" % (["open", "TRIGGERED"][not not res],))
+ def get_status(self, eventtime):
+ return {'last_query': self.last_state}
cmd_PROBE_ACCURACY_help = "Probe Z-height accuracy at current XY position"
def cmd_PROBE_ACCURACY(self, gcmd):
speed = gcmd.get_float("PROBE_SPEED", self.speed, above=0.)