New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[1.1.x] Normalize load/unload length in M600 #8357
Conversation
8ecde3c
to
a4e74aa
Compare
You may note, as I do, that cold/length extrusion handling is redundant, with one instance in At the higher level, in Since the E factor comes into play with each segment of an interpolated move and is used in various places consistently, it seems prudent to pre-calculate this E factor to save on computation and allow its easier use where needed. Just as we have the |
b206484
to
5c36f35
Compare
6fd12d0
to
200cb2f
Compare
Applied various self-suggestions. Please review! |
0f389ab
to
3b1a338
Compare
Yes, and also that
I don't think this is the case. The E volumetric and flow factors are not applied in However, a case for when the check might erroneously pass in
By modifying
And this is why you make the big bucks :-) |
That was probably by design to allow for long bowden unloads. I don't mind changing it, but a sanity check comparing this length to the filament unload length should probably be done at compile time to give Bowden users a fair warning. |
Ah, right you are. n/m that then. |
Agreed. If only we could write Marlin in Haskell. One of the big caveats I've had with Marlin is that it relies on things that you don't necessarily know at the outset and so many high-level functions have side-effects. At the moment I am auditing all the movement code so that I know what calls what and when, and that I know all the side-effects. Hopefully that will lead to some minor reform. |
If only we could write Marlin in Haskell.
Why not lisp? ;-)
|
So… Maybe Marlin doesn't need two checks for cold and lengthy extrude after all. Or, the check should at least be moved to the planner as an inline function, comparing the given destination against its internal position information. That would bypass problems involving the use of What I'll do right now is go through all the code that calls |
3b1a338
to
13f82a8
Compare
13f82a8
to
3293823
Compare
I can find there's no problem calls to I have added one more commit to this, in which I replace calls to |
Indeed… Why not Delphi? 🤓 |
What about |
#8356 packaged for 1.1.x
Concise Diff is better