|
@@ -2991,13 +2991,14 @@ void Planner::set_max_jerk(const AxisEnum axis, float targetValue) {
|
2991
|
2991
|
const int16_t target = thermalManager.degTargetHotend(active_extruder);
|
2992
|
2992
|
autotemp_min = target + AUTOTEMP_MIN_P;
|
2993
|
2993
|
autotemp_max = target + AUTOTEMP_MAX_P;
|
2994
|
|
- autotemp_factor = AUTOTEMP_FACTOR_P;
|
2995
|
2994
|
#endif
|
2996
|
2995
|
|
2997
|
2996
|
if (parser.seenval('S')) autotemp_min = parser.value_celsius();
|
2998
|
2997
|
if (parser.seenval('B')) autotemp_max = parser.value_celsius();
|
2999
|
|
- if (parser.seenval('F')) autotemp_factor = parser.value_float();
|
3000
|
|
- if (!autotemp_factor) autotemp_enabled = false; // F0 will disable autotemp
|
3001
|
|
- }
|
3002
|
2998
|
|
|
2999
|
+ // When AUTOTEMP_PROPORTIONAL is enabled, F0 disables autotemp.
|
|
3000
|
+ // Normally, leaving off F also disables autotemp.
|
|
3001
|
+ autotemp_factor = parser.seen('F') ? parser.value_float() : TERN(AUTOTEMP_PROPORTIONAL, AUTOTEMP_FACTOR_P, 0);
|
|
3002
|
+ autotemp_enabled = autotemp_factor != 0;
|
|
3003
|
+ }
|
3003
|
3004
|
#endif
|