|
@@ -630,9 +630,9 @@ float cartes[XYZ] = { 0 };
|
630
|
630
|
bool filament_sensor = false; // M405 turns on filament sensor control. M406 turns it off.
|
631
|
631
|
float filament_width_nominal = DEFAULT_NOMINAL_FILAMENT_DIA, // Nominal filament width. Change with M404.
|
632
|
632
|
filament_width_meas = DEFAULT_MEASURED_FILAMENT_DIA; // Measured filament diameter
|
633
|
|
- int8_t measurement_delay[MAX_MEASUREMENT_DELAY + 1]; // Ring buffer to delayed measurement. Store extruder factor after subtracting 100
|
634
|
|
- int filwidth_delay_index[2] = { 0, -1 }; // Indexes into ring buffer
|
635
|
|
- int meas_delay_cm = MEASUREMENT_DELAY_CM; // Distance delay setting
|
|
633
|
+ uint8_t meas_delay_cm = MEASUREMENT_DELAY_CM, // Distance delay setting
|
|
634
|
+ measurement_delay[MAX_MEASUREMENT_DELAY + 1]; // Ring buffer to delayed measurement. Store extruder factor after subtracting 100
|
|
635
|
+ int8_t filwidth_delay_index[2] = { 0, -1 }; // Indexes into ring buffer
|
636
|
636
|
#endif
|
637
|
637
|
|
638
|
638
|
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
|
|
@@ -8898,11 +8898,11 @@ inline void gcode_M400() { stepper.synchronize(); }
|
8898
|
8898
|
inline void gcode_M405() {
|
8899
|
8899
|
// This is technically a linear measurement, but since it's quantized to centimeters and is a different unit than
|
8900
|
8900
|
// everything else, it uses parser.value_int() instead of parser.value_linear_units().
|
8901
|
|
- if (parser.seen('D')) meas_delay_cm = parser.value_int();
|
|
8901
|
+ if (parser.seen('D')) meas_delay_cm = parser.value_byte();
|
8902
|
8902
|
NOMORE(meas_delay_cm, MAX_MEASUREMENT_DELAY);
|
8903
|
8903
|
|
8904
|
8904
|
if (filwidth_delay_index[1] == -1) { // Initialize the ring buffer if not done since startup
|
8905
|
|
- const int temp_ratio = thermalManager.widthFil_to_size_ratio() - 100; // -100 to scale within a signed byte
|
|
8905
|
+ const uint8_t temp_ratio = thermalManager.widthFil_to_size_ratio() - 100; // -100 to scale within a signed byte
|
8906
|
8906
|
|
8907
|
8907
|
for (uint8_t i = 0; i < COUNT(measurement_delay); ++i)
|
8908
|
8908
|
measurement_delay[i] = temp_ratio;
|