v6.0.0
This release fix the breaking change in Klipper from december 2025, but also allow installation in Debian 13 Trixie! But that's not all, it also include a fully revamped axes map detection macro.
If you have any problem about scipy install or something like this, just remove it from your virtual environement as it's not needed anymore starting from this version. So you can safely pip uninstall scipy in the venv!
New Features
- Add velocity‑based axes map detection that derives accelerometer orientation, rotation matrix, and Euler angles from integrated motion data. This new version should now work correctly in most case! With also automatic support 2‑axis toolhead printers (like Trident, Switchwire, etc...) by detecting noise‑only axes and extrapolating a virtual axis to still compute a valid axes_map. This one will also work when an axes_map is already set in order to validate it.
- Expose a CLI option to pass the axes_map parameter for verification and correction in axes map analysis when manually running Shake&Tune.
Bug Fixes
- Handle varying return types and signatures from newer Klipper shaper calibration APIs (after december 2025 breaking change) to avoid runtime failures. This is done using compatibility wrappers around Klipper’s process_accelerometer_data and find_best_shaper to automatically detect the function signature and use the correct API with backward compatibility.
Enhancements
- Optimize spectrogram computation for low‑RAM systems using a custom implementation instead of scipy.spectrogram.
- Modernize numpy and matplotlib versions and simplify system package requirements to better match current environments and allow Shake&Tune to be installed on Trixie.
- Switch vibration and belts computations to use the new Klipper compatibility helpers for consistent data processing.
Build
- Update Python package requirements to newer numpy/matplotlib versions and drop Scipy and PyWavelets dependencies.
- Adjust install script system dependencies to only install libopenblas-dev and remove the deprecated libs
Documentation
- Expand axes map calibration documentation to describe the new velocity‑based algorithm, 2‑axis machine behavior, and troubleshooting guidance.
- Update CLI usage docs for axes_map to reflect the new required/optional parameters and axes_map verification use cases.
Chores
- Mark project version as dynamic in pyproject.toml for external version management and to allow the proper use of
uv.
New Contributors
- @mjonuschat made their first contribution in #247
Full Changelog: v5.2.1...v6.0.0