Interactive visualizations of motion-control internals in Klipper / Kalico — pressure advance, input shaping, and resonance compensation.
Load a resonance capture (peak detection runs live, in-browser) and get the shaper SHAPER_CALIBRATE would recommend — the full find_best_shaper search ported to JS, including multimode with the dual-peak-cluster fix. Explore any shaper type by hand against your own data (smoothing, max_accel, per-resonance residual), then generate a ready-to-paste [input_shaper] config.
Compare the tanh and recipr nonlinear models against an upstream linear-PA line. Adjust ADVANCE, OFFSET, VELOCITY and a test move to see advance-vs-velocity, extruder flow rate, and acceleration demand, with the firmware's parabolic extruder smoother and a time-offset control.
Kalico input smoothers replace a shaper's discrete impulses with a smooth polynomial window. Compare any shaper against any smoother on shared vibration-reduction axes and in the time domain, from the get_*_smoother definitions in shaper_defs.py.
The polynomial kernel that keeps pressure advance synchronized with input shaping. Compares the fitted kernel before vs after the extruder_smoother.py rework (analytic targets, constrained least squares, Legendre basis) for every shaper — 3hump_ei improves the most.
The motion TEST_RESONANCES generates — frequency sweep, per-cycle acceleration, and the optional sweeping oscillation. Overlays the enforced accel/velocity limits derived from the real sequence against upstream's fixed formula, which ignores the sweeping term.
How SHAPER_CALIBRATE scores a shaper: the old finite-difference of the step response vs an analytic velocity with kink-exact evaluation and parabolic-refined minimum. Drop the sample count and watch the old method deviate while the new one stays exact.
bleeding-edge-v2 implementation (tanh/recipr nonlinear PA) that is not in upstream Kalico or Klipper. The shaper-tuning, smoother, resonance-excitation, and estimation pages reproduce the Kalico shaper code (shaper_defs.py, resonance_tester.py, shaper_calibrate.py) with proposed fixes and contrast them against current upstream Kalico (bleeding-edge-v2).
Math and kernels reproduced from klippy/chelper/kin_extruder.c, klippy/extras/extruder_smoother.py, and klippy/extras/shaper_defs.py. Charts rendered with Chart.js (CDN). Source: Hannott/KlipperVisuals.