Klipper Pressure Advance Tuning Guide: Calibrate and Save PA
Tune Klipper pressure advance with direct-drive and Bowden tower commands, the height formula, slicer checks, and saved PA settings.
This klipper pressure advance tuning guide covers the tower commands, height calculation, and saved settings needed to reduce swollen corners. Pressure advance, or PA, compensates for the delay between extruder movement and nozzle flow as the toolhead accelerates and slows. Ellis explains the pressure lag.
Identify the defect before changing PA
Look at the transition between a straight wall and its corner:
| Appearance | Likely PA problem | Adjustment |
|---|---|---|
| Corners bulge; straight walls look relatively consistent | Too little compensation during deceleration | Increase PA |
| Corners have divots or gaps between perimeters | Too much compensation | Decrease PA |
| Continuous extrusion through the corner without a pronounced bulge | Suitable candidate | Verify at normal print settings |
These are the documented low/high PA symptoms. Judge several corners rather than a seam alone.
Flow ratio scales the amount of material extruded; PA compensates for pressure changes. Keep flow ratio fixed during the sweep so the comparison remains useful. OrcaSlicer documents both controls.
Prepare a consistent PLA tower
After calibrating rotation_distance and nozzle temperature, download square_tower.stl from Klipper.
Example setup: a Klipper-converted Ender 3 fitted with a Bowden extruder and a 0.4 mm nozzle, printing PLA. These are documentation-based starting settings:
| Setting | Tower value |
|---|---|
| Nozzle temperature | 215°C first layer; 210°C afterward |
| Bed temperature | 60°C |
| Layer height | 0.30 mm, calculated as 75% of nozzle diameter |
| Perimeters | 2–3 walls |
| Infill | 0% |
| Wall speed request | 100 mm/s |
| Retraction and line width | Keep the established profile values |
Sources: Prusa’s PLA temperatures and Klipper’s tower settings. Retain your calibrated filament temperature if different.
Use 0 top layers to leave the tower open. Check the sliced speed preview for cooling slowdowns. Ellis explicitly removes minimum-layer-time slowdown in its tower procedure. If straight walls already under-extrude, establish reliable extrusion at a lower speed before judging corners.
Run the Klipper tuning commands
Disable slicer dynamic acceleration control and scarf seams. Klipper’s test uses 500 mm/s² acceleration and 1 mm/s square-corner velocity to accentuate pressure effects. Official test setup.
For this calibration file, place the following after the normal start sequence and before the tower begins. That prevents startup macros from cancelling the sweep, a problem described in Ellis’s tower instructions.
SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500
Choose one sweep command. For direct drive:
TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005
For a long Bowden path:
TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.020
Use Klipper’s factors only in the calibration file.
Temporarily disable slicer PA overrides and adaptive PA for this manual sweep. Adaptive PA can replace the fixed value, as the OrcaSlicer material documentation explains. Watch the console for changing PA values; identical results throughout the tower warrant checking the generated G-code and startup macros.
Read the tower and calculate pressure advance
Ignore the seam corner. Look for continuous walls entering and leaving the remaining corners, without gaps. If the choice is ambiguous, favor the lower value. A small trailing bulge can remain; Ellis’s reference examples help distinguish that from excessive compensation.
Measure the chosen height from the tower’s bottom with calipers. For the commands above, use:
pressure_advance = START + measured_height_mm × FACTOR
FACTOR changes PA per millimetre of height, not per layer. Do not multiply by layer count. The Klipper G-code reference also documents SKIP and discrete-band modes; those require their corresponding formulas.
Klipper’s worked Bowden example is 0 + 12.90 × 0.020 = 0.258. That is an illustrative calculation, not a recommended value for your spool.
Using OrcaSlicer instead
OrcaSlicer’s pressure-advance calibration offers tower, pattern, and line methods. Select the correct extruder type. A line test depends strongly on first-layer quality; the tower evaluates corners above the bed. Save the chosen result in the material profile. OrcaSlicer calibration instructions.
Use the start and increment belonging to that generated test. OrcaSlicer’s example uses 0 + 0.002 × 8 = 0.016, so substituting Klipper’s manual-tower factor would produce the wrong answer. Run the generated calibration without also adding a manual TUNING_TOWER sweep. OrcaSlicer’s tower calculation.
Save the result and remove overrides
Edit the existing [extruder] section in printer.cfg. Using the illustrative result above:
[extruder]
# Keep the existing extruder configuration here.
pressure_advance: 0.258
Replace the example with your calculated result. Leave pressure_advance_smooth_time at its default 0.040 seconds during ordinary PA calibration; it controls averaging of extruder velocity. Klipper configuration reference.
After the print has finished or been cancelled, issue RESTART to clear the sweep and restore configured motion limits. Klipper’s completion procedure.
For per-filament control, a profile can issue SET_PRESSURE_ADVANCE ADVANCE=0.258, again replacing the example. This changes the running setting; check exported G-code and macros for later competing commands. Klipper command reference. Choose an intentional configuration default and material override rather than maintaining conflicting copies.
If you manage the printer remotely, include its host and router in scheduled maintenance; Tech Sentinel’s patch-priority triage is relevant when prioritizing their security updates.
How to verify the saved value
Reprint the hollow square with fixed PA and your normal acceleration, corner velocity, layer height, and wall speeds. Ellis favors calibration close to normal conditions because deliberately exaggerated cornering can encourage excessive PA. Ellis’s method rationale.
Acceptance criteria: smaller corner bulges, continuous extrusion before and after corners, and no new perimeter gaps. Compare against a saved PA-disabled print using the same spool and geometry. These criteria follow the documented defect patterns.
If the extruder starts skipping after restoring normal acceleration, lower acceleration or disable PA, as Klipper advises.
Record manufacturer, material, color, spool batch if available, nozzle, temperature, profile, and PA together. Recheck after changing filament, nozzle, hotend, extruder, or input-shaping state; these can change the required compensation. Ellis’s recalibration factors.
Sources
Related
Voron 2.4 vs Bambu Lab P1S: Build It or Buy It?
Voron 2.4 and Bambu Lab P1S compared on build volume, speed ceiling, materials, repairability and true cost, with a plain rule for choosing between them.
Voron Sourcing Guide: What to Check Before Ordering a Kit
The Voron kit checks worth making before you pay: printed-part material, extrusion profile, rail grade, bed plate alloy, stepper spec and driver count.
Voron 2.4 Input Shaping: ADXL345 Setup and Tuning
Wire an ADXL345 to a Voron 2.4, run TEST_RESONANCES and SHAPER_CALIBRATE, choose between MZV and EI, and set a max_accel the machine can actually hold.