Issues with pressure advance since RRF 3.4
-
@gloomyandy Here's my config file, Speed macro & prusaslicer gcode
1664142820911-bulgecheck.gcode; Configuration file for Duet 3 Mini 5+ (firmware version 3.3) ; executed by the firmware on start-up ; M550 P"duet3" ; ================================ ; PanelDue ; ================================ M575 P1 S1 B57600 ; ================================ ; Toolhead leds ; ================================ M150 X3 Q3000000 ;M150 B255 P255 S1 F1 M150 W255 P255 S2 F0 ; General preferences M111 S0 ; Debugging off G21 ; Work in millimetres G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M669 K1 ; select CoreXY mode ; Limit axis M564 S1 H1 ; Forbid axis movements when not homed ; H1 Forbid movement of axes that have not been homed ; S1 Limit movement within axis boundaries ; Wait a moment for the CAN expansion boards to start G4 S2 ; ================================== ; DRIVERS ; ================================== M569 P121.0 S0 ; E - physical drive 121.0 goes backwards M569 P0.5 S1 D2 ; A -> Y - physical drive 0.0 goes forwards M569 P0.6 S1 D2 ; B -> X - physical drive 0.1 goes forwards M569 P0.0 S1 ; Z0 - physical drive 0.3 goes forwards M569 P0.1 S0 ; Z1 - physical drive 0.4 goes backwards M569 P0.2 S1 ; Z2 - physical drive 0.5 goes forwards M569 P0.3 S0 ; Z3 - physical drive 0.6 goes backwards M584 X0.6 Y0.5 Z0.0:0.1:0.2:0.3 E121.0 ; set drive mapping M350 X32 Y32 Z32 E16 I1 ; configure microstepping with interpolation M92 X160.00 Y160.00 Z800.00 E562.00 ; set steps per mm ; Accelerations and speed are set in separate macro M98 P"/macros/set_normal_speed.g" ; Stepper driver currents ; set motor currents (mA) and motor idle factor in per cent ; Drive currents M906 X1200 Y1200 Z1200 E600 I70 ; XYZ and E current M84 S120 ; Idle timeout ; ================================== ; Endstops ; ================================== ; Endstops M574 X2 S1 P"^121.io0.in" ; configure active-high endstop for high end on X via pin ^121.io0.in M574 Y2 S1 P"^0.io1.in" ; configure active-high endstop for high end on Y via pin ^io1.in M574 Z0 p"nil" ; No Z endstop ; Magnetic filament sensor ;M591 D0 P3 C"121.io1.in" S1 ; Axis travel limits ; Mind this is travel NOT print area M208 X0:350 Y0:360 Z-0.5:300 ; Set axis minima - negative X is to have 0,0 on bed corner ; WARNING on Z not to hit the roof - this is set here ; Belt Locations M671 X-60:-60:410:410 Y-10:420:420:-10 S20 ; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right) ; Position of the bed leadscrews.. 4 Coordinates ; Snn Maximum correction to apply to each leadscrew in mm (optional, default 1.0) ; S20 - 20 mm spacing M557 X50:300 Y40:325 P6 ; Define bed mesh grid (inductive probe, positions include the Y offset!) ; ================================== ; Bed heater ; ================================== M308 S0 A"Bed Heater" P"temp0" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" Q10 T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 R0.637 C222.4 D0.95 S1.00 V24.0 M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C ; ================================== ; Hotend heater ; ================================== M308 S1 A"Nozzle" P"121.temp0" Y"pt1000" ; configure sensor 1 as pt1000 on pin 121.temp0 M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 M307 H1 B0 R2.518 C174.0 D6.14 S1.00 V23.8 M143 H1 S270 ; set temperature limit for heater 1 to 270C ; ================================== ; SENSORS MISC ; ================================== ; Define MCU sensors which will be available in DWC Extra View M308 S3 A"MCU" Y"mcu-temp" ; Officially NOT supported on Mini 3 5+ however seem to work M308 S4 A"Duet Drivers" Y"drivers" ; This is not really working as it is just a threshold crossing ; ================================== ; CHAMBER SENSOR ; ================================== M308 S10 A"Chamber" P"0.temp2" Y"thermistor" T100000 B3950 ; ================================== ; Z PROBES K0 (mag probe) and K1 (Microswitch Z0) ; ================================== ; MAG PROBE (GND, IO) ; ----------- ; This is the mag probe with microswitch in Afterburner M558 K0 P8 C"^121.io2.in" T18000 F600:180 H5 A10 S0.03 G31 K0 P500 X-2.5 Y24.5 Z0.86 ;Z ; Z-SWITCH ; ----------- ; This is the microswitch which is pressed by the Noozle M558 K1 P8 C"^io5.in" T18000 F1200:180 H3 A10 S0.005 R0 ; Omron micro switch G31 K1 P500 X0 Y0 Z0.47 ; Part cooling fan M950 F0 C"121.out1" ; create fan 0 on pin 121.out2 and set its frequency M106 P0 H-1 C"Part cooling fan" ; set fan 0 value. Thermostatic control is turned off ; Hotend fan M950 F1 C"121.out2" ; create fan 1 on pin 121.out1 and set its frequency M106 P1 S1 H1 T45 C"Hotend fan" ; set fan 1 value. Thermostatic control is turned on M950 F2 C"0.out4" ; create fan 2 on pin out4 and set its frequency M106 P2 S1 H3:4 T30 C"Controller fan 1" ; controlled by Sensor 3 - MCU ; Controller fan 2 M950 F3 C"0.out3" ; create fan 3 on pin out3 and set its frequency M106 P3 S1 H0 T60 C"Controller bay fan 2" ; Tools M563 P0 D0 H1 F0 ; 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 M955 P121.0 I05 ; Input shaper M593 P"ei2" F48 ; Pressure advance M572 D0 S0.095 ; Calibration skew correction M556 S100 X0.542 ; Custom settings are not defined ; defines global variables M98 P"/macros/define_global_vars.g" ; Load override parameters M501 T0 ; Sets normal speeds and acceleration for printing operation M566 X300 Y300 Z240 E200 ; Set Jerk M203 X36000 Y36000 Z9600 E7200 ; Set maximum speeds (mm/min) M201 X10000 Y10000 Z700 E10000 ; Set maximum accelerations (mm/s^2) M204 P10000 T10000 ; Set printing acceleration and travel accelerations -
PA 0.095 is quite high for direct drive setup.
Do you also get incomplete infill lines if you increase PA further to get less bulging corners? -
@r4ffers One thing I would try if I were you would be to increase the E jerk a little, and drastically decrease the E acceleration. You never need that much E accel. It becomes completely pointless -- essentially no E acceleration is ever applied because there are not enough steps to interpolate speeds across.
Try E Jerk 500 and E Accel 2500.
-
@argo I've been messing around with it for the last week. I had it set at 0.055 previously. I have noticed zero change to PA when updated in config.g However I was tinkering earlier and when I change PA live using paneldue whilst printing it does have an effect. I got the corners not perfect but not too bad, updated config.g with new PA value. Ran the print again and back to crap corners again. It's almost like PA value in config.g is being ignored.
-
@r4ffers Make sure your slicer start gcode doesn't disable PA. Check every .g file on your SD card, too.
-
@bot thanks, I've just updated that. I'll try another print in a mo.
-
@bot ok good shout
-
@bot said in Issues with pressure advance since RRF 3.4:
@r4ffers Make sure your slicer start gcode doesn't disable PA. Check every .g file on your SD card, too.
Can't see anything tha'ts disabling PA.
if I issue M572 D0 whilst printing I get PA0.095 -
@argo said in Issues with pressure advance since RRF 3.4:
PA 0.095 is quite high for direct drive setup.
Do you also get incomplete infill lines if you increase PA further to get less bulging corners?Doesn't seem to be
-
@r4ffers Did you try this print with different E jerk/accel?
-
@bot yep. Made no change to the corners.
-
So if you enter your PA value manually during a print - how do your corners then look?
-
@argo I'll try a print tonight, I'm on call this week.
-
@argo Hi, so started the print off issued M572 D0 to report current PA of 0.095. M572 D0 S0 to clear PA then issued M572 D0 S0.085. Issued M572 D0 to report current PA of 0.085. Here is the result.
Corners look miles better. I did notice the infill not quite reaching the internal perimeter in places.
Also note the walls on the square top layer, PA is working when manually input during print and as expected with such a high value for direct extruder.Hope this helps.
-
I’ll do the same test when I’m back from my business trip on Friday.
Though PA is reporting the correct value you set it to 0 and again to the value it was before and it works?
-
@argo I set it to zero 1st just to make sure it reported the change. In my config I had it set at 0.095 but I manually set it to 0.085. I'm fairly sure I used to have it set at 0.055, if I get chance tonight I'll try it at that and see what happens. I've looked through everything and can't find anything that would disable PA .
It'll be interesting to see if your PA works manually.
-
@r4ffers said in Issues with pressure advance since RRF 3.4:
@argo I set it to zero 1st just to make sure it reported the change. In my config I had it set at 0.095 but I manually set it to 0.085. I'm fairly sure I used to have it set at 0.055, if I get chance tonight I'll try it at that and see what happens. I've looked through everything and can't find anything that would disable PA .
It seems like a better test might be to start the print, verify the supposed PA setting via console, let it print for some amount of time. Then, re-command the same PA value and see if the print changes.
-
@ccs86 I've proved that already.
-
I also did the test you described but the corners are still bulging at PA 0.052 for PLA.
-
Seeing this thread, I really wish I had spent time making that band-aid test print use a bit less plastic...
-
I’ve looked at your print again and spotted holes in your infill lines. That’s usually due too much pressure advance. You are using your LGX lite in a direct drive setup? Then for PLA a value around 0.05 and 0.06 is usually the best value. For ABS it’s even lower.
I’m curious how your infill looks like. I’m also getting nice(er) corners with a much too high PA value (you are at 0.09?) but then also get holes in perimeters / solid fill and infill lines don’t connect anymore - what is to be expected with too high PA.@Wulfsta
Didn’t know you are registered here. Would have mentioned that the test print was from you. -
After synchronizing with @Argo what already has been tested and what not I wanted to rule out that the problem is caused by the 1LC toolboard.
Top: E stepper comnnected to a Duet3 3HC
Bottom: E stepper connected to 1LCSo at least we are now sure that it is not related to the 1LC.
My setup:
Same printer as @Argo
Duet3 6HC with 1LC and SBC running RRF 3.4.3
LGX extruder with Rapido HF hotend.config.g
; General preferences M111 S0 ; Debugging off G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M669 K1 ; Select CoreXY mode M564 S1 H1 ; Forbid axis movements when not homed G4 S1 ; wait for expansion boards to start ; Drives ; --- Z Drive map --- ; _______ ; | 3 | 4 | ; | ----- | ; | 2 | 5 | ; ------- ; front ; ; Drive directions M569 P0 S1 ; A (X) M569 P1 S1 ; B (Y) M569 P2 S1 ; Z1 M569 P3 S0 ; Z2 M569 P4 S1 ; Z3 M569 P5 S0 ; Z4 M569 P121.0 S1 ; E ; Motor mapping and steps per mm M584 X1 Y0 Z2:3:4:5 E121.0 M350 X16 Y16 Z16 E16 I1 ; Use 1/16 microstepping with interpolation everywhere M92 X80 Y80 Z400 E414.92683 ; Drive currents M906 X1500 Y1500 Z1500 E650 ; XYZ and E current M906 I30 ; Idle current percentage M84 S300 ; Idle timeout ; Accelerations and speed ;M566 X600 Y600 Z60 E8000 ; Set maximum instantaneous speed changes (mm/min) M566 X400 Y400 Z60 E8000 ; Set maximum instantaneous speed changes (mm/min) M203 X30000 Y30000 Z3000 E15000 ; Set maximum speeds (mm/min) M201 X10000 Y10000 Z250 E1800 ; Set maximum accelerations (mm/s^2) M204 P4000 T5000 ; Accelerometer ;M955 P121.0 I05 ; set address and orientation of tool board ; PA, DAA ;M572 D0 S0.05 M572 D0 S0.035 M593 P"zvdd" F35.2 ; Axis travel limits M208 X5 Y-5 Z0 S1 ; Set axis minima M208 X350 Y350 Z375 S0 ; Set axis maxima ; Endstops M574 X2 S1 P"^io1.in" ; Xmax endstop M574 Y2 S1 P"^io2.in" ; Ymax endstop ;M574 Z1 S1 P"^io3.in" ; Z endstop switch M574 Z1 P"nil" ; No endstop ; Z probes ;M558 K0 P8 C"121.io0.in" I1 H2.5 F250 T18000 A31 S0.0035 R0.2 ; set Z probe type to switch and the dive height + speeds ;G31 K0 P500 X0 Y25 Z8.74 ;M558 K1 P8 C"io3.in" I1 H2 F240 T18000 A31 S0.0035 R0.2 ; set Z probe type to switch and the dive height + speeds ;G31 K1 P500 X0 Y0 Z0 ; set Z probe trigger value, offset and trigger height -0.8 ; Filament Sensor ;M591 D0 P7 C"121.io2.in" S1 ; Bed leveling M671 X-53:-53:400:400 Y-5:420:420:-5 S20 ; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right) ;M557 X20:335 Y20:330 P5:5 M557 X120:235 Y120:230 P2:2 ; Bed heater M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor M950 H0 C"out1" T0 ; create bed heater output M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater ; Hotend heater ;M308 S1 P"121.temp1" Y"pt1000" M308 S1 P"121.temp1" A"Heater 1" Y"thermistor" T100000 B4725 C7.06e-8 M950 H1 C"121.out0" T1 ;M950 H1 C"out2" T1 M307 H1 B0 S1 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; Set temperature limit for heater ; Chamber Thermistor M308 S2 P"temp1" A"Chamber" Y"thermistor" T100000 B3950 ; configure sensor 2 as thermistor ; MCU sensors M308 S3 Y"mcu-temp" A"MCU" M308 S4 Y"drivers" A"Drivers" M912 P0 S-13 ; MCU temp calibration ; Fans ;M950 F0 C"121.out1" Q10000 ; part cooling fan # old Sunon M950 F0 C"121.out1" ; part cooling fan # new Gsdtime M106 P0 C"Bed" S0 H-1 ; part cooling fan M950 F1 C"121.out2" ; hotend fan M106 P1 C"Hotend" L0.70 X0.70 H1 T70 S0.70 ; hotend fan M950 F2 C"out7" Q10 ; air filter fan M106 P2 C"Filter" S0 H-1 B0.2 ; air filter fan M950 F3 C"out4" Q24000 ; electronics bay left side M106 P3 S0.75 H-1 B1 C"Bay" ; electronics bay left side ;M950 F4 C"1.out3" Q24000 ; electronics bay right side ;M106 P4 S0.75 H-1 B1 C"Bay Right" ; electronics bay right side M950 F5 C"out5" ; sbc fan M106 P5 S0.2 H-1 C"SBC" ; sbc fan M950 F6 C"out6" ; chamber light M106 P6 S1 H-1 C"Light" ; chamber light ; Tools M563 P0 S"Hotend" D0 H1 F0 ; define tool 0 ;G10 P0 X0 Y0 Z-2.75 G10 P0 X0 Y0 Z0 G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Enable debugging via USB ;M111 S1 P0 ; Platform ;M111 S1 P1 ; Network ;M111 S1 P2 ; Webserver ;M111 S1 P3 ; GCodes ;M111 S1 P4 ; Move ;M111 S1 P5 ; Heat ;M111 S1 P6 ; DAA ;M111 S1 P7 ; Roland ;M111 S1 P8 ; Scanner ;M111 S1 P9 ; PrintMonitor ;M111 S1 P10 ; Storage ;M111 S1 P11 ; PortControl ;M111 S1 P12 ; DuetExpansion ;M111 S1 P13 ; FilamentSensor ;M111 S1 P14 ; Wifi ;M111 S1 P15 ; Display ;M111 S1 P16 ; LinuxInterface ;M111 S1 P17 ; CAN ; Neopixel M150 X3 Q3000000 ; set LED type to NeoPixel and set SPI frequency to 3MHz M150 W255 P255 Y255 S3 F0 ; Misc M575 P1 S1 B115200 ; enable support for PanelDue M501 ; load config-override.g M302 P0 ; disallow cold extrudes T0 ; select tool 0 ; Auto Z M98 P"/macros/autoz/edit_me.g" ; load your settings for autoz with klicky probe M400 M98 P"/macros/autoz/scripts/autoz_globals.g" ; load autoz framework for klicky probe M400 ; ERCF ;M98 P"0:/macros/sys/ercf/lib/init.g" -
Looks like I’m not alone with the issue anymore. Any news of an possible fix? And if possible, can we somehow assist in collecting more data (debug firmware with more logging?) for you to fix the issue?
-
@MartinNYHC That's a very useful test. If you are interested in running more tests, then trying the same print with an older version of the firmware (probably pre input shaping so 3.3) might provide some interesting input. It would also be useful to run the same test (on 3.4.3) with input shaping disabled.
It also looks to me as if you could use a higher value for the pressure advance setting on that print (with the input shaping setting you have), did you try that (I see you have a higher setting commented out)?
-
@gloomyandy I already tried lots of different settings within the last few months but that doesn't change anything. The same applies to the RRF version - same results as @Argo starting with 3.4.