Resonance Compensation and Pressure Advance Configuration Issues
This page compiles configuration errors and tuning anomalies related to Input Shaper (resonance compensation) and Pressure Advance. For accelerometer hardware connection and communication errors, please refer to Accelerometer Testing and Calibration.
Print Quality Worsens or Becomes Blurry After Enabling Input Shaper
Symptom: After configuring [input_shaper], surface ghosting/rippling on printed parts becomes more noticeable than when disabled, or details become blurry and corners rounded.
Common Causes:
shaper_freq_x/shaper_freq_ydeviate significantly from the actual resonance frequency.- The selected
shaper_typeis unsuitable for the current machine (e.g., using2hump_eion a high-rigidity machine causes excessive smoothing). - Mechanical structure has looseness (loose belts, large slider clearances, unsecured screws), which resonance compensation cannot correct.
- Pressure Advance was not recalibrated after enabling Input Shaper; the two effects combine causing extrusion anomalies.
Solutions:
-
Rule out mechanical issues first: With power off, check belt tension, slider/rail clearances, and frame screw tightness.
-
Re-run resonance measurement to obtain accurate frequencies:
TEST_RESONANCES AXIS=XTEST_RESONANCES AXIS=Y -
Choose the appropriate shaper type based on the resonance graph:
Shaper Suitable For Frequency Tolerance Smoothing Impact zvHigh-rigidity, low-vibration machines ±5% Lowest mzvMost desktop machines (recommended first choice) ±10% Medium eiBed-slinger / higher vibration ±20% Medium-high 2hump_eiMultiple resonance frequencies present ±45% High 3hump_eiComplex resonance patterns ±60% Highest -
Pressure Advance must be recalibrated after enabling Input Shaper:
SET_PRESSURE_ADVANCE ADVANCE=0TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 -
If blurring is severe, try lowering
shaper_freqby approximately 5–10% or switch to a shaper type with lower tolerance.
Related configuration reference: Klipper Resonance Compensation Official Documentation.
TEST_RESONANCES / SHAPER_CALIBRATE Configuration Errors
Error Messages:
accel_chip not configured/No accelerometer configuredprobe_points must be specifiedor coordinates out of print rangeInvalid accel_chip/ specified chip name not found
Common Causes:
accel_chipis not configured in[resonance_tester], or the name does not match the[adxl345]/[mpu9250]/[lis2dw]section name.probe_pointscoordinates exceed theposition_maxrange defined by[stepper_x]/[stepper_y].- Incorrect capitalization or prefix for
accel_chipwhen multiple accelerometers are configured.
Solutions:
-
Ensure configuration section names match:
[adxl345]cs_pin: toolboard:gpio12spi_bus:spi0_gpio4_gpio3_gpio2[resonance_tester]accel_chip: adxl345probe_points:150, 150, 20 -
The X, Y coordinates of
probe_pointsmust be within the print range; the Z coordinate is the nozzle height above the bed during testing (20 mm recommended). -
If using an accelerometer on the toolboard, the
accel_chipname must exactly match the configuration section (case-sensitive). -
In multi-chip scenarios,
accel_chip_xandaccel_chip_ycan be specified to correspond to different axes.
Hardware Communication Errors: If
ACCELEROMETER_QUERYreturns timeout or ID errors, refer to the common issues section in Accelerometer Testing and Calibration.
axes_map is Not Auto-Detected
Symptom: ACCELEROMETER_QUERY returns data normally, but after running TEST_RESONANCES / SHAPER_CALIBRATE, the resonance graph orientation is abnormal, X/Y axis results appear swapped, or print quality does not improve after enabling Input Shaper.
Explanation:
In Klipper, accelerometer configurations such as [adxl345], [lis2dw], [mpu9250], [bmi160], and [icm20948] use the same axes_map parsing logic. Klipper only reads the axes_map from the configuration; it does not automatically determine coordinate mapping based on sensor mounting orientation.
If axes_map is not filled in, the default value is:
axes_map: x,y,z
Common Causes:
- The mounting orientation of the toolboard or external accelerometer does not align with the printer's X/Y/Z coordinate directions.
- Configuration copied from another machine or mounting orientation, resulting in incorrect
x,y,zorder or sign. - After replacing the toolboard, hotend housing, or accelerometer mounting position,
axes_mapwas not re-verified.
Correct Syntax:
axes_map must contain 3 axes, and supports swapping axis order and negating:
[adxl345]
axes_map: x,y,z
# Example: X unchanged, Y/Z swapped
# axes_map: x,z,y
# Example: X/Y directions negated, Z unchanged
# axes_map: -x,-y,z
Verification Method:
-
First confirm accelerometer communication is normal:
ACCELEROMETER_QUERY -
Start recording accelerometer data, then test X and Y directions with small movements:
ACCELEROMETER_MEASUREG91G1 X10 F3000G1 X-10 F3000G1 Y10 F3000G1 Y-10 F3000G90ACCELEROMETER_MEASURE NAME=axes_map_check -
In
/tmp/<chip-type>-axes_map_check.csv, check which data column changes the most during X/Y movement. For example,[adxl345]generates/tmp/adxl345-axes_map_check.csv; if using a named configuration section (e.g.,[adxl345 hotend]), the filename will include the corresponding chip name. -
If movement in the X direction primarily responds in Y or Z, the axis order needs adjustment; if the response direction is reversed, add
-before the corresponding axis. -
In multi-accelerometer scenarios,
ACCELEROMETER_MEASUREaccepts theCHIP=<chip-name>parameter to specify which accelerometer to test. -
After modifying
axes_map, executeRESTART, then re-runTEST_RESONANCESorSHAPER_CALIBRATE.
axes_map only affects how accelerometer data is mapped to printer coordinates; it does not fix accelerometer communication issues. If ACCELEROMETER_QUERY itself reports errors, resolve the accelerometer communication or wiring issues first.
Failed to configure shaper(s)
Error Messages: configparser.Error: Failed to configure shaper(s) shaper_x with given parameters, Failed to configure shaper(s) shaper_z with given parameters.
Common Causes:
shaper_freq_xorshaper_freq_yexceeds the usable frequency range of the selectedshaper_type. For example,mzvmay have no valid solution at higher frequencies.damping_ratiois set improperly (too small or too large), preventing the shaper from generating valid parameters.- Manually entered parameter combinations that were not verified with
SHAPER_CALIBRATE.
Solutions:
- Re-run
SHAPER_CALIBRATEand use the automatically recommendedshaper_typeandshaper_freq. - If adjusting manually, try lowering
shaper_freqor switch to a shaper type with higher tolerance (such aseior2hump_ei). - Confirm
damping_ratiois within a reasonable range (default 0.1, common range 0.05–0.2). - If a shaper needs to be disabled on a specific axis, set
shaper_freq_x: 0instead of entering an invalid value.
shaper_freq Too High Causing Motor Noise or Missed Steps
Symptom: After enabling Input Shaper, the motor produces high-frequency whining, the print shows regular striping patterns, or steps are lost during high-speed movement.
Common Causes:
shaper_freqis set much higher than the actual resonance frequency (e.g., actual 40 Hz but set to 80 Hz).- The resonance graph was misinterpreted, mistaking a noise peak for the resonance frequency.
max_accelis set too high, exceeding the motor's torque capability. Solution:
-
Re-run
SHAPER_CALIBRATEand follow the automatically recommended frequency and shaper type. -
When manually interpreting the resonance graph, select the frequency corresponding to the highest and sharpest peak, and ignore low, broad noise.
-
Lower
max_accelto a range where the motor does not lose steps (it is recommended to start from 3000 and gradually increase):[printer]max_accel: 3000 -
If the motor continues to make abnormal noises, temporarily disable Input Shaper to confirm whether it is a configuration issue:
SET_INPUT_SHAPER SHAPER_FREQ_X=0 SHAPER_FREQ_Y=0
Corner Blob or Gap After Enabling Pressure Advance
Symptoms: After enabling pressure_advance, material accumulates (blobs) at the corners of printed parts, or there is a section of missing material/thinning before corners.
Common Causes:
- PA value too low: Residual pressure in the nozzle is not fully compensated during deceleration → corner blobs.
- PA value too high: Excessive retraction during acceleration → missing material before corners, thinner lines.
- The slicer has enabled Coasting or Extra restart distance simultaneously, which conflicts with PA compensation.
- The extruder's
rotation_distanceis not calibrated, resulting in inaccurate base extrusion volume.
Solution:
-
Ensure disabling Coasting, Extra restart distance, and dynamic acceleration control in the slicer.
-
Calibrate the extruder
rotation_distancefirst, then calibrate PA. -
Use TUNING_TOWER to print a test tower:
SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005Use
FACTOR=.005for direct-drive extruders andFACTOR=.020for remote Bowden setups. -
Select the layer height corresponding to the clearest corners and most uniform lines, then calculate the PA value:
pressure_advance = START + 高度 × FACTOR -
Typical value range: 0.02–0.15 for direct drive, 0.1–1.0 for Bowden. If there is no improvement even above 1.0, the issue is not related to PA.
Related configuration reference: Klipper Pressure Advance Official Documentation.
Extruder Skipping Due to Excessive PA Value
Symptoms: After using a high pressure_advance value (e.g., >0.2), the extruder produces clicking sounds during acceleration/deceleration phases, or the print shows broken lines.
Common Causes:
- PA compensation generates a large amount of additional extrusion/retraction movement during acceleration and deceleration, exceeding the extruder's torque.
- Acceleration settings are too high, causing the instantaneous PA compensation amount to become too large.
- Insufficient extruder current or filament slipping.
Solution:
- Lower
max_accelto reduce the instantaneous extrusion amount required by PA compensation. - Appropriately reduce the PA value to balance corner quality and extrusion reliability.
- Check whether the extruder current setting (TMC driver
run_current) is sufficient. - Confirm that the filament is not slipping (check for extruder gear wear and spring pressure).
The PA system does not change print time or total extrusion volume; it only redistributes extrusion movement during acceleration and deceleration phases. Extremely high PA values will cause very large instantaneous extruder movements, and there is no configuration option to limit this movement amplitude.
Improper pressure_advance_smooth_time Setting
Symptoms: Periodic ripples appear on the printed surface, extrusion speed is not smooth, or corner transitions look unnatural.
Common Causes:
pressure_advance_smooth_timeis set too high (>0.1s), causing slow PA compensation response.- Setting too low (
<0.01s) makes PA compensation overly aggressive, leading to extrusion oscillation. - Old configuration uses the deprecated
[pressure_advance]standalone section.
Solution:
-
The default value
0.040works for most scenarios and generally does not need modification. -
The configuration should be placed in the
[extruder]section:[extruder]pressure_advance: 0.05pressure_advance_smooth_time: 0.040 -
Do not use a separate
[pressure_advance]configuration section (deprecated). -
For long Bowden tubes, it can be appropriately increased to
0.060–0.080.
Slicer Settings Conflict with Klipper Extrusion Control
Symptoms: After configuring PA, print quality instead degrades, with increased stringing, abnormal corners, or extrusion granules.
Common Causes:
- The slicer has enabled Coasting, which overlaps with PA deceleration compensation.
- Simplify3D's Extra restart distance causes drastic extrusion speed changes.
- KISSlicer's PreloadVE duplicates the PA function.
- The slicer's "dynamic acceleration control" or "Scarf joint" interferes with testing.
Solution:
- Disable the following features in the slicer:
- Coasting
- Extra restart distance
- PreloadVE (KISSlicer)
- Dynamic acceleration control / dynamic pressure control
- Scarf joint seam (when calibrating PA)
- Keep normal retraction settings (recommended 0.5–1.0 mm) and "wipe on retract".
- Disable the slicer's "Z-lift on retract" (lift Z on retraction), let Klipper macros control it.
During PA calibration testing, it is recommended to use a slicing speed of 100 mm/s, a layer height of approximately 75% of the nozzle diameter, 0% infill, and disabled dynamic acceleration control to fully expose the PA effect.
Resonance Compensation Related Configuration Changes After Upgrading Klipper
Symptoms: After upgrading Klipper, the behavior of SHAPER_CALIBRATE changes, resonance test results differ from before, or configuration deprecation warnings appear.
Common Causes:
- Klipper has updated default parameters in
[resonance_tester](such assweeping_period,accel_per_hz). - The old
max_accel_to_decelhas been replaced byminimum_cruise_ratio. - Accelerometer sampling logic or filtering algorithms have been updated.
Solution:
-
After upgrading, check the Klipper Configuration Changes Log to see if there are entries affecting resonance compensation.
-
If you need to restore old test behavior, explicitly add the following to
[resonance_tester]:[resonance_tester]sweeping_period: 0accel_per_hz: 75 -
After upgrading, it is recommended to re-run
SHAPER_CALIBRATEinstead of reusing old frequency values. -
If
max_accel_to_decelreports deprecation, switch to:[printer]minimum_cruise_ratio: 0.5
Configuration Migration: For more configuration migration issues after upgrades, please refer to the relevant sections in Configuration Errors.