Browse Source

Enable Z axis and delta sensorless homing (#9516)

Thomas Moore 6 years ago
parent
commit
1541224a81
50 changed files with 439 additions and 290 deletions
  1. 6
    5
      Marlin/Configuration_adv.h
  2. 6
    5
      Marlin/src/config/default/Configuration_adv.h
  3. 6
    5
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h
  4. 6
    5
      Marlin/src/config/examples/Anet/A6/Configuration_adv.h
  5. 6
    5
      Marlin/src/config/examples/Anet/A8/Configuration_adv.h
  6. 6
    5
      Marlin/src/config/examples/Azteeg/X5GT/Configuration_adv.h
  7. 6
    5
      Marlin/src/config/examples/BIBO/TouchX/Configuration_adv.h
  8. 6
    5
      Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h
  9. 6
    5
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h
  10. 6
    5
      Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h
  11. 6
    5
      Marlin/src/config/examples/Cartesio/Configuration_adv.h
  12. 6
    5
      Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h
  13. 6
    5
      Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h
  14. 6
    5
      Marlin/src/config/examples/Creality/Ender/Configuration_adv.h
  15. 6
    5
      Marlin/src/config/examples/Felix/Configuration_adv.h
  16. 6
    5
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h
  17. 6
    5
      Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h
  18. 6
    5
      Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h
  19. 6
    5
      Marlin/src/config/examples/MakerParts/Configuration_adv.h
  20. 6
    5
      Marlin/src/config/examples/Malyan/M150/Configuration_adv.h
  21. 6
    5
      Marlin/src/config/examples/Malyan/M200/Configuration_adv.h
  22. 6
    5
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h
  23. 6
    5
      Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h
  24. 6
    5
      Marlin/src/config/examples/RigidBot/Configuration_adv.h
  25. 6
    5
      Marlin/src/config/examples/SCARA/Configuration_adv.h
  26. 6
    5
      Marlin/src/config/examples/Sanguinololu/Configuration_adv.h
  27. 6
    5
      Marlin/src/config/examples/TheBorg/Configuration_adv.h
  28. 6
    5
      Marlin/src/config/examples/TinyBoy2/Configuration_adv.h
  29. 6
    5
      Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h
  30. 6
    5
      Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h
  31. 6
    5
      Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h
  32. 6
    5
      Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h
  33. 6
    5
      Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h
  34. 6
    5
      Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h
  35. 6
    5
      Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h
  36. 6
    5
      Marlin/src/config/examples/delta/generic/Configuration_adv.h
  37. 6
    5
      Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h
  38. 6
    5
      Marlin/src/config/examples/delta/kossel_pro/Configuration_adv.h
  39. 6
    5
      Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h
  40. 6
    5
      Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h
  41. 6
    5
      Marlin/src/config/examples/makibox/Configuration_adv.h
  42. 6
    5
      Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h
  43. 6
    5
      Marlin/src/config/examples/wt150/Configuration_adv.h
  44. 4
    4
      Marlin/src/feature/tmc_util.cpp
  45. 23
    11
      Marlin/src/gcode/feature/trinamic/M911-M915.cpp
  46. 5
    0
      Marlin/src/inc/Conditionals_post.h
  47. 8
    0
      Marlin/src/inc/SanityCheck.h
  48. 85
    40
      Marlin/src/module/configuration_store.cpp
  49. 30
    0
      Marlin/src/module/delta.cpp
  50. 26
    20
      Marlin/src/module/motion.cpp

+ 6
- 5
Marlin/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/default/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Anet/A6/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Anet/A8/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Azteeg/X5GT/Configuration_adv.h View File

@@ -1140,20 +1140,21 @@
1140 1140
   /**
1141 1141
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1142 1142
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1143
-   * X and Y homing will always be done in spreadCycle mode.
1143
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1144 1144
    *
1145
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146 1146
    * Higher values make the system LESS sensitive.
1147 1147
    * Lower value make the system MORE sensitive.
1148 1148
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1149
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1150
-   * M914 X/Y to live tune the setting
1149
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1150
+   * M914 X/Y/Z to live tune the setting
1151 1151
    */
1152 1152
   //#define SENSORLESS_HOMING // TMC2130 only
1153 1153
 
1154 1154
   #if ENABLED(SENSORLESS_HOMING)
1155 1155
     #define X_HOMING_SENSITIVITY  8
1156 1156
     #define Y_HOMING_SENSITIVITY  8
1157
+    #define Z_HOMING_SENSITIVITY  8
1157 1158
   #endif
1158 1159
 
1159 1160
   /**
@@ -1557,7 +1558,7 @@
1557 1558
    * this setting determines the minimum update time between checks. A value of 100 works well with
1558 1559
    * error rolling average when attempting to correct only for skips and not for vibration.
1559 1560
    */
1560
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1561
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1561 1562
 
1562 1563
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1563 1564
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/BIBO/TouchX/Configuration_adv.h View File

@@ -1144,20 +1144,21 @@
1144 1144
   /**
1145 1145
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1146 1146
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1147
-   * X and Y homing will always be done in spreadCycle mode.
1147
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1148 1148
    *
1149
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1149
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1150 1150
    * Higher values make the system LESS sensitive.
1151 1151
    * Lower value make the system MORE sensitive.
1152 1152
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1153
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1154
-   * M914 X/Y to live tune the setting
1153
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1154
+   * M914 X/Y/Z to live tune the setting
1155 1155
    */
1156 1156
   //#define SENSORLESS_HOMING // TMC2130 only
1157 1157
 
1158 1158
   #if ENABLED(SENSORLESS_HOMING)
1159 1159
     #define X_HOMING_SENSITIVITY  8
1160 1160
     #define Y_HOMING_SENSITIVITY  8
1161
+    #define Z_HOMING_SENSITIVITY  8
1161 1162
   #endif
1162 1163
 
1163 1164
   /**
@@ -1561,7 +1562,7 @@
1561 1562
    * this setting determines the minimum update time between checks. A value of 100 works well with
1562 1563
    * error rolling average when attempting to correct only for skips and not for vibration.
1563 1564
    */
1564
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1565
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1565 1566
 
1566 1567
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1567 1568
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Cartesio/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1559,7 +1560,7 @@
1559 1560
    * this setting determines the minimum update time between checks. A value of 100 works well with
1560 1561
    * error rolling average when attempting to correct only for skips and not for vibration.
1561 1562
    */
1562
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1563
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1563 1564
 
1564 1565
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1565 1566
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h View File

@@ -1133,20 +1133,21 @@
1133 1133
   /**
1134 1134
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1135 1135
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1136
-   * X and Y homing will always be done in spreadCycle mode.
1136
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1137 1137
    *
1138
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1138
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1139 1139
    * Higher values make the system LESS sensitive.
1140 1140
    * Lower value make the system MORE sensitive.
1141 1141
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1142
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1143
-   * M914 X/Y to live tune the setting
1142
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1143
+   * M914 X/Y/Z to live tune the setting
1144 1144
    */
1145 1145
   //#define SENSORLESS_HOMING // TMC2130 only
1146 1146
 
1147 1147
   #if ENABLED(SENSORLESS_HOMING)
1148 1148
     #define X_HOMING_SENSITIVITY  8
1149 1149
     #define Y_HOMING_SENSITIVITY  8
1150
+    #define Z_HOMING_SENSITIVITY  8
1150 1151
   #endif
1151 1152
 
1152 1153
   /**
@@ -1550,7 +1551,7 @@
1550 1551
    * this setting determines the minimum update time between checks. A value of 100 works well with
1551 1552
    * error rolling average when attempting to correct only for skips and not for vibration.
1552 1553
    */
1553
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1554
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1554 1555
 
1555 1556
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1556 1557
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Creality/Ender/Configuration_adv.h View File

@@ -1133,20 +1133,21 @@
1133 1133
   /**
1134 1134
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1135 1135
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1136
-   * X and Y homing will always be done in spreadCycle mode.
1136
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1137 1137
    *
1138
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1138
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1139 1139
    * Higher values make the system LESS sensitive.
1140 1140
    * Lower value make the system MORE sensitive.
1141 1141
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1142
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1143
-   * M914 X/Y to live tune the setting
1142
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1143
+   * M914 X/Y/Z to live tune the setting
1144 1144
    */
1145 1145
   //#define SENSORLESS_HOMING // TMC2130 only
1146 1146
 
1147 1147
   #if ENABLED(SENSORLESS_HOMING)
1148 1148
     #define X_HOMING_SENSITIVITY  8
1149 1149
     #define Y_HOMING_SENSITIVITY  8
1150
+    #define Z_HOMING_SENSITIVITY  8
1150 1151
   #endif
1151 1152
 
1152 1153
   /**
@@ -1550,7 +1551,7 @@
1550 1551
    * this setting determines the minimum update time between checks. A value of 100 works well with
1551 1552
    * error rolling average when attempting to correct only for skips and not for vibration.
1552 1553
    */
1553
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1554
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1554 1555
 
1555 1556
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1556 1557
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Felix/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h View File

@@ -1133,20 +1133,21 @@
1133 1133
   /**
1134 1134
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1135 1135
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1136
-   * X and Y homing will always be done in spreadCycle mode.
1136
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1137 1137
    *
1138
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1138
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1139 1139
    * Higher values make the system LESS sensitive.
1140 1140
    * Lower value make the system MORE sensitive.
1141 1141
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1142
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1143
-   * M914 X/Y to live tune the setting
1142
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1143
+   * M914 X/Y/Z to live tune the setting
1144 1144
    */
1145 1145
   //#define SENSORLESS_HOMING // TMC2130 only
1146 1146
 
1147 1147
   #if ENABLED(SENSORLESS_HOMING)
1148 1148
     #define X_HOMING_SENSITIVITY  8
1149 1149
     #define Y_HOMING_SENSITIVITY  8
1150
+    #define Z_HOMING_SENSITIVITY  8
1150 1151
   #endif
1151 1152
 
1152 1153
   /**
@@ -1550,7 +1551,7 @@
1550 1551
    * this setting determines the minimum update time between checks. A value of 100 works well with
1551 1552
    * error rolling average when attempting to correct only for skips and not for vibration.
1552 1553
    */
1553
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1554
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1554 1555
 
1555 1556
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1556 1557
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/MakerParts/Configuration_adv.h View File

@@ -1140,20 +1140,21 @@
1140 1140
   /**
1141 1141
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1142 1142
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1143
-   * X and Y homing will always be done in spreadCycle mode.
1143
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1144 1144
    *
1145
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146 1146
    * Higher values make the system LESS sensitive.
1147 1147
    * Lower value make the system MORE sensitive.
1148 1148
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1149
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1150
-   * M914 X/Y to live tune the setting
1149
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1150
+   * M914 X/Y/Z to live tune the setting
1151 1151
    */
1152 1152
   //#define SENSORLESS_HOMING // TMC2130 only
1153 1153
 
1154 1154
   #if ENABLED(SENSORLESS_HOMING)
1155 1155
     #define X_HOMING_SENSITIVITY  8
1156 1156
     #define Y_HOMING_SENSITIVITY  8
1157
+    #define Z_HOMING_SENSITIVITY  8
1157 1158
   #endif
1158 1159
 
1159 1160
   /**
@@ -1557,7 +1558,7 @@
1557 1558
    * this setting determines the minimum update time between checks. A value of 100 works well with
1558 1559
    * error rolling average when attempting to correct only for skips and not for vibration.
1559 1560
    */
1560
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1561
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1561 1562
 
1562 1563
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1563 1564
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Malyan/M150/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Malyan/M200/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h View File

@@ -1147,20 +1147,21 @@
1147 1147
   /**
1148 1148
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1149 1149
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1150
-   * X and Y homing will always be done in spreadCycle mode.
1150
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1151 1151
    *
1152
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1152
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1153 1153
    * Higher values make the system LESS sensitive.
1154 1154
    * Lower value make the system MORE sensitive.
1155 1155
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1156
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1157
-   * M914 X/Y to live tune the setting
1156
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1157
+   * M914 X/Y/Z to live tune the setting
1158 1158
    */
1159 1159
   //#define SENSORLESS_HOMING // TMC2130 only
1160 1160
 
1161 1161
   #if ENABLED(SENSORLESS_HOMING)
1162 1162
     #define X_HOMING_SENSITIVITY  8
1163 1163
     #define Y_HOMING_SENSITIVITY  8
1164
+    #define Z_HOMING_SENSITIVITY  8
1164 1165
   #endif
1165 1166
 
1166 1167
   /**
@@ -1564,7 +1565,7 @@
1564 1565
    * this setting determines the minimum update time between checks. A value of 100 works well with
1565 1566
    * error rolling average when attempting to correct only for skips and not for vibration.
1566 1567
    */
1567
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1568
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1568 1569
 
1569 1570
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1570 1571
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/RigidBot/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/SCARA/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Sanguinololu/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/TheBorg/Configuration_adv.h View File

@@ -1130,20 +1130,21 @@
1130 1130
   /**
1131 1131
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1132 1132
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1133
-   * X and Y homing will always be done in spreadCycle mode.
1133
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1134 1134
    *
1135
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1135
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1136 1136
    * Higher values make the system LESS sensitive.
1137 1137
    * Lower value make the system MORE sensitive.
1138 1138
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1139
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1140
-   * M914 X/Y to live tune the setting
1139
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1140
+   * M914 X/Y/Z to live tune the setting
1141 1141
    */
1142 1142
   //#define SENSORLESS_HOMING // TMC2130 only
1143 1143
 
1144 1144
   #if ENABLED(SENSORLESS_HOMING)
1145 1145
     #define X_HOMING_SENSITIVITY  8
1146 1146
     #define Y_HOMING_SENSITIVITY  8
1147
+    #define Z_HOMING_SENSITIVITY  8
1147 1148
   #endif
1148 1149
 
1149 1150
   /**
@@ -1547,7 +1548,7 @@
1547 1548
    * this setting determines the minimum update time between checks. A value of 100 works well with
1548 1549
    * error rolling average when attempting to correct only for skips and not for vibration.
1549 1550
    */
1550
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1551
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1551 1552
 
1552 1553
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1553 1554
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/TinyBoy2/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h View File

@@ -1152,20 +1152,21 @@
1152 1152
   /**
1153 1153
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1154 1154
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1155
-   * X and Y homing will always be done in spreadCycle mode.
1155
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1156 1156
    *
1157
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1157
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1158 1158
    * Higher values make the system LESS sensitive.
1159 1159
    * Lower value make the system MORE sensitive.
1160 1160
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1161
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1162
-   * M914 X/Y to live tune the setting
1161
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1162
+   * M914 X/Y/Z to live tune the setting
1163 1163
    */
1164 1164
   //#define SENSORLESS_HOMING // TMC2130 only
1165 1165
 
1166 1166
   #if ENABLED(SENSORLESS_HOMING)
1167 1167
     #define X_HOMING_SENSITIVITY  8
1168 1168
     #define Y_HOMING_SENSITIVITY  8
1169
+    #define Z_HOMING_SENSITIVITY  8
1169 1170
   #endif
1170 1171
 
1171 1172
   /**
@@ -1569,7 +1570,7 @@
1569 1570
    * this setting determines the minimum update time between checks. A value of 100 works well with
1570 1571
    * error rolling average when attempting to correct only for skips and not for vibration.
1571 1572
    */
1572
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1573
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1573 1574
 
1574 1575
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1575 1576
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h View File

@@ -1135,20 +1135,21 @@
1135 1135
   /**
1136 1136
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1137 1137
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1138
-   * X and Y homing will always be done in spreadCycle mode.
1138
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1139 1139
    *
1140
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1140
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1141 1141
    * Higher values make the system LESS sensitive.
1142 1142
    * Lower value make the system MORE sensitive.
1143 1143
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1144
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1145
-   * M914 X/Y to live tune the setting
1144
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1145
+   * M914 X/Y/Z to live tune the setting
1146 1146
    */
1147 1147
   //#define SENSORLESS_HOMING // TMC2130 only
1148 1148
 
1149 1149
   #if ENABLED(SENSORLESS_HOMING)
1150 1150
     #define X_HOMING_SENSITIVITY  8
1151 1151
     #define Y_HOMING_SENSITIVITY  8
1152
+    #define Z_HOMING_SENSITIVITY  8
1152 1153
   #endif
1153 1154
 
1154 1155
   /**
@@ -1552,7 +1553,7 @@
1552 1553
    * this setting determines the minimum update time between checks. A value of 100 works well with
1553 1554
    * error rolling average when attempting to correct only for skips and not for vibration.
1554 1555
    */
1555
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1556
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1556 1557
 
1557 1558
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1558 1559
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/generic/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/kossel_pro/Configuration_adv.h View File

@@ -1146,20 +1146,21 @@
1146 1146
   /**
1147 1147
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1148 1148
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1149
-   * X and Y homing will always be done in spreadCycle mode.
1149
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1150 1150
    *
1151
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1151
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1152 1152
    * Higher values make the system LESS sensitive.
1153 1153
    * Lower value make the system MORE sensitive.
1154 1154
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1155
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1156
-   * M914 X/Y to live tune the setting
1155
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1156
+   * M914 X/Y/Z to live tune the setting
1157 1157
    */
1158 1158
   //#define SENSORLESS_HOMING // TMC2130 only
1159 1159
 
1160 1160
   #if ENABLED(SENSORLESS_HOMING)
1161 1161
     #define X_HOMING_SENSITIVITY  8
1162 1162
     #define Y_HOMING_SENSITIVITY  8
1163
+    #define Z_HOMING_SENSITIVITY  8
1163 1164
   #endif
1164 1165
 
1165 1166
   /**
@@ -1563,7 +1564,7 @@
1563 1564
    * this setting determines the minimum update time between checks. A value of 100 works well with
1564 1565
    * error rolling average when attempting to correct only for skips and not for vibration.
1565 1566
    */
1566
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1567
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1567 1568
 
1568 1569
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1569 1570
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h View File

@@ -1141,20 +1141,21 @@
1141 1141
   /**
1142 1142
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1143 1143
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1144
-   * X and Y homing will always be done in spreadCycle mode.
1144
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1145 1145
    *
1146
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1147 1147
    * Higher values make the system LESS sensitive.
1148 1148
    * Lower value make the system MORE sensitive.
1149 1149
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1150
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1151
-   * M914 X/Y to live tune the setting
1150
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1151
+   * M914 X/Y/Z to live tune the setting
1152 1152
    */
1153 1153
   //#define SENSORLESS_HOMING // TMC2130 only
1154 1154
 
1155 1155
   #if ENABLED(SENSORLESS_HOMING)
1156 1156
     #define X_HOMING_SENSITIVITY  8
1157 1157
     #define Y_HOMING_SENSITIVITY  8
1158
+    #define Z_HOMING_SENSITIVITY  8
1158 1159
   #endif
1159 1160
 
1160 1161
   /**
@@ -1558,7 +1559,7 @@
1558 1559
    * this setting determines the minimum update time between checks. A value of 100 works well with
1559 1560
    * error rolling average when attempting to correct only for skips and not for vibration.
1560 1561
    */
1561
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1562
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1562 1563
 
1563 1564
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1564 1565
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/makibox/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h View File

@@ -1139,20 +1139,21 @@
1139 1139
   /**
1140 1140
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1141 1141
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1142
-   * X and Y homing will always be done in spreadCycle mode.
1142
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1143 1143
    *
1144
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1144
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145 1145
    * Higher values make the system LESS sensitive.
1146 1146
    * Lower value make the system MORE sensitive.
1147 1147
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1148
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1149
-   * M914 X/Y to live tune the setting
1148
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1149
+   * M914 X/Y/Z to live tune the setting
1150 1150
    */
1151 1151
   //#define SENSORLESS_HOMING // TMC2130 only
1152 1152
 
1153 1153
   #if ENABLED(SENSORLESS_HOMING)
1154 1154
     #define X_HOMING_SENSITIVITY  8
1155 1155
     #define Y_HOMING_SENSITIVITY  8
1156
+    #define Z_HOMING_SENSITIVITY  8
1156 1157
   #endif
1157 1158
 
1158 1159
   /**
@@ -1556,7 +1557,7 @@
1556 1557
    * this setting determines the minimum update time between checks. A value of 100 works well with
1557 1558
    * error rolling average when attempting to correct only for skips and not for vibration.
1558 1559
    */
1559
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1560
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1560 1561
 
1561 1562
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1562 1563
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 6
- 5
Marlin/src/config/examples/wt150/Configuration_adv.h View File

@@ -1140,20 +1140,21 @@
1140 1140
   /**
1141 1141
    * Use stallGuard2 to sense an obstacle and trigger an endstop.
1142 1142
    * You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
1143
-   * X and Y homing will always be done in spreadCycle mode.
1143
+   * X, Y, and Z homing will always be done in spreadCycle mode.
1144 1144
    *
1145
-   * X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1145
+   * X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
1146 1146
    * Higher values make the system LESS sensitive.
1147 1147
    * Lower value make the system MORE sensitive.
1148 1148
    * Too low values can lead to false positives, while too high values will collide the axis without triggering.
1149
-   * It is advised to set X/Y_HOME_BUMP_MM to 0.
1150
-   * M914 X/Y to live tune the setting
1149
+   * It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
1150
+   * M914 X/Y/Z to live tune the setting
1151 1151
    */
1152 1152
   //#define SENSORLESS_HOMING // TMC2130 only
1153 1153
 
1154 1154
   #if ENABLED(SENSORLESS_HOMING)
1155 1155
     #define X_HOMING_SENSITIVITY  8
1156 1156
     #define Y_HOMING_SENSITIVITY  8
1157
+    #define Z_HOMING_SENSITIVITY  8
1157 1158
   #endif
1158 1159
 
1159 1160
   /**
@@ -1557,7 +1558,7 @@
1557 1558
    * this setting determines the minimum update time between checks. A value of 100 works well with
1558 1559
    * error rolling average when attempting to correct only for skips and not for vibration.
1559 1560
    */
1560
-  #define I2CPE_MIN_UPD_TIME_MS     4                       // Minimum time in miliseconds between encoder checks.
1561
+  #define I2CPE_MIN_UPD_TIME_MS     4                       // (ms) Minimum time between encoder checks.
1561 1562
 
1562 1563
   // Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
1563 1564
   #define I2CPE_ERR_ROLLING_AVERAGE

+ 4
- 4
Marlin/src/feature/tmc_util.cpp View File

@@ -150,7 +150,7 @@ char extended_axis_codes[11][3] = { "X", "X2", "Y", "Y2", "Z", "Z2", "E0", "E1",
150 150
       const uint32_t pwm_scale = get_pwm_scale(st);
151 151
       SERIAL_ECHO(axisID);
152 152
       SERIAL_ECHOPAIR(":", pwm_scale);
153
-      SERIAL_ECHOPGM(" |0b"); MYSERIAL0.print(get_status_response(st), BIN);
153
+      SERIAL_ECHOPGM(" |0b"); SERIAL_PRINT(get_status_response(st), BIN);
154 154
       SERIAL_ECHOPGM("| ");
155 155
       if (data.is_error) SERIAL_CHAR('E');
156 156
       else if (data.is_ot) SERIAL_CHAR('O');
@@ -239,7 +239,7 @@ void _tmc_say_pwmthrs(const char name[], const uint32_t thrs) {
239 239
 void _tmc_say_sgt(const char name[], const uint32_t sgt) {
240 240
   SERIAL_ECHO(name);
241 241
   SERIAL_ECHOPGM(" driver homing sensitivity set to ");
242
-  MYSERIAL0.println(sgt, DEC);
242
+  SERIAL_PRINTLN(sgt, DEC);
243 243
 }
244 244
 
245 245
 #if ENABLED(TMC_DEBUG)
@@ -325,7 +325,7 @@ void _tmc_say_sgt(const char name[], const uint32_t sgt) {
325 325
   #if ENABLED(HAVE_TMC2208)
326 326
     static void tmc_status(TMC2208Stepper &st, const TMC_debug_enum i) {
327 327
       switch(i) {
328
-        case TMC_TSTEP: { uint32_t data = 0; st.TSTEP(&data); MYSERIAL0.print(data); break; }
328
+        case TMC_TSTEP: { uint32_t data = 0; st.TSTEP(&data); SERIAL_PROTOCOL(data); break; }
329 329
         case TMC_PWM_SCALE: SERIAL_PRINT(st.pwm_scale_sum(), DEC); break;
330 330
         case TMC_STEALTHCHOP: serialprintPGM(st.stealth() ? PSTR("true") : PSTR("false")); break;
331 331
         case TMC_S2VSA: if (st.s2vsa()) SERIAL_CHAR('X'); break;
@@ -351,7 +351,7 @@ void _tmc_say_sgt(const char name[], const uint32_t sgt) {
351 351
       case TMC_CODES: SERIAL_ECHO(extended_axis_codes[axis]); break;
352 352
       case TMC_ENABLED: serialprintPGM(st.isEnabled() ? PSTR("true") : PSTR("false")); break;
353 353
       case TMC_CURRENT: SERIAL_ECHO(st.getCurrent()); break;
354
-      case TMC_RMS_CURRENT: MYSERIAL0.print(st.rms_current()); break;
354
+      case TMC_RMS_CURRENT: SERIAL_PROTOCOL(st.rms_current()); break;
355 355
       case TMC_MAX_CURRENT: SERIAL_PRINT((float)st.rms_current() * 1.41, 0); break;
356 356
       case TMC_IRUN:
357 357
         SERIAL_PRINT(st.irun(), DEC);

+ 23
- 11
Marlin/src/gcode/feature/trinamic/M911-M915.cpp View File

@@ -132,17 +132,29 @@ void GcodeSuite::M912() {
132 132
       if (parser.seen(axis_codes[P##_AXIS])) tmc_set_sgt(stepper##Q, extended_axis_codes[TMC_##Q], parser.value_int()); \
133 133
       else tmc_get_sgt(stepper##Q, extended_axis_codes[TMC_##Q]); } while(0)
134 134
 
135
-    #if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
136
-      TMC_SET_GET_SGT(X,X);
137
-    #endif
138
-    #if ENABLED(X2_IS_TMC2130)
139
-      TMC_SET_GET_SGT(X,X2);
140
-    #endif
141
-    #if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
142
-      TMC_SET_GET_SGT(Y,Y);
143
-    #endif
144
-    #if ENABLED(Y2_IS_TMC2130)
145
-      TMC_SET_GET_SGT(Y,Y2);
135
+    #ifdef X_HOMING_SENSITIVITY
136
+      #if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
137
+        TMC_SET_GET_SGT(X,X);
138
+      #endif
139
+      #if ENABLED(X2_IS_TMC2130)
140
+        TMC_SET_GET_SGT(X,X2);
141
+      #endif
142
+    #endif
143
+    #ifdef Y_HOMING_SENSITIVITY
144
+      #if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
145
+        TMC_SET_GET_SGT(Y,Y);
146
+      #endif
147
+      #if ENABLED(Y2_IS_TMC2130)
148
+        TMC_SET_GET_SGT(Y,Y2);
149
+      #endif
150
+    #endif
151
+    #ifdef Z_HOMING_SENSITIVITY
152
+      #if ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)
153
+        TMC_SET_GET_SGT(Z,Z);
154
+      #endif
155
+      #if ENABLED(Z2_IS_TMC2130)
156
+        TMC_SET_GET_SGT(Z,Z2);
157
+      #endif
146 158
     #endif
147 159
   }
148 160
 #endif // SENSORLESS_HOMING

+ 5
- 0
Marlin/src/inc/Conditionals_post.h View File

@@ -693,6 +693,11 @@
693 693
 #define E3_IS_TRINAMIC (ENABLED(E3_IS_TMC2130) || ENABLED(E3_IS_TMC2208))
694 694
 #define E4_IS_TRINAMIC (ENABLED(E4_IS_TMC2130) || ENABLED(E4_IS_TMC2208))
695 695
 
696
+// Disable Z axis sensorless homing if a probe is used to home the Z axis
697
+#if ENABLED(SENSORLESS_HOMING) && HOMING_Z_WITH_PROBE
698
+  #undef Z_HOMING_SENSITIVITY
699
+#endif
700
+
696 701
 // Endstops and bed probe
697 702
 #define HAS_X_MIN (PIN_EXISTS(X_MIN) && !IS_X2_ENDSTOP(X,MIN) && !IS_Y2_ENDSTOP(X,MIN) && !IS_Z2_OR_PROBE(X,MIN))
698 703
 #define HAS_X_MAX (PIN_EXISTS(X_MAX) && !IS_X2_ENDSTOP(X,MAX) && !IS_Y2_ENDSTOP(X,MAX) && !IS_Z2_OR_PROBE(X,MAX))

+ 8
- 0
Marlin/src/inc/SanityCheck.h View File

@@ -1495,6 +1495,14 @@ static_assert(1 >= 0
1495 1495
     #error "E4_CS_PIN is required for E4_IS_TMC2130. Define E4_CS_PIN in Configuration_adv.h."
1496 1496
   #endif
1497 1497
 
1498
+  // Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop
1499
+  // is necessary in order to reset the stallGuard indication between the initial movement of all three
1500
+  // towers to +Z and the individual homing of each tower. This restriction can be removed once a means of
1501
+  // clearing the stallGuard activated status is found.
1502
+  #if ENABLED(SENSORLESS_HOMING) && ENABLED(DELTA) && !ENABLED(STEALTHCHOP)
1503
+    #error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP."
1504
+  #endif
1505
+
1498 1506
 #elif ENABLED(SENSORLESS_HOMING)
1499 1507
 
1500 1508
   #error "SENSORLESS_HOMING requires TMC2130 stepper drivers."

+ 85
- 40
Marlin/src/module/configuration_store.cpp View File

@@ -37,7 +37,7 @@
37 37
  */
38 38
 
39 39
 // Change EEPROM version if the structure changes
40
-#define EEPROM_VERSION "V50"
40
+#define EEPROM_VERSION "V51"
41 41
 #define EEPROM_OFFSET 100
42 42
 
43 43
 // Check the integrity of data offsets.
@@ -216,7 +216,7 @@ typedef struct SettingsDataStruct {
216 216
   // HAS_TRINAMIC
217 217
   //
218 218
   uint16_t tmc_stepper_current[11];                     // M906 X Y Z X2 Y2 Z2 E0 E1 E2 E3 E4
219
-  int16_t tmc_sgt[2];                                   // M914 X Y
219
+  int16_t tmc_sgt[3];                                   // M914 X Y Z
220 220
 
221 221
   //
222 222
   // LIN_ADVANCE
@@ -720,21 +720,27 @@ void MarlinSettings::postprocess() {
720 720
     //
721 721
     int16_t thrs;
722 722
     #if ENABLED(SENSORLESS_HOMING)
723
-      #if ENABLED(X_IS_TMC2130)
723
+      #if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
724 724
         thrs = stepperX.sgt();
725 725
       #else
726 726
         thrs = 0;
727 727
       #endif
728 728
       EEPROM_WRITE(thrs);
729
-      #if ENABLED(Y_IS_TMC2130)
729
+      #if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
730 730
         thrs = stepperY.sgt();
731 731
       #else
732 732
         thrs = 0;
733 733
       #endif
734 734
       EEPROM_WRITE(thrs);
735
+      #if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
736
+        thrs = stepperZ.sgt();
737
+      #else
738
+        thrs = 0;
739
+      #endif
740
+      EEPROM_WRITE(thrs);
735 741
     #else
736 742
       thrs = 0;
737
-      for (uint8_t q = 2; q--;) EEPROM_WRITE(thrs);
743
+      for (uint8_t q = 3; q--;) EEPROM_WRITE(thrs);
738 744
     #endif
739 745
 
740 746
     //
@@ -1251,25 +1257,40 @@ void MarlinSettings::postprocess() {
1251 1257
       int16_t thrs;
1252 1258
       #if ENABLED(SENSORLESS_HOMING)
1253 1259
         EEPROM_READ(thrs);
1254
-        if (!validating) {
1255
-          #if ENABLED(X_IS_TMC2130)
1256
-            stepperX.sgt(thrs);
1257
-          #endif
1258
-          #if ENABLED(X2_IS_TMC2130)
1259
-            stepperX2.sgt(thrs);
1260
-          #endif
1261
-        }
1260
+        #ifdef X_HOMING_SENSITIVITY
1261
+          if (!validating) {
1262
+            #if ENABLED(X_IS_TMC2130)
1263
+              stepperX.sgt(thrs);
1264
+            #endif
1265
+            #if ENABLED(X2_IS_TMC2130)
1266
+              stepperX2.sgt(thrs);
1267
+            #endif
1268
+          }
1269
+        #endif
1262 1270
         EEPROM_READ(thrs);
1263
-        if (!validating) {
1264
-          #if ENABLED(Y_IS_TMC2130)
1265
-            stepperY.sgt(thrs);
1266
-          #endif
1267
-          #if ENABLED(Y2_IS_TMC2130)
1268
-            stepperY2.sgt(thrs);
1269
-          #endif
1270
-        }
1271
+        #ifdef Y_HOMING_SENSITIVITY
1272
+          if (!validating) {
1273
+            #if ENABLED(Y_IS_TMC2130)
1274
+              stepperY.sgt(thrs);
1275
+            #endif
1276
+            #if ENABLED(Y2_IS_TMC2130)
1277
+              stepperY2.sgt(thrs);
1278
+            #endif
1279
+          }
1280
+        #endif
1281
+        EEPROM_READ(thrs);
1282
+        #ifdef Z_HOMING_SENSITIVITY
1283
+          if (!validating) {
1284
+            #if ENABLED(Z_IS_TMC2130)
1285
+              stepperZ.sgt(thrs);
1286
+            #endif
1287
+            #if ENABLED(Z2_IS_TMC2130)
1288
+              stepperZ2.sgt(thrs);
1289
+            #endif
1290
+          }
1291
+        #endif
1271 1292
       #else
1272
-        for (uint8_t q = 0; q < 2; q++) EEPROM_READ(thrs);
1293
+        for (uint8_t q = 0; q < 3; q++) EEPROM_READ(thrs);
1273 1294
       #endif
1274 1295
 
1275 1296
       //
@@ -1780,17 +1801,29 @@ void MarlinSettings::reset(
1780 1801
   #endif
1781 1802
 
1782 1803
   #if ENABLED(SENSORLESS_HOMING)
1783
-    #if ENABLED(X_IS_TMC2130)
1784
-      stepperX.sgt(X_HOMING_SENSITIVITY);
1785
-    #endif
1786
-    #if ENABLED(X2_IS_TMC2130)
1787
-      stepperX2.sgt(X_HOMING_SENSITIVITY);
1804
+    #ifdef X_HOMING_SENSITIVITY
1805
+      #if ENABLED(X_IS_TMC2130)
1806
+        stepperX.sgt(X_HOMING_SENSITIVITY);
1807
+      #endif
1808
+      #if ENABLED(X2_IS_TMC2130)
1809
+        stepperX2.sgt(X_HOMING_SENSITIVITY);
1810
+      #endif
1788 1811
     #endif
1789
-    #if ENABLED(Y_IS_TMC2130)
1790
-      stepperY.sgt(Y_HOMING_SENSITIVITY);
1812
+    #ifdef Y_HOMING_SENSITIVITY
1813
+      #if ENABLED(Y_IS_TMC2130)
1814
+        stepperY.sgt(Y_HOMING_SENSITIVITY);
1815
+      #endif
1816
+      #if ENABLED(Y2_IS_TMC2130)
1817
+        stepperY2.sgt(Y_HOMING_SENSITIVITY);
1818
+      #endif
1791 1819
     #endif
1792
-    #if ENABLED(Y2_IS_TMC2130)
1793
-      stepperY2.sgt(Y_HOMING_SENSITIVITY);
1820
+    #ifdef Z_HOMING_SENSITIVITY
1821
+      #if ENABLED(Z_IS_TMC2130)
1822
+        stepperZ.sgt(Z_HOMING_SENSITIVITY);
1823
+      #endif
1824
+      #if ENABLED(Z2_IS_TMC2130)
1825
+        stepperZ2.sgt(Z_HOMING_SENSITIVITY);
1826
+      #endif
1794 1827
     #endif
1795 1828
   #endif
1796 1829
 
@@ -2336,17 +2369,29 @@ void MarlinSettings::reset(
2336 2369
       }
2337 2370
       CONFIG_ECHO_START;
2338 2371
       SERIAL_ECHOPGM_P(port, "  M914");
2339
-      #if ENABLED(X_IS_TMC2130)
2340
-        SERIAL_ECHOPAIR_P(port, " X", stepperX.sgt());
2341
-      #endif
2342
-      #if ENABLED(X2_IS_TMC2130)
2343
-        SERIAL_ECHOPAIR_P(port, " X2 ", stepperX2.sgt());
2372
+      #ifdef X_HOMING_SENSITIVITY
2373
+        #if ENABLED(X_IS_TMC2130)
2374
+          SERIAL_ECHOPAIR_P(port, " X", stepperX.sgt());
2375
+        #endif
2376
+        #if ENABLED(X2_IS_TMC2130)
2377
+          SERIAL_ECHOPAIR_P(port, " X2 ", stepperX2.sgt());
2378
+        #endif
2344 2379
       #endif
2345
-      #if ENABLED(Y_IS_TMC2130)
2346
-        SERIAL_ECHOPAIR_P(port, " Y", stepperY.sgt());
2380
+      #ifdef Y_HOMING_SENSITIVITY
2381
+        #if ENABLED(Y_IS_TMC2130)
2382
+          SERIAL_ECHOPAIR_P(port, " Y", stepperY.sgt());
2383
+        #endif
2384
+        #if ENABLED(Y2_IS_TMC2130)
2385
+          SERIAL_ECHOPAIR_P(port, " Y2 ", stepperY2.sgt());
2386
+        #endif
2347 2387
       #endif
2348
-      #if ENABLED(X2_IS_TMC2130)
2349
-        SERIAL_ECHOPAIR_P(port, " Y2 ", stepperY2.sgt());
2388
+      #ifdef Z_HOMING_SENSITIVITY
2389
+        #if ENABLED(Z_IS_TMC2130)
2390
+          SERIAL_ECHOPAIR_P(port, " Z ", stepperZ.sgt());
2391
+        #endif
2392
+        #if ENABLED(Z2_IS_TMC2130)
2393
+          SERIAL_ECHOPAIR_P(port, " Z2 ", stepperZ2.sgt());
2394
+        #endif
2350 2395
       #endif
2351 2396
       SERIAL_EOL_P(port);
2352 2397
     #endif

+ 30
- 0
Marlin/src/module/delta.cpp View File

@@ -37,6 +37,10 @@
37 37
 #include "../lcd/ultralcd.h"
38 38
 #include "../Marlin.h"
39 39
 
40
+#if ENABLED(SENSORLESS_HOMING)
41
+  #include "../feature/tmc_util.h"
42
+#endif
43
+
40 44
 // Initialized by settings.load()
41 45
 float delta_height,
42 46
       delta_endstop_adj[ABC] = { 0 },
@@ -226,12 +230,38 @@ bool home_delta() {
226 230
   ZERO(current_position);
227 231
   sync_plan_position();
228 232
 
233
+  // Disable stealthChop if used. Enable diag1 pin on driver.
234
+  #if ENABLED(SENSORLESS_HOMING)
235
+    #if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
236
+      tmc_sensorless_homing(stepperX);
237
+    #endif
238
+    #if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
239
+      tmc_sensorless_homing(stepperY);
240
+    #endif
241
+    #if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
242
+      tmc_sensorless_homing(stepperZ);
243
+    #endif
244
+  #endif
245
+
229 246
   // Move all carriages together linearly until an endstop is hit.
230 247
   current_position[X_AXIS] = current_position[Y_AXIS] = current_position[Z_AXIS] = (delta_height + 10);
231 248
   feedrate_mm_s = homing_feedrate(X_AXIS);
232 249
   line_to_current_position();
233 250
   stepper.synchronize();
234 251
 
252
+  // Re-enable stealthChop if used. Disable diag1 pin on driver.
253
+  #if ENABLED(SENSORLESS_HOMING)
254
+    #if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
255
+      tmc_sensorless_homing(stepperX, false);
256
+    #endif
257
+    #if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
258
+      tmc_sensorless_homing(stepperY, false);
259
+    #endif
260
+    #if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
261
+      tmc_sensorless_homing(stepperZ, false);
262
+    #endif
263
+  #endif
264
+
235 265
   // If an endstop was not hit, then damage can occur if homing is continued.
236 266
   // This can occur if the delta height not set correctly.
237 267
   if (!(Endstops::endstop_hit_bits & (_BV(X_MAX) | _BV(Y_MAX) | _BV(Z_MAX)))) {

+ 26
- 20
Marlin/src/module/motion.cpp View File

@@ -990,6 +990,19 @@ static void do_homing_move(const AxisEnum axis, const float distance, const floa
990 990
     if (axis == Z_AXIS) probing_pause(true);
991 991
   #endif
992 992
 
993
+  // Disable stealthChop if used. Enable diag1 pin on driver.
994
+  #if ENABLED(SENSORLESS_HOMING)
995
+    #if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
996
+      if (axis == X_AXIS) tmc_sensorless_homing(stepperX);
997
+    #endif
998
+    #if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
999
+      if (axis == Y_AXIS) tmc_sensorless_homing(stepperY);
1000
+    #endif
1001
+    #if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
1002
+      if (axis == Z_AXIS) tmc_sensorless_homing(stepperZ);
1003
+    #endif
1004
+  #endif
1005
+
993 1006
   // Tell the planner the axis is at 0
994 1007
   current_position[axis] = 0;
995 1008
 
@@ -1016,6 +1029,19 @@ static void do_homing_move(const AxisEnum axis, const float distance, const floa
1016 1029
 
1017 1030
   endstops.hit_on_purpose();
1018 1031
 
1032
+  // Re-enable stealthChop if used. Disable diag1 pin on driver.
1033
+  #if ENABLED(SENSORLESS_HOMING)
1034
+    #if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
1035
+      if (axis == X_AXIS) tmc_sensorless_homing(stepperX, false);
1036
+    #endif
1037
+    #if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
1038
+      if (axis == Y_AXIS) tmc_sensorless_homing(stepperY, false);
1039
+    #endif
1040
+    #if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
1041
+      if (axis == Z_AXIS) tmc_sensorless_homing(stepperZ, false);
1042
+    #endif
1043
+  #endif
1044
+
1019 1045
   #if ENABLED(DEBUG_LEVELING_FEATURE)
1020 1046
     if (DEBUGGING(LEVELING)) {
1021 1047
       SERIAL_ECHOPAIR("<<< do_homing_move(", axis_codes[axis]);
@@ -1168,16 +1194,6 @@ void homeaxis(const AxisEnum axis) {
1168 1194
     if (axis == Z_AXIS) stepper.set_homing_flag_z(true);
1169 1195
   #endif
1170 1196
 
1171
-  // Disable stealthChop if used. Enable diag1 pin on driver.
1172
-  #if ENABLED(SENSORLESS_HOMING)
1173
-    #if ENABLED(X_IS_TMC2130)
1174
-      if (axis == X_AXIS) tmc_sensorless_homing(stepperX);
1175
-    #endif
1176
-    #if ENABLED(Y_IS_TMC2130)
1177
-      if (axis == Y_AXIS) tmc_sensorless_homing(stepperY);
1178
-    #endif
1179
-  #endif
1180
-
1181 1197
   // Fast move towards endstop until triggered
1182 1198
   #if ENABLED(DEBUG_LEVELING_FEATURE)
1183 1199
     if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("Home 1 Fast:");
@@ -1278,16 +1294,6 @@ void homeaxis(const AxisEnum axis) {
1278 1294
 
1279 1295
   #endif
1280 1296
 
1281
-  // Re-enable stealthChop if used. Disable diag1 pin on driver.
1282
-  #if ENABLED(SENSORLESS_HOMING)
1283
-    #if ENABLED(X_IS_TMC2130)
1284
-      if (axis == X_AXIS) tmc_sensorless_homing(stepperX, false);
1285
-    #endif
1286
-    #if ENABLED(Y_IS_TMC2130)
1287
-      if (axis == Y_AXIS) tmc_sensorless_homing(stepperY, false);
1288
-    #endif
1289
-  #endif
1290
-
1291 1297
   // Put away the Z probe
1292 1298
   #if HOMING_Z_WITH_PROBE
1293 1299
     if (axis == Z_AXIS && STOW_PROBE()) return;

Loading…
Cancel
Save