From 6b91b7b411da3e7dfd535670d8a096a7144a0ff2 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Wed, 1 Apr 2015 21:18:51 +0200 Subject: [PATCH 01/12] Mesh bed leveling: Added G29 S3 + finer steps in manual probing. * Use "G29 S3 Xn Yn Zn.nn" to modify bad probed point manually * Changed manual Z steps from 0.05 to 0.025 and made brought it to Configuration.h --- Marlin/Configuration.h | 4 ++++ Marlin/Marlin_main.cpp | 54 +++++++++++++++++++++++++++++++++++------- Marlin/ultralcd.cpp | 4 ++-- 3 files changed, 52 insertions(+), 10 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index a984923ea2..5a6d483bf9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -387,6 +387,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#if defined(MANUAL_BED_LEVELING) + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #if defined(MESH_BED_LEVELING) #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 6b41be6179..a327f209d8 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -2038,10 +2038,18 @@ inline void gcode_G28() { * * Parameters With MESH_BED_LEVELING: * - * S0 Produce a mesh report - * S1 Start probing mesh points - * S2 Probe the next mesh point + * S0 Produce a mesh report + * S1 Start probing mesh points + * S2 Probe the next mesh point + * S3 Xn Yn Zn.nn Manually modify a single point * + * The S0 report the points as below + * + * +----> X-axis + * | + * | + * v Y-axis + * */ inline void gcode_G29() { @@ -2052,13 +2060,13 @@ inline void gcode_G28() { int state = 0; if (code_seen('S') || code_seen('s')) { state = code_value_long(); - if (state < 0 || state > 2) { - SERIAL_PROTOCOLPGM("S out of range (0-2).\n"); + if (state < 0 || state > 3) { + SERIAL_PROTOCOLPGM("S out of range (0-3).\n"); return; } } - if (state == 0) { // Dump mesh_bed_leveling + if (state == 0) { // Produce a mesh report if (mbl.active) { SERIAL_PROTOCOLPGM("Num X,Y: "); SERIAL_PROTOCOL(MESH_NUM_X_POINTS); @@ -2078,14 +2086,14 @@ inline void gcode_G28() { SERIAL_PROTOCOLPGM("Mesh bed leveling not active.\n"); } - } else if (state == 1) { // Begin probing mesh points + } else if (state == 1) { // Start probing mesh points mbl.reset(); probe_point = 0; enquecommands_P(PSTR("G28")); enquecommands_P(PSTR("G29 S2")); - } else if (state == 2) { // Goto next point + } else if (state == 2) { // Probe the next mesh point if (probe_point < 0) { SERIAL_PROTOCOLPGM("Start mesh probing with \"G29 S1\" first.\n"); @@ -2119,6 +2127,36 @@ inline void gcode_G28() { plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], homing_feedrate[X_AXIS]/60, active_extruder); st_synchronize(); probe_point++; + } else if (state == 3) { // Manually modify a single point + int ix, iy; + float z; + if (code_seen('X') || code_seen('x')) { + ix = code_value_long()-1; + if (ix < 0 || ix >= MESH_NUM_X_POINTS) { + SERIAL_PROTOCOLPGM("X out of range (1-" STRINGIFY(MESH_NUM_X_POINTS) ").\n"); + return; + } + } else { + SERIAL_PROTOCOLPGM("X not entered.\n"); + return; + } + if (code_seen('Y') || code_seen('y')) { + iy = code_value_long()-1; + if (iy < 0 || iy >= MESH_NUM_Y_POINTS) { + SERIAL_PROTOCOLPGM("Y out of range (1-" STRINGIFY(MESH_NUM_Y_POINTS) ").\n"); + return; + } + } else { + SERIAL_PROTOCOLPGM("Y not entered.\n"); + return; + } + if (code_seen('Z') || code_seen('z')) { + z = code_value(); + } else { + SERIAL_PROTOCOLPGM("Z not entered.\n"); + return; + } + mbl.z_values[iy][ix] = z; } } diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index d2a2e6faaf..e6da28e0f1 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -1795,14 +1795,14 @@ static void _lcd_level_bed() { if (encoderPosition != 0) { refresh_cmd_timeout(); - current_position[Z_AXIS] += float((int)encoderPosition) * 0.05; + current_position[Z_AXIS] += float((int)encoderPosition) * MBL_Z_STEP; if (min_software_endstops && current_position[Z_AXIS] < Z_MIN_POS) current_position[Z_AXIS] = Z_MIN_POS; if (max_software_endstops && current_position[Z_AXIS] > Z_MAX_POS) current_position[Z_AXIS] = Z_MAX_POS; encoderPosition = 0; plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[Z_AXIS]/60, active_extruder); lcdDrawUpdate = 1; } - if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR("Z"), ftostr32(current_position[Z_AXIS])); + if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR("Z"), ftostr43(current_position[Z_AXIS])); static bool debounce_click = false; if (LCD_CLICKED) { if (!debounce_click) { From 6bdebede27061868def31428f54840f3696999e0 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Wed, 1 Apr 2015 21:32:28 +0200 Subject: [PATCH 02/12] Added description in the documentation for the new parts. --- Documentation/MeshBedLeveling.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Documentation/MeshBedLeveling.md b/Documentation/MeshBedLeveling.md index 21eabb6b09..7981a896c5 100644 --- a/Documentation/MeshBedLeveling.md +++ b/Documentation/MeshBedLeveling.md @@ -28,6 +28,10 @@ In `Configuration.h` there are two options that can be enabled. There are also some values that can be set. +The following will set the step distance used when manually turning the display encoder. Default is 0.025 + +`MBL_Z_STEP` + Following four define the area to cover. Default 10mm from max bed size `MESH_MIN_X`
@@ -55,14 +59,14 @@ When selecting this option the printer will first do a homing, and then travel t If the EEPROM has been enable it can be good to issue a `M500` to get these points saved. -Issuing a `G29` will return the state of the mesh leveling. +Issuing a `G29` will return the state of the mesh leveling and report the probed points. Probing the bed with G-codes ---------------------------- Probing the bed by G-codes follows the sequence much like doing it with the display. -`G29` or `G29 S0` will return the state bed leveling. +`G29` or `G29 S0` will return the state of the bed leveling and report the probed points. Where X=1 Y=1 is the top-left value and X=MESH_NUM_X_POINTS Y=MESH_NUM_Y_POINTS is bottom-right value. X per column and Y per row. `G29 S1` will initiate the bed leveling, homing and traveling to the first point to probe. @@ -70,6 +74,8 @@ Then use your preferred Printer controller program, i.e. Printrun, to lower the `G29 S2` will store the point and travel to the next point until last point has been probed. +`G29 S3 Xn Yn Zn.nn` will modify a single probed point. This can be used to tweak a badly probed point. Specify probe point where `Xn` and `Yn`, where `n` in `Xn` is between 1 and `MESH_NUM_X_POINTS`. Likewise for `Yn`. `Zn.nn` is the new Z value in that probed point. + Note ---- From 0e6514e7bd1adcdf582b14b45345ee5ddd8790b6 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Sun, 5 Apr 2015 04:13:34 +0200 Subject: [PATCH 03/12] Bug fix! Missed putting z value back in right slot after zigzag mod. --- Marlin/ultralcd.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index 42a957dcab..138c60df6b 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -1809,6 +1809,9 @@ static void _lcd_level_bed() debounce_click = true; int ix = _lcd_level_bed_position % MESH_NUM_X_POINTS; int iy = _lcd_level_bed_position / MESH_NUM_X_POINTS; + if (iy&1) { // Zig zag + ix = (MESH_NUM_X_POINTS - 1) - ix; + } mbl.set_z(ix, iy, current_position[Z_AXIS]); _lcd_level_bed_position++; if (_lcd_level_bed_position == MESH_NUM_X_POINTS*MESH_NUM_Y_POINTS) { From 2f0081bbb5a1adc861db3a7f9868987807618c52 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Sun, 5 Apr 2015 04:16:16 +0200 Subject: [PATCH 04/12] Compile error fix! Fix for merge artifacts. --- Marlin/Marlin_main.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 1b9260de53..66afad7bf4 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -2045,6 +2045,9 @@ inline void gcode_G28() { return; } + int ix, iy; + float z; + switch(state) { case MeshReport: if (mbl.active) { @@ -2078,7 +2081,6 @@ inline void gcode_G28() { SERIAL_PROTOCOLLNPGM("Start mesh probing with \"G29 S1\" first."); return; } - int ix, iy; if (probe_point == 0) { // Set Z to a positive value before recording the first Z. current_position[Z_AXIS] = MESH_HOME_SEARCH_Z; @@ -2115,8 +2117,6 @@ inline void gcode_G28() { break; case MeshSet: - int ix, iy; - float z; if (code_seen('X') || code_seen('x')) { ix = code_value_long()-1; if (ix < 0 || ix >= MESH_NUM_X_POINTS) { From 61de6ecd54f0f256cd2f54397806e6be77520a72 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Sun, 5 Apr 2015 04:26:35 +0200 Subject: [PATCH 05/12] Added change to example Configuration.h's --- Marlin/configurator/config/Configuration.h | 4 ++++ Marlin/example_configurations/Felix/Configuration.h | 4 ++++ Marlin/example_configurations/Hephestos/Configuration.h | 4 ++++ Marlin/example_configurations/K8200/Configuration.h | 4 ++++ Marlin/example_configurations/SCARA/Configuration.h | 4 ++++ Marlin/example_configurations/WITBOX/Configuration.h | 4 ++++ Marlin/example_configurations/delta/generic/Configuration.h | 4 ++++ .../example_configurations/delta/kossel_mini/Configuration.h | 4 ++++ Marlin/example_configurations/makibox/Configuration.h | 4 ++++ Marlin/example_configurations/tvrrug/Round2/Configuration.h | 4 ++++ 10 files changed, 40 insertions(+) diff --git a/Marlin/configurator/config/Configuration.h b/Marlin/configurator/config/Configuration.h index 5b0960fdd4..bb8125ef16 100644 --- a/Marlin/configurator/config/Configuration.h +++ b/Marlin/configurator/config/Configuration.h @@ -412,6 +412,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 72d716989b..49df589dd3 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -364,6 +364,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index ac101be4d3..f58fd83157 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -387,6 +387,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 6d743e9379..07af43647d 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -392,6 +392,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index f126ab99bc..8a85e8e801 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -416,6 +416,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index 265f73fce1..ed964304f2 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -386,6 +386,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index 3218d2d9d7..acd6d9f341 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -414,6 +414,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index 489dca6d58..bc0a000e04 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -414,6 +414,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index 45350960f8..557b15fe25 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -384,6 +384,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index 2c98a310fb..e9158b0419 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -386,6 +386,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of // #define MANUAL_BED_LEVELING // Add display menu option for bed leveling // #define MESH_BED_LEVELING // Enable mesh bed leveling +#ifdef MANUAL_BED_LEVELING + #define MBL_Z_STEP 0.025 +#endif // MANUAL_BED_LEVELING + #ifdef MESH_BED_LEVELING #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) From d24ea7c03f7ddbb3645a9cfb136a620dbcb6dfc3 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Sun, 5 Apr 2015 05:14:06 +0200 Subject: [PATCH 06/12] Added Comment in hope of github seeing these updates --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 7de354f882..419e010dce 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -395,7 +395,7 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic // #define MESH_BED_LEVELING // Enable mesh bed leveling #ifdef MANUAL_BED_LEVELING - #define MBL_Z_STEP 0.025 + #define MBL_Z_STEP 0.025 // Step size while manually probing Z axis #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING From 9a093b2e8fc780cc61d55d088f592ec44d370482 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Mon, 6 Apr 2015 19:38:59 +0200 Subject: [PATCH 07/12] Added #error + mention not to enable ABL and Mesh at the same time --- Documentation/MeshBedLeveling.md | 2 +- Marlin/Configuration.h | 4 ++++ Marlin/configurator/config/Configuration.h | 4 ++++ Marlin/example_configurations/Felix/Configuration.h | 4 ++++ Marlin/example_configurations/Hephestos/Configuration.h | 4 ++++ Marlin/example_configurations/K8200/Configuration.h | 4 ++++ Marlin/example_configurations/SCARA/Configuration.h | 4 ++++ Marlin/example_configurations/WITBOX/Configuration.h | 4 ++++ Marlin/example_configurations/delta/generic/Configuration.h | 4 ++++ .../example_configurations/delta/kossel_mini/Configuration.h | 4 ++++ Marlin/example_configurations/makibox/Configuration.h | 4 ++++ Marlin/example_configurations/tvrrug/Round2/Configuration.h | 4 ++++ 12 files changed, 45 insertions(+), 1 deletion(-) diff --git a/Documentation/MeshBedLeveling.md b/Documentation/MeshBedLeveling.md index 7981a896c5..09c1ec9483 100644 --- a/Documentation/MeshBedLeveling.md +++ b/Documentation/MeshBedLeveling.md @@ -7,7 +7,7 @@ Background This mesh based method of leveling/compensating can compensate for an non-flat bed. There are various opinions about doing this. It was primarily written to compensate a RigidBot BIG bed (40x30cm) that was somewhat bent. -Currently there is no automatic way to probe the bed like the Auto Bed Leveling feature. This might soon be implemented though, stay tuned. +Currently there is no automatic way to probe the bed like the Auto Bed Leveling feature. So, you can not enable `ENABLE_AUTO_BED_LEVELING` at the same time. This might soon be implemented though, stay tuned. Theory ------ diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 419e010dce..7803bdd0a4 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -417,6 +417,10 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/configurator/config/Configuration.h b/Marlin/configurator/config/Configuration.h index bb8125ef16..cd260bf89c 100644 --- a/Marlin/configurator/config/Configuration.h +++ b/Marlin/configurator/config/Configuration.h @@ -437,6 +437,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 49df589dd3..fe95e1a2e1 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -387,6 +387,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index f58fd83157..04a9060c2e 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -410,6 +410,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 07af43647d..5655219ddd 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -415,6 +415,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 8a85e8e801..8e4a5ea7df 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -439,6 +439,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index ed964304f2..1bde594417 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -409,6 +409,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index acd6d9f341..5a25872b06 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -437,6 +437,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index bc0a000e04..a5ebffcdd7 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -437,6 +437,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index 557b15fe25..c3566eb57f 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -407,6 +407,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index e9158b0419..c88fe81281 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -409,6 +409,10 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING + #ifdef MESH_BED_LEVELING + #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both + #endif // MESH_BED_LEVELING + // There are 2 different ways to specify probing locations // // - "grid" mode From d27c82a4500229abdf9a3d478b981f0315cfee21 Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Mon, 6 Apr 2015 23:03:06 +0200 Subject: [PATCH 08/12] Added check for Delta printers in Mesh, #error not yet supported. --- Marlin/Configuration.h | 5 +++++ Marlin/configurator/config/Configuration.h | 5 +++++ Marlin/example_configurations/Felix/Configuration.h | 5 +++++ Marlin/example_configurations/Hephestos/Configuration.h | 5 +++++ Marlin/example_configurations/K8200/Configuration.h | 5 +++++ Marlin/example_configurations/SCARA/Configuration.h | 5 +++++ Marlin/example_configurations/WITBOX/Configuration.h | 5 +++++ Marlin/example_configurations/delta/generic/Configuration.h | 5 +++++ .../example_configurations/delta/kossel_mini/Configuration.h | 5 +++++ Marlin/example_configurations/makibox/Configuration.h | 5 +++++ Marlin/example_configurations/tvrrug/Round2/Configuration.h | 5 +++++ 11 files changed, 55 insertions(+) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 7803bdd0a4..a525894a47 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -399,6 +399,11 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/configurator/config/Configuration.h b/Marlin/configurator/config/Configuration.h index cd260bf89c..fedea0d248 100644 --- a/Marlin/configurator/config/Configuration.h +++ b/Marlin/configurator/config/Configuration.h @@ -417,6 +417,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index fe95e1a2e1..15546db889 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -369,6 +369,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index 04a9060c2e..a392e7f915 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -392,6 +392,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 5655219ddd..3b16d3cabc 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -397,6 +397,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 8e4a5ea7df..c35f4f21b5 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -421,6 +421,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index 1bde594417..9e42757859 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -391,6 +391,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index 5a25872b06..9a14554c69 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -419,6 +419,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index a5ebffcdd7..006d964a65 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -419,6 +419,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index c3566eb57f..6498eac599 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -389,6 +389,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index c88fe81281..20545496ed 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -391,6 +391,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING + + #ifdef DELTA + #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers + #endif + #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 From a9ed39b12dc37f71a39c36154bf9ec60bbb8ec1e Mon Sep 17 00:00:00 2001 From: Edward Patel Date: Tue, 7 Apr 2015 22:58:08 +0200 Subject: [PATCH 09/12] Moved checks into SanityCheck.h + removed previous added checks. --- Marlin/Configuration.h | 9 --------- Marlin/SanityCheck.h | 12 ++++++++++++ Marlin/configurator/config/Configuration.h | 9 --------- Marlin/example_configurations/Felix/Configuration.h | 9 --------- .../example_configurations/Hephestos/Configuration.h | 9 --------- Marlin/example_configurations/K8200/Configuration.h | 9 --------- Marlin/example_configurations/SCARA/Configuration.h | 9 --------- Marlin/example_configurations/WITBOX/Configuration.h | 9 --------- .../delta/generic/Configuration.h | 9 --------- .../delta/kossel_mini/Configuration.h | 9 --------- .../example_configurations/makibox/Configuration.h | 9 --------- .../tvrrug/Round2/Configuration.h | 9 --------- 12 files changed, 12 insertions(+), 99 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9234d2ce7a..788ee58ff5 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -431,11 +431,6 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -456,10 +451,6 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/SanityCheck.h b/Marlin/SanityCheck.h index d92938c1d3..d1be7703d9 100644 --- a/Marlin/SanityCheck.h +++ b/Marlin/SanityCheck.h @@ -91,6 +91,18 @@ #error You must enable either DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN for your LCD controller. #endif + /** + * Mesh Bed Leveling + */ + #ifdef MESH_BED_LEVELING + #ifdef DELTA + #error MESH_BED_LEVELING does not yet support DELTA printers + #endif + #ifdef ENABLE_AUTO_BED_LEVELING + #error Select ENABLE_AUTO_BED_LEVELING or MESH_BED_LEVELING, not both + #endif + #endif + /** * Auto Bed Leveling */ diff --git a/Marlin/configurator/config/Configuration.h b/Marlin/configurator/config/Configuration.h index 025bfea892..e5130531b4 100644 --- a/Marlin/configurator/config/Configuration.h +++ b/Marlin/configurator/config/Configuration.h @@ -431,11 +431,6 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -456,10 +451,6 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 69b6025023..9ed9472548 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -369,11 +369,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -392,10 +387,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index 39b1198d76..d320e9ea9d 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -392,11 +392,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -415,10 +410,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 31e6f3f4bc..fdbb32a864 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -397,11 +397,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -420,10 +415,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 283922eddf..96e05e656b 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -421,11 +421,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -444,10 +439,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index dd00a4bc8d..2bbe50938f 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -391,11 +391,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -414,10 +409,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index a757ff7ab4..c5ab70da24 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -419,11 +419,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -442,10 +437,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index 6ac4669ae9..22f4f3f39d 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -419,11 +419,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -442,10 +437,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic o #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index 2b6834b617..fffc81c704 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -389,11 +389,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -412,10 +407,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index 7f4867890a..eb0e5a290a 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -391,11 +391,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #endif // MANUAL_BED_LEVELING #ifdef MESH_BED_LEVELING - - #ifdef DELTA - #error 'MESH_BED_LEVELING' does not yet support 'DELTA' printers - #endif - #define MESH_MIN_X 10 #define MESH_MAX_X (X_MAX_POS - MESH_MIN_X) #define MESH_MIN_Y 10 @@ -414,10 +409,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of #ifdef ENABLE_AUTO_BED_LEVELING - #ifdef MESH_BED_LEVELING - #error Select 'ENABLE_AUTO_BED_LEVELING' or 'MESH_BED_LEVELING', not both - #endif // MESH_BED_LEVELING - // There are 2 different ways to specify probing locations // // - "grid" mode From 1d291be2baa73e4e3b29bcb748a5c9c9b2316d4a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 7 Apr 2015 20:01:08 -0700 Subject: [PATCH 10/12] Fix de after PREVENT_DANGEROUS_EXTRUDE - Set `de` to 0 when `position[E] = target[E]` - Address regression mention in #1846 --- Marlin/planner.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index dcfbe674cf..a0474f94a9 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -511,12 +511,14 @@ float junction_deviation = 0.1; if (de) { if (degHotend(active_extruder) < extrude_min_temp) { position[E_AXIS] = target[E_AXIS]; //behave as if the move really took place, but ignore E part + de = 0; // no difference SERIAL_ECHO_START; SERIAL_ECHOLNPGM(MSG_ERR_COLD_EXTRUDE_STOP); } #ifdef PREVENT_LENGTHY_EXTRUDE if (labs(de) > axis_steps_per_unit[E_AXIS] * EXTRUDE_MAXLENGTH) { position[E_AXIS] = target[E_AXIS]; // Behave as if the move really took place, but ignore E part + de = 0; // no difference SERIAL_ECHO_START; SERIAL_ECHOLNPGM(MSG_ERR_LONG_EXTRUDE_STOP); } From ff429cdd8a320d7fbb14d7d52f31948084159ab9 Mon Sep 17 00:00:00 2001 From: Administrator Date: Tue, 7 Apr 2015 23:03:46 -0500 Subject: [PATCH 11/12] Fix typo in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d2ff347d6f..7cb93c7e26 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ We are actively looking for testers. So please try the current development versi ## Contact -__Google Hangout:__ Hagnout +__Google Hangout:__ Hangout ## Credits From cf9b58452c90a0bf78628ef9ad92928a1ef2a2b8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 7 Apr 2015 20:20:30 -0700 Subject: [PATCH 12/12] Minimum delay in menu click feedback Squished #1849 --- Marlin/ultralcd.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index d65768235d..348a9459d1 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -1159,7 +1159,9 @@ static void lcd_quick_feedback() { delayMicroseconds(delay); WRITE(BEEPER,LOW); delayMicroseconds(delay); - } + } + const int j = max(10000 - LCD_FEEDBACK_FREQUENCY_DURATION_MS * 1000, 0); + if (j) delayMicroseconds(j); #endif }