Pressure advance M572 causes overextrusion



  • 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?



  • Just curious did you calibrate your steps? I found with my Titan that the steps quoted were too high, also when calibrating the speed of extrude seems to be important. I got different results at different speeds. I have the pancake 1.8 stepper and IIRC steps are 814.

    Out of interest with that long bowden tube what are your retract settings? Im currently calibrating for my 980mm tube and retracts are huge even with the capricorn ptfe tube. Im testing with firmware retraction and currently getting good results with M207 S14.5 F9000 T1800 Z0.1



  • @DADIY:

    Just curious did you calibrate your steps? I found with my Titan that the steps quoted were too high, also when calibrating the speed of extrude seems to be important. I got different results at different speeds. I have the pancake 1.8 stepper and IIRC steps are 814.

    Out of interest with that long bowden tube what are your retract settings? Im currently calibrating for my 980mm tube and retracts are huge even with the capricorn ptfe tube. Im testing with firmware retraction and currently getting good results with M207 S14.5 F9000 T1800 Z0.1

    Are you sure your pancake stepper is 1.8 degree? On all my 5 Titan, the steps per mm are around 400 (at 16X microstepping) which is close to what E3D suggest as a default. So, 814 would indicate that something is seriously amiss, or that you are in fact using 0.9 degree stepper motors, or you've set them using 32 X microstepping.

    14.4mm retraction is indeed high but with that length Bowden tube, I'm not surprised. Just be careful that you don't overdo it as you run the risk of drawing molten filament up beyond the heat break where it will cool and solidify causing a blockage.

    Edit, your retraction feedrate looks quite high, especially when compare to the unretract feedrate. It might be worth playing around with that to see if a lower retraction speed helps or hinders.



  • @deckingman:

    @DADIY:

    Just curious did you calibrate your steps? I found with my Titan that the steps quoted were too high, also when calibrating the speed of extrude seems to be important. I got different results at different speeds. I have the pancake 1.8 stepper and IIRC steps are 814.

    Out of interest with that long bowden tube what are your retract settings? Im currently calibrating for my 980mm tube and retracts are huge even with the capricorn ptfe tube. Im testing with firmware retraction and currently getting good results with M207 S14.5 F9000 T1800 Z0.1

    Are you sure your pancake stepper is 1.8 degree? On all my 5 Titan, the steps per mm are around 400 (at 16X microstepping) which is close to what E3D suggest as a default. So, 814 would indicate that something is seriously amiss, or that you are in fact using 0.9 degree stepper motors, or you've set them using 32 X microstepping.

    14.4mm retraction is indeed high but with that length Bowden tube, I'm not surprised. Just be careful that you don't overdo it as you run the risk of drawing molten filament up beyond the heat break where it will cool and solidify causing a blockage.

    Edit, your retraction feedrate looks quite high, especially when compare to the unretract feedrate. It might be worth playing around with that to see if a lower retraction speed helps or hinders.

    Doh, Yes its the 0.9 stepper. Lower retraction speeds didn't help, I've been printing off those little retraction test spikes and gradually changing the settings to reduce stringing, the slower un retract was an idea I saw here and it really seems to help, fast retract doesn't strip the filament but a fast resume really did frequently, so I slowed that down.



  • Fair enough.


  • administrators

    @Nuvag:

    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 3

    As 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.



  • @Nuvag:

    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)


  • administrators

    I have it on my list to try your test file.


  • administrators

    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/min

    There 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.


Locked
 

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