Pressure advance M572 causes overextrusion
-
Fair enough.
-
Hi
Im using an Kossel XL Delta Printer from Think3dprint3d, very similar to dc42's large kossel.
It's using an E3D V6, Titan Extruder and a bowden length of about 500-600 mm
Duet Firmware 1.18.1 (2017-04-09)With M572 D0 S0.0 there is no overextrusion.
The same model with M572 D0 S0.15 is printed with massive overextrusion, i had to reduce the extrusion factor in Duet Web UI to 90% to compensate this.
Reducing extruder jerk (M566 E200) helps, but slows down the print and produces still some overextrusion.
Additionally i cannot see much (if any) print quality improvement.
I tried smaller values S0.05 and S0.10 which reduces overextrusion, but still no print quality improvement.I'm using Simplify3D and adding the GCode Commands in the 'Scripts' tab.
Any idea why this is?
I'm sorry, I've never heard of that happening before.
You can adjust the pressure advance during a print by sending the M572 command from DWC, PanelDue or USB. It may take a few seconds to take effect.
Please can you print a simple cuboid in spiral vase mode, starting with no pressure advance. When it has reached about 5mm height, send M572 D0 S0.05. After another 5mm, send M572 D0 S0.1, then after another 5mm send M572 D0 S0.15. Let it print for another 5mm, then post a photo of the result. The effect of pressure advance should be visible at the corners only.
-
@Dadiy
Usually i'm using 5.5 to 6mm retraction@dc42
I couldn't reproduce the issue with a 20mm and 30mm cuboid in vase mode.
Because vase mode warns about it changing multiple settings i then printed a 30mm hollow cube (single wall) and disabled vase mode. Again didnt notice any issue, then I upped from S0.15 to S0.20 and started noticing the issue: -> image 1 (top 10 mm)As this was still nothing serious i used an other model, still single wall and used S0.0 -> S0.4 -> S0.1
-> image 2 and 3As S0.4 is pretty much and i noticed the problem on real models way below that i did another one with 100% infill.
Used S0.0 -> S0.1 and had to abort the print because of nozzle started scratching pretty hard on the print because of overextrusion.
-> image 4
I'm using ouside-in mode, the outer perimeter would most probably stick out much more if i used inside-out mode.https://www.dropbox.com/sh/jauemp7ozigz5ve/AAAOOunmh-lP8gWvMZbHbWSEa?dl=0
-
Would be interesting if someone could reproduce the problem with the attached .stl in the dropbox folder i posted?
I modeled several other test models which showed no or very minior problems, it looks like this only happens models with variable curves like the tooth in my model. I used an extruder jerk setting of 600 on all models i made photos of.Looks like this problem also occured there:
https://www.duet3d.com/forum/thread.php?id=1216
With lower extruder jerk values his problem was much reduced, which is the same as i discovered. -
Would be interesting if someone could reproduce the problem with the attached .stl in the dropbox folder i posted?
I modeled several other test models which showed no or very minior problems, it looks like this only happens models with variable curves like the tooth in my model. I used an extruder jerk setting of 600 on all models i made photos of.Looks like this problem also occured there:
https://www.duet3d.com/forum/thread.php?id=1216
With lower extruder jerk values his problem was much reduced, which is the same as i discovered.Hi Nuvag,
I never get the solution, i'm sorry. Now i don't use pressure advance but i use kisslicer new version for a similar work.
Best regards,
Hugues -
I tried some other configurations (enabled relative extrusions, disabled zeroing extruder, use Cura insted of Simpliy3D) but couldnt get it going. So looks like pressure advance is somehow broken, for complex perimeters
-> I didnt notice much over extrusion on a cube. When using my posted model and printing it in vase mode, the outer circle shows only small over extrusion, while the "tooth" on the inside show much larger over extrusion.
It could be some kind of rounding error occuring due to many small segments?Im currently working around this by diableding pressure advance an trying to keep the pressure as constant as possible by reducing speed, increase accelleration and jerk and disabling most speed reducing functions like for outlines/infill/support. This works reasonably well for most models but can cause other issues (i.e. ringing, longer print times)
-
I have it on my list to try your test file.
-
I am currently printing your test file on my delta, and I can't see any problem. I have tried pressure advance zero, 0.1 (my normal setting), 0.2 , 0.15 and 0.3. My delta uses a Titan with a 1.8deg motor. Sliced using S3D with outside-in extrusion.
When you run the print and see over extrusion, if you then run M122 does it report any step errors?
What acceleration and jerk settings are you using, and what printing speed? I normally use E jerk of 600. It still seems OK at 1000, but at 2000 there is a horrible rattling sound.
-
I am using following values:
Setup 1: Jerk E300, max accel. E2000
Setup 2: Jerk E900, max accel. E9000
Both setups used M572 D0 S0.5 and printing speed 6000 mm/minThere are no StepErrors reported.
However even if i increase jerk or acceleration to 10 times these values and the extruder is clearly missing steps there are no StepErrors reported.
However i notice i am getting an increasing number of underruns the higher the pressure advance value is set. The number of underruns varies greatly, sometimes over 10'000.There was no difference between both setups, both cause overextrusion and both have about the same number of underruns.
Note:
The underruns and overexrusion only occur on the inside (where the tooth are).
The most overextrusion occurs where the layer shift happens, which is exactly where i want to reduce it.[[language]] M122 === Diagnostics === Used output buffers: 1 of 32 (11 max) === Platform === Static ram used: 20320 Dynamic ram used: 72912 Recycled dynamic ram: 976 Stack ram used: 968 current, 8104 maximum Never used ram: 28760 Last reset 00:11:20 ago, cause: software Last software reset code 0x0003, HFSR 0x00000000, CFSR 0x00000000, ICSR 0x00400000, BFAR 0xe000ed38, SP 0xffffffff Spinning module during software reset: GCodes, available RAM 28760 bytes (slot 1) Error status: 0 Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest block write time: 0.0ms MCU temperature: min 41.9, current 43.2, max 45.1 Supply voltage: min 23.5, current 24.1, max 24.4, under voltage events: 0, over voltage events: 0 Driver 0: ok Driver 1: ok Driver 2: ok Driver 3: stalled Driver 4: standstill Date/time: 2017-11-25 10:59:56 Slowest main loop (seconds): 0.006409; fastest: 0.000061 === Move === MaxReps: 5, StepErrors: 0, MaxWait: 1ms, Underruns: 332, 0 Scheduled moves: 48670, completed moves: 48641 Bed compensation in use: none Bed probe heights: 0.000 0.000 0.000 0.000 0.000 Probe change coordinates: === Heat === Bed heater = 0, chamber heater = -1 Heater 0 is on, I-accum = 0.0 Heater 1 is on, I-accum = 0.5 === GCodes === Segments left: 1 Stack records: 2 allocated, 0 in use Movement lock held by null http is idle in state(s) 0 telnet is idle in state(s) 0 file is idle in state(s) 0 serial is idle in state(s) 0 aux is idle in state(s) 0 daemon is idle in state(s) 0 queue is idle in state(s) 0 Code queue is empty. === Network === WiFiServer is running SPI underruns 0, overruns 0 === Webserver === HTTP sessions: 1 of 8
-
As you mentioned a 'horrible noise':
As soon as i activate pressure advance i hear a grinding sound which i suspect is caused by play in the gearing of the extruder or the speed change of the extruder. It gets more pronounced the higer i set the pressure advance, at S0.5 its almost as loud as a skipping extruder.