-
-
Notifications
You must be signed in to change notification settings - Fork 19.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
MPC differential tuning bug fixes #27274
MPC differential tuning bug fixes #27274
Conversation
… correctly and get_time_fastest() called where get_temp_fastest() should have been called
Build error related to FT_MOTION, not this PR. |
Breaking changes were reverted in ade05c0, so merge in the latest |
NOTE: A PR doesn't need to be updated if its changes don't overlap with changes to |
That only works if you have proper repo permissions, so merging in the latest changes works universally for everyone. |
Hmm, where did we put that "re-run yer own bloody PR's tests" permission? That seems like something we should have. |
Description
This PR fixes several problems with the MPC differential tuning method.
Configuration.h
.get_elapsed_heating_time()
was not yet initialised at the point where it was being called.tuner.get_time_fastest())
which should have beentuner.get_temp_fastest())
. (See equation 17 at https://marlinfw.org/docs/features/model_predictive_control.html.)MPC_BLOCK_HEAT_CAPACITY
andMPC_SENSOR_RESPONSIVENESS
values after the "Refining estimates..." step. This could happen when using the automatic tuning method which attempts an asymptotic tune and then falls back to differential if the results don't make sense. See [BUG] M306 T produces negative responsiveness value #27181.Requirements
Enable
MPCTEMP
.Benefits
Differential tuning now works and it is more likely that the automatic tuning method will fall back to differential tuning when needed. In particular this should make
M306 T
work seamlessly for Revo hotends.Configurations
Enable
MPCTEMP
.Related Issues