Enable Z axis and delta sensorless homing (#9516)
This commit is contained in:
parent
b2f8b4ada5
commit
1541224a81
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1140,20 +1140,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1557,7 +1558,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1144,20 +1144,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1561,7 +1562,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1559,7 +1560,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1133,20 +1133,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1550,7 +1551,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1133,20 +1133,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1550,7 +1551,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1133,20 +1133,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1550,7 +1551,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1140,20 +1140,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1557,7 +1558,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1147,20 +1147,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1564,7 +1565,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1130,20 +1130,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1547,7 +1548,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1152,20 +1152,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1569,7 +1570,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1135,20 +1135,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1552,7 +1553,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1146,20 +1146,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1563,7 +1564,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1141,20 +1141,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1558,7 +1559,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1139,20 +1139,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1556,7 +1557,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -1140,20 +1140,21 @@
|
||||
/**
|
||||
* Use stallGuard2 to sense an obstacle and trigger an endstop.
|
||||
* You need to place a wire from the driver's DIAG1 pin to the X/Y endstop pin.
|
||||
* X and Y homing will always be done in spreadCycle mode.
|
||||
* X, Y, and Z homing will always be done in spreadCycle mode.
|
||||
*
|
||||
* X/Y_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* X/Y/Z_HOMING_SENSITIVITY is used for tuning the trigger sensitivity.
|
||||
* Higher values make the system LESS sensitive.
|
||||
* Lower value make the system MORE sensitive.
|
||||
* Too low values can lead to false positives, while too high values will collide the axis without triggering.
|
||||
* It is advised to set X/Y_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y to live tune the setting
|
||||
* It is advised to set X/Y/Z_HOME_BUMP_MM to 0.
|
||||
* M914 X/Y/Z to live tune the setting
|
||||
*/
|
||||
//#define SENSORLESS_HOMING // TMC2130 only
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#define X_HOMING_SENSITIVITY 8
|
||||
#define Y_HOMING_SENSITIVITY 8
|
||||
#define Z_HOMING_SENSITIVITY 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -1557,7 +1558,7 @@
|
||||
* this setting determines the minimum update time between checks. A value of 100 works well with
|
||||
* error rolling average when attempting to correct only for skips and not for vibration.
|
||||
*/
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // Minimum time in miliseconds between encoder checks.
|
||||
#define I2CPE_MIN_UPD_TIME_MS 4 // (ms) Minimum time between encoder checks.
|
||||
|
||||
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
||||
#define I2CPE_ERR_ROLLING_AVERAGE
|
||||
|
@ -150,7 +150,7 @@ char extended_axis_codes[11][3] = { "X", "X2", "Y", "Y2", "Z", "Z2", "E0", "E1",
|
||||
const uint32_t pwm_scale = get_pwm_scale(st);
|
||||
SERIAL_ECHO(axisID);
|
||||
SERIAL_ECHOPAIR(":", pwm_scale);
|
||||
SERIAL_ECHOPGM(" |0b"); MYSERIAL0.print(get_status_response(st), BIN);
|
||||
SERIAL_ECHOPGM(" |0b"); SERIAL_PRINT(get_status_response(st), BIN);
|
||||
SERIAL_ECHOPGM("| ");
|
||||
if (data.is_error) SERIAL_CHAR('E');
|
||||
else if (data.is_ot) SERIAL_CHAR('O');
|
||||
@ -239,7 +239,7 @@ void _tmc_say_pwmthrs(const char name[], const uint32_t thrs) {
|
||||
void _tmc_say_sgt(const char name[], const uint32_t sgt) {
|
||||
SERIAL_ECHO(name);
|
||||
SERIAL_ECHOPGM(" driver homing sensitivity set to ");
|
||||
MYSERIAL0.println(sgt, DEC);
|
||||
SERIAL_PRINTLN(sgt, DEC);
|
||||
}
|
||||
|
||||
#if ENABLED(TMC_DEBUG)
|
||||
@ -325,7 +325,7 @@ void _tmc_say_sgt(const char name[], const uint32_t sgt) {
|
||||
#if ENABLED(HAVE_TMC2208)
|
||||
static void tmc_status(TMC2208Stepper &st, const TMC_debug_enum i) {
|
||||
switch(i) {
|
||||
case TMC_TSTEP: { uint32_t data = 0; st.TSTEP(&data); MYSERIAL0.print(data); break; }
|
||||
case TMC_TSTEP: { uint32_t data = 0; st.TSTEP(&data); SERIAL_PROTOCOL(data); break; }
|
||||
case TMC_PWM_SCALE: SERIAL_PRINT(st.pwm_scale_sum(), DEC); break;
|
||||
case TMC_STEALTHCHOP: serialprintPGM(st.stealth() ? PSTR("true") : PSTR("false")); break;
|
||||
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) {
|
||||
case TMC_CODES: SERIAL_ECHO(extended_axis_codes[axis]); break;
|
||||
case TMC_ENABLED: serialprintPGM(st.isEnabled() ? PSTR("true") : PSTR("false")); break;
|
||||
case TMC_CURRENT: SERIAL_ECHO(st.getCurrent()); break;
|
||||
case TMC_RMS_CURRENT: MYSERIAL0.print(st.rms_current()); break;
|
||||
case TMC_RMS_CURRENT: SERIAL_PROTOCOL(st.rms_current()); break;
|
||||
case TMC_MAX_CURRENT: SERIAL_PRINT((float)st.rms_current() * 1.41, 0); break;
|
||||
case TMC_IRUN:
|
||||
SERIAL_PRINT(st.irun(), DEC);
|
||||
|
@ -132,17 +132,29 @@ void GcodeSuite::M912() {
|
||||
if (parser.seen(axis_codes[P##_AXIS])) tmc_set_sgt(stepper##Q, extended_axis_codes[TMC_##Q], parser.value_int()); \
|
||||
else tmc_get_sgt(stepper##Q, extended_axis_codes[TMC_##Q]); } while(0)
|
||||
|
||||
#if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
TMC_SET_GET_SGT(X,X);
|
||||
#ifdef X_HOMING_SENSITIVITY
|
||||
#if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
TMC_SET_GET_SGT(X,X);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
TMC_SET_GET_SGT(X,X2);
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
TMC_SET_GET_SGT(X,X2);
|
||||
#ifdef Y_HOMING_SENSITIVITY
|
||||
#if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
TMC_SET_GET_SGT(Y,Y);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
TMC_SET_GET_SGT(Y,Y2);
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
TMC_SET_GET_SGT(Y,Y);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
TMC_SET_GET_SGT(Y,Y2);
|
||||
#ifdef Z_HOMING_SENSITIVITY
|
||||
#if ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
TMC_SET_GET_SGT(Z,Z);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
TMC_SET_GET_SGT(Z,Z2);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
#endif // SENSORLESS_HOMING
|
||||
|
@ -693,6 +693,11 @@
|
||||
#define E3_IS_TRINAMIC (ENABLED(E3_IS_TMC2130) || ENABLED(E3_IS_TMC2208))
|
||||
#define E4_IS_TRINAMIC (ENABLED(E4_IS_TMC2130) || ENABLED(E4_IS_TMC2208))
|
||||
|
||||
// Disable Z axis sensorless homing if a probe is used to home the Z axis
|
||||
#if ENABLED(SENSORLESS_HOMING) && HOMING_Z_WITH_PROBE
|
||||
#undef Z_HOMING_SENSITIVITY
|
||||
#endif
|
||||
|
||||
// Endstops and bed probe
|
||||
#define HAS_X_MIN (PIN_EXISTS(X_MIN) && !IS_X2_ENDSTOP(X,MIN) && !IS_Y2_ENDSTOP(X,MIN) && !IS_Z2_OR_PROBE(X,MIN))
|
||||
#define HAS_X_MAX (PIN_EXISTS(X_MAX) && !IS_X2_ENDSTOP(X,MAX) && !IS_Y2_ENDSTOP(X,MAX) && !IS_Z2_OR_PROBE(X,MAX))
|
||||
|
@ -1495,6 +1495,14 @@ static_assert(1 >= 0
|
||||
#error "E4_CS_PIN is required for E4_IS_TMC2130. Define E4_CS_PIN in Configuration_adv.h."
|
||||
#endif
|
||||
|
||||
// Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop
|
||||
// is necessary in order to reset the stallGuard indication between the initial movement of all three
|
||||
// towers to +Z and the individual homing of each tower. This restriction can be removed once a means of
|
||||
// clearing the stallGuard activated status is found.
|
||||
#if ENABLED(SENSORLESS_HOMING) && ENABLED(DELTA) && !ENABLED(STEALTHCHOP)
|
||||
#error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP."
|
||||
#endif
|
||||
|
||||
#elif ENABLED(SENSORLESS_HOMING)
|
||||
|
||||
#error "SENSORLESS_HOMING requires TMC2130 stepper drivers."
|
||||
|
@ -37,7 +37,7 @@
|
||||
*/
|
||||
|
||||
// Change EEPROM version if the structure changes
|
||||
#define EEPROM_VERSION "V50"
|
||||
#define EEPROM_VERSION "V51"
|
||||
#define EEPROM_OFFSET 100
|
||||
|
||||
// Check the integrity of data offsets.
|
||||
@ -216,7 +216,7 @@ typedef struct SettingsDataStruct {
|
||||
// HAS_TRINAMIC
|
||||
//
|
||||
uint16_t tmc_stepper_current[11]; // M906 X Y Z X2 Y2 Z2 E0 E1 E2 E3 E4
|
||||
int16_t tmc_sgt[2]; // M914 X Y
|
||||
int16_t tmc_sgt[3]; // M914 X Y Z
|
||||
|
||||
//
|
||||
// LIN_ADVANCE
|
||||
@ -720,21 +720,27 @@ void MarlinSettings::postprocess() {
|
||||
//
|
||||
int16_t thrs;
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
#if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
|
||||
thrs = stepperX.sgt();
|
||||
#else
|
||||
thrs = 0;
|
||||
#endif
|
||||
EEPROM_WRITE(thrs);
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
#if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
|
||||
thrs = stepperY.sgt();
|
||||
#else
|
||||
thrs = 0;
|
||||
#endif
|
||||
EEPROM_WRITE(thrs);
|
||||
#if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
|
||||
thrs = stepperZ.sgt();
|
||||
#else
|
||||
thrs = 0;
|
||||
#endif
|
||||
EEPROM_WRITE(thrs);
|
||||
#else
|
||||
thrs = 0;
|
||||
for (uint8_t q = 2; q--;) EEPROM_WRITE(thrs);
|
||||
for (uint8_t q = 3; q--;) EEPROM_WRITE(thrs);
|
||||
#endif
|
||||
|
||||
//
|
||||
@ -1251,25 +1257,40 @@ void MarlinSettings::postprocess() {
|
||||
int16_t thrs;
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
EEPROM_READ(thrs);
|
||||
if (!validating) {
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
stepperX.sgt(thrs);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
stepperX2.sgt(thrs);
|
||||
#endif
|
||||
}
|
||||
#ifdef X_HOMING_SENSITIVITY
|
||||
if (!validating) {
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
stepperX.sgt(thrs);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
stepperX2.sgt(thrs);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
EEPROM_READ(thrs);
|
||||
if (!validating) {
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
stepperY.sgt(thrs);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
stepperY2.sgt(thrs);
|
||||
#endif
|
||||
}
|
||||
#ifdef Y_HOMING_SENSITIVITY
|
||||
if (!validating) {
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
stepperY.sgt(thrs);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
stepperY2.sgt(thrs);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
EEPROM_READ(thrs);
|
||||
#ifdef Z_HOMING_SENSITIVITY
|
||||
if (!validating) {
|
||||
#if ENABLED(Z_IS_TMC2130)
|
||||
stepperZ.sgt(thrs);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
stepperZ2.sgt(thrs);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
#else
|
||||
for (uint8_t q = 0; q < 2; q++) EEPROM_READ(thrs);
|
||||
for (uint8_t q = 0; q < 3; q++) EEPROM_READ(thrs);
|
||||
#endif
|
||||
|
||||
//
|
||||
@ -1780,17 +1801,29 @@ void MarlinSettings::reset(
|
||||
#endif
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
stepperX.sgt(X_HOMING_SENSITIVITY);
|
||||
#ifdef X_HOMING_SENSITIVITY
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
stepperX.sgt(X_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
stepperX2.sgt(X_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
stepperX2.sgt(X_HOMING_SENSITIVITY);
|
||||
#ifdef Y_HOMING_SENSITIVITY
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
stepperY.sgt(Y_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
stepperY2.sgt(Y_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
stepperY.sgt(Y_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
stepperY2.sgt(Y_HOMING_SENSITIVITY);
|
||||
#ifdef Z_HOMING_SENSITIVITY
|
||||
#if ENABLED(Z_IS_TMC2130)
|
||||
stepperZ.sgt(Z_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
stepperZ2.sgt(Z_HOMING_SENSITIVITY);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -2336,17 +2369,29 @@ void MarlinSettings::reset(
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOPGM_P(port, " M914");
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " X", stepperX.sgt());
|
||||
#ifdef X_HOMING_SENSITIVITY
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " X", stepperX.sgt());
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " X2 ", stepperX2.sgt());
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " X2 ", stepperX2.sgt());
|
||||
#ifdef Y_HOMING_SENSITIVITY
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Y", stepperY.sgt());
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Y2 ", stepperY2.sgt());
|
||||
#endif
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Y", stepperY.sgt());
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Y2 ", stepperY2.sgt());
|
||||
#ifdef Z_HOMING_SENSITIVITY
|
||||
#if ENABLED(Z_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Z ", stepperZ.sgt());
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
SERIAL_ECHOPAIR_P(port, " Z2 ", stepperZ2.sgt());
|
||||
#endif
|
||||
#endif
|
||||
SERIAL_EOL_P(port);
|
||||
#endif
|
||||
|
@ -37,6 +37,10 @@
|
||||
#include "../lcd/ultralcd.h"
|
||||
#include "../Marlin.h"
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#include "../feature/tmc_util.h"
|
||||
#endif
|
||||
|
||||
// Initialized by settings.load()
|
||||
float delta_height,
|
||||
delta_endstop_adj[ABC] = { 0 },
|
||||
@ -226,12 +230,38 @@ bool home_delta() {
|
||||
ZERO(current_position);
|
||||
sync_plan_position();
|
||||
|
||||
// Disable stealthChop if used. Enable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperX);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperY);
|
||||
#endif
|
||||
#if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperZ);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Move all carriages together linearly until an endstop is hit.
|
||||
current_position[X_AXIS] = current_position[Y_AXIS] = current_position[Z_AXIS] = (delta_height + 10);
|
||||
feedrate_mm_s = homing_feedrate(X_AXIS);
|
||||
line_to_current_position();
|
||||
stepper.synchronize();
|
||||
|
||||
// Re-enable stealthChop if used. Disable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperX, false);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperY, false);
|
||||
#endif
|
||||
#if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
|
||||
tmc_sensorless_homing(stepperZ, false);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// If an endstop was not hit, then damage can occur if homing is continued.
|
||||
// This can occur if the delta height not set correctly.
|
||||
if (!(Endstops::endstop_hit_bits & (_BV(X_MAX) | _BV(Y_MAX) | _BV(Z_MAX)))) {
|
||||
|
@ -990,6 +990,19 @@ static void do_homing_move(const AxisEnum axis, const float distance, const floa
|
||||
if (axis == Z_AXIS) probing_pause(true);
|
||||
#endif
|
||||
|
||||
// Disable stealthChop if used. Enable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
|
||||
if (axis == X_AXIS) tmc_sensorless_homing(stepperX);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
|
||||
if (axis == Y_AXIS) tmc_sensorless_homing(stepperY);
|
||||
#endif
|
||||
#if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
|
||||
if (axis == Z_AXIS) tmc_sensorless_homing(stepperZ);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Tell the planner the axis is at 0
|
||||
current_position[axis] = 0;
|
||||
|
||||
@ -1016,6 +1029,19 @@ static void do_homing_move(const AxisEnum axis, const float distance, const floa
|
||||
|
||||
endstops.hit_on_purpose();
|
||||
|
||||
// Re-enable stealthChop if used. Disable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY)
|
||||
if (axis == X_AXIS) tmc_sensorless_homing(stepperX, false);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY)
|
||||
if (axis == Y_AXIS) tmc_sensorless_homing(stepperY, false);
|
||||
#endif
|
||||
#if ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY)
|
||||
if (axis == Z_AXIS) tmc_sensorless_homing(stepperZ, false);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
||||
if (DEBUGGING(LEVELING)) {
|
||||
SERIAL_ECHOPAIR("<<< do_homing_move(", axis_codes[axis]);
|
||||
@ -1168,16 +1194,6 @@ void homeaxis(const AxisEnum axis) {
|
||||
if (axis == Z_AXIS) stepper.set_homing_flag_z(true);
|
||||
#endif
|
||||
|
||||
// Disable stealthChop if used. Enable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
if (axis == X_AXIS) tmc_sensorless_homing(stepperX);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
if (axis == Y_AXIS) tmc_sensorless_homing(stepperY);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Fast move towards endstop until triggered
|
||||
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
||||
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("Home 1 Fast:");
|
||||
@ -1278,16 +1294,6 @@ void homeaxis(const AxisEnum axis) {
|
||||
|
||||
#endif
|
||||
|
||||
// Re-enable stealthChop if used. Disable diag1 pin on driver.
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if ENABLED(X_IS_TMC2130)
|
||||
if (axis == X_AXIS) tmc_sensorless_homing(stepperX, false);
|
||||
#endif
|
||||
#if ENABLED(Y_IS_TMC2130)
|
||||
if (axis == Y_AXIS) tmc_sensorless_homing(stepperY, false);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Put away the Z probe
|
||||
#if HOMING_Z_WITH_PROBE
|
||||
if (axis == Z_AXIS && STOW_PROBE()) return;
|
||||
|
Loading…
Reference in New Issue
Block a user