-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
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
probe_as_z_home: Initial implementation and documentation #6774
base: master
Are you sure you want to change the base?
Conversation
e9ad6f0
to
1328faf
Compare
great! |
Thank you for your contribution to Klipper. Unfortunately, a reviewer has not assigned themselves to this GitHub Pull Request. All Pull Requests are reviewed before merging, and a reviewer will need to volunteer. Further information is available at: https://www.klipper3d.org/CONTRIBUTING.html There are some steps that you can take now:
Unfortunately, if a reviewer does not assign themselves to this GitHub Pull Request then it will be automatically closed. If this happens, then it is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available. Best regards, PS: I'm just an automated script, not a human being. |
This seems really nice ! I tested it and it works great indeed using the probe config. |
OK so just to clarify, this would be further extending this feature to allow the PROBE params to also be passed to G28. Do I think this would be a useful change? Absolutely, I think it would be very useful as it would allow you to do a 'quick and dirty home' with just one probe if you just wanted to do a filament change for example and didn't care about precision. However... If this PR gets approved however then I will create another PR with the change that you suggest :) Sorry I can't implement this right away but thanks for the great idea! |
Okay I understand you don't wanna have scope creep ahah Though I quickly tested locally and it seems I can just pass arguments to the probe command this way (l.65-67 of
with |
4c5c706
to
6c80a2d
Compare
* Added tool 'probe_as_z_home' that allows probing to be used for Z homing when a empty [probe_as_z_home] section is added to the configuration. * Added relevant documentation to 'Config_Reference.md'. Signed-off-by: Nick Weedon <[email protected]>
* Added the optional g28_probe_cmd_args configuration option to [probe_as_z_home] to allow gcode command arguments to be passed to the PROBE command during homing. * Updated documentation to 'Config_Reference.md'. Signed-off-by: Nick Weedon <[email protected]>
@AchilleBailly Nice!
Let me know your thoughts though and thanks again for the idea! |
@AchilleBailly As an aside, I am curious about why you choose to use a different sample count when homing? For me it makes sense to keep this the same as when doing other probing operations. |
For example I do first home probing only once and when bed heated enough i do final probing 5 times. |
That makes sense. I figured there would be use cases like this. I am also curious to know about @AchilleBailly 's use case where he wants to statically configure the probe to act differently during G28 (i..e. via the config, such as what is now possible via the more recent change i made to this PR) @vgdh Hopefully if this change gets merged in then i will add a new PR to add that feature to be able to specify PROBE parameters via the G28 command. I wonder in the meantime if its possible to do similar via a some kind of jenky macro now with the new |
I wrote some crazy macro do to this functionality, that was not a simple thing 😁. |
@vgdh & @AchilleBailly, yall might also like my other changes: #6778 and #6780. |
This pull request adds the ability to perform multiple probes when issuing a G28 command. More specifically it calls into the 'probe' logic to execute a probe in a way similar to what would be performed during bed mesh creation. Since it uses the same logic this means that the resulting probe also applies the same
calc_probe_z_average
method to the result.The benefit of this feature is it allows users with less than perfect probing hardware to still have an unsupervised and reliable homing experience which is crucial to ensure print quality and preventing failed prints due to an incorrect Z homing. Bad homing can even lead to extruder jams and waste significant amounts of the 3D printer user's time. This is a feature that has been requested many times with one such example being Discourse: multiple-samples-on-home-z.
To configure this tool a new configuration section called
[probe_as_z_home]
should be placed anywhere in the config before the either[safe_z_homing]
or[homing_override]
.The implementation is completely decoupled from any particular homing or probing method and does not modify any existing code.