-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
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
Ensure TMC + LIN_ADVANCE pulse length #15807
Ensure TMC + LIN_ADVANCE pulse length #15807
Conversation
There’s another option for non-standalone drivers which is to enable |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This fix will not work if MINIMUM_STEPPER_PULSE is configured in the config files...
You may need to change the logic to check if not defined or defined as zero...
If it is defined as zero, the new conditional will not be executed, giving the same behavior with the same config...
I'm assuming that if |
The issue is that the recommendation for TMC is to set it to zero. Having also defined LIN_ADVANCE, the extruder don't work. If a conditional is set like it is here, it simply won't work when users follow the recommendation, and cannot extrude... I recommend implementing a sanity check in this case, which will resolve the issue under all user cases, not just when minimum pulse is not defined. |
I don't think we should override values set specifically by the user. We can change the comment with the recommendation to say that if LA is turned on the default should be 1, but I disagree that this is a large problem. Most people will just uncomment the default line and get 2. If they specifically go to the effort of changing the value of |
I can't say I've heard of a bad result enabling In my SKR 1.3/TMC5160/Linear Advance build with |
This PR checks whether |
^ |
Perhaps just a sanity check then. If Trinamic and Lin Advance and not ( Stepper Pulse > 0 or Square Wave Stepping) then raise a error |
@thinkyhead any suggestions on this one? |
Sanity-check is always the most user-aware route, and is fine for a first approach. |
Ensure that if the extruder is a TMC we specify a valid pulse length.
efd7c42
to
c36e1d7
Compare
I've added a sanity check in case a bad value for |
Description
Make sure that if any extruder is a TMC driver, the minimum pulse length is honored. If
SQUARE_WAVE_STEPPING
is not enabled or this is a standalone driver (which don't supportSQUARE_WAVE_STEPPING
) setMINIMUM_STEPPER_PULSE
to 1 instead of the TMC default of 0.Benefits
This is a FAQ in the support channels - people switch to a TMC on their extruder and get no extrusion with
LIN_ADVANCE
enabled.Related Issues
#15761