TL;DR: Upper layers of a stringing pyramid test are missing retractions in the G-code.
Edit 1: added printer info and additional settings.
Edit 2: Clearing up confusing wording.
I wrote a program to parse the G-code and count the retraction-extension pairs between layers. The first 17 layers (base) and 18-95 (pyramid start) have the appropriate number of extruder calls. I expect an extension at the start of the layer, retraction before moving to the second tower, extension to print the second tower, and a retraction before moving back to the first tower.
After layer 95 of 391 the number of retraction pairs starts to decrease from missing a pair every other layer to eventually almost no retraction pairs. The last 70-ish layers have a retraction pair every dozen or so layers.
Perhaps this is related somehow to the shrinking width of the pyramid since the missing retraction-extension pairs increase as the pyramid comes to a point
Disabling Z-Hop shows no difference in this behavior
After switching to a 0.2 mm nozzle I starting printing some calibration tests to find my stringing pyramids end up looking like a pair of trees. I suspect I've always had this issue, but it's much more evident now with a smaller nozzle that likes to ooze.
This is on an Ender 3, so using a Bowden tube, with a MicroSwiss all metal hot end and the extruder mechanism is aluminum with a pair of toothed drive gears. I'm seeing the problem in 1.75mm PLA of multiple well regarded manufacturers.
Relevant Settings (let me know of other settings I should list):
- enabled retraction
- combing mode 'off'
- enabled z-hop when retracted
- retraction distance 3.5mm
- retraction speed 50mm
- retraction minimum travel 1.5mm
- Infil 100%
Looking at the G-code, sometimes I see a retraction paired with the Z-hop, but sometimes it's missing. It seems pretty random for when it's missing, but the first quarter or so of the layers do not show the problem. Originally I thought it had something to do with extruder drift over time, or something crazy, until I looked at the G-code and saw it was missing commands.
Snippit of retracting for Z-hop:
G1 F1200 X204.632 Y161.781 E77.9224 G1 F3000 E74.4224 G1 F300 Z7.08 ;MESH:NONMESH G0 F9000 X190.179 Y161.901 Z7.08 ;TIME_ELAPSED:2354.891407 ;LAYER:171 ;MESH:string_test_fast_pyramid.stl G0 X190.179 Y161.901 Z7.12 ;TYPE:WALL-INNER G1 F300 Z6.92 G1 F3000 E77.9224 G1 F600 X190.179 Y161.555 E77.92356
Snippit of not retracting for z-hop:
G1 F1200 X204.473 Y161.666 E78.0239 G1 F300 Z7.12 ;MESH:NONMESH G0 F9000 X190.182 Y161.898 Z7.12 ;TIME_ELAPSED:2359.620803 ;LAYER:172 ;MESH:string_test_fast_pyramid.stl G0 X190.182 Y161.898 Z7.16 ;TYPE:WALL-INNER G1 F300 Z6.96 G1 F600 X190.182 Y161.558 E78.02503
Test on the left is done with 'Equalize filament rate' enabled, on the right side is done with the option disabled.
Any advice you can give as to what settings I am missing or misconfigured would be much appreciated.