Match sign for filwidth across vars

master
Scott Lahteine 7 years ago
parent 98159c0507
commit 4f375cd17d

@ -423,9 +423,9 @@ void report_current_position();
extern bool filament_sensor; // Flag that filament sensor readings should control extrusion extern bool filament_sensor; // Flag that filament sensor readings should control extrusion
extern float filament_width_nominal, // Theoretical filament diameter i.e., 3.00 or 1.75 extern float filament_width_nominal, // Theoretical filament diameter i.e., 3.00 or 1.75
filament_width_meas; // Measured filament diameter filament_width_meas; // Measured filament diameter
extern uint8_t meas_delay_cm, // Delay distance extern uint8_t meas_delay_cm; // Delay distance
measurement_delay[]; // Ring buffer to delay measurement extern int8_t measurement_delay[MAX_MEASUREMENT_DELAY + 1], // Ring buffer to delay measurement
extern int8_t filwidth_delay_index[2]; // Ring buffer indexes. Used by planner, temperature, and main code filwidth_delay_index[2]; // Ring buffer indexes. Used by planner, temperature, and main code
#endif #endif
#if ENABLED(ADVANCED_PAUSE_FEATURE) #if ENABLED(ADVANCED_PAUSE_FEATURE)

@ -640,9 +640,9 @@ float cartes[XYZ] = { 0 };
bool filament_sensor = false; // M405 turns on filament sensor control. M406 turns it off. bool filament_sensor = false; // M405 turns on filament sensor control. M406 turns it off.
float filament_width_nominal = DEFAULT_NOMINAL_FILAMENT_DIA, // Nominal filament width. Change with M404. float filament_width_nominal = DEFAULT_NOMINAL_FILAMENT_DIA, // Nominal filament width. Change with M404.
filament_width_meas = DEFAULT_MEASURED_FILAMENT_DIA; // Measured filament diameter filament_width_meas = DEFAULT_MEASURED_FILAMENT_DIA; // Measured filament diameter
uint8_t meas_delay_cm = MEASUREMENT_DELAY_CM, // Distance delay setting uint8_t meas_delay_cm = MEASUREMENT_DELAY_CM; // Distance delay setting
measurement_delay[MAX_MEASUREMENT_DELAY + 1]; // Ring buffer to delayed measurement. Store extruder factor after subtracting 100 int8_t measurement_delay[MAX_MEASUREMENT_DELAY + 1], // Ring buffer to delayed measurement. Store extruder factor after subtracting 100
int8_t filwidth_delay_index[2] = { 0, -1 }; // Indexes into ring buffer filwidth_delay_index[2] = { 0, -1 }; // Indexes into ring buffer
#endif #endif
#if ENABLED(FILAMENT_RUNOUT_SENSOR) #if ENABLED(FILAMENT_RUNOUT_SENSOR)
@ -9588,7 +9588,7 @@ inline void gcode_M400() { stepper.synchronize(); }
} }
if (filwidth_delay_index[1] == -1) { // Initialize the ring buffer if not done since startup if (filwidth_delay_index[1] == -1) { // Initialize the ring buffer if not done since startup
const uint8_t temp_ratio = thermalManager.widthFil_to_size_ratio(); const int8_t temp_ratio = thermalManager.widthFil_to_size_ratio();
for (uint8_t i = 0; i < COUNT(measurement_delay); ++i) for (uint8_t i = 0; i < COUNT(measurement_delay); ++i)
measurement_delay[i] = temp_ratio; measurement_delay[i] = temp_ratio;

@ -1081,7 +1081,7 @@ void Planner::_buffer_steps(const int32_t (&target)[XYZE], float fr_mm_s, const
// If the index has changed (must have gone forward)... // If the index has changed (must have gone forward)...
if (filwidth_delay_index[0] != filwidth_delay_index[1]) { if (filwidth_delay_index[0] != filwidth_delay_index[1]) {
filwidth_e_count = 0; // Reset the E movement counter filwidth_e_count = 0; // Reset the E movement counter
const uint8_t meas_sample = thermalManager.widthFil_to_size_ratio(); const int8_t meas_sample = thermalManager.widthFil_to_size_ratio();
do { do {
filwidth_delay_index[1] = (filwidth_delay_index[1] + 1) % MMD_CM; // The next unused slot filwidth_delay_index[1] = (filwidth_delay_index[1] + 1) % MMD_CM; // The next unused slot
measurement_delay[filwidth_delay_index[1]] = meas_sample; // Store the measurement measurement_delay[filwidth_delay_index[1]] = meas_sample; // Store the measurement

Loading…
Cancel
Save