Alexander-T-Moss / Small-Area-Flow-Comp

Slicer Script To Modify Extrusion Flow Proportionally To Extrusion Length

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Super high flow portions being added

teachingtechYT opened this issue · comments

I'm having an issue with the script adding short very high flow segments, and possibly lowering the majority of the flowrate uniformly. Windows 10, Strawberry Perl installed as well as the script. Tested in SuperSlicer and OrcaSlicer. Both slicers add to the log without error and the gcode is modified. Everything appears to be running properly.
However, there is a problem with the modified gcode.
Before:
image
After:
image
Zoomed in:
image
This gives a predictable error from my firmware:
image

I'm not sure if that range of value skews the colour so much that the dark blue majority is an accurate depiction, but seemingly the majority of the print is now printing at ~4mm^3/sec.

Attached are the STL, plus the before and after gcode.
gcode and stl.zip

Hopefully I'm just doing something wrong.

I believe I had a similar issue during initial testing, so will look into what caused this and see if I didn't fix it properly then

Can you try slicing with relative extrusion?

Thanks for the quick reply.
Using relative extrusion fixes the bug, although the effect is very subtle:
image

Are there any variables the user can tune to change the extent of the compensation?

Slicers show volumetric flow, and that doesn’t really show the compensation at work very well. The screenshots on the readme use a very aggressive model so you can see stuff happening in the gcode preview. There should be a model.txt file in the same area as the script is ran from, in there you can make your own model, although it’s not super user friendly atm. It effectively uses a collection of points (extrusion length, flow multiplier - pairs) then interpolates between those points to make a model. (Uses cubic spline interpolation, and this is the site I use to visualise the model)

Personally I’d start with the default model to verify its make a noticeable change. The model it uses by default is intentionally on the more aggressive side to hopefully make noticeable changes in prints to indicate the script is working as intended.

Ok, so run the print as in rather than rely on the gcode preview?

Yep 👍

My slicer added the relative extrusion command to the start gcode, but the printer's firmware ignored it, resulting in no extrusion. I'll come back to this when I have time to inspect the firmware.

I am also getting "Move exceeds maximum extrusion (2.104mm^2 vs 0.640mm^2)" while I enabled relative extrusion in superslicer. I run ender 3 on klipper. I too get random blobs of very high extrusion. Seems like there should be some kind of guard/sanity check that adjusted flows don't go into unreasonable values

Can you share the gcode :)