-
-
Notifications
You must be signed in to change notification settings - Fork 138
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
Add analogue for Prusa-firmware's M862.1 #54
base: master
Are you sure you want to change the base?
Conversation
This is actually a pretty good idea. I've wanted to use nozzle_diameter for priming macro's for a while, but also knew i couldn't rely on it because some people insists on keeping the nozzle_diameter set to their largest nozzle so they don't have to deal with it. Only downside here is that we'd then require people to specificy the correct nozzle_diameter in their config (while your current suggestion is optional, so it doesn't have that downside). Need to think about it a bit, but generally i like it. |
Hmm, interesting, when I rebased to fix merge conflicts, my text editor blew away a bunch of trailing whitespace. Should go away if you ignore whitespace changes in the diff. |
Oh, duh, I'd never thought of that before, but in retrospect, it makes perfect sense - the intentionally overextruded prime line will not be quite so overextruded when the nozzle is bigger than 0.4mm, unless the prime line's E length is specifically adjusted for the nozzle diameter. Slicing Geometry 101.
Scratch that; no can do; the mathematics for this are more complicated than I thought. |
Okay, I finally got around to figuring out the mathematics. I put them in PRIME_LINE in a separate PR. I could make further changes to this one to send NOZZLE_DIAMETER down thru _START_PRINT_AFTER_HEATING_EXTRUDER, if that would be desirable. |
Does v2 contain something like this? If not, then would a rebase/rewrite be welcome? |
This gives a new, optional parameter to START_PRINT for the nozzle diameter. SuperSlicer can provide the value for this parameter using its own template-variable substitution. Then when START_PRINT is run with the parameter specified, it will check that the specified diameter is identical to what is in the configuration. Assuming the user remembers to change their configuration when they change their nozzle-diameter, this will prevent negligent usage of incorrect nozzle-diameter in the slicer (and negligent reuse of g-codes sliced for the incorrect nozzle-diameter).
I don't know how Klipper configures IDEX or toolchangers (let alone do I possess a Klipper-powered machine with such capability), so I doubt this code will work correctly for such multitool printers with multiple different nozzle-diameters.