Bladeren bron

Add M851 X Y probe offsets (#15202)

InsanityAutomation 4 jaren geleden
bovenliggende
commit
df1e51258a
100 gewijzigde bestanden met toevoegingen van 693 en 1198 verwijderingen
  1. 6
    13
      Marlin/Configuration.h
  2. 1
    1
      Marlin/src/HAL/HAL_AVR/Servo.cpp
  3. 1
    1
      Marlin/src/core/language.h
  4. 9
    13
      Marlin/src/core/utility.cpp
  5. 3
    3
      Marlin/src/feature/bedlevel/ubl/ubl.cpp
  6. 19
    24
      Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp
  7. 6
    4
      Marlin/src/gcode/bedlevel/G42.cpp
  8. 11
    9
      Marlin/src/gcode/bedlevel/M420.cpp
  9. 10
    10
      Marlin/src/gcode/bedlevel/abl/G29.cpp
  10. 2
    2
      Marlin/src/gcode/calibrate/G28.cpp
  11. 4
    4
      Marlin/src/gcode/calibrate/M48.cpp
  12. 1
    1
      Marlin/src/gcode/gcode.h
  13. 2
    2
      Marlin/src/gcode/motion/M290.cpp
  14. 2
    2
      Marlin/src/gcode/probe/G30.cpp
  15. 34
    8
      Marlin/src/gcode/probe/M851.cpp
  16. 32
    63
      Marlin/src/inc/Conditionals_post.h
  17. 21
    27
      Marlin/src/inc/SanityCheck.h
  18. 3
    3
      Marlin/src/lcd/extensible_ui/ui_api.cpp
  19. 4
    4
      Marlin/src/lcd/menu/menu.cpp
  20. 2
    2
      Marlin/src/lcd/menu/menu_bed_corners.cpp
  21. 1
    1
      Marlin/src/lcd/menu/menu_bed_leveling.cpp
  22. 1
    1
      Marlin/src/lcd/menu/menu_configuration.cpp
  23. 21
    18
      Marlin/src/module/configuration_store.cpp
  24. 1
    1
      Marlin/src/module/delta.cpp
  25. 4
    4
      Marlin/src/module/motion.cpp
  26. 8
    8
      Marlin/src/module/motion.h
  27. 44
    7
      Marlin/src/module/probe.cpp
  28. 8
    1
      Marlin/src/module/probe.h
  29. 6
    13
      config/default/Configuration.h
  30. 6
    13
      config/examples/3DFabXYZ/Migbot/Configuration.h
  31. 6
    13
      config/examples/ADIMLab/Gantry v1/Configuration.h
  32. 6
    13
      config/examples/ADIMLab/Gantry v2/Configuration.h
  33. 6
    13
      config/examples/AlephObjects/TAZ4/Configuration.h
  34. 7
    14
      config/examples/Alfawise/U20-bltouch/Configuration.h
  35. 7
    14
      config/examples/Alfawise/U20/Configuration.h
  36. 6
    13
      config/examples/AliExpress/CL-260/Configuration.h
  37. 6
    13
      config/examples/AliExpress/UM2pExt/Configuration.h
  38. 6
    13
      config/examples/Anet/A2/Configuration.h
  39. 6
    13
      config/examples/Anet/A2plus/Configuration.h
  40. 10
    49
      config/examples/Anet/A6/Configuration.h
  41. 6
    13
      config/examples/Anet/A8/Configuration.h
  42. 6
    13
      config/examples/Anet/A8plus/Configuration.h
  43. 6
    13
      config/examples/Anet/E16/Configuration.h
  44. 6
    13
      config/examples/AnyCubic/i3/Configuration.h
  45. 6
    13
      config/examples/ArmEd/Configuration.h
  46. 6
    13
      config/examples/Azteeg/X5GT/Configuration.h
  47. 6
    13
      config/examples/BIBO/TouchX/cyclops/Configuration.h
  48. 6
    13
      config/examples/BIBO/TouchX/default/Configuration.h
  49. 6
    13
      config/examples/BQ/Hephestos/Configuration.h
  50. 6
    13
      config/examples/BQ/Hephestos_2/Configuration.h
  51. 6
    13
      config/examples/BQ/WITBOX/Configuration.h
  52. 6
    13
      config/examples/Cartesio/Configuration.h
  53. 6
    13
      config/examples/Creality/CR-10/Configuration.h
  54. 6
    13
      config/examples/Creality/CR-10S/Configuration.h
  55. 6
    13
      config/examples/Creality/CR-10_5S/Configuration.h
  56. 6
    13
      config/examples/Creality/CR-10mini/Configuration.h
  57. 6
    13
      config/examples/Creality/CR-20 Pro/Configuration.h
  58. 6
    13
      config/examples/Creality/CR-20/Configuration.h
  59. 6
    13
      config/examples/Creality/CR-8/Configuration.h
  60. 6
    13
      config/examples/Creality/Ender-2/Configuration.h
  61. 6
    13
      config/examples/Creality/Ender-3/Configuration.h
  62. 6
    13
      config/examples/Creality/Ender-4/Configuration.h
  63. 6
    13
      config/examples/Creality/Ender-5/Configuration.h
  64. 6
    13
      config/examples/Dagoma/Disco Ultimate/Configuration.h
  65. 6
    13
      config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration.h
  66. 6
    13
      config/examples/Einstart-S/Configuration.h
  67. 6
    13
      config/examples/FYSETC/AIO_II/Configuration.h
  68. 6
    13
      config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration.h
  69. 6
    13
      config/examples/FYSETC/Cheetah 1.2/base/Configuration.h
  70. 6
    13
      config/examples/FYSETC/Cheetah/BLTouch/Configuration.h
  71. 6
    13
      config/examples/FYSETC/Cheetah/base/Configuration.h
  72. 6
    13
      config/examples/FYSETC/F6_13/Configuration.h
  73. 6
    13
      config/examples/Felix/Configuration.h
  74. 6
    13
      config/examples/Felix/DUAL/Configuration.h
  75. 6
    13
      config/examples/FlashForge/CreatorPro/Configuration.h
  76. 6
    13
      config/examples/FolgerTech/i3-2020/Configuration.h
  77. 6
    13
      config/examples/Formbot/Raptor/Configuration.h
  78. 6
    13
      config/examples/Formbot/T_Rex_2+/Configuration.h
  79. 6
    13
      config/examples/Formbot/T_Rex_3/Configuration.h
  80. 6
    13
      config/examples/Geeetech/A10/Configuration.h
  81. 6
    13
      config/examples/Geeetech/A10M/Configuration.h
  82. 6
    13
      config/examples/Geeetech/A20M/Configuration.h
  83. 6
    13
      config/examples/Geeetech/GT2560/Configuration.h
  84. 6
    13
      config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h
  85. 6
    13
      config/examples/Geeetech/MeCreator2/Configuration.h
  86. 6
    13
      config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h
  87. 6
    13
      config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h
  88. 6
    13
      config/examples/Geeetech/Prusa i3 Pro C/Configuration.h
  89. 6
    13
      config/examples/Geeetech/Prusa i3 Pro W/Configuration.h
  90. 6
    13
      config/examples/HMS434/Configuration.h
  91. 6
    13
      config/examples/Infitary/i3-M508/Configuration.h
  92. 6
    13
      config/examples/JGAurora/A1/Configuration.h
  93. 6
    13
      config/examples/JGAurora/A5/Configuration.h
  94. 6
    13
      config/examples/JGAurora/A5S/Configuration.h
  95. 6
    13
      config/examples/MakerParts/Configuration.h
  96. 6
    13
      config/examples/Malyan/M150/Configuration.h
  97. 6
    13
      config/examples/Malyan/M200/Configuration.h
  98. 6
    13
      config/examples/Micromake/C1/basic/Configuration.h
  99. 6
    13
      config/examples/Micromake/C1/enhanced/Configuration.h
  100. 0
    0
      config/examples/Mks/Robin/Configuration.h

+ 6
- 13
Marlin/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 1
- 1
Marlin/src/HAL/HAL_AVR/Servo.cpp Bestand weergeven

@@ -131,7 +131,7 @@ void initISR(timer16_Sequence_t timer) {
131 131
       TCCR1A = 0;             // normal counting mode
132 132
       TCCR1B = _BV(CS11);     // set prescaler of 8
133 133
       TCNT1 = 0;              // clear the timer count
134
-      #if defined(__AVR_ATmega8__)|| defined(__AVR_ATmega128__)
134
+      #if defined(__AVR_ATmega8__) || defined(__AVR_ATmega128__)
135 135
         SBI(TIFR, OCF1A);      // clear any pending interrupts;
136 136
         SBI(TIMSK, OCIE1A);    // enable the output compare interrupt
137 137
       #else

+ 1
- 1
Marlin/src/core/language.h Bestand weergeven

@@ -198,7 +198,7 @@
198 198
 #define MSG_Z3_MAX                          "z3_max"
199 199
 #define MSG_Z_PROBE                         "z_probe"
200 200
 #define MSG_FILAMENT_RUNOUT_SENSOR          "filament"
201
-#define MSG_PROBE_Z_OFFSET                  "Probe Z Offset"
201
+#define MSG_PROBE_OFFSET                    "Probe Offset"
202 202
 #define MSG_SKEW_MIN                        "min_skew_factor: "
203 203
 #define MSG_SKEW_MAX                        "max_skew_factor: "
204 204
 #define MSG_ERR_MATERIAL_INDEX              "M145 S<index> out of range (0-1)"

+ 9
- 13
Marlin/src/core/utility.cpp Bestand weergeven

@@ -79,40 +79,36 @@ void safe_delay(millis_t ms) {
79 79
     );
80 80
 
81 81
     #if HAS_BED_PROBE
82
-      SERIAL_ECHOPAIR(
83
-        "Probe Offset X:" STRINGIFY(X_PROBE_OFFSET_FROM_EXTRUDER)
84
-                    " Y:" STRINGIFY(Y_PROBE_OFFSET_FROM_EXTRUDER)
85
-                    " Z:", zprobe_zoffset
86
-      );
87
-      if ((X_PROBE_OFFSET_FROM_EXTRUDER) > 0)
82
+      SERIAL_ECHOPAIR("Probe Offset X:", zprobe_offset[X_AXIS], " Y:", zprobe_offset[Y_AXIS], " Z:", zprobe_offset[Z_AXIS]);
83
+      if (zprobe_offset[X_AXIS] > 0)
88 84
         SERIAL_ECHOPGM(" (Right");
89
-      else if ((X_PROBE_OFFSET_FROM_EXTRUDER) < 0)
85
+      else if (zprobe_offset[X_AXIS] < 0)
90 86
         SERIAL_ECHOPGM(" (Left");
91
-      else if ((Y_PROBE_OFFSET_FROM_EXTRUDER) != 0)
87
+      else if (zprobe_offset[Y_AXIS] != 0)
92 88
         SERIAL_ECHOPGM(" (Middle");
93 89
       else
94 90
         SERIAL_ECHOPGM(" (Aligned With");
95 91
 
96
-      if ((Y_PROBE_OFFSET_FROM_EXTRUDER) > 0) {
92
+      if (zprobe_offset[Y_AXIS] > 0) {
97 93
         #if IS_SCARA
98 94
           SERIAL_ECHOPGM("-Distal");
99 95
         #else
100 96
           SERIAL_ECHOPGM("-Back");
101 97
         #endif
102 98
       }
103
-      else if ((Y_PROBE_OFFSET_FROM_EXTRUDER) < 0) {
99
+      else if (zprobe_offset[Y_AXIS] < 0) {
104 100
         #if IS_SCARA
105 101
           SERIAL_ECHOPGM("-Proximal");
106 102
         #else
107 103
           SERIAL_ECHOPGM("-Front");
108 104
         #endif
109 105
       }
110
-      else if ((X_PROBE_OFFSET_FROM_EXTRUDER) != 0)
106
+      else if (zprobe_offset[X_AXIS] != 0)
111 107
         SERIAL_ECHOPGM("-Center");
112 108
 
113
-      if (zprobe_zoffset < 0)
109
+      if (zprobe_offset[Z_AXIS] < 0)
114 110
         SERIAL_ECHOPGM(" & Below");
115
-      else if (zprobe_zoffset > 0)
111
+      else if (zprobe_offset[Z_AXIS] > 0)
116 112
         SERIAL_ECHOPGM(" & Above");
117 113
       else
118 114
         SERIAL_ECHOPGM(" & Same Z as");

+ 3
- 3
Marlin/src/feature/bedlevel/ubl/ubl.cpp Bestand weergeven

@@ -177,11 +177,11 @@
177 177
       serialprintPGM(csv ? PSTR("CSV:\n") : PSTR("LCD:\n"));
178 178
     }
179 179
 
180
-    // Add XY_PROBE_OFFSET_FROM_EXTRUDER because probe_pt() subtracts these when
180
+    // Add XY probe offset from extruder because probe_pt() subtracts them when
181 181
     // moving to the xy position to be measured. This ensures better agreement between
182 182
     // the current Z position after G28 and the mesh values.
183
-    const float current_xi = find_closest_x_index(current_position[X_AXIS] + X_PROBE_OFFSET_FROM_EXTRUDER),
184
-                current_yi = find_closest_y_index(current_position[Y_AXIS] + Y_PROBE_OFFSET_FROM_EXTRUDER);
183
+    const float current_xi = find_closest_x_index(current_position[X_AXIS] + zprobe_offset[X_AXIS]),
184
+                current_yi = find_closest_y_index(current_position[Y_AXIS] + zprobe_offset[Y_AXIS]);
185 185
 
186 186
     if (!lcd) SERIAL_EOL();
187 187
     for (int8_t j = GRID_MAX_POINTS_Y - 1; j >= 0; j--) {

+ 19
- 24
Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp Bestand weergeven

@@ -290,7 +290,7 @@
290 290
    *   especially better for Delta printers, since it populates the center of the mesh first, allowing for
291 291
    *   a quicker test print to verify settings. You don't need to populate the entire mesh to use it.
292 292
    *   After all, you don't want to spend a lot of time generating a mesh only to realize the resolution
293
-   *   or zprobe_zoffset are incorrect. Mesh-generation gathers points starting closest to the nozzle unless
293
+   *   or probe offsets are incorrect. Mesh-generation gathers points starting closest to the nozzle unless
294 294
    *   an (X,Y) coordinate pair is given.
295 295
    *
296 296
    *   Unified Bed Leveling uses a lot of EEPROM storage to hold its data, and it takes some effort to get
@@ -453,7 +453,7 @@
453 453
               SERIAL_ECHO(g29_y_pos);
454 454
               SERIAL_ECHOLNPGM(").\n");
455 455
             }
456
-            probe_entire_mesh(g29_x_pos + X_PROBE_OFFSET_FROM_EXTRUDER, g29_y_pos + Y_PROBE_OFFSET_FROM_EXTRUDER,
456
+            probe_entire_mesh(g29_x_pos + zprobe_offset[X_AXIS], g29_y_pos + zprobe_offset[Y_AXIS],
457 457
                               parser.seen('T'), parser.seen('E'), parser.seen('U'));
458 458
 
459 459
             report_current_position();
@@ -482,8 +482,8 @@
482 482
                 g29_x_pos = X_HOME_POS;
483 483
                 g29_y_pos = Y_HOME_POS;
484 484
               #else // cartesian
485
-                g29_x_pos = X_PROBE_OFFSET_FROM_EXTRUDER > 0 ? X_BED_SIZE : 0;
486
-                g29_y_pos = Y_PROBE_OFFSET_FROM_EXTRUDER < 0 ? Y_BED_SIZE : 0;
485
+                g29_x_pos = zprobe_offset[X_AXIS] > 0 ? X_BED_SIZE : 0;
486
+                g29_y_pos = zprobe_offset[Y_AXIS] < 0 ? Y_BED_SIZE : 0;
487 487
               #endif
488 488
             }
489 489
 
@@ -800,8 +800,8 @@
800 800
       restore_ubl_active_state_and_leave();
801 801
 
802 802
       do_blocking_move_to_xy(
803
-        constrain(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), MESH_MIN_X, MESH_MAX_X),
804
-        constrain(ry - (Y_PROBE_OFFSET_FROM_EXTRUDER), MESH_MIN_Y, MESH_MAX_Y)
803
+        constrain(rx - zprobe_offset[X_AXIS], MESH_MIN_X, MESH_MAX_X),
804
+        constrain(ry - zprobe_offset[Y_AXIS], MESH_MIN_Y, MESH_MAX_Y)
805 805
       );
806 806
     }
807 807
 
@@ -1281,8 +1281,8 @@
1281 1281
     out_mesh.distance = -99999.9f;
1282 1282
 
1283 1283
     // Get our reference position. Either the nozzle or probe location.
1284
-    const float px = rx + (probe_as_reference == USE_PROBE_AS_REFERENCE ? X_PROBE_OFFSET_FROM_EXTRUDER : 0),
1285
-                py = ry + (probe_as_reference == USE_PROBE_AS_REFERENCE ? Y_PROBE_OFFSET_FROM_EXTRUDER : 0);
1284
+    const float px = rx + (probe_as_reference == USE_PROBE_AS_REFERENCE ? zprobe_offset[X_AXIS] : 0),
1285
+                py = ry + (probe_as_reference == USE_PROBE_AS_REFERENCE ? zprobe_offset[Y_AXIS] : 0);
1286 1286
 
1287 1287
     float best_so_far = 99999.99f;
1288 1288
 
@@ -1384,22 +1384,17 @@
1384 1384
     #include "../../../libs/vector_3.h"
1385 1385
 
1386 1386
     void unified_bed_leveling::tilt_mesh_based_on_probed_grid(const bool do_3_pt_leveling) {
1387
-      constexpr int16_t x_min = _MAX(MIN_PROBE_X, MESH_MIN_X),
1388
-                        x_max = _MIN(MAX_PROBE_X, MESH_MAX_X),
1389
-                        y_min = _MAX(MIN_PROBE_Y, MESH_MIN_Y),
1390
-                        y_max = _MIN(MAX_PROBE_Y, MESH_MAX_Y);
1391
-
1392
-      bool abort_flag = false;
1387
+      const float x_min = probe_min_x(), x_max = probe_max_x(),
1388
+                  y_min = probe_min_y(), y_max = probe_max_y(),
1389
+                  dx = (x_max - x_min) / (g29_grid_size - 1),
1390
+                  dy = (y_max - y_min) / (g29_grid_size - 1);
1393 1391
 
1394 1392
       float measured_z;
1393
+      bool abort_flag = false;
1395 1394
 
1396
-      const float dx = float(x_max - x_min) / (g29_grid_size - 1),
1397
-                  dy = float(y_max - y_min) / (g29_grid_size - 1);
1395
+      //float z1, z2, z3;  // Needed for algorithm validation below
1398 1396
 
1399 1397
       struct linear_fit_data lsf_results;
1400
-
1401
-      //float z1, z2, z3;  // Needed for algorithm validation down below.
1402
-
1403 1398
       incremental_LSF_reset(&lsf_results);
1404 1399
 
1405 1400
       if (do_3_pt_leveling) {
@@ -1478,9 +1473,9 @@
1478 1473
         uint16_t total_points = g29_grid_size * g29_grid_size, point_num = 1;
1479 1474
 
1480 1475
         for (uint8_t ix = 0; ix < g29_grid_size; ix++) {
1481
-          const float rx = float(x_min) + ix * dx;
1476
+          const float rx = x_min + ix * dx;
1482 1477
           for (int8_t iy = 0; iy < g29_grid_size; iy++) {
1483
-            const float ry = float(y_min) + dy * (zig_zag ? g29_grid_size - 1 - iy : iy);
1478
+            const float ry = y_min + dy * (zig_zag ? g29_grid_size - 1 - iy : iy);
1484 1479
 
1485 1480
             if (!abort_flag) {
1486 1481
               SERIAL_ECHOLNPAIR("Tilting mesh point ", point_num, "/", total_points, "\n");
@@ -1505,7 +1500,7 @@
1505 1500
                 DEBUG_ECHOPAIR_F("   correction: ", get_z_correction(rx, ry), 7);
1506 1501
               }
1507 1502
 
1508
-              measured_z -= get_z_correction(rx, ry) /* + zprobe_zoffset */ ;
1503
+              measured_z -= get_z_correction(rx, ry) /* + zprobe_offset[Z_AXIS] */ ;
1509 1504
 
1510 1505
               if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR_F("   final >>>---> ", measured_z, 7);
1511 1506
 
@@ -1711,13 +1706,13 @@
1711 1706
       serial_delay(50);
1712 1707
 
1713 1708
       #if ENABLED(ENABLE_LEVELING_FADE_HEIGHT)
1714
-        SERIAL_ECHOLNPAIR_F("planner.z_fade_height : ", planner.z_fade_height, 4);
1709
+        SERIAL_ECHOLNPAIR_F("Fade Height M420 Z", planner.z_fade_height, 4);
1715 1710
       #endif
1716 1711
 
1717 1712
       adjust_mesh_to_mean(g29_c_flag, g29_constant);
1718 1713
 
1719 1714
       #if HAS_BED_PROBE
1720
-        SERIAL_ECHOLNPAIR_F("zprobe_zoffset: ", zprobe_zoffset, 7);
1715
+        SERIAL_ECHOLNPAIR_F("Probe Offset M851 Z", zprobe_offset[Z_AXIS], 7);
1721 1716
       #endif
1722 1717
 
1723 1718
       SERIAL_ECHOLNPAIR("MESH_MIN_X  " STRINGIFY(MESH_MIN_X) "=", MESH_MIN_X); serial_delay(50);

+ 6
- 4
Marlin/src/gcode/bedlevel/G42.cpp Bestand weergeven

@@ -47,10 +47,12 @@ void GcodeSuite::G42() {
47 47
     set_destination_from_current();
48 48
     if (hasI) destination[X_AXIS] = _GET_MESH_X(ix);
49 49
     if (hasJ) destination[Y_AXIS] = _GET_MESH_Y(iy);
50
-    if (parser.boolval('P')) {
51
-      if (hasI) destination[X_AXIS] -= X_PROBE_OFFSET_FROM_EXTRUDER;
52
-      if (hasJ) destination[Y_AXIS] -= Y_PROBE_OFFSET_FROM_EXTRUDER;
53
-    }
50
+    #if HAS_BED_PROBE
51
+      if (parser.boolval('P')) {
52
+        if (hasI) destination[X_AXIS] -= zprobe_offset[X_AXIS];
53
+        if (hasJ) destination[Y_AXIS] -= zprobe_offset[Y_AXIS];
54
+      }
55
+    #endif
54 56
 
55 57
     const float fval = parser.linearval('F');
56 58
     if (fval > 0.0) feedrate_mm_s = MMM_TO_MMS(fval);

+ 11
- 9
Marlin/src/gcode/bedlevel/M420.cpp Bestand weergeven

@@ -64,10 +64,12 @@ void GcodeSuite::M420() {
64 64
   #if ENABLED(MARLIN_DEV_MODE)
65 65
     if (parser.intval('S') == 2) {
66 66
       #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
67
-        bilinear_start[X_AXIS] = MIN_PROBE_X;
68
-        bilinear_start[Y_AXIS] = MIN_PROBE_Y;
69
-        bilinear_grid_spacing[X_AXIS] = (MAX_PROBE_X - (MIN_PROBE_X)) / (GRID_MAX_POINTS_X - 1);
70
-        bilinear_grid_spacing[Y_AXIS] = (MAX_PROBE_Y - (MIN_PROBE_Y)) / (GRID_MAX_POINTS_Y - 1);
67
+        const float x_min = probe_min_x(), x_max = probe_max_x(),
68
+                    y_min = probe_min_y(), y_max = probe_max_y();
69
+        bilinear_start[X_AXIS] = x_min;
70
+        bilinear_start[Y_AXIS] = y_min;
71
+        bilinear_grid_spacing[X_AXIS] = (x_max - x_min) / (GRID_MAX_POINTS_X - 1);
72
+        bilinear_grid_spacing[Y_AXIS] = (y_max - y_min) / (GRID_MAX_POINTS_Y - 1);
71 73
       #endif
72 74
       for (uint8_t x = 0; x < GRID_MAX_POINTS_X; x++)
73 75
         for (uint8_t y = 0; y < GRID_MAX_POINTS_Y; y++) {
@@ -76,11 +78,11 @@ void GcodeSuite::M420() {
76 78
             ExtUI::onMeshUpdate(x, y, Z_VALUES(x, y));
77 79
           #endif
78 80
         }
79
-      SERIAL_ECHOPGM("Simulated " STRINGIFY(GRID_MAX_POINTS_X) "x" STRINGIFY(GRID_MAX_POINTS_X) " mesh ");
80
-      SERIAL_ECHOPAIR(" (", MIN_PROBE_X);
81
-      SERIAL_CHAR(','); SERIAL_ECHO(MIN_PROBE_Y);
82
-      SERIAL_ECHOPAIR(")-(", MAX_PROBE_X);
83
-      SERIAL_CHAR(','); SERIAL_ECHO(MAX_PROBE_Y);
81
+      SERIAL_ECHOPGM("Simulated " STRINGIFY(GRID_MAX_POINTS_X) "x" STRINGIFY(GRID_MAX_POINTS_Y) " mesh ");
82
+      SERIAL_ECHOPAIR(" (", x_min);
83
+      SERIAL_CHAR(','); SERIAL_ECHO(y_min);
84
+      SERIAL_ECHOPAIR(")-(", x_max);
85
+      SERIAL_CHAR(','); SERIAL_ECHO(y_max);
84 86
       SERIAL_ECHOLNPGM(")");
85 87
     }
86 88
   #endif

+ 10
- 10
Marlin/src/gcode/bedlevel/abl/G29.cpp Bestand weergeven

@@ -393,16 +393,16 @@ G29_TYPE GcodeSuite::G29() {
393 393
 
394 394
       if (parser.seen('H')) {
395 395
         const int16_t size = (int16_t)parser.value_linear_units();
396
-        left_probe_bed_position  = _MAX(X_CENTER - size / 2, MIN_PROBE_X);
397
-        right_probe_bed_position = _MIN(left_probe_bed_position + size, MAX_PROBE_X);
398
-        front_probe_bed_position = _MAX(Y_CENTER - size / 2, MIN_PROBE_Y);
399
-        back_probe_bed_position  = _MIN(front_probe_bed_position + size, MAX_PROBE_Y);
396
+        left_probe_bed_position  = _MAX(X_CENTER - size / 2, probe_min_x());
397
+        right_probe_bed_position = _MIN(left_probe_bed_position + size, probe_max_x());
398
+        front_probe_bed_position = _MAX(Y_CENTER - size / 2, probe_min_y());
399
+        back_probe_bed_position  = _MIN(front_probe_bed_position + size, probe_max_y());
400 400
       }
401 401
       else {
402
-        left_probe_bed_position  = parser.seenval('L') ? (int)RAW_X_POSITION(parser.value_linear_units()) : LEFT_PROBE_BED_POSITION;
403
-        right_probe_bed_position = parser.seenval('R') ? (int)RAW_X_POSITION(parser.value_linear_units()) : RIGHT_PROBE_BED_POSITION;
404
-        front_probe_bed_position = parser.seenval('F') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : FRONT_PROBE_BED_POSITION;
405
-        back_probe_bed_position  = parser.seenval('B') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : BACK_PROBE_BED_POSITION;
402
+        left_probe_bed_position  = parser.seenval('L') ? (int)RAW_X_POSITION(parser.value_linear_units()) : _MAX(X_CENTER - X_BED_SIZE / 2, probe_min_x());
403
+        right_probe_bed_position = parser.seenval('R') ? (int)RAW_X_POSITION(parser.value_linear_units()) : _MIN(left_probe_bed_position + X_BED_SIZE, probe_max_x());
404
+        front_probe_bed_position = parser.seenval('F') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : _MAX(Y_CENTER - Y_BED_SIZE / 2, probe_min_y());
405
+        back_probe_bed_position  = parser.seenval('B') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : _MIN(front_probe_bed_position + Y_BED_SIZE, probe_max_y());
406 406
       }
407 407
 
408 408
       if (
@@ -947,8 +947,8 @@ G29_TYPE GcodeSuite::G29() {
947 947
         planner.leveling_active = false;
948 948
 
949 949
         // Use the last measured distance to the bed, if possible
950
-        if ( NEAR(current_position[X_AXIS], xProbe - (X_PROBE_OFFSET_FROM_EXTRUDER))
951
-          && NEAR(current_position[Y_AXIS], yProbe - (Y_PROBE_OFFSET_FROM_EXTRUDER))
950
+        if ( NEAR(current_position[X_AXIS], xProbe - zprobe_offset[X_AXIS])
951
+          && NEAR(current_position[Y_AXIS], yProbe - zprobe_offset[Y_AXIS])
952 952
         ) {
953 953
           const float simple_z = current_position[Z_AXIS] - measured_z;
954 954
           if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR("Probed Z", simple_z, "  Matrix Z", converted[Z_AXIS], "  Discrepancy ", simple_z - converted[Z_AXIS]);

+ 2
- 2
Marlin/src/gcode/calibrate/G28.cpp Bestand weergeven

@@ -136,8 +136,8 @@
136 136
     destination[Z_AXIS] = current_position[Z_AXIS]; // Z is already at the right height
137 137
 
138 138
     #if HOMING_Z_WITH_PROBE
139
-      destination[X_AXIS] -= X_PROBE_OFFSET_FROM_EXTRUDER;
140
-      destination[Y_AXIS] -= Y_PROBE_OFFSET_FROM_EXTRUDER;
139
+      destination[X_AXIS] -= zprobe_offset[X_AXIS];
140
+      destination[Y_AXIS] -= zprobe_offset[Y_AXIS];
141 141
     #endif
142 142
 
143 143
     if (position_is_reachable(destination[X_AXIS], destination[Y_AXIS])) {

+ 4
- 4
Marlin/src/gcode/calibrate/M48.cpp Bestand weergeven

@@ -77,8 +77,8 @@ void GcodeSuite::M48() {
77 77
   float X_current = current_position[X_AXIS],
78 78
         Y_current = current_position[Y_AXIS];
79 79
 
80
-  const float X_probe_location = parser.linearval('X', X_current + X_PROBE_OFFSET_FROM_EXTRUDER),
81
-              Y_probe_location = parser.linearval('Y', Y_current + Y_PROBE_OFFSET_FROM_EXTRUDER);
80
+  const float X_probe_location = parser.linearval('X', X_current + zprobe_offset[X_AXIS]),
81
+              Y_probe_location = parser.linearval('Y', Y_current + zprobe_offset[Y_AXIS]);
82 82
 
83 83
   if (!position_is_reachable_by_probe(X_probe_location, Y_probe_location)) {
84 84
     SERIAL_ECHOLNPGM("? (X,Y) out of bounds.");
@@ -165,8 +165,8 @@ void GcodeSuite::M48() {
165 165
           while (angle < 0.0) angle += 360.0;   // outside of this range.   It looks like they behave correctly with
166 166
                                                 // numbers outside of the range, but just to be safe we clamp them.
167 167
 
168
-          X_current = X_probe_location - (X_PROBE_OFFSET_FROM_EXTRUDER) + cos(RADIANS(angle)) * radius;
169
-          Y_current = Y_probe_location - (Y_PROBE_OFFSET_FROM_EXTRUDER) + sin(RADIANS(angle)) * radius;
168
+          X_current = X_probe_location - zprobe_offset[X_AXIS] + cos(RADIANS(angle)) * radius;
169
+          Y_current = Y_probe_location - zprobe_offset[Y_AXIS] + sin(RADIANS(angle)) * radius;
170 170
 
171 171
           #if DISABLED(DELTA)
172 172
             LIMIT(X_current, X_MIN_POS, X_MAX_POS);

+ 1
- 1
Marlin/src/gcode/gcode.h Bestand weergeven

@@ -229,7 +229,7 @@
229 229
  * M701 - Load filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
230 230
  * M702 - Unload filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
231 231
  * M810-M819 - Define/execute a G-code macro (Requires GCODE_MACROS)
232
- * M851 - Set Z probe's Z offset in current units. (Negative = below the nozzle.)
232
+ * M851 - Set Z probe's XYZ offsets in current units. (Negative values: X=left, Y=front, Z=below)
233 233
  * M852 - Set skew factors: "M852 [I<xy>] [J<xz>] [K<yz>]". (Requires SKEW_CORRECTION_GCODE, and SKEW_CORRECTION_FOR_Z for IJ)
234 234
  * M860 - Report the position of position encoder modules.
235 235
  * M861 - Report the status of position encoder modules.

+ 2
- 2
Marlin/src/gcode/motion/M290.cpp Bestand weergeven

@@ -42,9 +42,9 @@
42 42
         && active_extruder == 0
43 43
       #endif
44 44
     ) {
45
-      zprobe_zoffset += offs;
45
+      zprobe_offset[Z_AXIS] += offs;
46 46
       SERIAL_ECHO_START();
47
-      SERIAL_ECHOLNPAIR(MSG_PROBE_Z_OFFSET ": ", zprobe_zoffset);
47
+      SERIAL_ECHOLNPAIR(MSG_PROBE_OFFSET MSG_Z ": ", zprobe_offset[Z_AXIS]);
48 48
     }
49 49
     #if ENABLED(BABYSTEP_HOTEND_Z_OFFSET)
50 50
       else {

+ 2
- 2
Marlin/src/gcode/probe/G30.cpp Bestand weergeven

@@ -39,8 +39,8 @@
39 39
  *   E   Engage the probe for each probe (default 1)
40 40
  */
41 41
 void GcodeSuite::G30() {
42
-  const float xpos = parser.linearval('X', current_position[X_AXIS] + X_PROBE_OFFSET_FROM_EXTRUDER),
43
-              ypos = parser.linearval('Y', current_position[Y_AXIS] + Y_PROBE_OFFSET_FROM_EXTRUDER);
42
+  const float xpos = parser.linearval('X', current_position[X_AXIS] + zprobe_offset[X_AXIS]),
43
+              ypos = parser.linearval('Y', current_position[Y_AXIS] + zprobe_offset[Y_AXIS]);
44 44
 
45 45
   if (!position_is_reachable_by_probe(xpos, ypos)) return;
46 46
 

+ 34
- 8
Marlin/src/gcode/probe/M851.cpp Bestand weergeven

@@ -28,17 +28,43 @@
28 28
 #include "../../feature/bedlevel/bedlevel.h"
29 29
 #include "../../module/probe.h"
30 30
 
31
+/**
32
+ * M851: Set the nozzle-to-probe offsets in current units
33
+ */
31 34
 void GcodeSuite::M851() {
32
-  if (parser.seenval('Z')) {
33
-    const float value = parser.value_linear_units();
34
-    if (WITHIN(value, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX))
35
-      zprobe_zoffset = value;
36
-    else
37
-      SERIAL_ERROR_MSG("?Z out of range (" STRINGIFY(Z_PROBE_OFFSET_RANGE_MIN) " to " STRINGIFY(Z_PROBE_OFFSET_RANGE_MAX) ")");
35
+
36
+  // Show usage with no parameters
37
+  if (!parser.seen("XYZ")) {
38
+    SERIAL_ECHO_START();
39
+    SERIAL_ECHOLNPAIR(MSG_PROBE_OFFSET " X", zprobe_offset[X_AXIS],
40
+                                       " Y", zprobe_offset[Y_AXIS],
41
+                                       " Z", zprobe_offset[Z_AXIS]);
42
+    return;
43
+  }
44
+
45
+  // Get the modified offsets
46
+  const float offs[] = {
47
+    parser.floatval('X', zprobe_offset[X_AXIS]),
48
+    parser.floatval('Y', zprobe_offset[Y_AXIS]),
49
+    parser.floatval('Z', zprobe_offset[Z_AXIS])
50
+  };
51
+
52
+  // Error-check
53
+  if (!WITHIN(offs[X_AXIS], -(X_BED_SIZE), X_BED_SIZE)) {
54
+    SERIAL_ERROR_MSG("?X out of range (-" STRINGIFY(X_BED_SIZE) " to " STRINGIFY(X_BED_SIZE) ")");
55
+    return;
56
+  }
57
+  if (!WITHIN(offs[Y_AXIS], -(Y_BED_SIZE), Y_BED_SIZE)) {
58
+    SERIAL_ERROR_MSG("?Y out of range (-" STRINGIFY(Y_BED_SIZE) " to " STRINGIFY(Y_BED_SIZE) ")");
38 59
     return;
39 60
   }
40
-  SERIAL_ECHO_START();
41
-  SERIAL_ECHOLNPAIR(MSG_PROBE_Z_OFFSET ": ", zprobe_zoffset);
61
+  if (!WITHIN(offs[Z_AXIS], Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) {
62
+    SERIAL_ERROR_MSG("?Z out of range (" STRINGIFY(Z_PROBE_OFFSET_RANGE_MIN) " to " STRINGIFY(Z_PROBE_OFFSET_RANGE_MAX) ")");
63
+    return;
64
+  }
65
+
66
+  // Save the new offsets
67
+  LOOP_XYZ(a) zprobe_offset[a] = offs[a];
42 68
 }
43 69
 
44 70
 #endif // HAS_BED_PROBE

+ 32
- 63
Marlin/src/inc/Conditionals_post.h Bestand weergeven

@@ -1348,12 +1348,7 @@
1348 1348
     #endif
1349 1349
   #endif
1350 1350
 #else
1351
-  #undef X_PROBE_OFFSET_FROM_EXTRUDER
1352
-  #undef Y_PROBE_OFFSET_FROM_EXTRUDER
1353
-  #undef Z_PROBE_OFFSET_FROM_EXTRUDER
1354
-  #define X_PROBE_OFFSET_FROM_EXTRUDER 0
1355
-  #define Y_PROBE_OFFSET_FROM_EXTRUDER 0
1356
-  #define Z_PROBE_OFFSET_FROM_EXTRUDER 0
1351
+  #undef NOZZLE_TO_PROBE_OFFSET
1357 1352
 #endif
1358 1353
 
1359 1354
 /**
@@ -1446,10 +1441,13 @@
1446 1441
  * Bed Probing rectangular bounds
1447 1442
  * These can be further constrained in code for Delta and SCARA
1448 1443
  */
1449
-
1450 1444
 #ifndef MIN_PROBE_EDGE
1451 1445
   #define MIN_PROBE_EDGE 0
1452 1446
 #endif
1447
+#ifndef NOZZLE_TO_PROBE_OFFSET
1448
+  #define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
1449
+#endif
1450
+constexpr float nozzle_to_probe_offset[XYZ] = NOZZLE_TO_PROBE_OFFSET;
1453 1451
 
1454 1452
 #if ENABLED(DELTA)
1455 1453
   /**
@@ -1457,8 +1455,8 @@
1457 1455
    */
1458 1456
   #define _PROBE_RADIUS (DELTA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1459 1457
   #ifndef DELTA_CALIBRATION_RADIUS
1460
-    #ifdef X_PROBE_OFFSET_FROM_EXTRUDER
1461
-      #define DELTA_CALIBRATION_RADIUS (DELTA_PRINTABLE_RADIUS - _MAX(ABS(X_PROBE_OFFSET_FROM_EXTRUDER), ABS(Y_PROBE_OFFSET_FROM_EXTRUDER), ABS(MIN_PROBE_EDGE)))
1458
+    #ifdef NOZZLE_TO_PROBE_OFFSET
1459
+      #define DELTA_CALIBRATION_RADIUS (DELTA_PRINTABLE_RADIUS - _MAX(ABS(nozzle_to_probe_offset[X_AXIS]), ABS(nozzle_to_probe_offset[Y_AXIS]), ABS(MIN_PROBE_EDGE)))
1462 1460
     #else
1463 1461
       #define DELTA_CALIBRATION_RADIUS _PROBE_RADIUS
1464 1462
     #endif
@@ -1467,39 +1465,39 @@
1467 1465
     #define DELTA_ENDSTOP_ADJ { 0, 0, 0 }
1468 1466
   #endif
1469 1467
   #ifndef DELTA_TOWER_ANGLE_TRIM
1470
-    #define DELTA_TOWER_ANGLE_TRIM {0, 0, 0}
1468
+    #define DELTA_TOWER_ANGLE_TRIM { 0, 0, 0 }
1471 1469
   #endif
1472 1470
   #ifndef DELTA_RADIUS_TRIM_TOWER
1473
-    #define DELTA_RADIUS_TRIM_TOWER {0, 0, 0}
1471
+    #define DELTA_RADIUS_TRIM_TOWER { 0, 0, 0 }
1474 1472
   #endif
1475 1473
   #ifndef DELTA_DIAGONAL_ROD_TRIM_TOWER
1476
-    #define DELTA_DIAGONAL_ROD_TRIM_TOWER {0, 0, 0}
1474
+    #define DELTA_DIAGONAL_ROD_TRIM_TOWER { 0, 0, 0 }
1477 1475
   #endif
1478 1476
 
1479 1477
   // Probing points may be verified at compile time within the radius
1480 1478
   // using static_assert(HYPOT2(X2-X1,Y2-Y1)<=sq(DELTA_PRINTABLE_RADIUS),"bad probe point!")
1481 1479
   // so that may be added to SanityCheck.h in the future.
1482
-  #define _MIN_PROBE_X (X_CENTER - (_PROBE_RADIUS))
1483
-  #define _MIN_PROBE_Y (Y_CENTER - (_PROBE_RADIUS))
1484
-  #define _MAX_PROBE_X (X_CENTER + _PROBE_RADIUS)
1485
-  #define _MAX_PROBE_Y (Y_CENTER + _PROBE_RADIUS)
1480
+  #define PROBE_X_MIN (X_CENTER - (_PROBE_RADIUS))
1481
+  #define PROBE_Y_MIN (Y_CENTER - (_PROBE_RADIUS))
1482
+  #define PROBE_X_MAX (X_CENTER + _PROBE_RADIUS)
1483
+  #define PROBE_Y_MAX (Y_CENTER + _PROBE_RADIUS)
1486 1484
 
1487 1485
 #elif IS_SCARA
1488 1486
 
1489 1487
   #define SCARA_PRINTABLE_RADIUS (SCARA_LINKAGE_1 + SCARA_LINKAGE_2)
1490 1488
   #define _PROBE_RADIUS (SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1491
-  #define _MIN_PROBE_X (X_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE)
1492
-  #define _MIN_PROBE_Y (Y_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE)
1493
-  #define _MAX_PROBE_X (X_CENTER +  SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1494
-  #define _MAX_PROBE_Y (Y_CENTER +  SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1489
+  #define PROBE_X_MIN (X_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE)
1490
+  #define PROBE_Y_MIN (Y_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE)
1491
+  #define PROBE_X_MAX (X_CENTER +  SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1492
+  #define PROBE_Y_MAX (Y_CENTER +  SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE))
1495 1493
 
1496 1494
 #else
1497 1495
 
1498 1496
   // Boundaries for Cartesian probing based on bed limits
1499
-  #define _MIN_PROBE_X (_MAX(X_MIN_BED + MIN_PROBE_EDGE, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
1500
-  #define _MIN_PROBE_Y (_MAX(Y_MIN_BED + MIN_PROBE_EDGE, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
1501
-  #define _MAX_PROBE_X (_MIN(X_MAX_BED - (MIN_PROBE_EDGE), X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
1502
-  #define _MAX_PROBE_Y (_MIN(Y_MAX_BED - (MIN_PROBE_EDGE), Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
1497
+  #define PROBE_X_MIN (_MAX(X_MIN_BED + MIN_PROBE_EDGE, X_MIN_POS + nozzle_to_probe_offset[X_AXIS]))
1498
+  #define PROBE_Y_MIN (_MAX(Y_MIN_BED + MIN_PROBE_EDGE, Y_MIN_POS + nozzle_to_probe_offset[Y_AXIS]))
1499
+  #define PROBE_X_MAX (_MIN(X_MAX_BED - (MIN_PROBE_EDGE), X_MAX_POS + nozzle_to_probe_offset[X_AXIS]))
1500
+  #define PROBE_Y_MAX (_MIN(Y_MAX_BED - (MIN_PROBE_EDGE), Y_MAX_POS + nozzle_to_probe_offset[Y_AXIS]))
1503 1501
 
1504 1502
 #endif
1505 1503
 
@@ -1507,20 +1505,6 @@
1507 1505
   #define LEVELED_SEGMENT_LENGTH 5
1508 1506
 #endif
1509 1507
 
1510
-// These may be overridden in Configuration.h if a smaller area is desired
1511
-#ifndef MIN_PROBE_X
1512
-  #define MIN_PROBE_X _MIN_PROBE_X
1513
-#endif
1514
-#ifndef MIN_PROBE_Y
1515
-  #define MIN_PROBE_Y _MIN_PROBE_Y
1516
-#endif
1517
-#ifndef MAX_PROBE_X
1518
-  #define MAX_PROBE_X _MAX_PROBE_X
1519
-#endif
1520
-#ifndef MAX_PROBE_Y
1521
-  #define MAX_PROBE_Y _MAX_PROBE_Y
1522
-#endif
1523
-
1524 1508
 /**
1525 1509
  * Default mesh area is an area with an inset margin on the print area.
1526 1510
  */
@@ -1537,14 +1521,14 @@
1537 1521
     // Boundaries for Cartesian probing based on set limits
1538 1522
     #if ENABLED(AUTO_BED_LEVELING_UBL)
1539 1523
       #define _MESH_MIN_X (_MAX(X_MIN_BED + MESH_INSET, X_MIN_POS))  // UBL is careful not to probe off the bed.  It does not
1540
-      #define _MESH_MIN_Y (_MAX(Y_MIN_BED + MESH_INSET, Y_MIN_POS))  // need *_PROBE_OFFSET_FROM_EXTRUDER in the mesh dimensions
1524
+      #define _MESH_MIN_Y (_MAX(Y_MIN_BED + MESH_INSET, Y_MIN_POS))  // need NOZZLE_TO_PROBE_OFFSET in the mesh dimensions
1541 1525
       #define _MESH_MAX_X (_MIN(X_MAX_BED - (MESH_INSET), X_MAX_POS))
1542 1526
       #define _MESH_MAX_Y (_MIN(Y_MAX_BED - (MESH_INSET), Y_MAX_POS))
1543 1527
     #else
1544
-      #define _MESH_MIN_X (_MAX(X_MIN_BED + MESH_INSET, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
1545
-      #define _MESH_MIN_Y (_MAX(Y_MIN_BED + MESH_INSET, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
1546
-      #define _MESH_MAX_X (_MIN(X_MAX_BED - (MESH_INSET), X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
1547
-      #define _MESH_MAX_Y (_MIN(Y_MAX_BED - (MESH_INSET), Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
1528
+      #define _MESH_MIN_X (_MAX(X_MIN_BED + MESH_INSET, X_MIN_POS + nozzle_to_probe_offset[X_AXIS]))
1529
+      #define _MESH_MIN_Y (_MAX(Y_MIN_BED + MESH_INSET, Y_MIN_POS + nozzle_to_probe_offset[Y_AXIS]))
1530
+      #define _MESH_MAX_X (_MIN(X_MAX_BED - (MESH_INSET), X_MAX_POS + nozzle_to_probe_offset[X_AXIS]))
1531
+      #define _MESH_MAX_Y (_MIN(Y_MAX_BED - (MESH_INSET), Y_MAX_POS + nozzle_to_probe_offset[Y_AXIS]))
1548 1532
     #endif
1549 1533
   #endif
1550 1534
 
@@ -1592,41 +1576,26 @@
1592 1576
     #endif
1593 1577
   #else
1594 1578
     #ifndef PROBE_PT_1_X
1595
-      #define PROBE_PT_1_X MIN_PROBE_X
1579
+      #define PROBE_PT_1_X PROBE_X_MIN
1596 1580
     #endif
1597 1581
     #ifndef PROBE_PT_1_Y
1598
-      #define PROBE_PT_1_Y MIN_PROBE_Y
1582
+      #define PROBE_PT_1_Y PROBE_Y_MIN
1599 1583
     #endif
1600 1584
     #ifndef PROBE_PT_2_X
1601
-      #define PROBE_PT_2_X MAX_PROBE_X
1585
+      #define PROBE_PT_2_X PROBE_X_MAX
1602 1586
     #endif
1603 1587
     #ifndef PROBE_PT_2_Y
1604
-      #define PROBE_PT_2_Y MIN_PROBE_Y
1588
+      #define PROBE_PT_2_Y PROBE_Y_MIN
1605 1589
     #endif
1606 1590
     #ifndef PROBE_PT_3_X
1607 1591
       #define PROBE_PT_3_X X_CENTER
1608 1592
     #endif
1609 1593
     #ifndef PROBE_PT_3_Y
1610
-      #define PROBE_PT_3_Y MAX_PROBE_Y
1594
+      #define PROBE_PT_3_Y PROBE_Y_MAX
1611 1595
     #endif
1612 1596
   #endif
1613 1597
 #endif
1614 1598
 
1615
-#if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR)
1616
-  #ifndef LEFT_PROBE_BED_POSITION
1617
-    #define LEFT_PROBE_BED_POSITION MIN_PROBE_X
1618
-  #endif
1619
-  #ifndef RIGHT_PROBE_BED_POSITION
1620
-    #define RIGHT_PROBE_BED_POSITION MAX_PROBE_X
1621
-  #endif
1622
-  #ifndef FRONT_PROBE_BED_POSITION
1623
-    #define FRONT_PROBE_BED_POSITION MIN_PROBE_Y
1624
-  #endif
1625
-  #ifndef BACK_PROBE_BED_POSITION
1626
-    #define BACK_PROBE_BED_POSITION MAX_PROBE_Y
1627
-  #endif
1628
-#endif
1629
-
1630 1599
 /**
1631 1600
  * Buzzer/Speaker
1632 1601
  */

+ 21
- 27
Marlin/src/inc/SanityCheck.h Bestand weergeven

@@ -390,6 +390,10 @@
390 390
   #error "STRING_SPLASH_LINE[12] are now obsolete. Please remove them from Configuration.h."
391 391
 #elif defined(Z_PROBE_ALLEN_KEY_DEPLOY_1_X) || defined(Z_PROBE_ALLEN_KEY_STOW_1_X)
392 392
   #error "Z_PROBE_ALLEN_KEY_(DEPLOY|STOW) coordinates are now a single setting. Please update your configuration."
393
+#elif defined(X_PROBE_OFFSET_FROM_EXTRUDER) || defined(Y_PROBE_OFFSET_FROM_EXTRUDER) || defined(Z_PROBE_OFFSET_FROM_EXTRUDER)
394
+  #error "[XYZ]_PROBE_OFFSET_FROM_EXTRUDER is now NOZZLE_TO_PROBE_OFFSET. Please update your configuration."
395
+#elif defined(MIN_PROBE_X) || defined(MIN_PROBE_Y) || defined(MAX_PROBE_X) || defined(MAX_PROBE_Y)
396
+  #error "(MIN|MAX)_PROBE_[XY] are now calculated at runtime. Please remove them from Configuration.h."
393 397
 #endif
394 398
 
395 399
 #define BOARD_MKS_13        -1000
@@ -1051,9 +1055,6 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
1051 1055
 
1052 1056
 #if HAS_BED_PROBE
1053 1057
 
1054
-  static_assert(FLOOR(float(X_PROBE_OFFSET_FROM_EXTRUDER)) == float(X_PROBE_OFFSET_FROM_EXTRUDER), "X_PROBE_OFFSET_FROM_EXTRUDER must be an integer!");
1055
-  static_assert(FLOOR(float(Y_PROBE_OFFSET_FROM_EXTRUDER)) == float(Y_PROBE_OFFSET_FROM_EXTRUDER), "Y_PROBE_OFFSET_FROM_EXTRUDER must be an integer!");
1056
-
1057 1058
   /**
1058 1059
    * Z_PROBE_SLED is incompatible with DELTA
1059 1060
    */
@@ -1205,14 +1206,18 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
1205 1206
  * Bed Leveling Requirements
1206 1207
  */
1207 1208
 
1208
-#if EITHER(AUTO_BED_LEVELING_UBL, AUTO_BED_LEVELING_3POINT)
1209
-  static_assert(WITHIN(PROBE_PT_1_X, MIN_PROBE_X, MAX_PROBE_X), "PROBE_PT_1_X is outside the probe region.");
1210
-  static_assert(WITHIN(PROBE_PT_2_X, MIN_PROBE_X, MAX_PROBE_X), "PROBE_PT_2_X is outside the probe region.");
1211
-  static_assert(WITHIN(PROBE_PT_3_X, MIN_PROBE_X, MAX_PROBE_X), "PROBE_PT_3_X is outside the probe region.");
1212
-  static_assert(WITHIN(PROBE_PT_1_Y, MIN_PROBE_Y, MAX_PROBE_Y), "PROBE_PT_1_Y is outside the probe region.");
1213
-  static_assert(WITHIN(PROBE_PT_2_Y, MIN_PROBE_Y, MAX_PROBE_Y), "PROBE_PT_2_Y is outside the probe region.");
1214
-  static_assert(WITHIN(PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "PROBE_PT_3_Y is outside the probe region.");
1215
-#endif
1209
+//
1210
+// !! TODO: REPLACE WITH TESTS IN THE 3-POINT LEVELING CODE !!
1211
+//
1212
+
1213
+//#if EITHER(AUTO_BED_LEVELING_UBL, AUTO_BED_LEVELING_3POINT)
1214
+//  static_assert(WITHIN(PROBE_PT_1_X, PROBE_X_MIN, PROBE_X_MAX), "PROBE_PT_1_X is outside the probe region.");
1215
+//  static_assert(WITHIN(PROBE_PT_2_X, PROBE_X_MIN, PROBE_X_MAX), "PROBE_PT_2_X is outside the probe region.");
1216
+//  static_assert(WITHIN(PROBE_PT_3_X, PROBE_X_MIN, PROBE_X_MAX), "PROBE_PT_3_X is outside the probe region.");
1217
+//  static_assert(WITHIN(PROBE_PT_1_Y, PROBE_Y_MIN, PROBE_Y_MAX), "PROBE_PT_1_Y is outside the probe region.");
1218
+//  static_assert(WITHIN(PROBE_PT_2_Y, PROBE_Y_MIN, PROBE_Y_MAX), "PROBE_PT_2_Y is outside the probe region.");
1219
+//  static_assert(WITHIN(PROBE_PT_3_Y, PROBE_Y_MIN, PROBE_Y_MAX), "PROBE_PT_3_Y is outside the probe region.");
1220
+//#endif
1216 1221
 
1217 1222
 #if ENABLED(AUTO_BED_LEVELING_UBL)
1218 1223
 
@@ -1246,20 +1251,6 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
1246 1251
     #error "SCARA machines can only use the AUTO_BED_LEVELING_BILINEAR leveling option."
1247 1252
   #endif
1248 1253
 
1249
-  /**
1250
-   * Check auto bed leveling probe points
1251
-   */
1252
-  #if ABL_GRID
1253
-
1254
-    static_assert(LEFT_PROBE_BED_POSITION < RIGHT_PROBE_BED_POSITION, "LEFT_PROBE_BED_POSITION must be less than RIGHT_PROBE_BED_POSITION.");
1255
-    static_assert(FRONT_PROBE_BED_POSITION < BACK_PROBE_BED_POSITION, "FRONT_PROBE_BED_POSITION must be less than BACK_PROBE_BED_POSITION.");
1256
-    static_assert(LEFT_PROBE_BED_POSITION >= MIN_PROBE_X, "LEFT_PROBE_BED_POSITION is outside the probe region.");
1257
-    static_assert(RIGHT_PROBE_BED_POSITION <= MAX_PROBE_X, "RIGHT_PROBE_BED_POSITION is outside the probe region.");
1258
-    static_assert(FRONT_PROBE_BED_POSITION >= MIN_PROBE_Y, "FRONT_PROBE_BED_POSITION is outside the probe region.");
1259
-    static_assert(BACK_PROBE_BED_POSITION <= MAX_PROBE_Y, "BACK_PROBE_BED_POSITION is outside the probe region.");
1260
-
1261
-  #endif
1262
-
1263 1254
 #elif ENABLED(MESH_BED_LEVELING)
1264 1255
 
1265 1256
   // Hide PROBE_MANUALLY from the rest of the code
@@ -1328,8 +1319,11 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
1328 1319
  */
1329 1320
 #if ENABLED(Z_SAFE_HOMING)
1330 1321
   #if HAS_BED_PROBE
1331
-    static_assert(WITHIN(Z_SAFE_HOMING_X_POINT, MIN_PROBE_X, MAX_PROBE_X), "Z_SAFE_HOMING_X_POINT is outside the probe region.");
1332
-    static_assert(WITHIN(Z_SAFE_HOMING_Y_POINT, MIN_PROBE_Y, MAX_PROBE_Y), "Z_SAFE_HOMING_Y_POINT is outside the probe region.");
1322
+    //
1323
+    // !! TODO: REPLACE WITH TESTS IN THE Z_SAFE_HOMING CODE !!
1324
+    //
1325
+    //static_assert(WITHIN(Z_SAFE_HOMING_X_POINT, PROBE_X_MIN, PROBE_X_MAX), "Z_SAFE_HOMING_X_POINT is outside the probe region.");
1326
+    //static_assert(WITHIN(Z_SAFE_HOMING_Y_POINT, PROBE_Y_MIN, PROBE_Y_MAX), "Z_SAFE_HOMING_Y_POINT is outside the probe region.");
1333 1327
   #else
1334 1328
     static_assert(WITHIN(Z_SAFE_HOMING_X_POINT, X_MIN_POS, X_MAX_POS), "Z_SAFE_HOMING_X_POINT can't be reached by the nozzle.");
1335 1329
     static_assert(WITHIN(Z_SAFE_HOMING_Y_POINT, Y_MIN_POS, Y_MAX_POS), "Z_SAFE_HOMING_Y_POINT can't be reached by the nozzle.");

+ 3
- 3
Marlin/src/lcd/extensible_ui/ui_api.cpp Bestand weergeven

@@ -708,7 +708,7 @@ namespace ExtUI {
708 708
           #if EXTRUDERS > 1
709 709
             && (linked_nozzles || active_extruder == 0)
710 710
           #endif
711
-        ) zprobe_zoffset += mm;
711
+        ) zprobe_offset[Z_AXIS] += mm;
712 712
       #else
713 713
         UNUSED(mm);
714 714
       #endif
@@ -746,7 +746,7 @@ namespace ExtUI {
746 746
 
747 747
   float getZOffset_mm() {
748 748
     #if HAS_BED_PROBE
749
-      return zprobe_zoffset;
749
+      return zprobe_offset[Z_AXIS];
750 750
     #elif ENABLED(BABYSTEP_DISPLAY_TOTAL)
751 751
       return babystep.axis_total[BS_TOTAL_AXIS(Z_AXIS) + 1];
752 752
     #else
@@ -757,7 +757,7 @@ namespace ExtUI {
757 757
   void setZOffset_mm(const float value) {
758 758
     #if HAS_BED_PROBE
759 759
       if (WITHIN(value, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX))
760
-        zprobe_zoffset = value;
760
+        zprobe_offset[Z_AXIS] = value;
761 761
     #elif ENABLED(BABYSTEP_DISPLAY_TOTAL)
762 762
       babystep.add_mm(Z_AXIS, (value - babystep.axis_total[BS_TOTAL_AXIS(Z_AXIS) + 1]));
763 763
     #else

+ 4
- 4
Marlin/src/lcd/menu/menu.cpp Bestand weergeven

@@ -402,7 +402,7 @@ void scroll_screen(const uint8_t limit, const bool is_menu) {
402 402
       ui.encoderPosition = 0;
403 403
 
404 404
       const float diff = planner.steps_to_mm[Z_AXIS] * babystep_increment,
405
-                  new_probe_offset = zprobe_zoffset + diff,
405
+                  new_probe_offset = zprobe_offset[Z_AXIS] + diff,
406 406
                   new_offs =
407 407
                     #if ENABLED(BABYSTEP_HOTEND_Z_OFFSET)
408 408
                       do_probe ? new_probe_offset : hotend_offset[Z_AXIS][active_extruder] - diff
@@ -414,7 +414,7 @@ void scroll_screen(const uint8_t limit, const bool is_menu) {
414 414
 
415 415
         babystep.add_steps(Z_AXIS, babystep_increment);
416 416
 
417
-        if (do_probe) zprobe_zoffset = new_offs;
417
+        if (do_probe) zprobe_offset[Z_AXIS] = new_offs;
418 418
         #if ENABLED(BABYSTEP_HOTEND_Z_OFFSET)
419 419
           else hotend_offset[Z_AXIS][active_extruder] = new_offs;
420 420
         #endif
@@ -428,10 +428,10 @@ void scroll_screen(const uint8_t limit, const bool is_menu) {
428 428
           draw_edit_screen(PSTR(MSG_Z_OFFSET), ftostr43sign(hotend_offset[Z_AXIS][active_extruder]));
429 429
         else
430 430
       #endif
431
-          draw_edit_screen(PSTR(MSG_ZPROBE_ZOFFSET), ftostr43sign(zprobe_zoffset));
431
+          draw_edit_screen(PSTR(MSG_ZPROBE_ZOFFSET), ftostr43sign(zprobe_offset[Z_AXIS]));
432 432
 
433 433
       #if ENABLED(BABYSTEP_ZPROBE_GFX_OVERLAY)
434
-        if (do_probe) _lcd_zoffset_overlay_gfx(zprobe_zoffset);
434
+        if (do_probe) _lcd_zoffset_overlay_gfx(zprobe_offset[Z_AXIS]);
435 435
       #endif
436 436
     }
437 437
   }

+ 2
- 2
Marlin/src/lcd/menu/menu_bed_corners.cpp Bestand weergeven

@@ -62,10 +62,10 @@ static inline void _lcd_goto_next_corner() {
62 62
       current_position[Y_AXIS] = Y_MIN_BED + LEVEL_CORNERS_INSET;
63 63
       break;
64 64
     case 1:
65
-      current_position[X_AXIS] = X_MAX_BED - LEVEL_CORNERS_INSET;
65
+      current_position[X_AXIS] = X_MAX_BED - (LEVEL_CORNERS_INSET);
66 66
       break;
67 67
     case 2:
68
-      current_position[Y_AXIS] = Y_MAX_BED - LEVEL_CORNERS_INSET;
68
+      current_position[Y_AXIS] = Y_MAX_BED - (LEVEL_CORNERS_INSET);
69 69
       break;
70 70
     case 3:
71 71
       current_position[X_AXIS] = X_MIN_BED + LEVEL_CORNERS_INSET;

+ 1
- 1
Marlin/src/lcd/menu/menu_bed_leveling.cpp Bestand weergeven

@@ -279,7 +279,7 @@ void menu_bed_leveling() {
279 279
   #if ENABLED(BABYSTEP_ZPROBE_OFFSET)
280 280
     MENU_ITEM(submenu, MSG_ZPROBE_ZOFFSET, lcd_babystep_zoffset);
281 281
   #elif HAS_BED_PROBE
282
-    MENU_ITEM_EDIT(float52, MSG_ZPROBE_ZOFFSET, &zprobe_zoffset, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX);
282
+    MENU_ITEM_EDIT(float52, MSG_ZPROBE_ZOFFSET, &zprobe_offset[Z_AXIS], Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX);
283 283
   #endif
284 284
 
285 285
   #if ENABLED(LEVEL_BED_CORNERS)

+ 1
- 1
Marlin/src/lcd/menu/menu_configuration.cpp Bestand weergeven

@@ -347,7 +347,7 @@ void menu_configuration() {
347 347
   #if ENABLED(BABYSTEP_ZPROBE_OFFSET)
348 348
     MENU_ITEM(submenu, MSG_ZPROBE_ZOFFSET, lcd_babystep_zoffset);
349 349
   #elif HAS_BED_PROBE
350
-    MENU_ITEM_EDIT(float52, MSG_ZPROBE_ZOFFSET, &zprobe_zoffset, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX);
350
+    MENU_ITEM_EDIT(float52, MSG_ZPROBE_ZOFFSET, &zprobe_offset[Z_AXIS], Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX);
351 351
   #endif
352 352
 
353 353
   const bool busy = printer_busy();

+ 21
- 18
Marlin/src/module/configuration_store.cpp Bestand weergeven

@@ -37,7 +37,7 @@
37 37
  */
38 38
 
39 39
 // Change EEPROM version if the structure changes
40
-#define EEPROM_VERSION "V69"
40
+#define EEPROM_VERSION "V70"
41 41
 #define EEPROM_OFFSET 100
42 42
 
43 43
 // Check the integrity of data offsets.
@@ -60,6 +60,8 @@
60 60
   #include "../HAL/shared/persistent_store_api.h"
61 61
 #endif
62 62
 
63
+#include "probe.h"
64
+
63 65
 #if HAS_LEVELING
64 66
   #include "../feature/bedlevel/bedlevel.h"
65 67
 #endif
@@ -78,10 +80,6 @@
78 80
   #define EEPROM_NUM_SERVOS NUM_SERVO_PLUGS
79 81
 #endif
80 82
 
81
-#if HAS_BED_PROBE
82
-  #include "probe.h"
83
-#endif
84
-
85 83
 #include "../feature/fwretract.h"
86 84
 
87 85
 #if ENABLED(POWER_LOSS_RECOVERY)
@@ -178,7 +176,7 @@ typedef struct SettingsDataStruct {
178 176
   // HAS_BED_PROBE
179 177
   //
180 178
 
181
-  float zprobe_zoffset;
179
+  float zprobe_offset[XYZ];
182 180
 
183 181
   //
184 182
   // ABL_PLANAR
@@ -615,12 +613,8 @@ void MarlinSettings::postprocess() {
615 613
     // Probe Z Offset
616 614
     //
617 615
     {
618
-      _FIELD_TEST(zprobe_zoffset);
619
-
620
-      #if !HAS_BED_PROBE
621
-        const float zprobe_zoffset = 0;
622
-      #endif
623
-      EEPROM_WRITE(zprobe_zoffset);
616
+      _FIELD_TEST(zprobe_offset[Z_AXIS]);
617
+      EEPROM_WRITE(zprobe_offset);
624 618
     }
625 619
 
626 620
     //
@@ -1421,12 +1415,14 @@ void MarlinSettings::postprocess() {
1421 1415
       // Probe Z Offset
1422 1416
       //
1423 1417
       {
1424
-        _FIELD_TEST(zprobe_zoffset);
1418
+        _FIELD_TEST(zprobe_offset[Z_AXIS]);
1425 1419
 
1426
-        #if !HAS_BED_PROBE
1427
-          float zprobe_zoffset;
1420
+        #if HAS_BED_PROBE
1421
+          float (&zpo)[XYZ] = zprobe_offset;
1422
+        #else
1423
+          float zpo[XYZ];
1428 1424
         #endif
1429
-        EEPROM_READ(zprobe_zoffset);
1425
+        EEPROM_READ(zpo);
1430 1426
       }
1431 1427
 
1432 1428
       //
@@ -2321,7 +2317,12 @@ void MarlinSettings::reset() {
2321 2317
   #endif
2322 2318
 
2323 2319
   #if HAS_BED_PROBE
2324
-    zprobe_zoffset = Z_PROBE_OFFSET_FROM_EXTRUDER;
2320
+    #ifndef NOZZLE_TO_PROBE_OFFSET
2321
+      #define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
2322
+    #endif
2323
+    constexpr float dpo[XYZ] = NOZZLE_TO_PROBE_OFFSET;
2324
+    static_assert(COUNT(dpo) == 3, "NOZZLE_TO_PROBE_OFFSET must contain offsets for X, Y, and Z.");
2325
+    LOOP_XYZ(a) zprobe_offset[a] = dpo[a];
2325 2326
   #endif
2326 2327
 
2327 2328
   //
@@ -3070,7 +3071,9 @@ void MarlinSettings::reset() {
3070 3071
         say_units(true);
3071 3072
       }
3072 3073
       CONFIG_ECHO_START();
3073
-      SERIAL_ECHOLNPAIR("  M851 Z", LINEAR_UNIT(zprobe_zoffset));
3074
+      SERIAL_ECHOLNPAIR("  M851 X", LINEAR_UNIT(zprobe_offset[X_AXIS]),
3075
+                              " Y", LINEAR_UNIT(zprobe_offset[Y_AXIS]),
3076
+                              " Z", LINEAR_UNIT(zprobe_offset[Z_AXIS]));
3074 3077
     #endif
3075 3078
 
3076 3079
     /**

+ 1
- 1
Marlin/src/module/delta.cpp Bestand weergeven

@@ -233,7 +233,7 @@ void home_delta() {
233 233
   // Move all carriages together linearly until an endstop is hit.
234 234
   destination[Z_AXIS] = (delta_height
235 235
     #if HAS_BED_PROBE
236
-      - zprobe_zoffset
236
+      - zprobe_offset[Z_AXIS]
237 237
     #endif
238 238
     + 10);
239 239
   buffer_line_to_destination(homing_feedrate(X_AXIS));

+ 4
- 4
Marlin/src/module/motion.cpp Bestand weergeven

@@ -505,7 +505,7 @@ void restore_feedrate_and_scaling() {
505 505
       soft_endstop[axis].min = base_min_pos(axis);
506 506
       soft_endstop[axis].max = (axis == Z_AXIS ? delta_height
507 507
       #if HAS_BED_PROBE
508
-        - zprobe_zoffset
508
+        - zprobe_offset[Z_AXIS]
509 509
       #endif
510 510
       : base_max_pos(axis));
511 511
 
@@ -1340,7 +1340,7 @@ void set_axis_is_at_home(const AxisEnum axis) {
1340 1340
   #elif ENABLED(DELTA)
1341 1341
     current_position[axis] = (axis == Z_AXIS ? delta_height
1342 1342
     #if HAS_BED_PROBE
1343
-      - zprobe_zoffset
1343
+      - zprobe_offset[Z_AXIS]
1344 1344
     #endif
1345 1345
     : base_home_pos(axis));
1346 1346
   #else
@@ -1354,9 +1354,9 @@ void set_axis_is_at_home(const AxisEnum axis) {
1354 1354
     if (axis == Z_AXIS) {
1355 1355
       #if HOMING_Z_WITH_PROBE
1356 1356
 
1357
-        current_position[Z_AXIS] -= zprobe_zoffset;
1357
+        current_position[Z_AXIS] -= zprobe_offset[Z_AXIS];
1358 1358
 
1359
-        if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR("*** Z HOMED WITH PROBE (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) ***\n> zprobe_zoffset = ", zprobe_zoffset);
1359
+        if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR("*** Z HOMED WITH PROBE (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) ***\n> zprobe_offset[Z_AXIS] = ", zprobe_offset[Z_AXIS]);
1360 1360
 
1361 1361
       #else
1362 1362
 

+ 8
- 8
Marlin/src/module/motion.h Bestand weergeven

@@ -30,14 +30,14 @@
30 30
 
31 31
 #include "../inc/MarlinConfig.h"
32 32
 
33
-#if IS_SCARA
34
-  #include "scara.h"
35
-#endif
36
-
37 33
 #if HAS_BED_PROBE
38 34
   #include "probe.h"
39 35
 #endif
40 36
 
37
+#if IS_SCARA
38
+  #include "scara.h"
39
+#endif
40
+
41 41
 // Axis homed and known-position states
42 42
 extern uint8_t axis_homed, axis_known_position;
43 43
 constexpr uint8_t xyz_bits = _BV(X_AXIS) | _BV(Y_AXIS) | _BV(Z_AXIS);
@@ -284,7 +284,7 @@ void homeaxis(const AxisEnum axis);
284 284
     // Return true if the both nozzle and the probe can reach the given point.
285 285
     // Note: This won't work on SCARA since the probe offset rotates with the arm.
286 286
     inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
287
-      return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER))
287
+      return position_is_reachable(rx - zprobe_offset[X_AXIS], ry - zprobe_offset[Y_AXIS])
288 288
              && position_is_reachable(rx, ry, ABS(MIN_PROBE_EDGE));
289 289
     }
290 290
   #endif
@@ -313,9 +313,9 @@ void homeaxis(const AxisEnum axis);
313 313
      *          nozzle must be be able to reach +10,-10.
314 314
      */
315 315
     inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
316
-      return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER))
317
-          && WITHIN(rx, MIN_PROBE_X - slop, MAX_PROBE_X + slop)
318
-          && WITHIN(ry, MIN_PROBE_Y - slop, MAX_PROBE_Y + slop);
316
+      return position_is_reachable(rx - zprobe_offset[X_AXIS], ry - zprobe_offset[Y_AXIS])
317
+          && WITHIN(rx, probe_min_x() - slop, probe_max_x() + slop)
318
+          && WITHIN(ry, probe_min_y() - slop, probe_max_y() + slop);
319 319
     }
320 320
   #endif
321 321
 

+ 44
- 7
Marlin/src/module/probe.cpp Bestand weergeven

@@ -56,7 +56,7 @@
56 56
   #include "../feature/backlash.h"
57 57
 #endif
58 58
 
59
-float zprobe_zoffset; // Initialized by settings.load()
59
+float zprobe_offset[XYZ]; // Initialized by settings.load()
60 60
 
61 61
 #if ENABLED(BLTOUCH)
62 62
   #include "../feature/bltouch.h"
@@ -86,6 +86,43 @@ float zprobe_zoffset; // Initialized by settings.load()
86 86
 #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE)
87 87
 #include "../core/debug_out.h"
88 88
 
89
+float probe_min_x() {
90
+  return _MAX(
91
+    #if ENABLED(DELTA) || IS_SCARA
92
+      PROBE_X_MIN, MESH_MIN_X
93
+    #else
94
+      (X_MIN_BED) + (MIN_PROBE_EDGE), (X_MIN_POS) + zprobe_offset[X_AXIS]
95
+    #endif
96
+  );
97
+}
98
+float probe_max_x() {
99
+  return _MIN(
100
+    #if ENABLED(DELTA) || IS_SCARA
101
+      PROBE_X_MAX, MESH_MAX_X
102
+    #else
103
+      (X_MAX_BED) - (MIN_PROBE_EDGE), (X_MAX_POS) + zprobe_offset[X_AXIS]
104
+    #endif
105
+  );
106
+}
107
+float probe_min_y() {
108
+  return _MAX(
109
+    #if ENABLED(DELTA) || IS_SCARA
110
+      PROBE_Y_MIN, MESH_MIN_Y
111
+    #else
112
+      (Y_MIN_BED) + (MIN_PROBE_EDGE), (Y_MIN_POS) + zprobe_offset[Y_AXIS]
113
+    #endif
114
+  );
115
+}
116
+float probe_max_y() {
117
+  return _MIN(
118
+    #if ENABLED(DELTA) || IS_SCARA
119
+      PROBE_Y_MAX, MESH_MAX_Y
120
+    #else
121
+      (Y_MAX_BED) - (MIN_PROBE_EDGE), (Y_MAX_POS) + zprobe_offset[Y_AXIS]
122
+    #endif
123
+  );
124
+}
125
+
89 126
 #if ENABLED(Z_PROBE_SLED)
90 127
 
91 128
   #ifndef SLED_DOCKING_OFFSET
@@ -263,7 +300,7 @@ inline void do_probe_raise(const float z_raise) {
263 300
   if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR("do_probe_raise(", z_raise, ")");
264 301
 
265 302
   float z_dest = z_raise;
266
-  if (zprobe_zoffset < 0) z_dest -= zprobe_zoffset;
303
+  if (zprobe_offset[Z_AXIS] < 0) z_dest -= zprobe_offset[Z_AXIS];
267 304
 
268 305
   NOMORE(z_dest, Z_MAX_POS);
269 306
 
@@ -543,7 +580,7 @@ static float run_z_probe() {
543 580
 
544 581
   // Stop the probe before it goes too low to prevent damage.
545 582
   // If Z isn't known then probe to -10mm.
546
-  const float z_probe_low_point = TEST(axis_known_position, Z_AXIS) ? -zprobe_zoffset + Z_PROBE_LOW_POINT : -10.0;
583
+  const float z_probe_low_point = TEST(axis_known_position, Z_AXIS) ? -zprobe_offset[Z_AXIS] + Z_PROBE_LOW_POINT : -10.0;
547 584
 
548 585
   // Double-probing does a fast probe followed by a slow probe
549 586
   #if TOTAL_PROBING == 2
@@ -568,7 +605,7 @@ static float run_z_probe() {
568 605
 
569 606
     // If the nozzle is well over the travel height then
570 607
     // move down quickly before doing the slow probe
571
-    const float z = Z_CLEARANCE_DEPLOY_PROBE + 5.0 + (zprobe_zoffset < 0 ? -zprobe_zoffset : 0);
608
+    const float z = Z_CLEARANCE_DEPLOY_PROBE + 5.0 + (zprobe_offset[Z_AXIS] < 0 ? -zprobe_offset[Z_AXIS] : 0);
572 609
     if (current_position[Z_AXIS] > z) {
573 610
       // Probe down fast. If the probe never triggered, raise for probe clearance
574 611
       if (!do_probe_move(z, MMM_TO_MMS(Z_PROBE_SPEED_FAST)))
@@ -698,8 +735,8 @@ float probe_at_point(const float &rx, const float &ry, const ProbePtRaise raise_
698 735
   float nx = rx, ny = ry;
699 736
   if (probe_relative) {
700 737
     if (!position_is_reachable_by_probe(rx, ry)) return NAN;  // The given position is in terms of the probe
701
-    nx -= (X_PROBE_OFFSET_FROM_EXTRUDER);                     // Get the nozzle position
702
-    ny -= (Y_PROBE_OFFSET_FROM_EXTRUDER);
738
+    nx -= zprobe_offset[X_AXIS];                     // Get the nozzle position
739
+    ny -= zprobe_offset[Y_AXIS];
703 740
   }
704 741
   else if (!position_is_reachable(nx, ny)) return NAN;        // The given position is in terms of the nozzle
705 742
 
@@ -720,7 +757,7 @@ float probe_at_point(const float &rx, const float &ry, const ProbePtRaise raise_
720 757
 
721 758
   float measured_z = NAN;
722 759
   if (!DEPLOY_PROBE()) {
723
-    measured_z = run_z_probe() + zprobe_zoffset;
760
+    measured_z = run_z_probe() + zprobe_offset[Z_AXIS];
724 761
 
725 762
     const bool big_raise = raise_after == PROBE_PT_BIG_RAISE;
726 763
     if (big_raise || raise_after == PROBE_PT_RAISE)

+ 8
- 1
Marlin/src/module/probe.h Bestand weergeven

@@ -28,7 +28,8 @@
28 28
 #include "../inc/MarlinConfig.h"
29 29
 
30 30
 #if HAS_BED_PROBE
31
-  extern float zprobe_zoffset;
31
+
32
+  extern float zprobe_offset[XYZ];
32 33
   bool set_probe_deployed(const bool deploy);
33 34
   #ifdef Z_AFTER_PROBING
34 35
     void move_z_after_probing();
@@ -45,9 +46,15 @@
45 46
   #if HAS_HEATED_BED && ENABLED(WAIT_FOR_BED_HEATER)
46 47
     extern const char msg_wait_for_bed_heating[25];
47 48
   #endif
49
+
50
+  float probe_min_x(), probe_max_x(), probe_min_y(), probe_max_y();
51
+
48 52
 #else
53
+
54
+  constexpr float zprobe_offset[XYZ] = { 0 };
49 55
   #define DEPLOY_PROBE()
50 56
   #define STOW_PROBE()
57
+
51 58
 #endif
52 59
 
53 60
 #if HAS_Z_SERVO_PROBE

+ 6
- 13
config/default/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/3DFabXYZ/Migbot/Configuration.h Bestand weergeven

@@ -894,11 +894,10 @@
894 894
 
895 895
 /**
896 896
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
897
- * X and Y offsets must be integers.
898 897
  *
899 898
  * In the following example the X and Y offsets are both positive:
900
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
901
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
899
+ *
900
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
902 901
  *
903 902
  *     +-- BACK ---+
904 903
  *     |           |
@@ -910,10 +909,10 @@
910 909
  *     |           |
911 910
  *     O-- FRONT --+
912 911
  *   (0,0)
912
+ *
913
+ * Specify a Probe position as { X, Y, Z }
913 914
  */
914
-#define X_PROBE_OFFSET_FROM_EXTRUDER 21  // X offset: -left  +right  [of the nozzle]
915
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 61  // Y offset: -front +behind [the nozzle]
916
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
915
+#define NOZZLE_TO_PROBE_OFFSET { 21, 61, 0 }
917 916
 
918 917
 // Certain types of probes need to stay away from edges
919 918
 #define MIN_PROBE_EDGE 10
@@ -947,7 +946,7 @@
947 946
  *
948 947
  * Use these settings to specify the distance (mm) to raise the probe (or
949 948
  * lower the bed). The values set here apply over and above any (negative)
950
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
949
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
951 950
  * Only integer values >= 1 are valid here.
952 951
  *
953 952
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1205,12 +1204,6 @@
1205 1204
   #define GRID_MAX_POINTS_X 3
1206 1205
   #define GRID_MAX_POINTS_Y 4
1207 1206
 
1208
-  // Set the boundaries for probing (where the probe can reach).
1209
-  #define LEFT_PROBE_BED_POSITION X_PROBE_OFFSET_FROM_EXTRUDER
1210
-  #define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (X_PROBE_OFFSET_FROM_EXTRUDER) + MIN_PROBE_EDGE)
1211
-  #define FRONT_PROBE_BED_POSITION Y_PROBE_OFFSET_FROM_EXTRUDER
1212
-  #define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1213
-
1214 1207
   // Probe along the Y axis, advancing X after each column
1215 1208
   //#define PROBE_Y_FIRST
1216 1209
 

+ 6
- 13
config/examples/ADIMLab/Gantry v1/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1200,12 +1199,6 @@
1200 1199
   #define GRID_MAX_POINTS_X 3
1201 1200
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1202 1201
 
1203
-  // Set the boundaries for probing (where the probe can reach).
1204
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1206
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1208
-
1209 1202
   // Probe along the Y axis, advancing X after each column
1210 1203
   //#define PROBE_Y_FIRST
1211 1204
 

+ 6
- 13
config/examples/ADIMLab/Gantry v2/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1200,12 +1199,6 @@
1200 1199
   #define GRID_MAX_POINTS_X 3
1201 1200
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1202 1201
 
1203
-  // Set the boundaries for probing (where the probe can reach).
1204
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1206
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1208
-
1209 1202
   // Probe along the Y axis, advancing X after each column
1210 1203
   //#define PROBE_Y_FIRST
1211 1204
 

+ 6
- 13
config/examples/AlephObjects/TAZ4/Configuration.h Bestand weergeven

@@ -908,11 +908,10 @@
908 908
 
909 909
 /**
910 910
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
911
- * X and Y offsets must be integers.
912 911
  *
913 912
  * In the following example the X and Y offsets are both positive:
914
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
915
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
913
+ *
914
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
  *
917 916
  *     +-- BACK ---+
918 917
  *     |           |
@@ -924,10 +923,10 @@
924 923
  *     |           |
925 924
  *     O-- FRONT --+
926 925
  *   (0,0)
926
+ *
927
+ * Specify a Probe position as { X, Y, Z }
927 928
  */
928
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
929
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
930
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
929
+#define NOZZLE_TO_PROBE_OFFSET { -25, -29, -12.35 }
931 930
 
932 931
 // Certain types of probes need to stay away from edges
933 932
 #define MIN_PROBE_EDGE 10
@@ -961,7 +960,7 @@
961 960
  *
962 961
  * Use these settings to specify the distance (mm) to raise the probe (or
963 962
  * lower the bed). The values set here apply over and above any (negative)
964
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
963
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
965 964
  * Only integer values >= 1 are valid here.
966 965
  *
967 966
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1219,12 +1218,6 @@
1219 1218
   #define GRID_MAX_POINTS_X 3
1220 1219
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1221 1220
 
1222
-  // Set the boundaries for probing (where the probe can reach).
1223
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1224
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1225
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1226
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1227
-
1228 1221
   // Probe along the Y axis, advancing X after each column
1229 1222
   //#define PROBE_Y_FIRST
1230 1223
 

+ 7
- 14
config/examples/Alfawise/U20-bltouch/Configuration.h Bestand weergeven

@@ -953,11 +953,10 @@
953 953
 
954 954
 /**
955 955
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
956
- * X and Y offsets must be integers.
957 956
  *
958 957
  * In the following example the X and Y offsets are both positive:
959
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
960
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
958
+ *
959
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
961 960
  *
962 961
  *     +-- BACK ---+
963 962
  *     |           |
@@ -969,10 +968,10 @@
969 968
  *     |           |
970 969
  *     O-- FRONT --+
971 970
  *   (0,0)
971
+ *
972
+ * Specify a Probe position as { X, Y, Z }
972 973
  */
973
-#define X_PROBE_OFFSET_FROM_EXTRUDER  -35 // X offset: -left  +right  [of the nozzle]
974
-#define Y_PROBE_OFFSET_FROM_EXTRUDER   -6 // Y offset: -front +behind [the nozzle]
975
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -0.5 // Z offset: -below +above  [the nozzle]
974
+#define NOZZLE_TO_PROBE_OFFSET { -35, -6, -0.5 }
976 975
 
977 976
 // Certain types of probes need to stay away from edges
978 977
 #define MIN_PROBE_EDGE 10
@@ -1006,7 +1005,7 @@
1006 1005
  *
1007 1006
  * Use these settings to specify the distance (mm) to raise the probe (or
1008 1007
  * lower the bed). The values set here apply over and above any (negative)
1009
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
1008
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
1010 1009
  * Only integer values >= 1 are valid here.
1011 1010
  *
1012 1011
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1278,12 +1277,6 @@
1278 1277
   #define GRID_MAX_POINTS_X 4
1279 1278
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1280 1279
 
1281
-  // Set the boundaries for probing (where the probe can reach).
1282
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1283
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1284
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1285
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1286
-
1287 1280
   // Probe along the Y axis, advancing X after each column
1288 1281
   //#define PROBE_Y_FIRST
1289 1282
 
@@ -1404,7 +1397,7 @@
1404 1397
 #if ENABLED(Z_SAFE_HOMING)
1405 1398
   #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2)    // X point for Z homing when homing all axes (G28).
1406 1399
   //#define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2)  // Y point for Z homing when homing all axes (G28).
1407
-  #define Z_SAFE_HOMING_Y_POINT MIN_PROBE_Y
1400
+  #define Z_SAFE_HOMING_Y_POINT 4
1408 1401
 #endif
1409 1402
 
1410 1403
 // Homing speeds (mm/m)

+ 7
- 14
config/examples/Alfawise/U20/Configuration.h Bestand weergeven

@@ -953,11 +953,10 @@
953 953
 
954 954
 /**
955 955
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
956
- * X and Y offsets must be integers.
957 956
  *
958 957
  * In the following example the X and Y offsets are both positive:
959
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
960
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
958
+ *
959
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
961 960
  *
962 961
  *     +-- BACK ---+
963 962
  *     |           |
@@ -969,10 +968,10 @@
969 968
  *     |           |
970 969
  *     O-- FRONT --+
971 970
  *   (0,0)
971
+ *
972
+ * Specify a Probe position as { X, Y, Z }
972 973
  */
973
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
974
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
975
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
974
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
976 975
 
977 976
 // Certain types of probes need to stay away from edges
978 977
 #define MIN_PROBE_EDGE 10
@@ -1006,7 +1005,7 @@
1006 1005
  *
1007 1006
  * Use these settings to specify the distance (mm) to raise the probe (or
1008 1007
  * lower the bed). The values set here apply over and above any (negative)
1009
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
1008
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
1010 1009
  * Only integer values >= 1 are valid here.
1011 1010
  *
1012 1011
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1278,12 +1277,6 @@
1278 1277
   #define GRID_MAX_POINTS_X 3
1279 1278
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1280 1279
 
1281
-  // Set the boundaries for probing (where the probe can reach).
1282
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1283
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1284
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1285
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1286
-
1287 1280
   // Probe along the Y axis, advancing X after each column
1288 1281
   //#define PROBE_Y_FIRST
1289 1282
 
@@ -1403,7 +1396,7 @@
1403 1396
 
1404 1397
 #if ENABLED(Z_SAFE_HOMING)
1405 1398
   #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2)    // X point for Z homing when homing all axes (G28).
1406
-  #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2)    // Y point for Z homing when homing all axes (G28).
1399
+  #define Z_SAFE_HOMING_Y_POINT 4                     // Y point for Z homing when homing all axes (G28).
1407 1400
 #endif
1408 1401
 
1409 1402
 // Homing speeds (mm/m)

+ 6
- 13
config/examples/AliExpress/CL-260/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/AliExpress/UM2pExt/Configuration.h Bestand weergeven

@@ -899,11 +899,10 @@
899 899
 
900 900
 /**
901 901
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
902
- * X and Y offsets must be integers.
903 902
  *
904 903
  * In the following example the X and Y offsets are both positive:
905
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
906
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
904
+ *
905
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
907 906
  *
908 907
  *     +-- BACK ---+
909 908
  *     |           |
@@ -915,10 +914,10 @@
915 914
  *     |           |
916 915
  *     O-- FRONT --+
917 916
  *   (0,0)
917
+ *
918
+ * Specify a Probe position as { X, Y, Z }
918 919
  */
919
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
920
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
921
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
920
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
922 921
 
923 922
 // Certain types of probes need to stay away from edges
924 923
 #define MIN_PROBE_EDGE 10
@@ -952,7 +951,7 @@
952 951
  *
953 952
  * Use these settings to specify the distance (mm) to raise the probe (or
954 953
  * lower the bed). The values set here apply over and above any (negative)
955
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
954
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
956 955
  * Only integer values >= 1 are valid here.
957 956
  *
958 957
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1210,12 +1209,6 @@
1210 1209
   #define GRID_MAX_POINTS_X 3
1211 1210
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1212 1211
 
1213
-  // Set the boundaries for probing (where the probe can reach).
1214
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1215
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1216
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1217
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1218
-
1219 1212
   // Probe along the Y axis, advancing X after each column
1220 1213
   //#define PROBE_Y_FIRST
1221 1214
 

+ 6
- 13
config/examples/Anet/A2/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-//#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+//#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 //#define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/Anet/A2plus/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-//#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+//#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 //#define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 10
- 49
config/examples/Anet/A6/Configuration.h Bestand weergeven

@@ -935,11 +935,10 @@
935 935
 
936 936
 /**
937 937
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
938
- * X and Y offsets must be integers.
939 938
  *
940 939
  * In the following example the X and Y offsets are both positive:
941
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
942
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
940
+ *
941
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
943 942
  *
944 943
  *     +-- BACK ---+
945 944
  *     |           |
@@ -951,31 +950,23 @@
951 950
  *     |           |
952 951
  *     O-- FRONT --+
953 952
  *   (0,0)
953
+ *
954
+ * Specify a Probe position as { X, Y, Z }
954 955
  */
955
-//#define X_PROBE_OFFSET_FROM_EXTRUDER 10   // X offset: -left  +right  [of the nozzle]
956
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER 10   // Y offset: -front +behind [the nozzle]
957
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER  0   // Z offset: -below +above  [the nozzle]
956
+//#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
958 957
 
959 958
 // ANET A8: FRONT-MOUNTED SENSOR WITH 3D PRINTED MOUNT
960
-//#define X_PROBE_OFFSET_FROM_EXTRUDER -28  // X offset: -left  +right  [of the nozzle]
961
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER -45  // Y offset: -front +behind [the nozzle]
962
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER   0  // Z offset: -below +above  [the nozzle]
959
+//#define NOZZLE_TO_PROBE_OFFSET { -28, -45, 0 }
963 960
 
964 961
 // THESE ARE FOR THE OFFICIAL ANET REAR-MOUNTED SENSOR
965
-//#define X_PROBE_OFFSET_FROM_EXTRUDER -1   // X offset: -left  +right  [of the nozzle]
966
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER  3   // Y offset: -front +behind [the nozzle]
967
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER  0   // Z offset: -below +above  [the nozzle]
962
+//#define NOZZLE_TO_PROBE_OFFSET { -1, 3, 0 }
968 963
 
969 964
 // ANET A6 with BLTouch/3D-Touch mounted right to the nozzle
970
-#define X_PROBE_OFFSET_FROM_EXTRUDER 39   // X offset: -left  +right  [of the nozzle]
971
-#define Y_PROBE_OFFSET_FROM_EXTRUDER  0   // Y offset: -front +behind [the nozzle]
972
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  0   // Z offset: -below +above  [the nozzle]
965
+#define NOZZLE_TO_PROBE_OFFSET { 39, 0, 0 }
973 966
 
974 967
 //ANET A6 with BLTouch/3D-Touch betwen Fan and Belt
975 968
 // (mount: https://github.com/ralf-e/ANET_A6_modifications/tree/master/A6_X-Axis)
976
-//#define X_PROBE_OFFSET_FROM_EXTRUDER -30      // X offset: -left  +right  [of the nozzle]
977
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER  15      // Y offset: -front +behind [the nozzle]
978
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER   0.75   // Z offset: -below +above  [the nozzle]
969
+//#define NOZZLE_TO_PROBE_OFFSET { -30, 15, 0.75 }
979 970
 
980 971
 // Certain types of probes need to stay away from edges
981 972
 #define MIN_PROBE_EDGE 10
@@ -1010,7 +1001,7 @@
1010 1001
  *
1011 1002
  * Use these settings to specify the distance (mm) to raise the probe (or
1012 1003
  * lower the bed). The values set here apply over and above any (negative)
1013
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
1004
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
1014 1005
  * Only integer values >= 1 are valid here.
1015 1006
  *
1016 1007
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1312,36 +1303,6 @@
1312 1303
   #define GRID_MAX_POINTS_X 4
1313 1304
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1314 1305
 
1315
-  // Set the boundaries for probing (where the probe can reach).
1316
-  //#define LEFT_PROBE_BED_POSITION 15
1317
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - 15)
1318
-  //#define FRONT_PROBE_BED_POSITION 15
1319
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - 15)
1320
-
1321
-  // ANET A6
1322
-  //#define LEFT_PROBE_BED_POSITION 20
1323
-  //#define RIGHT_PROBE_BED_POSITION 190
1324
-  //#define FRONT_PROBE_BED_POSITION 20
1325
-  //#define BACK_PROBE_BED_POSITION 190
1326
-
1327
-  // ANET A6 BLTOUCH right (39mm) to the nozzle
1328
-  //#define LEFT_PROBE_BED_POSITION 36
1329
-  //#define RIGHT_PROBE_BED_POSITION 190
1330
-  //#define FRONT_PROBE_BED_POSITION 20
1331
-  //#define BACK_PROBE_BED_POSITION 190
1332
-
1333
-  // ANET A6 with new X-Axis and modded Y-Axis
1334
-  //#define LEFT_PROBE_BED_POSITION 20
1335
-  //#define RIGHT_PROBE_BED_POSITION 205
1336
-  //#define FRONT_PROBE_BED_POSITION 20
1337
-  //#define BACK_PROBE_BED_POSITION 205
1338
-
1339
-  // ANET A6 with new X-Axis and modded Y-Axis, X0/Y0 front left bed edge
1340
-  //#define LEFT_PROBE_BED_POSITION 20
1341
-  //#define RIGHT_PROBE_BED_POSITION 194
1342
-  //#define FRONT_PROBE_BED_POSITION 20
1343
-  //#define BACK_PROBE_BED_POSITION 194
1344
-
1345 1306
   // Probe along the Y axis, advancing X after each column
1346 1307
   //#define PROBE_Y_FIRST
1347 1308
 

+ 6
- 13
config/examples/Anet/A8/Configuration.h Bestand weergeven

@@ -901,11 +901,10 @@
901 901
 
902 902
 /**
903 903
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
904
- * X and Y offsets must be integers.
905 904
  *
906 905
  * In the following example the X and Y offsets are both positive:
907
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
908
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
906
+ *
907
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
909 908
  *
910 909
  *     +-- BACK ---+
911 910
  *     |           |
@@ -917,10 +916,10 @@
917 916
  *     |           |
918 917
  *     O-- FRONT --+
919 918
  *   (0,0)
919
+ *
920
+ * Specify a Probe position as { X, Y, Z }
920 921
  */
921
-#define X_PROBE_OFFSET_FROM_EXTRUDER 0   // X offset: -left  +right  [of the nozzle]
922
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 0   // Y offset: -front +behind [the nozzle]
923
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
922
+#define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
924 923
 
925 924
 // Certain types of probes need to stay away from edges
926 925
 #define MIN_PROBE_EDGE 10
@@ -954,7 +953,7 @@
954 953
  *
955 954
  * Use these settings to specify the distance (mm) to raise the probe (or
956 955
  * lower the bed). The values set here apply over and above any (negative)
957
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
956
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
958 957
  * Only integer values >= 1 are valid here.
959 958
  *
960 959
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1212,12 +1211,6 @@
1212 1211
   #define GRID_MAX_POINTS_X 3
1213 1212
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1214 1213
 
1215
-  // Set the boundaries for probing (where the probe can reach).
1216
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1217
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1218
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1219
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1220
-
1221 1214
   // Probe along the Y axis, advancing X after each column
1222 1215
   //#define PROBE_Y_FIRST
1223 1216
 

+ 6
- 13
config/examples/Anet/A8plus/Configuration.h Bestand weergeven

@@ -899,11 +899,10 @@
899 899
 
900 900
 /**
901 901
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
902
- * X and Y offsets must be integers.
903 902
  *
904 903
  * In the following example the X and Y offsets are both positive:
905
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
906
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
904
+ *
905
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
907 906
  *
908 907
  *     +-- BACK ---+
909 908
  *     |           |
@@ -915,10 +914,10 @@
915 914
  *     |           |
916 915
  *     O-- FRONT --+
917 916
  *   (0,0)
917
+ *
918
+ * Specify a Probe position as { X, Y, Z }
918 919
  */
919
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
920
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
921
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
920
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
922 921
 
923 922
 // Certain types of probes need to stay away from edges
924 923
 #define MIN_PROBE_EDGE 10
@@ -952,7 +951,7 @@
952 951
  *
953 952
  * Use these settings to specify the distance (mm) to raise the probe (or
954 953
  * lower the bed). The values set here apply over and above any (negative)
955
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
954
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
956 955
  * Only integer values >= 1 are valid here.
957 956
  *
958 957
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1210,12 +1209,6 @@
1210 1209
   #define GRID_MAX_POINTS_X 3
1211 1210
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1212 1211
 
1213
-  // Set the boundaries for probing (where the probe can reach).
1214
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1215
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1216
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1217
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1218
-
1219 1212
   // Probe along the Y axis, advancing X after each column
1220 1213
   //#define PROBE_Y_FIRST
1221 1214
 

+ 6
- 13
config/examples/Anet/E16/Configuration.h Bestand weergeven

@@ -900,11 +900,10 @@
900 900
 
901 901
 /**
902 902
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
903
- * X and Y offsets must be integers.
904 903
  *
905 904
  * In the following example the X and Y offsets are both positive:
906
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
907
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
905
+ *
906
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
908 907
  *
909 908
  *     +-- BACK ---+
910 909
  *     |           |
@@ -916,10 +915,10 @@
916 915
  *     |           |
917 916
  *     O-- FRONT --+
918 917
  *   (0,0)
918
+ *
919
+ * Specify a Probe position as { X, Y, Z }
919 920
  */
920
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
921
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
922
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
921
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
923 922
 
924 923
 // Certain types of probes need to stay away from edges
925 924
 #define MIN_PROBE_EDGE 10
@@ -953,7 +952,7 @@
953 952
  *
954 953
  * Use these settings to specify the distance (mm) to raise the probe (or
955 954
  * lower the bed). The values set here apply over and above any (negative)
956
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
955
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
957 956
  * Only integer values >= 1 are valid here.
958 957
  *
959 958
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1211,12 +1210,6 @@
1211 1210
   #define GRID_MAX_POINTS_X 3
1212 1211
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1213 1212
 
1214
-  // Set the boundaries for probing (where the probe can reach).
1215
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1217
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1218
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1219
-
1220 1213
   // Probe along the Y axis, advancing X after each column
1221 1214
   //#define PROBE_Y_FIRST
1222 1215
 

+ 6
- 13
config/examples/AnyCubic/i3/Configuration.h Bestand weergeven

@@ -898,11 +898,10 @@
898 898
 
899 899
 /**
900 900
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
901
- * X and Y offsets must be integers.
902 901
  *
903 902
  * In the following example the X and Y offsets are both positive:
904
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
905
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
903
+ *
904
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
906 905
  *
907 906
  *     +-- BACK ---+
908 907
  *     |           |
@@ -914,10 +913,10 @@
914 913
  *     |           |
915 914
  *     O-- FRONT --+
916 915
  *   (0,0)
916
+ *
917
+ * Specify a Probe position as { X, Y, Z }
917 918
  */
918
-#define X_PROBE_OFFSET_FROM_EXTRUDER 75  // X offset: -left  +right  [of the nozzle]
919
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 5  // Y offset: -front +behind [the nozzle]
920
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -2   // Z offset: -below +above  [the nozzle]
919
+#define NOZZLE_TO_PROBE_OFFSET { 75, 5, -2 }
921 920
 
922 921
 // Certain types of probes need to stay away from edges
923 922
 #define MIN_PROBE_EDGE 10
@@ -951,7 +950,7 @@
951 950
  *
952 951
  * Use these settings to specify the distance (mm) to raise the probe (or
953 952
  * lower the bed). The values set here apply over and above any (negative)
954
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
953
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
955 954
  * Only integer values >= 1 are valid here.
956 955
  *
957 956
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1209,12 +1208,6 @@
1209 1208
   #define GRID_MAX_POINTS_X 3
1210 1209
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1211 1210
 
1212
-  // Set the boundaries for probing (where the probe can reach).
1213
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1214
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1215
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1217
-
1218 1211
   // Probe along the Y axis, advancing X after each column
1219 1212
   //#define PROBE_Y_FIRST
1220 1213
 

+ 6
- 13
config/examples/ArmEd/Configuration.h Bestand weergeven

@@ -889,11 +889,10 @@
889 889
 
890 890
 /**
891 891
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
892
- * X and Y offsets must be integers.
893 892
  *
894 893
  * In the following example the X and Y offsets are both positive:
895
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
896
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
894
+ *
895
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
897 896
  *
898 897
  *     +-- BACK ---+
899 898
  *     |           |
@@ -905,10 +904,10 @@
905 904
  *     |           |
906 905
  *     O-- FRONT --+
907 906
  *   (0,0)
907
+ *
908
+ * Specify a Probe position as { X, Y, Z }
908 909
  */
909
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
910
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
911
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
910
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
912 911
 
913 912
 // Certain types of probes need to stay away from edges
914 913
 #define MIN_PROBE_EDGE 10
@@ -942,7 +941,7 @@
942 941
  *
943 942
  * Use these settings to specify the distance (mm) to raise the probe (or
944 943
  * lower the bed). The values set here apply over and above any (negative)
945
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
944
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
946 945
  * Only integer values >= 1 are valid here.
947 946
  *
948 947
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1200,12 +1199,6 @@
1200 1199
   #define GRID_MAX_POINTS_X 3
1201 1200
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1202 1201
 
1203
-  // Set the boundaries for probing (where the probe can reach).
1204
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1206
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1208
-
1209 1202
   // Probe along the Y axis, advancing X after each column
1210 1203
   //#define PROBE_Y_FIRST
1211 1204
 

+ 6
- 13
config/examples/Azteeg/X5GT/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/BIBO/TouchX/cyclops/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION 15
1204
-  //#define RIGHT_PROBE_BED_POSITION 170
1205
-  //#define FRONT_PROBE_BED_POSITION 20
1206
-  //#define BACK_PROBE_BED_POSITION 170
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/BIBO/TouchX/default/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION 15
1204
-  //#define RIGHT_PROBE_BED_POSITION 170
1205
-  //#define FRONT_PROBE_BED_POSITION 20
1206
-  //#define BACK_PROBE_BED_POSITION 170
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/BQ/Hephestos/Configuration.h Bestand weergeven

@@ -876,11 +876,10 @@
876 876
 
877 877
 /**
878 878
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
879
- * X and Y offsets must be integers.
880 879
  *
881 880
  * In the following example the X and Y offsets are both positive:
882
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
883
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
881
+ *
882
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
884 883
  *
885 884
  *     +-- BACK ---+
886 885
  *     |           |
@@ -892,10 +891,10 @@
892 891
  *     |           |
893 892
  *     O-- FRONT --+
894 893
  *   (0,0)
894
+ *
895
+ * Specify a Probe position as { X, Y, Z }
895 896
  */
896
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
897
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
898
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
897
+#define NOZZLE_TO_PROBE_OFFSET { -25, -29, -12.35 }
899 898
 
900 899
 // Certain types of probes need to stay away from edges
901 900
 #define MIN_PROBE_EDGE 10
@@ -929,7 +928,7 @@
929 928
  *
930 929
  * Use these settings to specify the distance (mm) to raise the probe (or
931 930
  * lower the bed). The values set here apply over and above any (negative)
932
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
931
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
933 932
  * Only integer values >= 1 are valid here.
934 933
  *
935 934
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1187,12 +1186,6 @@
1187 1186
   #define GRID_MAX_POINTS_X 3
1188 1187
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1189 1188
 
1190
-  // Set the boundaries for probing (where the probe can reach).
1191
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1192
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1193
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1194
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1195
-
1196 1189
   // Probe along the Y axis, advancing X after each column
1197 1190
   //#define PROBE_Y_FIRST
1198 1191
 

+ 6
- 13
config/examples/BQ/Hephestos_2/Configuration.h Bestand weergeven

@@ -889,11 +889,10 @@
889 889
 
890 890
 /**
891 891
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
892
- * X and Y offsets must be integers.
893 892
  *
894 893
  * In the following example the X and Y offsets are both positive:
895
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
896
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
894
+ *
895
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
897 896
  *
898 897
  *     +-- BACK ---+
899 898
  *     |           |
@@ -905,10 +904,10 @@
905 904
  *     |           |
906 905
  *     O-- FRONT --+
907 906
  *   (0,0)
907
+ *
908
+ * Specify a Probe position as { X, Y, Z }
908 909
  */
909
-#define X_PROBE_OFFSET_FROM_EXTRUDER 34  // X offset: -left  +right  [of the nozzle]
910
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 15  // Y offset: -front +behind [the nozzle]
911
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  0  // Z offset: -below +above  [the nozzle]
910
+#define NOZZLE_TO_PROBE_OFFSET { 34, 15, 0 }
912 911
 
913 912
 // Certain types of probes need to stay away from edges
914 913
 #define MIN_PROBE_EDGE 10
@@ -942,7 +941,7 @@
942 941
  *
943 942
  * Use these settings to specify the distance (mm) to raise the probe (or
944 943
  * lower the bed). The values set here apply over and above any (negative)
945
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
944
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
946 945
  * Only integer values >= 1 are valid here.
947 946
  *
948 947
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 5
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION  X_MIN_POS + (X_PROBE_OFFSET_FROM_EXTRUDER)
1204
-  //#define RIGHT_PROBE_BED_POSITION X_MAX_POS - (X_PROBE_OFFSET_FROM_EXTRUDER)
1205
-  //#define FRONT_PROBE_BED_POSITION Y_MIN_POS + (Y_PROBE_OFFSET_FROM_EXTRUDER)
1206
-  //#define BACK_PROBE_BED_POSITION  Y_MAX_POS - (Y_PROBE_OFFSET_FROM_EXTRUDER)
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/BQ/WITBOX/Configuration.h Bestand weergeven

@@ -876,11 +876,10 @@
876 876
 
877 877
 /**
878 878
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
879
- * X and Y offsets must be integers.
880 879
  *
881 880
  * In the following example the X and Y offsets are both positive:
882
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
883
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
881
+ *
882
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
884 883
  *
885 884
  *     +-- BACK ---+
886 885
  *     |           |
@@ -892,10 +891,10 @@
892 891
  *     |           |
893 892
  *     O-- FRONT --+
894 893
  *   (0,0)
894
+ *
895
+ * Specify a Probe position as { X, Y, Z }
895 896
  */
896
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
897
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
898
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
897
+#define NOZZLE_TO_PROBE_OFFSET { -25, -29, -12.35 }
899 898
 
900 899
 // Certain types of probes need to stay away from edges
901 900
 #define MIN_PROBE_EDGE 10
@@ -929,7 +928,7 @@
929 928
  *
930 929
  * Use these settings to specify the distance (mm) to raise the probe (or
931 930
  * lower the bed). The values set here apply over and above any (negative)
932
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
931
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
933 932
  * Only integer values >= 1 are valid here.
934 933
  *
935 934
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1187,12 +1186,6 @@
1187 1186
   #define GRID_MAX_POINTS_X 3
1188 1187
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1189 1188
 
1190
-  // Set the boundaries for probing (where the probe can reach).
1191
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1192
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1193
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1194
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1195
-
1196 1189
   // Probe along the Y axis, advancing X after each column
1197 1190
   //#define PROBE_Y_FIRST
1198 1191
 

+ 6
- 13
config/examples/Cartesio/Configuration.h Bestand weergeven

@@ -887,11 +887,10 @@
887 887
 
888 888
 /**
889 889
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
890
- * X and Y offsets must be integers.
891 890
  *
892 891
  * In the following example the X and Y offsets are both positive:
893
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
894
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
892
+ *
893
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
895 894
  *
896 895
  *     +-- BACK ---+
897 896
  *     |           |
@@ -903,10 +902,10 @@
903 902
  *     |           |
904 903
  *     O-- FRONT --+
905 904
  *   (0,0)
905
+ *
906
+ * Specify a Probe position as { X, Y, Z }
906 907
  */
907
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
908
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
909
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
908
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
910 909
 
911 910
 // Certain types of probes need to stay away from edges
912 911
 #define MIN_PROBE_EDGE 10
@@ -940,7 +939,7 @@
940 939
  *
941 940
  * Use these settings to specify the distance (mm) to raise the probe (or
942 941
  * lower the bed). The values set here apply over and above any (negative)
943
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
942
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
944 943
  * Only integer values >= 1 are valid here.
945 944
  *
946 945
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1198,12 +1197,6 @@
1198 1197
   #define GRID_MAX_POINTS_X 3
1199 1198
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1200 1199
 
1201
-  // Set the boundaries for probing (where the probe can reach).
1202
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1203
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1204
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1206
-
1207 1200
   // Probe along the Y axis, advancing X after each column
1208 1201
   //#define PROBE_Y_FIRST
1209 1202
 

+ 6
- 13
config/examples/Creality/CR-10/Configuration.h Bestand weergeven

@@ -898,11 +898,10 @@
898 898
 
899 899
 /**
900 900
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
901
- * X and Y offsets must be integers.
902 901
  *
903 902
  * In the following example the X and Y offsets are both positive:
904
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
905
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
903
+ *
904
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
906 905
  *
907 906
  *     +-- BACK ---+
908 907
  *     |           |
@@ -914,10 +913,10 @@
914 913
  *     |           |
915 914
  *     O-- FRONT --+
916 915
  *   (0,0)
916
+ *
917
+ * Specify a Probe position as { X, Y, Z }
917 918
  */
918
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
919
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
920
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
919
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
921 920
 
922 921
 // Certain types of probes need to stay away from edges
923 922
 #define MIN_PROBE_EDGE 10
@@ -951,7 +950,7 @@
951 950
  *
952 951
  * Use these settings to specify the distance (mm) to raise the probe (or
953 952
  * lower the bed). The values set here apply over and above any (negative)
954
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
953
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
955 954
  * Only integer values >= 1 are valid here.
956 955
  *
957 956
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1209,12 +1208,6 @@
1209 1208
   #define GRID_MAX_POINTS_X 3
1210 1209
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1211 1210
 
1212
-  // Set the boundaries for probing (where the probe can reach).
1213
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1214
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1215
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1217
-
1218 1211
   // Probe along the Y axis, advancing X after each column
1219 1212
   //#define PROBE_Y_FIRST
1220 1213
 

+ 6
- 13
config/examples/Creality/CR-10S/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1200,12 +1199,6 @@
1200 1199
   #define GRID_MAX_POINTS_X 3
1201 1200
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1202 1201
 
1203
-  // Set the boundaries for probing (where the probe can reach).
1204
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1206
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1208
-
1209 1202
   // Probe along the Y axis, advancing X after each column
1210 1203
   //#define PROBE_Y_FIRST
1211 1204
 

+ 6
- 13
config/examples/Creality/CR-10_5S/Configuration.h Bestand weergeven

@@ -889,11 +889,10 @@
889 889
 
890 890
 /**
891 891
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
892
- * X and Y offsets must be integers.
893 892
  *
894 893
  * In the following example the X and Y offsets are both positive:
895
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
896
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
894
+ *
895
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
897 896
  *
898 897
  *     +-- BACK ---+
899 898
  *     |           |
@@ -905,10 +904,10 @@
905 904
  *     |           |
906 905
  *     O-- FRONT --+
907 906
  *   (0,0)
907
+ *
908
+ * Specify a Probe position as { X, Y, Z }
908 909
  */
909
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
910
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
911
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
910
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
912 911
 
913 912
 // Certain types of probes need to stay away from edges
914 913
 #define MIN_PROBE_EDGE 10
@@ -942,7 +941,7 @@
942 941
  *
943 942
  * Use these settings to specify the distance (mm) to raise the probe (or
944 943
  * lower the bed). The values set here apply over and above any (negative)
945
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
944
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
946 945
  * Only integer values >= 1 are valid here.
947 946
  *
948 947
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1202,12 +1201,6 @@
1202 1201
   #define GRID_MAX_POINTS_X 3
1203 1202
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1204 1203
 
1205
-  // Set the boundaries for probing (where the probe can reach).
1206
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1208
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1210
-
1211 1204
   // Probe along the Y axis, advancing X after each column
1212 1205
   //#define PROBE_Y_FIRST
1213 1206
 

+ 6
- 13
config/examples/Creality/CR-10mini/Configuration.h Bestand weergeven

@@ -907,11 +907,10 @@
907 907
 
908 908
 /**
909 909
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
910
- * X and Y offsets must be integers.
911 910
  *
912 911
  * In the following example the X and Y offsets are both positive:
913
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
914
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
912
+ *
913
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
915 914
  *
916 915
  *     +-- BACK ---+
917 916
  *     |           |
@@ -923,10 +922,10 @@
923 922
  *     |           |
924 923
  *     O-- FRONT --+
925 924
  *   (0,0)
925
+ *
926
+ * Specify a Probe position as { X, Y, Z }
926 927
  */
927
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
928
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
929
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
928
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
930 929
 
931 930
 // Certain types of probes need to stay away from edges
932 931
 #define MIN_PROBE_EDGE 10
@@ -960,7 +959,7 @@
960 959
  *
961 960
  * Use these settings to specify the distance (mm) to raise the probe (or
962 961
  * lower the bed). The values set here apply over and above any (negative)
963
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
962
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
964 963
  * Only integer values >= 1 are valid here.
965 964
  *
966 965
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1218,12 +1217,6 @@
1218 1217
   #define GRID_MAX_POINTS_X 3
1219 1218
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1220 1219
 
1221
-  // Set the boundaries for probing (where the probe can reach).
1222
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1223
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1224
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1225
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1226
-
1227 1220
   // Probe along the Y axis, advancing X after each column
1228 1221
   //#define PROBE_Y_FIRST
1229 1222
 

+ 6
- 13
config/examples/Creality/CR-20 Pro/Configuration.h Bestand weergeven

@@ -891,11 +891,10 @@
891 891
 
892 892
 /**
893 893
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
894
- * X and Y offsets must be integers.
895 894
  *
896 895
  * In the following example the X and Y offsets are both positive:
897
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
898
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
896
+ *
897
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
899 898
  *
900 899
  *     +-- BACK ---+
901 900
  *     |           |
@@ -907,10 +906,10 @@
907 906
  *     |           |
908 907
  *     O-- FRONT --+
909 908
  *   (0,0)
909
+ *
910
+ * Specify a Probe position as { X, Y, Z }
910 911
  */
911
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
912
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
913
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
912
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
914 913
 
915 914
 // Certain types of probes need to stay away from edges
916 915
 #define MIN_PROBE_EDGE 10
@@ -944,7 +943,7 @@
944 943
  *
945 944
  * Use these settings to specify the distance (mm) to raise the probe (or
946 945
  * lower the bed). The values set here apply over and above any (negative)
947
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
946
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
948 947
  * Only integer values >= 1 are valid here.
949 948
  *
950 949
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1202,12 +1201,6 @@
1202 1201
   #define GRID_MAX_POINTS_X 3
1203 1202
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1204 1203
 
1205
-  // Set the boundaries for probing (where the probe can reach).
1206
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1208
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1210
-
1211 1204
   // Probe along the Y axis, advancing X after each column
1212 1205
   //#define PROBE_Y_FIRST
1213 1206
 

+ 6
- 13
config/examples/Creality/CR-20/Configuration.h Bestand weergeven

@@ -891,11 +891,10 @@
891 891
 
892 892
 /**
893 893
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
894
- * X and Y offsets must be integers.
895 894
  *
896 895
  * In the following example the X and Y offsets are both positive:
897
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
898
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
896
+ *
897
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
899 898
  *
900 899
  *     +-- BACK ---+
901 900
  *     |           |
@@ -907,10 +906,10 @@
907 906
  *     |           |
908 907
  *     O-- FRONT --+
909 908
  *   (0,0)
909
+ *
910
+ * Specify a Probe position as { X, Y, Z }
910 911
  */
911
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
912
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
913
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
912
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
914 913
 
915 914
 // Certain types of probes need to stay away from edges
916 915
 #define MIN_PROBE_EDGE 10
@@ -944,7 +943,7 @@
944 943
  *
945 944
  * Use these settings to specify the distance (mm) to raise the probe (or
946 945
  * lower the bed). The values set here apply over and above any (negative)
947
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
946
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
948 947
  * Only integer values >= 1 are valid here.
949 948
  *
950 949
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1202,12 +1201,6 @@
1202 1201
   #define GRID_MAX_POINTS_X 3
1203 1202
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1204 1203
 
1205
-  // Set the boundaries for probing (where the probe can reach).
1206
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1208
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1210
-
1211 1204
   // Probe along the Y axis, advancing X after each column
1212 1205
   //#define PROBE_Y_FIRST
1213 1206
 

+ 6
- 13
config/examples/Creality/CR-8/Configuration.h Bestand weergeven

@@ -898,11 +898,10 @@
898 898
 
899 899
 /**
900 900
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
901
- * X and Y offsets must be integers.
902 901
  *
903 902
  * In the following example the X and Y offsets are both positive:
904
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
905
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
903
+ *
904
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
906 905
  *
907 906
  *     +-- BACK ---+
908 907
  *     |           |
@@ -914,10 +913,10 @@
914 913
  *     |           |
915 914
  *     O-- FRONT --+
916 915
  *   (0,0)
916
+ *
917
+ * Specify a Probe position as { X, Y, Z }
917 918
  */
918
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
919
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
920
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
919
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
921 920
 
922 921
 // Certain types of probes need to stay away from edges
923 922
 #define MIN_PROBE_EDGE 10
@@ -951,7 +950,7 @@
951 950
  *
952 951
  * Use these settings to specify the distance (mm) to raise the probe (or
953 952
  * lower the bed). The values set here apply over and above any (negative)
954
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
953
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
955 954
  * Only integer values >= 1 are valid here.
956 955
  *
957 956
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1209,12 +1208,6 @@
1209 1208
   #define GRID_MAX_POINTS_X 3
1210 1209
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1211 1210
 
1212
-  // Set the boundaries for probing (where the probe can reach).
1213
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1214
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1215
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1217
-
1218 1211
   // Probe along the Y axis, advancing X after each column
1219 1212
   //#define PROBE_Y_FIRST
1220 1213
 

+ 6
- 13
config/examples/Creality/Ender-2/Configuration.h Bestand weergeven

@@ -892,11 +892,10 @@
892 892
 
893 893
 /**
894 894
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
895
- * X and Y offsets must be integers.
896 895
  *
897 896
  * In the following example the X and Y offsets are both positive:
898
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
899
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
897
+ *
898
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
900 899
  *
901 900
  *     +-- BACK ---+
902 901
  *     |           |
@@ -908,10 +907,10 @@
908 907
  *     |           |
909 908
  *     O-- FRONT --+
910 909
  *   (0,0)
910
+ *
911
+ * Specify a Probe position as { X, Y, Z }
911 912
  */
912
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
913
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
914
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
913
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
915 914
 
916 915
 // Certain types of probes need to stay away from edges
917 916
 #define MIN_PROBE_EDGE 10
@@ -945,7 +944,7 @@
945 944
  *
946 945
  * Use these settings to specify the distance (mm) to raise the probe (or
947 946
  * lower the bed). The values set here apply over and above any (negative)
948
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
947
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
949 948
  * Only integer values >= 1 are valid here.
950 949
  *
951 950
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1203,12 +1202,6 @@
1203 1202
   #define GRID_MAX_POINTS_X 3
1204 1203
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1205 1204
 
1206
-  // Set the boundaries for probing (where the probe can reach).
1207
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1209
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1211
-
1212 1205
   // Probe along the Y axis, advancing X after each column
1213 1206
   //#define PROBE_Y_FIRST
1214 1207
 

+ 6
- 13
config/examples/Creality/Ender-3/Configuration.h Bestand weergeven

@@ -892,11 +892,10 @@
892 892
 
893 893
 /**
894 894
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
895
- * X and Y offsets must be integers.
896 895
  *
897 896
  * In the following example the X and Y offsets are both positive:
898
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
899
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
897
+ *
898
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
900 899
  *
901 900
  *     +-- BACK ---+
902 901
  *     |           |
@@ -908,10 +907,10 @@
908 907
  *     |           |
909 908
  *     O-- FRONT --+
910 909
  *   (0,0)
910
+ *
911
+ * Specify a Probe position as { X, Y, Z }
911 912
  */
912
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
913
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
914
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
913
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
915 914
 
916 915
 // Certain types of probes need to stay away from edges
917 916
 #define MIN_PROBE_EDGE 10
@@ -945,7 +944,7 @@
945 944
  *
946 945
  * Use these settings to specify the distance (mm) to raise the probe (or
947 946
  * lower the bed). The values set here apply over and above any (negative)
948
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
947
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
949 948
  * Only integer values >= 1 are valid here.
950 949
  *
951 950
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1203,12 +1202,6 @@
1203 1202
   #define GRID_MAX_POINTS_X 3
1204 1203
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1205 1204
 
1206
-  // Set the boundaries for probing (where the probe can reach).
1207
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1209
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1211
-
1212 1205
   // Probe along the Y axis, advancing X after each column
1213 1206
   //#define PROBE_Y_FIRST
1214 1207
 

+ 6
- 13
config/examples/Creality/Ender-4/Configuration.h Bestand weergeven

@@ -898,11 +898,10 @@
898 898
 
899 899
 /**
900 900
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
901
- * X and Y offsets must be integers.
902 901
  *
903 902
  * In the following example the X and Y offsets are both positive:
904
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
905
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
903
+ *
904
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
906 905
  *
907 906
  *     +-- BACK ---+
908 907
  *     |           |
@@ -914,10 +913,10 @@
914 913
  *     |           |
915 914
  *     O-- FRONT --+
916 915
  *   (0,0)
916
+ *
917
+ * Specify a Probe position as { X, Y, Z }
917 918
  */
918
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
919
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
920
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
919
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
921 920
 
922 921
 // Certain types of probes need to stay away from edges
923 922
 #define MIN_PROBE_EDGE 10
@@ -951,7 +950,7 @@
951 950
  *
952 951
  * Use these settings to specify the distance (mm) to raise the probe (or
953 952
  * lower the bed). The values set here apply over and above any (negative)
954
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
953
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
955 954
  * Only integer values >= 1 are valid here.
956 955
  *
957 956
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1209,12 +1208,6 @@
1209 1208
   #define GRID_MAX_POINTS_X 3
1210 1209
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1211 1210
 
1212
-  // Set the boundaries for probing (where the probe can reach).
1213
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1214
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1215
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1217
-
1218 1211
   // Probe along the Y axis, advancing X after each column
1219 1212
   //#define PROBE_Y_FIRST
1220 1213
 

+ 6
- 13
config/examples/Creality/Ender-5/Configuration.h Bestand weergeven

@@ -891,11 +891,10 @@
891 891
 
892 892
 /**
893 893
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
894
- * X and Y offsets must be integers.
895 894
  *
896 895
  * In the following example the X and Y offsets are both positive:
897
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
898
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
896
+ *
897
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
899 898
  *
900 899
  *     +-- BACK ---+
901 900
  *     |           |
@@ -907,10 +906,10 @@
907 906
  *     |           |
908 907
  *     O-- FRONT --+
909 908
  *   (0,0)
909
+ *
910
+ * Specify a Probe position as { X, Y, Z }
910 911
  */
911
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
912
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
913
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
912
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
914 913
 
915 914
 // Certain types of probes need to stay away from edges
916 915
 #define MIN_PROBE_EDGE 10
@@ -944,7 +943,7 @@
944 943
  *
945 944
  * Use these settings to specify the distance (mm) to raise the probe (or
946 945
  * lower the bed). The values set here apply over and above any (negative)
947
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
946
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
948 947
  * Only integer values >= 1 are valid here.
949 948
  *
950 949
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1202,12 +1201,6 @@
1202 1201
   #define GRID_MAX_POINTS_X 3
1203 1202
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1204 1203
 
1205
-  // Set the boundaries for probing (where the probe can reach).
1206
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1207
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1208
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1210
-
1211 1204
   // Probe along the Y axis, advancing X after each column
1212 1205
   //#define PROBE_Y_FIRST
1213 1206
 

+ 6
- 13
config/examples/Dagoma/Disco Ultimate/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 0   // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 21  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 0, 21, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/Einstart-S/Configuration.h Bestand weergeven

@@ -898,11 +898,10 @@
898 898
 
899 899
 /**
900 900
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
901
- * X and Y offsets must be integers.
902 901
  *
903 902
  * In the following example the X and Y offsets are both positive:
904
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
905
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
903
+ *
904
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
906 905
  *
907 906
  *     +-- BACK ---+
908 907
  *     |           |
@@ -914,10 +913,10 @@
914 913
  *     |           |
915 914
  *     O-- FRONT --+
916 915
  *   (0,0)
916
+ *
917
+ * Specify a Probe position as { X, Y, Z }
917 918
  */
918
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
919
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
920
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
919
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
921 920
 
922 921
 // Certain types of probes need to stay away from edges
923 922
 #define MIN_PROBE_EDGE 10
@@ -951,7 +950,7 @@
951 950
  *
952 951
  * Use these settings to specify the distance (mm) to raise the probe (or
953 952
  * lower the bed). The values set here apply over and above any (negative)
954
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
953
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
955 954
  * Only integer values >= 1 are valid here.
956 955
  *
957 956
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1209,12 +1208,6 @@
1209 1208
   #define GRID_MAX_POINTS_X 3
1210 1209
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1211 1210
 
1212
-  // Set the boundaries for probing (where the probe can reach).
1213
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1214
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1215
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1216
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1217
-
1218 1211
   // Probe along the Y axis, advancing X after each column
1219 1212
   //#define PROBE_Y_FIRST
1220 1213
 

+ 6
- 13
config/examples/FYSETC/AIO_II/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER -44  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -6  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -3.9   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { -44, -6, -3.9 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/FYSETC/Cheetah 1.2/base/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/FYSETC/Cheetah/BLTouch/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER -44  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -6  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -3.9   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { -44, -6, -3.9 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/FYSETC/Cheetah/base/Configuration.h Bestand weergeven

@@ -893,11 +893,10 @@
893 893
 
894 894
 /**
895 895
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
896
- * X and Y offsets must be integers.
897 896
  *
898 897
  * In the following example the X and Y offsets are both positive:
899
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
900
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
898
+ *
899
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
901 900
  *
902 901
  *     +-- BACK ---+
903 902
  *     |           |
@@ -909,10 +908,10 @@
909 908
  *     |           |
910 909
  *     O-- FRONT --+
911 910
  *   (0,0)
911
+ *
912
+ * Specify a Probe position as { X, Y, Z }
912 913
  */
913
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
914
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
915
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
914
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
 
917 916
 // Certain types of probes need to stay away from edges
918 917
 #define MIN_PROBE_EDGE 10
@@ -946,7 +945,7 @@
946 945
  *
947 946
  * Use these settings to specify the distance (mm) to raise the probe (or
948 947
  * lower the bed). The values set here apply over and above any (negative)
949
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
948
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
950 949
  * Only integer values >= 1 are valid here.
951 950
  *
952 951
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1204,12 +1203,6 @@
1204 1203
   #define GRID_MAX_POINTS_X 3
1205 1204
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1206 1205
 
1207
-  // Set the boundaries for probing (where the probe can reach).
1208
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1209
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1210
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1212
-
1213 1206
   // Probe along the Y axis, advancing X after each column
1214 1207
   //#define PROBE_Y_FIRST
1215 1208
 

+ 6
- 13
config/examples/FYSETC/F6_13/Configuration.h Bestand weergeven

@@ -890,11 +890,10 @@
890 890
 
891 891
 /**
892 892
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
893
- * X and Y offsets must be integers.
894 893
  *
895 894
  * In the following example the X and Y offsets are both positive:
896
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
897
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
895
+ *
896
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
898 897
  *
899 898
  *     +-- BACK ---+
900 899
  *     |           |
@@ -906,10 +905,10 @@
906 905
  *     |           |
907 906
  *     O-- FRONT --+
908 907
  *   (0,0)
908
+ *
909
+ * Specify a Probe position as { X, Y, Z }
909 910
  */
910
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
911
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
912
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
911
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
913 912
 
914 913
 // Certain types of probes need to stay away from edges
915 914
 #define MIN_PROBE_EDGE 10
@@ -943,7 +942,7 @@
943 942
  *
944 943
  * Use these settings to specify the distance (mm) to raise the probe (or
945 944
  * lower the bed). The values set here apply over and above any (negative)
946
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
945
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
947 946
  * Only integer values >= 1 are valid here.
948 947
  *
949 948
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1201,12 +1200,6 @@
1201 1200
   #define GRID_MAX_POINTS_X 3
1202 1201
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1203 1202
 
1204
-  // Set the boundaries for probing (where the probe can reach).
1205
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1207
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1209
-
1210 1203
   // Probe along the Y axis, advancing X after each column
1211 1204
   //#define PROBE_Y_FIRST
1212 1205
 

+ 6
- 13
config/examples/Felix/Configuration.h Bestand weergeven

@@ -870,11 +870,10 @@
870 870
 
871 871
 /**
872 872
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
873
- * X and Y offsets must be integers.
874 873
  *
875 874
  * In the following example the X and Y offsets are both positive:
876
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
877
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
875
+ *
876
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
878 877
  *
879 878
  *     +-- BACK ---+
880 879
  *     |           |
@@ -886,10 +885,10 @@
886 885
  *     |           |
887 886
  *     O-- FRONT --+
888 887
  *   (0,0)
888
+ *
889
+ * Specify a Probe position as { X, Y, Z }
889 890
  */
890
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
891
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
892
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
891
+#define NOZZLE_TO_PROBE_OFFSET { -25, -29, -12.35 }
893 892
 
894 893
 // Certain types of probes need to stay away from edges
895 894
 #define MIN_PROBE_EDGE 10
@@ -923,7 +922,7 @@
923 922
  *
924 923
  * Use these settings to specify the distance (mm) to raise the probe (or
925 924
  * lower the bed). The values set here apply over and above any (negative)
926
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
925
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
927 926
  * Only integer values >= 1 are valid here.
928 927
  *
929 928
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1181,12 +1180,6 @@
1181 1180
   #define GRID_MAX_POINTS_X 3
1182 1181
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1183 1182
 
1184
-  // Set the boundaries for probing (where the probe can reach).
1185
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1186
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1187
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1188
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1189
-
1190 1183
   // Probe along the Y axis, advancing X after each column
1191 1184
   //#define PROBE_Y_FIRST
1192 1185
 

+ 6
- 13
config/examples/Felix/DUAL/Configuration.h Bestand weergeven

@@ -870,11 +870,10 @@
870 870
 
871 871
 /**
872 872
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
873
- * X and Y offsets must be integers.
874 873
  *
875 874
  * In the following example the X and Y offsets are both positive:
876
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
877
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
875
+ *
876
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
878 877
  *
879 878
  *     +-- BACK ---+
880 879
  *     |           |
@@ -886,10 +885,10 @@
886 885
  *     |           |
887 886
  *     O-- FRONT --+
888 887
  *   (0,0)
888
+ *
889
+ * Specify a Probe position as { X, Y, Z }
889 890
  */
890
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
891
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
892
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
891
+#define NOZZLE_TO_PROBE_OFFSET { -25, -29, -12.35 }
893 892
 
894 893
 // Certain types of probes need to stay away from edges
895 894
 #define MIN_PROBE_EDGE 10
@@ -923,7 +922,7 @@
923 922
  *
924 923
  * Use these settings to specify the distance (mm) to raise the probe (or
925 924
  * lower the bed). The values set here apply over and above any (negative)
926
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
925
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
927 926
  * Only integer values >= 1 are valid here.
928 927
  *
929 928
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1181,12 +1180,6 @@
1181 1180
   #define GRID_MAX_POINTS_X 3
1182 1181
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1183 1182
 
1184
-  // Set the boundaries for probing (where the probe can reach).
1185
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1186
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1187
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1188
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1189
-
1190 1183
   // Probe along the Y axis, advancing X after each column
1191 1184
   //#define PROBE_Y_FIRST
1192 1185
 

+ 6
- 13
config/examples/FlashForge/CreatorPro/Configuration.h Bestand weergeven

@@ -880,11 +880,10 @@
880 880
 
881 881
 /**
882 882
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
883
- * X and Y offsets must be integers.
884 883
  *
885 884
  * In the following example the X and Y offsets are both positive:
886
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
887
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
885
+ *
886
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
888 887
  *
889 888
  *     +-- BACK ---+
890 889
  *     |           |
@@ -896,10 +895,10 @@
896 895
  *     |           |
897 896
  *     O-- FRONT --+
898 897
  *   (0,0)
898
+ *
899
+ * Specify a Probe position as { X, Y, Z }
899 900
  */
900
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
901
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
902
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
901
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
903 902
 
904 903
 // Certain types of probes need to stay away from edges
905 904
 #define MIN_PROBE_EDGE 10
@@ -933,7 +932,7 @@
933 932
  *
934 933
  * Use these settings to specify the distance (mm) to raise the probe (or
935 934
  * lower the bed). The values set here apply over and above any (negative)
936
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
935
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
937 936
  * Only integer values >= 1 are valid here.
938 937
  *
939 938
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1192,12 +1191,6 @@
1192 1191
   #define GRID_MAX_POINTS_X 3
1193 1192
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1194 1193
 
1195
-  // Set the boundaries for probing (where the probe can reach).
1196
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1197
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1198
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1199
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1200
-
1201 1194
   // Probe along the Y axis, advancing X after each column
1202 1195
   //#define PROBE_Y_FIRST
1203 1196
 

+ 6
- 13
config/examples/FolgerTech/i3-2020/Configuration.h Bestand weergeven

@@ -894,11 +894,10 @@
894 894
 
895 895
 /**
896 896
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
897
- * X and Y offsets must be integers.
898 897
  *
899 898
  * In the following example the X and Y offsets are both positive:
900
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
901
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
899
+ *
900
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
902 901
  *
903 902
  *     +-- BACK ---+
904 903
  *     |           |
@@ -910,10 +909,10 @@
910 909
  *     |           |
911 910
  *     O-- FRONT --+
912 911
  *   (0,0)
912
+ *
913
+ * Specify a Probe position as { X, Y, Z }
913 914
  */
914
-#define X_PROBE_OFFSET_FROM_EXTRUDER 38     // X offset: -left  +right  [of the nozzle]
915
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -7     // Y offset: -front +behind [the nozzle]
916
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -10.75 // Z offset: -below +above  [the nozzle]
915
+#define NOZZLE_TO_PROBE_OFFSET { 38, -7, -10.75 }
917 916
 
918 917
 // Certain types of probes need to stay away from edges
919 918
 #define MIN_PROBE_EDGE 0
@@ -947,7 +946,7 @@
947 946
  *
948 947
  * Use these settings to specify the distance (mm) to raise the probe (or
949 948
  * lower the bed). The values set here apply over and above any (negative)
950
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
949
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
951 950
  * Only integer values >= 1 are valid here.
952 951
  *
953 952
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1205,12 +1204,6 @@
1205 1204
   #define GRID_MAX_POINTS_X 3
1206 1205
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1207 1206
 
1208
-  // Set the boundaries for probing (where the probe can reach).
1209
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1211
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1212
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1213
-
1214 1207
   // Probe along the Y axis, advancing X after each column
1215 1208
   //#define PROBE_Y_FIRST
1216 1209
 

+ 6
- 13
config/examples/Formbot/Raptor/Configuration.h Bestand weergeven

@@ -971,11 +971,10 @@
971 971
 
972 972
 /**
973 973
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
974
- * X and Y offsets must be integers.
975 974
  *
976 975
  * In the following example the X and Y offsets are both positive:
977
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
978
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
976
+ *
977
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
979 978
  *
980 979
  *     +-- BACK ---+
981 980
  *     |           |
@@ -987,10 +986,10 @@
987 986
  *     |           |
988 987
  *     O-- FRONT --+
989 988
  *   (0,0)
989
+ *
990
+ * Specify a Probe position as { X, Y, Z }
990 991
  */
991
-#define X_PROBE_OFFSET_FROM_EXTRUDER -22  // X offset: -left  +right  [of the nozzle]
992
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 0  // Y offset: -front +behind [the nozzle]
993
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.5   // Z offset: -below +above  [the nozzle]
992
+#define NOZZLE_TO_PROBE_OFFSET { -22, 0, -1.5 }
994 993
 #define MIN_PROBE_EDGE 10
995 994
 
996 995
 // X and Y axis travel speed (mm/m) between probes
@@ -1022,7 +1021,7 @@
1022 1021
  *
1023 1022
  * Use these settings to specify the distance (mm) to raise the probe (or
1024 1023
  * lower the bed). The values set here apply over and above any (negative)
1025
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
1024
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
1026 1025
  * Only integer values >= 1 are valid here.
1027 1026
  *
1028 1027
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1301,12 +1300,6 @@
1301 1300
   #define GRID_MAX_POINTS_X 6
1302 1301
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1303 1302
 
1304
-  // Set the boundaries for probing (where the probe can reach).
1305
-  #define LEFT_PROBE_BED_POSITION 30
1306
-  #define RIGHT_PROBE_BED_POSITION 365
1307
-  #define FRONT_PROBE_BED_POSITION 30
1308
-  #define BACK_PROBE_BED_POSITION 365
1309
-
1310 1303
   // The Z probe minimum outer margin (to validate G29 parameters).
1311 1304
   #define MIN_PROBE_EDGE 10
1312 1305
 

+ 6
- 13
config/examples/Formbot/T_Rex_2+/Configuration.h Bestand weergeven

@@ -917,11 +917,10 @@
917 917
 
918 918
 /**
919 919
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
920
- * X and Y offsets must be integers.
921 920
  *
922 921
  * In the following example the X and Y offsets are both positive:
923
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
924
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
922
+ *
923
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
925 924
  *
926 925
  *     +-- BACK ---+
927 926
  *     |           |
@@ -933,10 +932,10 @@
933 932
  *     |           |
934 933
  *     O-- FRONT --+
935 934
  *   (0,0)
935
+ *
936
+ * Specify a Probe position as { X, Y, Z }
936 937
  */
937
-#define X_PROBE_OFFSET_FROM_EXTRUDER -3      // X offset: -left  +right  [of the nozzle]
938
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 31      // Y offset: -front +behind [the nozzle]
939
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.25   // Z offset: -below +above  [the nozzle]
938
+#define NOZZLE_TO_PROBE_OFFSET { -3, 31, -1.25 }
940 939
 
941 940
 // Certain types of probes need to stay away from edges
942 941
 #define MIN_PROBE_EDGE 0
@@ -970,7 +969,7 @@
970 969
  *
971 970
  * Use these settings to specify the distance (mm) to raise the probe (or
972 971
  * lower the bed). The values set here apply over and above any (negative)
973
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
972
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
974 973
  * Only integer values >= 1 are valid here.
975 974
  *
976 975
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1228,12 +1227,6 @@
1228 1227
   #define GRID_MAX_POINTS_X 3
1229 1228
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1230 1229
 
1231
-  // Set the boundaries for probing (where the probe can reach).
1232
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1233
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1234
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1235
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1236
-
1237 1230
   // Probe along the Y axis, advancing X after each column
1238 1231
   //#define PROBE_Y_FIRST
1239 1232
 

+ 6
- 13
config/examples/Formbot/T_Rex_3/Configuration.h Bestand weergeven

@@ -904,11 +904,10 @@
904 904
 
905 905
 /**
906 906
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
907
- * X and Y offsets must be integers.
908 907
  *
909 908
  * In the following example the X and Y offsets are both positive:
910
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
911
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
909
+ *
910
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
912 911
  *
913 912
  *     +-- BACK ---+
914 913
  *     |           |
@@ -920,10 +919,10 @@
920 919
  *     |           |
921 920
  *     O-- FRONT --+
922 921
  *   (0,0)
922
+ *
923
+ * Specify a Probe position as { X, Y, Z }
923 924
  */
924
-#define X_PROBE_OFFSET_FROM_EXTRUDER -3      // X offset: -left  +right  [of the nozzle]
925
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 31      // Y offset: -front +behind [the nozzle]
926
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.25   // Z offset: -below +above  [the nozzle]
925
+#define NOZZLE_TO_PROBE_OFFSET { -3, 31, -1.25 }
927 926
 
928 927
 // Certain types of probes need to stay away from edges
929 928
 #define MIN_PROBE_EDGE 0
@@ -957,7 +956,7 @@
957 956
  *
958 957
  * Use these settings to specify the distance (mm) to raise the probe (or
959 958
  * lower the bed). The values set here apply over and above any (negative)
960
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
959
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
961 960
  * Only integer values >= 1 are valid here.
962 961
  *
963 962
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1224,12 +1223,6 @@
1224 1223
   #define GRID_MAX_POINTS_X 3
1225 1224
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1226 1225
 
1227
-  // Set the boundaries for probing (where the probe can reach).
1228
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1229
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE)
1230
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1231
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)
1232
-
1233 1226
   // Probe along the Y axis, advancing X after each column
1234 1227
   //#define PROBE_Y_FIRST
1235 1228
 

+ 6
- 13
config/examples/Geeetech/A10/Configuration.h Bestand weergeven

@@ -871,11 +871,10 @@
871 871
 
872 872
 /**
873 873
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
874
- * X and Y offsets must be integers.
875 874
  *
876 875
  * In the following example the X and Y offsets are both positive:
877
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
878
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
876
+ *
877
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
879 878
  *
880 879
  *     +-- BACK ---+
881 880
  *     |           |
@@ -887,10 +886,10 @@
887 886
  *     |           |
888 887
  *     O-- FRONT --+
889 888
  *   (0,0)
889
+ *
890
+ * Specify a Probe position as { X, Y, Z }
890 891
  */
891
-#define X_PROBE_OFFSET_FROM_EXTRUDER -37    // X offset: -left  +right  [of the nozzle]
892
-#define Y_PROBE_OFFSET_FROM_EXTRUDER   0    // Y offset: -front +behind [the nozzle]
893
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  -3.6  // Z offset: -below +above  [the nozzle]
892
+#define NOZZLE_TO_PROBE_OFFSET { -37, 0, -3.6 }
894 893
 
895 894
 // Certain types of probes need to stay away from edges
896 895
 #define MIN_PROBE_EDGE 10
@@ -924,7 +923,7 @@
924 923
  *
925 924
  * Use these settings to specify the distance (mm) to raise the probe (or
926 925
  * lower the bed). The values set here apply over and above any (negative)
927
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
926
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
928 927
  * Only integer values >= 1 are valid here.
929 928
  *
930 929
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1184,12 +1183,6 @@
1184 1183
   #define GRID_MAX_POINTS_X 5
1185 1184
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1186 1185
 
1187
-  // Set the boundaries for probing (where the probe can reach).
1188
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1189
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1190
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1191
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1192
-
1193 1186
   // Probe along the Y axis, advancing X after each column
1194 1187
   //#define PROBE_Y_FIRST
1195 1188
 

+ 6
- 13
config/examples/Geeetech/A10M/Configuration.h Bestand weergeven

@@ -871,11 +871,10 @@
871 871
 
872 872
 /**
873 873
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
874
- * X and Y offsets must be integers.
875 874
  *
876 875
  * In the following example the X and Y offsets are both positive:
877
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
878
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
876
+ *
877
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
879 878
  *
880 879
  *     +-- BACK ---+
881 880
  *     |           |
@@ -887,10 +886,10 @@
887 886
  *     |           |
888 887
  *     O-- FRONT --+
889 888
  *   (0,0)
889
+ *
890
+ * Specify a Probe position as { X, Y, Z }
890 891
  */
891
-#define X_PROBE_OFFSET_FROM_EXTRUDER -37    // X offset: -left  +right  [of the nozzle]
892
-#define Y_PROBE_OFFSET_FROM_EXTRUDER   0    // Y offset: -front +behind [the nozzle]
893
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  -3.6  // Z offset: -below +above  [the nozzle]
892
+#define NOZZLE_TO_PROBE_OFFSET { -37, 0, -3.6 }
894 893
 
895 894
 // Certain types of probes need to stay away from edges
896 895
 #define MIN_PROBE_EDGE 10
@@ -924,7 +923,7 @@
924 923
  *
925 924
  * Use these settings to specify the distance (mm) to raise the probe (or
926 925
  * lower the bed). The values set here apply over and above any (negative)
927
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
926
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
928 927
  * Only integer values >= 1 are valid here.
929 928
  *
930 929
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1184,12 +1183,6 @@
1184 1183
   #define GRID_MAX_POINTS_X 5
1185 1184
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1186 1185
 
1187
-  // Set the boundaries for probing (where the probe can reach).
1188
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1189
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1190
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1191
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1192
-
1193 1186
   // Probe along the Y axis, advancing X after each column
1194 1187
   //#define PROBE_Y_FIRST
1195 1188
 

+ 6
- 13
config/examples/Geeetech/A20M/Configuration.h Bestand weergeven

@@ -871,11 +871,10 @@
871 871
 
872 872
 /**
873 873
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
874
- * X and Y offsets must be integers.
875 874
  *
876 875
  * In the following example the X and Y offsets are both positive:
877
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
878
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
876
+ *
877
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
879 878
  *
880 879
  *     +-- BACK ---+
881 880
  *     |           |
@@ -887,10 +886,10 @@
887 886
  *     |           |
888 887
  *     O-- FRONT --+
889 888
  *   (0,0)
889
+ *
890
+ * Specify a Probe position as { X, Y, Z }
890 891
  */
891
-#define X_PROBE_OFFSET_FROM_EXTRUDER -37    // X offset: -left  +right  [of the nozzle]
892
-#define Y_PROBE_OFFSET_FROM_EXTRUDER   0    // Y offset: -front +behind [the nozzle]
893
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  -3.6  // Z offset: -below +above  [the nozzle]
892
+#define NOZZLE_TO_PROBE_OFFSET { -37, 0, -3.6 }
894 893
 
895 894
 // Certain types of probes need to stay away from edges
896 895
 #define MIN_PROBE_EDGE 10
@@ -924,7 +923,7 @@
924 923
  *
925 924
  * Use these settings to specify the distance (mm) to raise the probe (or
926 925
  * lower the bed). The values set here apply over and above any (negative)
927
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
926
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
928 927
  * Only integer values >= 1 are valid here.
929 928
  *
930 929
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1184,12 +1183,6 @@
1184 1183
   #define GRID_MAX_POINTS_X 5
1185 1184
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1186 1185
 
1187
-  // Set the boundaries for probing (where the probe can reach).
1188
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1189
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1190
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1191
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1192
-
1193 1186
   // Probe along the Y axis, advancing X after each column
1194 1187
   //#define PROBE_Y_FIRST
1195 1188
 

+ 6
- 13
config/examples/Geeetech/GT2560/Configuration.h Bestand weergeven

@@ -903,11 +903,10 @@
903 903
 
904 904
 /**
905 905
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
906
- * X and Y offsets must be integers.
907 906
  *
908 907
  * In the following example the X and Y offsets are both positive:
909
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
910
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
908
+ *
909
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
  *
912 911
  *     +-- BACK ---+
913 912
  *     |           |
@@ -919,10 +918,10 @@
919 918
  *     |           |
920 919
  *     O-- FRONT --+
921 920
  *   (0,0)
921
+ *
922
+ * Specify a Probe position as { X, Y, Z }
922 923
  */
923
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
924
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
925
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
924
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
926 925
 
927 926
 // Certain types of probes need to stay away from edges
928 927
 #define MIN_PROBE_EDGE 10
@@ -956,7 +955,7 @@
956 955
  *
957 956
  * Use these settings to specify the distance (mm) to raise the probe (or
958 957
  * lower the bed). The values set here apply over and above any (negative)
959
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
958
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
960 959
  * Only integer values >= 1 are valid here.
961 960
  *
962 961
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1214,12 +1213,6 @@
1214 1213
   #define GRID_MAX_POINTS_X 3
1215 1214
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1216 1215
 
1217
-  // Set the boundaries for probing (where the probe can reach).
1218
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1219
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1220
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1221
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1222
-
1223 1216
   // Probe along the Y axis, advancing X after each column
1224 1217
   //#define PROBE_Y_FIRST
1225 1218
 

+ 6
- 13
config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE  8
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/Geeetech/MeCreator2/Configuration.h Bestand weergeven

@@ -895,11 +895,10 @@
895 895
 
896 896
 /**
897 897
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
898
- * X and Y offsets must be integers.
899 898
  *
900 899
  * In the following example the X and Y offsets are both positive:
901
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
902
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
900
+ *
901
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
903 902
  *
904 903
  *     +-- BACK ---+
905 904
  *     |           |
@@ -911,10 +910,10 @@
911 910
  *     |           |
912 911
  *     O-- FRONT --+
913 912
  *   (0,0)
913
+ *
914
+ * Specify a Probe position as { X, Y, Z }
914 915
  */
915
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
916
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
917
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
916
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
918 917
 
919 918
 // Certain types of probes need to stay away from edges
920 919
 #define MIN_PROBE_EDGE 10
@@ -948,7 +947,7 @@
948 947
  *
949 948
  * Use these settings to specify the distance (mm) to raise the probe (or
950 949
  * lower the bed). The values set here apply over and above any (negative)
951
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
950
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
952 951
  * Only integer values >= 1 are valid here.
953 952
  *
954 953
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1206,12 +1205,6 @@
1206 1205
   #define GRID_MAX_POINTS_X 3
1207 1206
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1208 1207
 
1209
-  // Set the boundaries for probing (where the probe can reach).
1210
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1212
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1213
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1214
-
1215 1208
   // Probe along the Y axis, advancing X after each column
1216 1209
   //#define PROBE_Y_FIRST
1217 1210
 

+ 6
- 13
config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h Bestand weergeven

@@ -909,11 +909,10 @@
909 909
 
910 910
 /**
911 911
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
912
- * X and Y offsets must be integers.
913 912
  *
914 913
  * In the following example the X and Y offsets are both positive:
915
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
916
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
914
+ *
915
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
917 916
  *
918 917
  *     +-- BACK ---+
919 918
  *     |           |
@@ -925,10 +924,10 @@
925 924
  *     |           |
926 925
  *     O-- FRONT --+
927 926
  *   (0,0)
927
+ *
928
+ * Specify a Probe position as { X, Y, Z }
928 929
  */
929
-#define X_PROBE_OFFSET_FROM_EXTRUDER 4     // X offset: -left  +right  [of the nozzle]
930
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -44   // Y offset: -front +behind [the nozzle]
931
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4  // Z offset: -below +above  [the nozzle]
930
+#define NOZZLE_TO_PROBE_OFFSET { 4, -44, -1.4 }
932 931
 
933 932
 // Certain types of probes need to stay away from edges
934 933
 #define MIN_PROBE_EDGE 10
@@ -962,7 +961,7 @@
962 961
  *
963 962
  * Use these settings to specify the distance (mm) to raise the probe (or
964 963
  * lower the bed). The values set here apply over and above any (negative)
965
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
964
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
966 965
  * Only integer values >= 1 are valid here.
967 966
  *
968 967
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1220,12 +1219,6 @@
1220 1219
   #define GRID_MAX_POINTS_X 4
1221 1220
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1222 1221
 
1223
-  // Set the boundaries for probing (where the probe can reach).
1224
-  //#define LEFT_PROBE_BED_POSITION 10
1225
-  //#define RIGHT_PROBE_BED_POSITION (X_MAX_POS - X_PROBE_OFFSET_FROM_EXTRUDER - 14)
1226
-  //#define FRONT_PROBE_BED_POSITION 15
1227
-  //#define BACK_PROBE_BED_POSITION (Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER - 25)
1228
-
1229 1222
   // Probe along the Y axis, advancing X after each column
1230 1223
   //#define PROBE_Y_FIRST
1231 1224
 

+ 6
- 13
config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h Bestand weergeven

@@ -908,11 +908,10 @@
908 908
 
909 909
 /**
910 910
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
911
- * X and Y offsets must be integers.
912 911
  *
913 912
  * In the following example the X and Y offsets are both positive:
914
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
915
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
913
+ *
914
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
  *
917 916
  *     +-- BACK ---+
918 917
  *     |           |
@@ -924,10 +923,10 @@
924 923
  *     |           |
925 924
  *     O-- FRONT --+
926 925
  *   (0,0)
926
+ *
927
+ * Specify a Probe position as { X, Y, Z }
927 928
  */
928
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
929
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
930
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
929
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
931 930
 
932 931
 // Certain types of probes need to stay away from edges
933 932
 #define MIN_PROBE_EDGE 10
@@ -961,7 +960,7 @@
961 960
  *
962 961
  * Use these settings to specify the distance (mm) to raise the probe (or
963 962
  * lower the bed). The values set here apply over and above any (negative)
964
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
963
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
965 964
  * Only integer values >= 1 are valid here.
966 965
  *
967 966
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1219,12 +1218,6 @@
1219 1218
   #define GRID_MAX_POINTS_X 4
1220 1219
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1221 1220
 
1222
-  // Set the boundaries for probing (where the probe can reach).
1223
-  //#define LEFT_PROBE_BED_POSITION 10
1224
-  //#define RIGHT_PROBE_BED_POSITION (X_MAX_POS - X_PROBE_OFFSET_FROM_EXTRUDER - 14)
1225
-  //#define FRONT_PROBE_BED_POSITION 15
1226
-  //#define BACK_PROBE_BED_POSITION (Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER - 25)
1227
-
1228 1221
   // Probe along the Y axis, advancing X after each column
1229 1222
   //#define PROBE_Y_FIRST
1230 1223
 

+ 6
- 13
config/examples/Geeetech/Prusa i3 Pro C/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/Geeetech/Prusa i3 Pro W/Configuration.h Bestand weergeven

@@ -888,11 +888,10 @@
888 888
 
889 889
 /**
890 890
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
891
- * X and Y offsets must be integers.
892 891
  *
893 892
  * In the following example the X and Y offsets are both positive:
894
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
895
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
893
+ *
894
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
896 895
  *
897 896
  *     +-- BACK ---+
898 897
  *     |           |
@@ -904,10 +903,10 @@
904 903
  *     |           |
905 904
  *     O-- FRONT --+
906 905
  *   (0,0)
906
+ *
907
+ * Specify a Probe position as { X, Y, Z }
907 908
  */
908
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
909
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
910
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
909
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
911 910
 
912 911
 // Certain types of probes need to stay away from edges
913 912
 #define MIN_PROBE_EDGE 10
@@ -941,7 +940,7 @@
941 940
  *
942 941
  * Use these settings to specify the distance (mm) to raise the probe (or
943 942
  * lower the bed). The values set here apply over and above any (negative)
944
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
943
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
945 944
  * Only integer values >= 1 are valid here.
946 945
  *
947 946
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1199,12 +1198,6 @@
1199 1198
   #define GRID_MAX_POINTS_X 3
1200 1199
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1201 1200
 
1202
-  // Set the boundaries for probing (where the probe can reach).
1203
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1204
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1205
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1206
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1207
-
1208 1201
   // Probe along the Y axis, advancing X after each column
1209 1202
   //#define PROBE_Y_FIRST
1210 1203
 

+ 6
- 13
config/examples/HMS434/Configuration.h Bestand weergeven

@@ -875,11 +875,10 @@
875 875
 
876 876
 /**
877 877
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
878
- * X and Y offsets must be integers.
879 878
  *
880 879
  * In the following example the X and Y offsets are both positive:
881
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
882
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
880
+ *
881
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
883 882
  *
884 883
  *     +-- BACK ---+
885 884
  *     |           |
@@ -891,10 +890,10 @@
891 890
  *     |           |
892 891
  *     O-- FRONT --+
893 892
  *   (0,0)
893
+ *
894
+ * Specify a Probe position as { X, Y, Z }
894 895
  */
895
-#define X_PROBE_OFFSET_FROM_EXTRUDER -21  // X offset: -left  +right  [of the nozzle]
896
-#define Y_PROBE_OFFSET_FROM_EXTRUDER  22  // Y offset: -front +behind [the nozzle]
897
-#define Z_PROBE_OFFSET_FROM_EXTRUDER  -1.54   // Z offset: -below +above  [the nozzle]
896
+#define NOZZLE_TO_PROBE_OFFSET { -21, 22, -1.54 }
898 897
 
899 898
 // Certain types of probes need to stay away from edges
900 899
 #define MIN_PROBE_EDGE 20
@@ -928,7 +927,7 @@
928 927
  *
929 928
  * Use these settings to specify the distance (mm) to raise the probe (or
930 929
  * lower the bed). The values set here apply over and above any (negative)
931
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
930
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
932 931
  * Only integer values >= 1 are valid here.
933 932
  *
934 933
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1186,12 +1185,6 @@
1186 1185
   #define GRID_MAX_POINTS_X 5
1187 1186
   #define GRID_MAX_POINTS_Y 3
1188 1187
 
1189
-  // Set the boundaries for probing (where the probe can reach).
1190
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1191
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1192
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1193
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1194
-
1195 1188
   // Probe along the Y axis, advancing X after each column
1196 1189
   //#define PROBE_Y_FIRST
1197 1190
 

+ 6
- 13
config/examples/Infitary/i3-M508/Configuration.h Bestand weergeven

@@ -892,11 +892,10 @@
892 892
 
893 893
 /**
894 894
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
895
- * X and Y offsets must be integers.
896 895
  *
897 896
  * In the following example the X and Y offsets are both positive:
898
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
899
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
897
+ *
898
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
900 899
  *
901 900
  *     +-- BACK ---+
902 901
  *     |           |
@@ -908,10 +907,10 @@
908 907
  *     |           |
909 908
  *     O-- FRONT --+
910 909
  *   (0,0)
910
+ *
911
+ * Specify a Probe position as { X, Y, Z }
911 912
  */
912
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
913
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
914
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
913
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
915 914
 
916 915
 // Certain types of probes need to stay away from edges
917 916
 #define MIN_PROBE_EDGE 10
@@ -945,7 +944,7 @@
945 944
  *
946 945
  * Use these settings to specify the distance (mm) to raise the probe (or
947 946
  * lower the bed). The values set here apply over and above any (negative)
948
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
947
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
949 948
  * Only integer values >= 1 are valid here.
950 949
  *
951 950
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1203,12 +1202,6 @@
1203 1202
   #define GRID_MAX_POINTS_X 3
1204 1203
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1205 1204
 
1206
-  // Set the boundaries for probing (where the probe can reach).
1207
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1209
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1211
-
1212 1205
   // Probe along the Y axis, advancing X after each column
1213 1206
   //#define PROBE_Y_FIRST
1214 1207
 

+ 6
- 13
config/examples/JGAurora/A1/Configuration.h Bestand weergeven

@@ -895,11 +895,10 @@
895 895
 
896 896
 /**
897 897
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
898
- * X and Y offsets must be integers.
899 898
  *
900 899
  * In the following example the X and Y offsets are both positive:
901
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
902
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
900
+ *
901
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
903 902
  *
904 903
  *     +-- BACK ---+
905 904
  *     |           |
@@ -911,10 +910,10 @@
911 910
  *     |           |
912 911
  *     O-- FRONT --+
913 912
  *   (0,0)
913
+ *
914
+ * Specify a Probe position as { X, Y, Z }
914 915
  */
915
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
916
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
917
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
916
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
918 917
 
919 918
 // Certain types of probes need to stay away from edges
920 919
 #define MIN_PROBE_EDGE 10
@@ -948,7 +947,7 @@
948 947
  *
949 948
  * Use these settings to specify the distance (mm) to raise the probe (or
950 949
  * lower the bed). The values set here apply over and above any (negative)
951
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
950
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
952 951
  * Only integer values >= 1 are valid here.
953 952
  *
954 953
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1206,12 +1205,6 @@
1206 1205
   #define GRID_MAX_POINTS_X 3
1207 1206
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1208 1207
 
1209
-  // Set the boundaries for probing (where the probe can reach).
1210
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1212
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1213
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1214
-
1215 1208
   // Probe along the Y axis, advancing X after each column
1216 1209
   //#define PROBE_Y_FIRST
1217 1210
 

+ 6
- 13
config/examples/JGAurora/A5/Configuration.h Bestand weergeven

@@ -900,11 +900,10 @@
900 900
 
901 901
 /**
902 902
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
903
- * X and Y offsets must be integers.
904 903
  *
905 904
  * In the following example the X and Y offsets are both positive:
906
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
907
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
905
+ *
906
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
908 907
  *
909 908
  *     +-- BACK ---+
910 909
  *     |           |
@@ -916,10 +915,10 @@
916 915
  *     |           |
917 916
  *     O-- FRONT --+
918 917
  *   (0,0)
918
+ *
919
+ * Specify a Probe position as { X, Y, Z }
919 920
  */
920
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
921
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
922
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
921
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
923 922
 
924 923
 // Certain types of probes need to stay away from edges
925 924
 #define MIN_PROBE_EDGE 10
@@ -953,7 +952,7 @@
953 952
  *
954 953
  * Use these settings to specify the distance (mm) to raise the probe (or
955 954
  * lower the bed). The values set here apply over and above any (negative)
956
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
955
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
957 956
  * Only integer values >= 1 are valid here.
958 957
  *
959 958
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1211,12 +1210,6 @@
1211 1210
   #define GRID_MAX_POINTS_X 5
1212 1211
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1213 1212
 
1214
-  // Set the boundaries for probing (where the probe can reach).
1215
-  //#define LEFT_PROBE_BED_POSITION 15
1216
-  //#define RIGHT_PROBE_BED_POSITION 170
1217
-  //#define FRONT_PROBE_BED_POSITION 20
1218
-  //#define BACK_PROBE_BED_POSITION 170
1219
-
1220 1213
   // Probe along the Y axis, advancing X after each column
1221 1214
   //#define PROBE_Y_FIRST
1222 1215
 

+ 6
- 13
config/examples/JGAurora/A5S/Configuration.h Bestand weergeven

@@ -895,11 +895,10 @@
895 895
 
896 896
 /**
897 897
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
898
- * X and Y offsets must be integers.
899 898
  *
900 899
  * In the following example the X and Y offsets are both positive:
901
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
902
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
900
+ *
901
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
903 902
  *
904 903
  *     +-- BACK ---+
905 904
  *     |           |
@@ -911,10 +910,10 @@
911 910
  *     |           |
912 911
  *     O-- FRONT --+
913 912
  *   (0,0)
913
+ *
914
+ * Specify a Probe position as { X, Y, Z }
914 915
  */
915
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
916
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
917
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
916
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
918 917
 
919 918
 // Certain types of probes need to stay away from edges
920 919
 #define MIN_PROBE_EDGE 10
@@ -948,7 +947,7 @@
948 947
  *
949 948
  * Use these settings to specify the distance (mm) to raise the probe (or
950 949
  * lower the bed). The values set here apply over and above any (negative)
951
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
950
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
952 951
  * Only integer values >= 1 are valid here.
953 952
  *
954 953
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1206,12 +1205,6 @@
1206 1205
   #define GRID_MAX_POINTS_X 3
1207 1206
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1208 1207
 
1209
-  // Set the boundaries for probing (where the probe can reach).
1210
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1211
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1212
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1213
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1214
-
1215 1208
   // Probe along the Y axis, advancing X after each column
1216 1209
   //#define PROBE_Y_FIRST
1217 1210
 

+ 6
- 13
config/examples/MakerParts/Configuration.h Bestand weergeven

@@ -908,11 +908,10 @@
908 908
 
909 909
 /**
910 910
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
911
- * X and Y offsets must be integers.
912 911
  *
913 912
  * In the following example the X and Y offsets are both positive:
914
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
915
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
913
+ *
914
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
  *
917 916
  *     +-- BACK ---+
918 917
  *     |           |
@@ -924,10 +923,10 @@
924 923
  *     |           |
925 924
  *     O-- FRONT --+
926 925
  *   (0,0)
926
+ *
927
+ * Specify a Probe position as { X, Y, Z }
927 928
  */
928
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
929
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
930
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
929
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
931 930
 
932 931
 // Certain types of probes need to stay away from edges
933 932
 #define MIN_PROBE_EDGE 10
@@ -961,7 +960,7 @@
961 960
  *
962 961
  * Use these settings to specify the distance (mm) to raise the probe (or
963 962
  * lower the bed). The values set here apply over and above any (negative)
964
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
963
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
965 964
  * Only integer values >= 1 are valid here.
966 965
  *
967 966
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1219,12 +1218,6 @@
1219 1218
   #define GRID_MAX_POINTS_X 3
1220 1219
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1221 1220
 
1222
-  // Set the boundaries for probing (where the probe can reach).
1223
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1224
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1225
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1226
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1227
-
1228 1221
   // Probe along the Y axis, advancing X after each column
1229 1222
   //#define PROBE_Y_FIRST
1230 1223
 

+ 6
- 13
config/examples/Malyan/M150/Configuration.h Bestand weergeven

@@ -908,11 +908,10 @@
908 908
 
909 909
 /**
910 910
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
911
- * X and Y offsets must be integers.
912 911
  *
913 912
  * In the following example the X and Y offsets are both positive:
914
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
915
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
913
+ *
914
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
916 915
  *
917 916
  *     +-- BACK ---+
918 917
  *     |           |
@@ -924,14 +923,14 @@
924 923
  *     |           |
925 924
  *     O-- FRONT --+
926 925
  *   (0,0)
926
+ *
927
+ * Specify a Probe position as { X, Y, Z }
927 928
  */
928 929
 
929 930
 // Set for HoolyHoo's probe mount
930 931
 // http://www.thingiverse.com/thing:1960419
931 932
 // Note: HoolyHoo mount is X=35, Y=-50.
932
-//#define X_PROBE_OFFSET_FROM_EXTRUDER 35  // X offset: -left  +right  [of the nozzle]
933
-//#define Y_PROBE_OFFSET_FROM_EXTRUDER -50  // Y offset: -front +behind [the nozzle]
934
-//#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
933
+//#define NOZZLE_TO_PROBE_OFFSET { 35, -50, 0 }
935 934
 
936 935
 // Certain types of probes need to stay away from edges
937 936
 #define MIN_PROBE_EDGE 10
@@ -965,7 +964,7 @@
965 964
  *
966 965
  * Use these settings to specify the distance (mm) to raise the probe (or
967 966
  * lower the bed). The values set here apply over and above any (negative)
968
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
967
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
969 968
  * Only integer values >= 1 are valid here.
970 969
  *
971 970
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1227,12 +1226,6 @@
1227 1226
   #define GRID_MAX_POINTS_X 3
1228 1227
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1229 1228
 
1230
-  // Set the boundaries for probing (where the probe can reach).
1231
-  //#define LEFT_PROBE_BED_POSITION 50
1232
-  //#define RIGHT_PROBE_BED_POSITION 150
1233
-  //#define FRONT_PROBE_BED_POSITION 50
1234
-  //#define BACK_PROBE_BED_POSITION 150
1235
-
1236 1229
   // Probe along the Y axis, advancing X after each column
1237 1230
   //#define PROBE_Y_FIRST
1238 1231
 

+ 6
- 13
config/examples/Malyan/M200/Configuration.h Bestand weergeven

@@ -887,11 +887,10 @@
887 887
 
888 888
 /**
889 889
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
890
- * X and Y offsets must be integers.
891 890
  *
892 891
  * In the following example the X and Y offsets are both positive:
893
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
894
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
892
+ *
893
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
895 894
  *
896 895
  *     +-- BACK ---+
897 896
  *     |           |
@@ -903,10 +902,10 @@
903 902
  *     |           |
904 903
  *     O-- FRONT --+
905 904
  *   (0,0)
905
+ *
906
+ * Specify a Probe position as { X, Y, Z }
906 907
  */
907
-#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
908
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
909
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
908
+#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
910 909
 
911 910
 // Certain types of probes need to stay away from edges
912 911
 #define MIN_PROBE_EDGE 10
@@ -940,7 +939,7 @@
940 939
  *
941 940
  * Use these settings to specify the distance (mm) to raise the probe (or
942 941
  * lower the bed). The values set here apply over and above any (negative)
943
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
942
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
944 943
  * Only integer values >= 1 are valid here.
945 944
  *
946 945
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1198,12 +1197,6 @@
1198 1197
   #define GRID_MAX_POINTS_X 3
1199 1198
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1200 1199
 
1201
-  // Set the boundaries for probing (where the probe can reach).
1202
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1203
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1204
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1205
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1206
-
1207 1200
   // Probe along the Y axis, advancing X after each column
1208 1201
   //#define PROBE_Y_FIRST
1209 1202
 

+ 6
- 13
config/examples/Micromake/C1/basic/Configuration.h Bestand weergeven

@@ -892,11 +892,10 @@
892 892
 
893 893
 /**
894 894
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
895
- * X and Y offsets must be integers.
896 895
  *
897 896
  * In the following example the X and Y offsets are both positive:
898
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
899
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
897
+ *
898
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
900 899
  *
901 900
  *     +-- BACK ---+
902 901
  *     |           |
@@ -908,10 +907,10 @@
908 907
  *     |           |
909 908
  *     O-- FRONT --+
910 909
  *   (0,0)
910
+ *
911
+ * Specify a Probe position as { X, Y, Z }
911 912
  */
912
-#define X_PROBE_OFFSET_FROM_EXTRUDER 0  // X offset: -left  +right  [of the nozzle]
913
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 0  // Y offset: -front +behind [the nozzle]
914
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
913
+#define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
915 914
 
916 915
 // Certain types of probes need to stay away from edges
917 916
 #define MIN_PROBE_EDGE 10
@@ -945,7 +944,7 @@
945 944
  *
946 945
  * Use these settings to specify the distance (mm) to raise the probe (or
947 946
  * lower the bed). The values set here apply over and above any (negative)
948
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
947
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
949 948
  * Only integer values >= 1 are valid here.
950 949
  *
951 950
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1203,12 +1202,6 @@
1203 1202
   #define GRID_MAX_POINTS_X 3
1204 1203
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1205 1204
 
1206
-  // Set the boundaries for probing (where the probe can reach).
1207
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1209
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1211
-
1212 1205
   // Probe along the Y axis, advancing X after each column
1213 1206
   //#define PROBE_Y_FIRST
1214 1207
 

+ 6
- 13
config/examples/Micromake/C1/enhanced/Configuration.h Bestand weergeven

@@ -892,11 +892,10 @@
892 892
 
893 893
 /**
894 894
  * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
895
- * X and Y offsets must be integers.
896 895
  *
897 896
  * In the following example the X and Y offsets are both positive:
898
- * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
899
- * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
897
+ *
898
+ *   #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
900 899
  *
901 900
  *     +-- BACK ---+
902 901
  *     |           |
@@ -908,10 +907,10 @@
908 907
  *     |           |
909 908
  *     O-- FRONT --+
910 909
  *   (0,0)
910
+ *
911
+ * Specify a Probe position as { X, Y, Z }
911 912
  */
912
-#define X_PROBE_OFFSET_FROM_EXTRUDER 0  // X offset: -left  +right  [of the nozzle]
913
-#define Y_PROBE_OFFSET_FROM_EXTRUDER 0  // Y offset: -front +behind [the nozzle]
914
-#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
913
+#define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
915 914
 
916 915
 // Certain types of probes need to stay away from edges
917 916
 #define MIN_PROBE_EDGE 10
@@ -945,7 +944,7 @@
945 944
  *
946 945
  * Use these settings to specify the distance (mm) to raise the probe (or
947 946
  * lower the bed). The values set here apply over and above any (negative)
948
- * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
947
+ * probe Z Offset set with NOZZLE_TO_PROBE_OFFSET, M851, or the LCD.
949 948
  * Only integer values >= 1 are valid here.
950 949
  *
951 950
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
@@ -1203,12 +1202,6 @@
1203 1202
   #define GRID_MAX_POINTS_X 3
1204 1203
   #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
1205 1204
 
1206
-  // Set the boundaries for probing (where the probe can reach).
1207
-  //#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
1208
-  //#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - (MIN_PROBE_EDGE))
1209
-  //#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
1210
-  //#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - (MIN_PROBE_EDGE))
1211
-
1212 1205
   // Probe along the Y axis, advancing X after each column
1213 1206
   //#define PROBE_Y_FIRST
1214 1207
 

+ 0
- 0
config/examples/Mks/Robin/Configuration.h Bestand weergeven


Some files were not shown because too many files changed in this diff

Laden…
Annuleren
Opslaan