Pressure Advance Tool – Klipper

Modified from Marlin generator src https://marlinfw.org/tools/lin_advance/k-factor.html

The stock values are set for abs and a core xy machine with higher accel ability. I have found that we no longer need to run low accel values like with other tests. This in turn lets us tune for real life results and it is working much better i have actually been tuning my printers at 4k accel which is still not aggressive for klipper and my gantry upgrade where i can now print at 15k to 25k accel.

Pressure Advance Calibration Pattern

This will generate code for klipper

Use this form to generate G-code that you can use to calibrate your Pressure Advance. Default values apply to standard PLA with a 0.4mm nozzle.

Press the Generate G-code button followed by Download as file to save the result.

Settings

G-code

Printer:

Diameter of the used filament (mm)
Diameter of the nozzle (mm)
Nozzle Temperature (°C)
Bed Temperature (°C)
Retraction distance (mm)
Layer Height (mm)
Extruder Index (0 to ?)
Fan Speed (%)

Print Bed:

Rectangular or round bed. Round beds will activate Origin Bed Center
Size (mm) of the bed in X
Size (mm) of the bed in Y
Set the origin position (X0 Y0) to bed center instead of front-left corner

Speed:

Use mm/s instead of mm/m
Slow printing speed
Fast printing speed. This should differ noticeably from Slow Speed
Movement speed
Retract Speed of the extruder
Unretract Speed of the extruder
Set printing acceleration (mm/s^2)
Set the Jerk for the X-axis. -1 to use firmware default
Set the Jerk for the Y-axis. -1 to use firmware default
Set the Jerk for the Z-axis. -1 to use firmware default
Set the Jerk for the Extruder. -1 to use firmware default

Pattern:

Select standard or alternate pattern
Starting value for the Pressure Advance
Ending value of the Pressure Advance
Stepping of the Pressure Advance in the test pattern. Needs to be an exact divisor of the Pressure Advance Range (End – Start)
Length of the Slow Speed test-line (mm)
Length of the Fast Speed test-line (mm)
Distance between the test lines. This will impact print size
Adds a frame around the start and end points of the test lines. May improve adhesion
Rotates the print in 45° steps
Prints the K-value besides every second test line

Advanced:

Ratio between extruded line width and nozzle diameter. Should be between 1.05 and 1.2
Offset the Z-axis for manual Layer adjustment
Level bed or load a saved mesh (i.e. for UBL) before printing. Bed leveling has to be activated in Configuration.h! Loading a mesh requires UBL to be activated!
Use Firmware Retract. Needs to be activated in Marlin
Usually 1.0
Prime the nozzle before starting the test pattern
The default of 2.5 results in roughly 1mm of filament for 10mm line length
Speed of the prime move
Inserts a pause of x seconds before starting the test pattern to bleed off any residual nozzle pressure

Notes on the settings:

  • Fast Printing Speed and Slow Printing Speed should be significantly different or the Pressure Advance effect will barely be visible.
  • Use Bed Leveling requires a probe.
  • For round beds the option Origin Bed Center is automatically activated.
  • The overall width (X-direction) of the print depends on the Fast Speed Length and Slow Speed Length settings plus 5mm for the priming line. The length (Y-direction) depends on the Pressure Advance Settings and Line Spacing.
  • The script checks to make sure the print fits on the bed. Verify it using a host software like Printrun or Repetier Host.
  • Start and End Value for the Pressure Advance determines the range that the test pattern will cover. For example a Start Value of 50 and an End Value of 150 will test a range of 100.
  • The Pressure Advance Stepping determines how many test lines are printed for the above range. For example, a Stepping of 10 and a range of 100 results in 10 test lines. A stepping of 3 would not work in this example as 100 cannot be exactly divided by 3. The script will throw an error message if an exact division is not possible. In this case either the range or the stepping needs to be adjusted.
  • The Alternate Pattern has a second line of Fast Printing Speed to test 0 to Fast Printing Speed and back to 0 conditions. Best used with an increased Test Line Spacing and reduced Pressure Advance range.
  • The proper Pressure Advance depends on the filament, nozzle size, nozzle geometry and printing temperature. If any of these values change, the calibration might need to be repeated.

Screen-shots

The following screen-shots show some examples of the test patterns

  • Blue Lines are Slow Printing Speeds
  • Red Lines are Fast Printing Speed
  • Light blue lines are movements

Standard Pattern

StandardPattern


Alternate Pattern with increased Test Line Spacing

AlternatePattern


Standard Pattern with Frame

FramePattern


45° rotated Alternate Pattern

RotatedPattern