@bot said in Enhancing pressure advance:
@Edgars-Batna Nice work. Are you modifying only the unretract move or are you injecting movement somewhere else? The results look promising!
The unretract move acts as you described it, but the extrusion rate of last move and the created underextrusion were also a factor that required some more implementation or it ended up ugly. I think I implemented it this way:
- The average extrusion rate of last 5 seconds is stored.
- Unretraction move applies your formula.
- The remainder of extrusion is stored for later.
- The next moves are adjusted by the remainder, factored by move time. 5 second moves get the most of the extrusion remainder. Remainder is passed on from move to move.
Result is a small fixed amount of total underextrusion. There you see the time constants that could also be adjustable.
I can definitely share a gcode file that I am using to troubleshoot this. It's the top part of a real-world print I'm attempting. The problem occurs at the very first move after the skirt (which made it convenient for testing), but it also happens at other spots in the file where a slow perimeter is preceded by a fast print move like support or infill, namely on layers form about 94 and up, where the tops of the letters are being formed as individual islands.
Gcode here.
I'll try it as soon as my other test is finished.
@Phaedrux said in Enhancing pressure advance:
I can't help but notice the words non-newtonian haven't come up yet.
You mean we'll need a GUI to plot a graph when tuning filament by hand? Jokes aside, you mean that there might be no PA required up to a certain pressure or from a certain pressure depending on material and such? Honestly, I'm as good as Google on this topic, because I have to Google it all.