@@ -198,13 +198,12 @@ float Planner::mm_per_step[DISTINCT_AXES]; // (mm) Millimeters per step
198
198
constexpr bool Planner::leveling_active;
199
199
#endif
200
200
201
- skew_factor_t Planner::skew_factor; // Initialized by settings.load()
201
+ #if ENABLED(SKEW_CORRECTION)
202
+ skew_factor_t Planner::skew_factor; // Initialized by settings.load()
203
+ #endif
202
204
203
205
#if ENABLED(AUTOTEMP)
204
- celsius_t Planner::autotemp_max = 250 ,
205
- Planner::autotemp_min = 210 ;
206
- float Planner::autotemp_factor = 0 .1f ;
207
- bool Planner::autotemp_enabled = false ;
206
+ autotemp_t Planner::autotemp = { AUTOTEMP_MIN, AUTOTEMP_MAX, AUTOTEMP_FACTOR, false };
208
207
#endif
209
208
210
209
// private:
@@ -1434,8 +1433,8 @@ void Planner::check_axes_activity() {
1434
1433
#if ENABLED(AUTOTEMP_PROPORTIONAL)
1435
1434
void Planner::_autotemp_update_from_hotend () {
1436
1435
const celsius_t target = thermalManager.degTargetHotend (active_extruder);
1437
- autotemp_min = target + AUTOTEMP_MIN_P;
1438
- autotemp_max = target + AUTOTEMP_MAX_P;
1436
+ autotemp. min = target + AUTOTEMP_MIN_P;
1437
+ autotemp. max = target + AUTOTEMP_MAX_P;
1439
1438
}
1440
1439
#endif
1441
1440
@@ -1446,8 +1445,8 @@ void Planner::check_axes_activity() {
1446
1445
*/
1447
1446
void Planner::autotemp_update () {
1448
1447
_autotemp_update_from_hotend ();
1449
- autotemp_factor = TERN (AUTOTEMP_PROPORTIONAL, AUTOTEMP_FACTOR_P, 0 );
1450
- autotemp_enabled = autotemp_factor != 0 ;
1448
+ autotemp. factor = TERN (AUTOTEMP_PROPORTIONAL, AUTOTEMP_FACTOR_P, 0 );
1449
+ autotemp. enabled = autotemp. factor != 0 ;
1451
1450
}
1452
1451
1453
1452
/* *
@@ -1457,13 +1456,13 @@ void Planner::check_axes_activity() {
1457
1456
void Planner::autotemp_M104_M109 () {
1458
1457
_autotemp_update_from_hotend ();
1459
1458
1460
- if (parser.seenval (' S' )) autotemp_min = parser.value_celsius ();
1461
- if (parser.seenval (' B' )) autotemp_max = parser.value_celsius ();
1459
+ if (parser.seenval (' S' )) autotemp. min = parser.value_celsius ();
1460
+ if (parser.seenval (' B' )) autotemp. max = parser.value_celsius ();
1462
1461
1463
1462
// When AUTOTEMP_PROPORTIONAL is enabled, F0 disables autotemp.
1464
1463
// Normally, leaving off F also disables autotemp.
1465
- autotemp_factor = parser.seen (' F' ) ? parser.value_float () : TERN (AUTOTEMP_PROPORTIONAL, AUTOTEMP_FACTOR_P, 0 );
1466
- autotemp_enabled = autotemp_factor != 0 ;
1464
+ autotemp. factor = parser.seen (' F' ) ? parser.value_float () : TERN (AUTOTEMP_PROPORTIONAL, AUTOTEMP_FACTOR_P, 0 );
1465
+ autotemp. enabled = autotemp. factor != 0 ;
1467
1466
}
1468
1467
1469
1468
/* *
@@ -1474,8 +1473,8 @@ void Planner::check_axes_activity() {
1474
1473
void Planner::autotemp_task () {
1475
1474
static float oldt = 0 .0f ;
1476
1475
1477
- if (!autotemp_enabled ) return ;
1478
- if (thermalManager.degTargetHotend (active_extruder) < autotemp_min - 2 ) return ; // Below the min?
1476
+ if (!autotemp. enabled ) return ;
1477
+ if (thermalManager.degTargetHotend (active_extruder) < autotemp. min - 2 ) return ; // Below the min?
1479
1478
1480
1479
float high = 0 .0f ;
1481
1480
for (uint8_t b = block_buffer_tail; b != block_buffer_head; b = next_block_index (b)) {
@@ -1486,8 +1485,8 @@ void Planner::check_axes_activity() {
1486
1485
}
1487
1486
}
1488
1487
1489
- float t = autotemp_min + high * autotemp_factor ;
1490
- LIMIT (t, autotemp_min, autotemp_max );
1488
+ float t = autotemp. min + high * autotemp. factor ;
1489
+ LIMIT (t, autotemp. min , autotemp. max );
1491
1490
if (t < oldt) t = t * (1 .0f - (AUTOTEMP_OLDWEIGHT)) + oldt * (AUTOTEMP_OLDWEIGHT);
1492
1491
oldt = t;
1493
1492
thermalManager.setTargetHotend (t, active_extruder);
0 commit comments