aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/extras/delta_calibrate.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2018-10-15 18:52:28 -0400
committerKevin O'Connor <kevin@koconnor.net>2018-10-15 19:01:19 -0400
commit368703fd78ae7256d8989acdc164b524e27cd320 (patch)
tree76cf2f589744a85d0c1dc6ed2fad1b55e7f1348c /klippy/extras/delta_calibrate.py
parent46355f903eb8d13448633045346051bc68c1279b (diff)
downloadkutter-368703fd78ae7256d8989acdc164b524e27cd320.tar.gz
kutter-368703fd78ae7256d8989acdc164b524e27cd320.tar.xz
kutter-368703fd78ae7256d8989acdc164b524e27cd320.zip
delta_calibrate: Perform coordinate descent in a background process
Run the coordinate descent in a background process so that the main thread does not block. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/delta_calibrate.py')
-rw-r--r--klippy/extras/delta_calibrate.py9
1 files changed, 2 insertions, 7 deletions
diff --git a/klippy/extras/delta_calibrate.py b/klippy/extras/delta_calibrate.py
index b30ffaf2..db8509a7 100644
--- a/klippy/extras/delta_calibrate.py
+++ b/klippy/extras/delta_calibrate.py
@@ -216,12 +216,7 @@ class DeltaCalibrate:
adj_params += ('arm_a', 'arm_b', 'arm_c')
z_weight = len(distances) / (MEASURE_WEIGHT * len(probe_positions))
# Perform coordinate descent
- call_count = [0]
def delta_errorfunc(params):
- call_count[0] += 1
- if not call_count[0] % 1000:
- self.gcode.respond_info("Working on calibration...")
- self.printer.get_reactor().pause(0.)
# Build new delta_params for params under test
delta_params = build_delta_params(params)
# Calculate z height errors
@@ -237,8 +232,8 @@ class DeltaCalibrate:
d = math.sqrt((x1-x2)**2 + (y1-y2)**2 + (z1-z2)**2)
total_error += (d - dist)**2
return total_error
- new_params = mathutil.coordinate_descent(
- adj_params, params, delta_errorfunc)
+ new_params = mathutil.background_coordinate_descent(
+ self.printer, adj_params, params, delta_errorfunc)
# Log and report results
logging.info("Calculated delta_calibrate parameters: %s", new_params)
new_delta_params = build_delta_params(new_params)