Pressure Advance / Linear Advance

Pressure Advance (Klipper) / Linear Advance (Marlin) preemptively changes extrusion during acceleration and deceleration to keep nozzle flow consistent. Tuned correctly, it removes corner bulges and seam blobs at speed without thinning straight walls; tuned wrong, it can create corner starvation and gaps. Calibrate with a single-wall corner test at fixed speed/accel, pick the value where corners are clean and wall width stays even, then re-check whenever you change filament, nozzle, or acceleration.

TL;DR

Use Pressure Advance/Linear Advance to stop corner bulges and seam blobs at higher acceleration: print a sharp-corner single-wall test at fixed speed/accel, then raise the value until bulges disappear but stop before corners start to look thin or gappy.

Pressure advance is easiest to understand as a time sequence: head speed changes first, then compensated extrusion leads/lag to keep flow stable through accel/decel and corners.

What Pressure Advance Is Correcting (the physical picture)

Melted plastic in the hotend/nozzle behaves like a springy, pressurized system. When the toolhead speeds up, flow at the nozzle lags behind because pressure needs time to build; when the toolhead slows down, flow keeps going briefly because that stored pressure is still pushing plastic out. Pressure Advance/Linear Advance adds extrusion during acceleration and subtracts extrusion early during deceleration so the line width stays consistent through speed changes, corners, and at the seam.

When it helps most (and when it won’t)

  • Helps most on sharp corners, small features, and visible seam start/stop where speed changes are frequent
  • Becomes more important as acceleration/jerk and print speed increase
  • Can reduce blobbing without needing excessive retraction (but it does not replace correct retraction)
  • Will not fix incorrect e-steps/rotation distance, wrong flow/extrusion multiplier, a partial clog, extruder slipping, wet filament, or unstable nozzle temperature
  • If you print very slowly with low acceleration, the improvement can be subtle

Quick setup checklist (so the test is meaningful)

  • Confirm support and the name of the parameter in your stack (Marlin: Linear Advance K; Klipper: pressure_advance)
  • Pick one filament and keep it dry; record filament type/brand, nozzle size, and hotend setup
  • Lock in speed, acceleration, and cooling for the entire test (don’t change them mid-print)
  • Keep line width, layer height, temperature, and flow constant across all segments
  • Avoid other features that intentionally reshape flow during the test (no per-segment flow overrides; keep slicer settings consistent)

How to run a practical calibration (simple and repeatable)

Print a pressure-advance test that forces repeated accel/decel and sharp corners, ideally as a single-wall pattern so wall width changes are easy to see. Either print separate parts with different values, or use a test that changes the value by section. Change only the advance value between sections; if you change temperature, speed, acceleration, or flow at the same time, you won’t know what caused the surface difference.

How to pick the correct value (what you should see)

  • Too low: corner bulges; “overfilled” looking outer corners; blobs at seam start/stop; wall gets wider at slowdowns
  • Too high: corners look pinched; slight underfill at/after corners; small gaps right after deceleration; seam start may look starved
  • Just right: straight sections hold a consistent width; corners are crisp without bulging; seam start/stop is least noticeable without introducing gaps

Validate on a real print (and when to retune)

After choosing a value, validate on a small real part with a visible seam and a few sharp corners at your normal speed/acceleration. Re-validate (and often retune) if you change filament type (PLA to PETG/TPU), nozzle size/material, hotend/extruder hardware, or you significantly change acceleration/print speed—those changes alter how pressure builds and releases in the melt path.