Matching sign across filwidth vars
This commit is contained in:
parent
3cde4c78b2
commit
913d9e9a59
@ -29,8 +29,8 @@
|
|||||||
bool filament_sensor = false; // M405/M406 turns filament sensor control ON/OFF.
|
bool filament_sensor = false; // M405/M406 turns filament sensor control ON/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 // FILAMENT_WIDTH_SENSOR
|
#endif // FILAMENT_WIDTH_SENSOR
|
||||||
|
@ -25,11 +25,11 @@
|
|||||||
|
|
||||||
#include "../inc/MarlinConfig.h"
|
#include "../inc/MarlinConfig.h"
|
||||||
|
|
||||||
extern bool filament_sensor; // M405/M406 turns filament sensor control ON/OFF.
|
extern bool filament_sensor; // M405/M406 turns filament sensor control ON/OFF.
|
||||||
extern float filament_width_nominal, // Nominal filament width. Change with M404.
|
extern float filament_width_nominal, // Nominal filament width. Change with M404.
|
||||||
filament_width_meas; // Measured filament diameter
|
filament_width_meas; // Measured filament diameter
|
||||||
extern uint8_t meas_delay_cm, // Distance delay setting
|
extern uint8_t meas_delay_cm; // Distance delay setting
|
||||||
measurement_delay[MAX_MEASUREMENT_DELAY + 1]; // Ring buffer to delayed measurement. Store extruder factor after subtracting 100
|
extern int8_t measurement_delay[MAX_MEASUREMENT_DELAY + 1], // Ring buffer to delayed measurement. Store extruder factor after subtracting 100
|
||||||
extern int8_t filwidth_delay_index[2]; // Indexes into ring buffer
|
filwidth_delay_index[2]; // Indexes into ring buffer
|
||||||
|
|
||||||
#endif // __FILWIDTH_H__
|
#endif // __FILWIDTH_H__
|
||||||
|
@ -56,7 +56,7 @@ void GcodeSuite::M405() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
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;
|
||||||
|
@ -1092,7 +1092,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…
Reference in New Issue
Block a user