prusa3d / PrusaSlicer

G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
https://www.prusa3d.com/prusaslicer/
GNU Affero General Public License v3.0
7.62k stars 1.92k forks source link

Deretraction Extra Length not always applied #11915

Open PascalGodin opened 8 months ago

PascalGodin commented 8 months ago

Description of the bug

Deretraction Extra Length will not always be applied. Tried on multiple printer configurations and print settings but will still randomly apply the extra length. Noticed that changing the infill or the top/bottom layer quantity will change the positions of where it will apply or not the extra length but it still seems random. Applied an extra length of 10mm to be easy to spot. This is issue was also reproduced in 2.6.1 The reason for using an extra length is otherwise it will leave a gap after retractions/travels. This is more noticable with aligned seams and will be more pronounced the bigger the nozzle. It is usually hidden with solid infill but for parts without infill and especially with only one perimiter this is critical. Usually a value of 0.025 to 0.1 will close the gap.

Extra length Issue 3 Extra length Issue 2 Extra length Issue 1 IMG_E0952 IMG_E0953

Project file & How to reproduce

Extra Length Issue.zip Slice and look for deretraction values after travel moves in gcode preview

Checklist of files included above

Version of PrusaSlicer

Version 2.7.1+win64

Operating system

Windows 10

Printer model

Prusa XL, MK4

RoadrunnerJDD commented 7 months ago

I am having the same issue. I am fairly new to PrusaSlicer and this was my first time switching to a 0.8mm nozzle after the switch from cura. I recognized the problem and started adjusting the Deretraction Extra Length setting but prints were not getting better. After examining the G-code I found that no matter what I set the Deretraction Extra Length setting to it always only deretracted the retraction length alone.

Version of PrusaSlicer Version 2.7.1+win64

Operating system Windows 10

Printer model Creality Ender 3 S1

RoadrunnerJDD commented 7 months ago

Found a workaround. At least in the tests I have done if I set the Retract Amount Before Wipe to any percentage value other than 0% then the Deretraction Extra Length works as expected.

Capture1 Capture2

catequalsgood commented 6 months ago

Also noticed this issue and can confirm. Interestingly the extra length on deretraction does seem to be applied (even without the mentioned workaround) during the deretraction following the purge line.