VoronLab
A dark blue 3D printer lays cyan filament into a square calibration tower, with a spool at left and two finished prints nearby.
Calibration

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.

By VoronLab Editorial · · 4 min read

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:

AppearanceLikely PA problemAdjustment
Corners bulge; straight walls look relatively consistentToo little compensation during decelerationIncrease PA
Corners have divots or gaps between perimetersToo much compensationDecrease PA
Continuous extrusion through the corner without a pronounced bulgeSuitable candidateVerify 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:

SettingTower value
Nozzle temperature215°C first layer; 210°C afterward
Bed temperature60°C
Layer height0.30 mm, calculated as 75% of nozzle diameter
Perimeters2–3 walls
Infill0%
Wall speed request100 mm/s
Retraction and line widthKeep 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

  1. Klipper: Pressure advance
  2. Klipper: G-Codes
  3. Klipper: Configuration reference
  4. Ellis' Print Tuning Guide: Pressure advance introduction
  5. Ellis' Print Tuning Guide: Tower method
  6. OrcaSlicer: Pressure advance calibration
  7. OrcaSlicer: Material flow ratio and pressure advance
  8. Prusa Knowledge Base: PLA
#klipper #pressure-advance#calibration#fdm#orcaslicer

Related