-
-
Notifications
You must be signed in to change notification settings - Fork 19.5k
Separate endstop and motion sensor thresholds in filament runout detection #27812
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
Conversation
FILAMENT_MOTION_DISTANCE_MM
The added function The name |
I think this is about as complete as it's going to get, but please confirm that the modified code works, particularly the code calling Overall this is a good addition to make more sense of a "motion sensor" as a way to gauge that filament has run out, separating it from the post-runout length, as the intent is not to throw the "M600" alarm until the complete length of filament specified by There are bound to be questions about use-cases for different combinations of runout/motion sensors, so it could help to add more examples to the Filament Runout Sensors page on the Marlin website. |
Add new parameter to M412/settings/menu in Configure FILAMENT_SWITCH_AND_MOTION #27836 |
On the other hand, if you set |
Co-authored-by: Scott Lahteine <[email protected]>
Description
This PR introduces improvements to filament runout detection logic when both endstop switch and motion sensor (encoder) are enabled (
FILAMENT_SWITCH_AND_MOTION
). Key changes:New
ignore_motion
flag: Temporarily disables motion sensor checks during endstop-triggered runout events to prevent false positives.RunoutResponseDelayed::set_ignore_motion()
.handle_runout_on_print_start()
.Separate trigger thresholds:
motion_distance_mm
(default:FILAMENT_MOTION_DISTANCE_MM
), decoupling it from endstop sensitivity.Critical fixes:
ignore_motion
during extrusion.runout_distance_mm
for motion sensors (now usesmotion_distance_mm
).Requirements
FILAMENT_SWITCH_AND_MOTION
enabled.Benefits
Configurations
Test with:
FILAMENT_SWITCH_AND_MOTION
enabled#endif