From b2d3fffe7455adc4e50002769ebd97c3efb43e33 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 25 Nov 2017 14:04:21 -0600 Subject: [PATCH] Patches for M290, M851 --- Marlin/Marlin_main.cpp | 22 +++++++++++----------- Marlin/language.h | 1 + 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 4762873b0..c4be1a686 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -9338,7 +9338,7 @@ inline void gcode_M226() { const float offs = constrain(parser.value_axis_units((AxisEnum)a), -2, 2); thermalManager.babystep_axis((AxisEnum)a, offs * planner.axis_steps_per_mm[a]); #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - zprobe_zoffset += offs; + if (a == Z_AXIS) zprobe_zoffset += offs; #endif } #else @@ -9350,6 +9350,10 @@ inline void gcode_M226() { #endif } #endif + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + SERIAL_ECHO_START(); + SERIAL_ECHOLNPAIR(MSG_PROBE_Z_OFFSET ": ", zprobe_zoffset); + #endif } #endif // BABYSTEPPING @@ -10053,20 +10057,16 @@ inline void gcode_M502() { inline void gcode_M851() { SERIAL_ECHO_START(); - SERIAL_ECHOPGM(MSG_ZPROBE_ZOFFSET " "); + SERIAL_ECHOPGM(MSG_PROBE_Z_OFFSET); if (parser.seen('Z')) { const float value = parser.value_linear_units(); - if (WITHIN(value, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - zprobe_zoffset = value; - SERIAL_ECHO(zprobe_zoffset); + if (!WITHIN(value, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + SERIAL_ECHOLNPGM(" " MSG_Z_MIN " " STRINGIFY(Z_PROBE_OFFSET_RANGE_MIN) " " MSG_Z_MAX " " STRINGIFY(Z_PROBE_OFFSET_RANGE_MAX)); + return; } - else - SERIAL_ECHOPGM(MSG_Z_MIN " " STRINGIFY(Z_PROBE_OFFSET_RANGE_MIN) " " MSG_Z_MAX " " STRINGIFY(Z_PROBE_OFFSET_RANGE_MAX)); + zprobe_zoffset = value; } - else - SERIAL_ECHOPAIR(": ", zprobe_zoffset); - - SERIAL_EOL(); + SERIAL_ECHOLNPAIR(": ", zprobe_zoffset); } #endif // HAS_BED_PROBE diff --git a/Marlin/language.h b/Marlin/language.h index 54de80c5a..94b5813a6 100644 --- a/Marlin/language.h +++ b/Marlin/language.h @@ -161,6 +161,7 @@ #define MSG_Z2_MIN "z2_min: " #define MSG_Z2_MAX "z2_max: " #define MSG_Z_PROBE "z_probe: " +#define MSG_PROBE_Z_OFFSET "Probe Z Offset" #define MSG_FILAMENT_RUNOUT_SENSOR "filament: " #define MSG_ERR_MATERIAL_INDEX "M145 S out of range (0-1)" #define MSG_ERR_M355_NONE "No case light"