diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2021-08-11 23:09:49 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2021-08-30 12:25:50 -0400 |
commit | d87f7a77c31fe896a7d145e60e6487efb67c4d44 (patch) | |
tree | 8ac51b27f552339e11be9ad164a27a93c9110b66 /klippy/extras/resonance_tester.py | |
parent | 8cfaed441d1ec295c8c4be8e0733099fe3f3395a (diff) | |
download | kutter-d87f7a77c31fe896a7d145e60e6487efb67c4d44.tar.gz kutter-d87f7a77c31fe896a7d145e60e6487efb67c4d44.tar.xz kutter-d87f7a77c31fe896a7d145e60e6487efb67c4d44.zip |
adxl345: Add new start_internal_client() function and use in callers
Introduce a new start_internal_client() function and change all client
code to use that instead of manually calling start_measurements() and
finish_measurements().
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/resonance_tester.py')
-rw-r--r-- | klippy/extras/resonance_tester.py | 43 |
1 files changed, 21 insertions, 22 deletions
diff --git a/klippy/extras/resonance_tester.py b/klippy/extras/resonance_tester.py index 7d7c76b6..eaa49db3 100644 --- a/klippy/extras/resonance_tester.py +++ b/klippy/extras/resonance_tester.py @@ -164,26 +164,25 @@ class ResonanceTester: if len(axes) > 1: gcmd.respond_info("Testing axis %s" % axis.get_name()) + raw_values = [] for chip_axis, chip in self.accel_chips: if axis.matches(chip_axis): - chip.start_measurements() + aclient = chip.start_internal_client() + raw_values.append((chip_axis, aclient)) # Generate moves self.test.run_test(axis, gcmd) - raw_values = [] - for chip_axis, chip in self.accel_chips: - if axis.matches(chip_axis): - results = chip.finish_measurements() - if raw_name_suffix is not None: - raw_name = self.get_filename( - 'raw_data', raw_name_suffix, axis, - point if len(test_points) > 1 else None) - results.write_to_file(raw_name) - gcmd.respond_info( - "Writing raw accelerometer data to " - "%s file" % (raw_name,)) - raw_values.append((chip_axis, results)) - gcmd.respond_info("%s-axis accelerometer stats: %s" % ( - chip_axis, results.get_stats(),)) + for chip_axis, aclient in raw_values: + aclient.finish_measurements() + if raw_name_suffix is not None: + raw_name = self.get_filename( + 'raw_data', raw_name_suffix, axis, + point if len(test_points) > 1 else None) + aclient.write_to_file(raw_name) + gcmd.respond_info( + "Writing raw accelerometer data to " + "%s file" % (raw_name,)) + gcmd.respond_info("%s-axis accelerometer stats: %s" % ( + chip_axis, aclient.get_stats(),)) if helper is None: continue for chip_axis, chip_values in raw_values: @@ -281,14 +280,14 @@ class ResonanceTester: "Measures noise of all enabled accelerometer chips") def cmd_MEASURE_AXES_NOISE(self, gcmd): meas_time = gcmd.get_float("MEAS_TIME", 2.) - for _, chip in self.accel_chips: - chip.start_measurements() - self.printer.lookup_object('toolhead').dwell(meas_time) - raw_values = [(chip_axis, chip.finish_measurements()) + raw_values = [(chip_axis, chip.start_internal_client()) for chip_axis, chip in self.accel_chips] + self.printer.lookup_object('toolhead').dwell(meas_time) + for chip_axis, aclient in raw_values: + aclient.finish_measurements() helper = shaper_calibrate.ShaperCalibrate(self.printer) - for chip_axis, raw_data in raw_values: - data = helper.process_accelerometer_data(raw_data) + for chip_axis, aclient in raw_values: + data = helper.process_accelerometer_data(aclient) vx = data.psd_x.mean() vy = data.psd_y.mean() vz = data.psd_z.mean() |