|
@ -1369,7 +1369,7 @@ inline void set_destination_to_current() { memcpy(destination, current_position, |
|
|
#endif |
|
|
#endif |
|
|
|
|
|
|
|
|
if (verbose_level > 2) { |
|
|
if (verbose_level > 2) { |
|
|
SERIAL_PROTOCOLPGM(MSG_BED); |
|
|
SERIAL_PROTOCOLPGM("Bed"); |
|
|
SERIAL_PROTOCOLPGM(" X: "); |
|
|
SERIAL_PROTOCOLPGM(" X: "); |
|
|
SERIAL_PROTOCOL_F(x, 3); |
|
|
SERIAL_PROTOCOL_F(x, 3); |
|
|
SERIAL_PROTOCOLPGM(" Y: "); |
|
|
SERIAL_PROTOCOLPGM(" Y: "); |
|
@ -2518,7 +2518,7 @@ inline void gcode_G28() { |
|
|
feedrate = homing_feedrate[Z_AXIS]; |
|
|
feedrate = homing_feedrate[Z_AXIS]; |
|
|
|
|
|
|
|
|
run_z_probe(); |
|
|
run_z_probe(); |
|
|
SERIAL_PROTOCOLPGM(MSG_BED); |
|
|
SERIAL_PROTOCOLPGM("Bed"); |
|
|
SERIAL_PROTOCOLPGM(" X: "); |
|
|
SERIAL_PROTOCOLPGM(" X: "); |
|
|
SERIAL_PROTOCOL(current_position[X_AXIS] + 0.0001); |
|
|
SERIAL_PROTOCOL(current_position[X_AXIS] + 0.0001); |
|
|
SERIAL_PROTOCOLPGM(" Y: "); |
|
|
SERIAL_PROTOCOLPGM(" Y: "); |
|
@ -2856,8 +2856,8 @@ inline void gcode_M42() { |
|
|
inline void gcode_M48() { |
|
|
inline void gcode_M48() { |
|
|
|
|
|
|
|
|
double sum = 0.0, mean = 0.0, sigma = 0.0, sample_set[50]; |
|
|
double sum = 0.0, mean = 0.0, sigma = 0.0, sample_set[50]; |
|
|
int verbose_level = 1, n_samples = 10, n_legs = 0; |
|
|
uint8_t verbose_level = 1, n_samples = 10, n_legs = 0; |
|
|
|
|
|
|
|
|
if (code_seen('V') || code_seen('v')) { |
|
|
if (code_seen('V') || code_seen('v')) { |
|
|
verbose_level = code_value_short(); |
|
|
verbose_level = code_value_short(); |
|
|
if (verbose_level < 0 || verbose_level > 4 ) { |
|
|
if (verbose_level < 0 || verbose_level > 4 ) { |
|
@ -2964,7 +2964,7 @@ inline void gcode_M42() { |
|
|
|
|
|
|
|
|
if (deploy_probe_for_each_reading) stow_z_probe(); |
|
|
if (deploy_probe_for_each_reading) stow_z_probe(); |
|
|
|
|
|
|
|
|
for (uint16_t n=0; n < n_samples; n++) { |
|
|
for (uint8_t n=0; n < n_samples; n++) { |
|
|
|
|
|
|
|
|
do_blocking_move_to(X_probe_location, Y_probe_location, Z_start_location); // Make sure we are at the probe location
|
|
|
do_blocking_move_to(X_probe_location, Y_probe_location, Z_start_location); // Make sure we are at the probe location
|
|
|
|
|
|
|
|
@ -2979,7 +2979,7 @@ inline void gcode_M42() { |
|
|
//SERIAL_ECHOPAIR(" direction: ",dir);
|
|
|
//SERIAL_ECHOPAIR(" direction: ",dir);
|
|
|
//SERIAL_EOL;
|
|
|
//SERIAL_EOL;
|
|
|
|
|
|
|
|
|
for (int l = 0; l < n_legs - 1; l++) { |
|
|
for (uint8_t l = 0; l < n_legs - 1; l++) { |
|
|
ms = millis(); |
|
|
ms = millis(); |
|
|
theta += RADIANS(dir * (ms % 20L)); |
|
|
theta += RADIANS(dir * (ms % 20L)); |
|
|
radius += (ms % 10L) - 5L; |
|
|
radius += (ms % 10L) - 5L; |
|
@ -3018,7 +3018,7 @@ inline void gcode_M42() { |
|
|
// Get the current mean for the data points we have so far
|
|
|
// Get the current mean for the data points we have so far
|
|
|
//
|
|
|
//
|
|
|
sum = 0.0; |
|
|
sum = 0.0; |
|
|
for (int j = 0; j <= n; j++) sum += sample_set[j]; |
|
|
for (uint8_t j = 0; j <= n; j++) sum += sample_set[j]; |
|
|
mean = sum / (n + 1); |
|
|
mean = sum / (n + 1); |
|
|
|
|
|
|
|
|
//
|
|
|
//
|
|
@ -3026,7 +3026,7 @@ inline void gcode_M42() { |
|
|
// data points we have so far
|
|
|
// data points we have so far
|
|
|
//
|
|
|
//
|
|
|
sum = 0.0; |
|
|
sum = 0.0; |
|
|
for (int j = 0; j <= n; j++) { |
|
|
for (uint8_t j = 0; j <= n; j++) { |
|
|
float ss = sample_set[j] - mean; |
|
|
float ss = sample_set[j] - mean; |
|
|
sum += ss * ss; |
|
|
sum += ss * ss; |
|
|
} |
|
|
} |
|
|