Is 0.6 pressure advance reasonable or too high?



  • I run a pressure advance script that I found in one of the threads here and got the best line quality for 'M572 D0 S0.6' which is significantly higher than the values mentioned in the documentation of the M572 command. This on a corexy with 660mm capricorn 1.9mm bowden tube, Bondtech BGM extruder clone and Titan E3D 0.4mm all metal hotend.

    Am I doing something wrong? Anything I should fix on my printer?

    0_1564357737431_2019-07-28_16-34-59.png

    ; From https://pastebin.com/1jD64HgH
    ; Per https://forum.duet3d.com/topic/8467/pressure-advance-calibration/2
    ;
    ; K-Factor Test
    ;
    ; Created: Fri Dec 08 2017 18:11:17 GMT-0800 (Pacific Standard Time)
    ; Settings:
    ; Filament Diameter = 1.75
    ; Nozzle Diameter = 0.4
    ; Nozzle Temperature = 210
    ; Nozzle / Line Ratio = 1.1
    ; Bed Temperature = 60
    ; Slow Printing Speed = 1200
    ; Fast Printing Speed = 4200
    ; Movement Speed = 12000
    ; Use UBL = false
    ; Retraction Distance = 2.5
    ; Bed Size X = 300
    ; Bed Size Y = 300
    ; Layer Height = 0.2
    ; Extrusion Multiplier = 1
    ; Starting Value K-Factor = 0
    ; Ending value K-Factor = 100
    ; K-Factor Stepping = 5
    ;
    
    T0
    M140 S60 ; set and wait for bed temp
    M104 S210 ; set nozzle temp and continue
    M109 S210 ; block waiting for nozzle temp
    M190 S60
    
    G28 ; home all
    
    M204 S500 ; lower acceleration to 500mm/s2 during the test
    G90 ; use absolute coordinates
    M83 ; use relative distances for extrusion
    
    
    ; go to layer height and prime nozzle on a line to the left
    ;
    G1 X90 Y87.5 F12000
    G1 Z0.2 F1200
    G1 X90 Y187.5 E10 F1200 ; extrude some to start clean
    G1 E-2.5
    
    ;
    ; start the test (all values are relative coordinates)
    ;
    G1 X110 Y87.5 F12000 ; move to pattern start
    G91 ; use relative coordinates
    
    ; line 1
    M572 D0 S0.0 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 2
    M572 D0 S0.1 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 3
    M572 D0 S0.2 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 4
    M572 D0 S0.3 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 5
    M572 D0 S0.4 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 6
    M572 D0 S0.5 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 7
    M572 D0 S0.6 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 8
    M572 D0 S0.7 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 9
    M572 D0 S0.8 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 10
    M572 D0 S0.9 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 11
    M572 D0 S1.0 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 12
    M572 D0 S1.1 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 13
    M572 D0 S1.2 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 14
    M572 D0 S1.3 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ; line 15
    M572 D0 S1.4 ; set K-factor
    M400
    G1 E2.5
    G1 X20 Y0 E0.73172 F1200
    G1 X40 Y0 E1.46345 F4200
    G1 X20 Y0 E0.73172 F1200
    G1 E-2.5
    G1 X-80 Y5 F12000
    
    ;
    ; mark the test area for reference
    ;
    M572 D0 S0.0 ; set K-factor
    M400
    G1 X20 Y0 F12000
    G1 E2.5
    G1 X0 Y20 E0.73172 F1200
    G1 E-2.5
    G1 X40 Y-20 F12000
    G1 E2.5
    G1 X0 Y20 E0.73172 F1200
    G1 E-2.5
    ;
    ; finish
    ;
    M400
    G90 ; use absolute coordinates
    G1 Z30 Y200 F12000 ; move away from the print
    
    


  • No that could well be. I also find the values on the Wiki to be a bit low.
    My extruder with a 100mm bowden needs a PA of 0.25 currently.
    This went down from 0.55 when i configured the DAA (M593) for some reason



  • It may be correct but that script and the test is a very specific scenario (first layer, one direction to stop, fixed length) that may not be representative of actual print conditions. Use it as a starting point and refine it with actual prints.

    For a long Bowden and high speeds maybe that's not too high. Make sure your extruder jerk can handle it.



  • @phaedrux said in Is 0.6 pressure advance reasonable or too high?:

    Make sure your extruder jerk can handle it.

    My extruder works now like a jack hammer but print quality is much better (judging from the quality of the vertical surfaces on non regular rectangular object).

    The printer frame is very solid, the belt are tight and the extuder is dual drive so grips the filament all around so the machine can handle it well though I would prefer if it would be more graceful.

    Anything I can do to tame it down? Why do some printers need more PA than other printers with similar bowden?

    My config is below:

    ; mode_normal.gcode file:
    
    M566 X1200 Y1200 Z100 E3000     ; Set maximum instantaneous speed changes (mm/min) (Jerk)
    M201 X1200 Y1200 Z30  E8000     ; Set maximum accelerations (mm/s^2)
    
    ; config.gcode file:
    
    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Mon Mar 18 2019 21:06:52 GMT-0700 (Pacific Daylight Time)
    
    ; General preferences
    G90                                          ; Send absolute coordinates...
    M83                                          ; ...but relative extruder moves
    
    M667 S1                                      ; Select CoreXY mode
    
    ; Network
    M550 P"CoreXY"                               ; Set machine name
    M551 P"reprap"                               ; Set password
    M552 S1                                      ; Enable network
    ;*** Access point is configured manually via M587
    M586 P0 S1                                   ; Enable HTTP
    M586 P1 S1                                   ; Enable FTP
    M586 P2 S1                                   ; Enable Telnet
    
    ; Drives
    M569 P0 S1                                    ; Drive 0 goes forwards
    M569 P1 S1                                    ; Drive 1 goes forwards
    M569 P2 S1                                    ; Drive 2 goes forwards
    M569 P3 S1                                    ; Drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1                       ; Configure microstepping with interpolation
    
    M92 X200.00 Y200.00 Z400.00 E415.0            ; Set microsteps per mm
    
    ; Based on:
    ; https://forum.duet3d.com/topic/8689/extruder-acceleration-jerk-and-tuning/2
    M98 P"/sys/mode_normal.g"
    
    M203 X15000 Y15000 Z3000 E15000                        	; Set maximum speeds (mm/min)
    M204 P1000 T3000					; Set printing and travel accelerations
    ;M906 X1000 Y1000 Z1000 E1000 I30             ; Set motor currents (mA) and motor idle factor in per cent
    M906 X1500 Y1500 Z1000 E1000 I30             ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30                                       ; Set idle timeout (secs)
    
    ; Axis Limits
    ; Setting a negative Z limit to allow room for babystepping. 
    ;M208 X-5 Y-15 Z-3 S1                         ; Set axis minima (home at min X,Y)
    ;M208 X300 Y300 Z285 S0                       ; Set axis maxima
    
    M208 X-2:300 Y-5:300 Z-3:285                 ; XYZ min/max
    
    ; Endstops
    M574 X1 Y1 S3                                ; X min, Y min, stall style endstops
    M915 X Y S3 F0 R0                            ; Stall detection. Higher S value -> less sensitive
    
    
    ; Z-Probe
    M574 Z1 S2                                   ; Set endstops controlled by probe
    M307 H3 A-1 C-1 D-1                          ; Disable heater on PWM channel for BLTouch
    ; NOTE: the T value determines also the x/y movement speed of the 
    ; leveling macro (which uses G30 commands)
    ;
    ; TODO: add B1 parameter to turn off bed while probing to reduce magnetic field that
    ; may affect BlTouch.
    ;
    ; TODO: see M588 param recomendation at https://duet3d.dozuki.com/Wiki/BLTouch_Troubleshooting
    ;
    M558 P9 H3 F120 T12000                       ; Set Z probe type to bltouch and the dive height + speeds
    ; See http://www.sublimelayers.com/2017/05/fdffsd.html
    ; To apply babysteps value, SUBSTRACT it from the Z value here.
    ; (to raise head -> lower Z value here)
    ; (to lower head -> raise Z value here)
    ;G31 P500 X20.5 Y12.9 Z1.400                   ; Set Z probe trigger value, offset and trigger height
    G31 P500 X23.5 Y22.9 Z1.500                   ; Set Z probe trigger value, offset and trigger height
    
    ; Heaters
    M305 P0 T100000 B4138 R4700                  ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120                                 ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700                  ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280                                 ; Set temperature limit for heater 1 to 280C
    
    ; Fans
    M106 P0 S0 I0 F500 H-1                       ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H1 T45                    ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    
    ; Tools
    M563 P0 D0 H1                                ; Define tool 0
    G10 P0 X0 Y0 Z0                              ; Set tool 0 axis offsets
    G10 P0 R0 S0                                 ; Set initial tool 0 active and standby temperatures to 0C
    
    ; Leveling
    ;M671 X26:266:266:26 Y29:29:269:269 P0.7      ; positions of adjustment screws
    ;M671 X29:269:269:29 Y39:39:279:279 P0.7      ; positions of adjustment screws
    M671 X29:29:269:269  Y279:39:39:279 P0.7      ; positions of adjustment screws
    
    M557 X23:279 Y30:286 S32                     ; Define mesh grid
    
    ; Bed temp PID autotune
    ; To autotune send [M303 H0 P1.0 S60]. Check progress with [M303]. when stage 4 done, 
    ; send [M307 H0] and enter results below.
    ;
    ; Heater 0 model: gain 64.1, time constant 277.0, dead time 3.2, 
    ;    max PWM 1.00, calibration voltage 24.2, mode PID, inverted no, frequency default
    ; Computed PID parameters for setpoint change: P239.7, I8.026, D540.3
    ; Computed PID parameters for load change: P23
    ; 
    M307 H0 A64.1 C277.0 D3.2 V24.2 B0
    
    ; Hotend temp PID autotune
    ; To autotune send [M303 H1 P1.0 S230]. Check progress with [M303]. when stage 4 done, 
    ; send [M307 H1] and enter results below.
    ;
    ; Heater 1 model: gain 549.5, time constant 234.0, dead time 4.7, 
    ;     max PWM 1.00, calibration voltage 24.1, mode PID, inverted no, frequency default
    ; Computed PID parameters for setpoint change: P16.3, I0.495, D53.2
    ; Computed PID parameters for load change: P16.
    ;
    M307 H1 A549.5 C234.0 D4.7 V24.1 B0
    
    ; Set pressure advance factor, per results of pressure advance calibration script.
    ;M572 D0 S0.6 ; set K-factor
    
    ; Automatic saving after power loss is not enabled
    
    ; Custom settings are not configured
    
    T0   ; select extruder
    


  • @zapta If 0.6 gives you the best print quality, then that's what you should use. I use 0.4 to 0.5 on my machine depending on filament and other factors.
    No disrespect intended to DC 42 but that value in the Wiki comes from his own experience with his Delta, when he first introduced the feature. It is not based on multiple user experience, machines, configurations, etc. So the "expected" value is somewhat misleading.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.