Browse Source

Add SKEW_CORRECTION to example configs

Scott Lahteine 6 years ago
parent
commit
082ab8fcab
42 changed files with 2436 additions and 42 deletions
  1. 58
    1
      Marlin/src/config/default/Configuration.h
  2. 58
    1
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h
  3. 58
    1
      Marlin/src/config/examples/AliExpress/CL-260/Configuration.h
  4. 58
    1
      Marlin/src/config/examples/Anet/A6/Configuration.h
  5. 58
    1
      Marlin/src/config/examples/Anet/A8/Configuration.h
  6. 58
    1
      Marlin/src/config/examples/Azteeg/X5GT/Configuration.h
  7. 58
    1
      Marlin/src/config/examples/BQ/Hephestos/Configuration.h
  8. 58
    1
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h
  9. 58
    1
      Marlin/src/config/examples/BQ/WITBOX/Configuration.h
  10. 58
    1
      Marlin/src/config/examples/Cartesio/Configuration.h
  11. 58
    1
      Marlin/src/config/examples/Creality/CR-10/Configuration.h
  12. 58
    1
      Marlin/src/config/examples/Felix/Configuration.h
  13. 58
    1
      Marlin/src/config/examples/Felix/DUAL/Configuration.h
  14. 58
    1
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h
  15. 58
    1
      Marlin/src/config/examples/Geeetech/GT2560/Configuration.h
  16. 58
    1
      Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h
  17. 58
    1
      Marlin/src/config/examples/Infitary/i3-M508/Configuration.h
  18. 58
    1
      Marlin/src/config/examples/Malyan/M150/Configuration.h
  19. 58
    1
      Marlin/src/config/examples/Micromake/C1/basic/Configuration.h
  20. 58
    1
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h
  21. 58
    1
      Marlin/src/config/examples/Mks/Sbase/Configuration.h
  22. 58
    1
      Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h
  23. 58
    1
      Marlin/src/config/examples/RigidBot/Configuration.h
  24. 58
    1
      Marlin/src/config/examples/SCARA/Configuration.h
  25. 58
    1
      Marlin/src/config/examples/STM32F10/Configuration.h
  26. 58
    1
      Marlin/src/config/examples/Sanguinololu/Configuration.h
  27. 58
    1
      Marlin/src/config/examples/TinyBoy2/Configuration.h
  28. 58
    1
      Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h
  29. 58
    1
      Marlin/src/config/examples/Velleman/K8200/Configuration.h
  30. 58
    1
      Marlin/src/config/examples/Velleman/K8400/Configuration.h
  31. 58
    1
      Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h
  32. 58
    1
      Marlin/src/config/examples/adafruit/ST7565/Configuration.h
  33. 58
    1
      Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h
  34. 58
    1
      Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h
  35. 58
    1
      Marlin/src/config/examples/delta/generic/Configuration.h
  36. 58
    1
      Marlin/src/config/examples/delta/kossel_mini/Configuration.h
  37. 58
    1
      Marlin/src/config/examples/delta/kossel_pro/Configuration.h
  38. 58
    1
      Marlin/src/config/examples/delta/kossel_xl/Configuration.h
  39. 58
    1
      Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h
  40. 58
    1
      Marlin/src/config/examples/makibox/Configuration.h
  41. 58
    1
      Marlin/src/config/examples/tvrrug/Round2/Configuration.h
  42. 58
    1
      Marlin/src/config/examples/wt150/Configuration.h

+ 58
- 1
Marlin/src/config/default/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h View File

@@ -852,7 +852,7 @@
852 852
 //===========================================================================
853 853
 //=============================== Bed Leveling ==============================
854 854
 //===========================================================================
855
-// @section bedlevel
855
+// @section calibrate
856 856
 
857 857
 /**
858 858
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1059,6 +1059,63 @@
1059 1059
 #define HOMING_FEEDRATE_XY (50*60)
1060 1060
 #define HOMING_FEEDRATE_Z  (8*60)
1061 1061
 
1062
+// @section calibrate
1063
+
1064
+/**
1065
+ * Bed Skew Compensation
1066
+ *
1067
+ * This feature corrects for misalignment in the XYZ axes.
1068
+ *
1069
+ * Take the following steps to get the bed skew in the XY plane:
1070
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1071
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1072
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1073
+ *  4. For XY_SIDE_AD measure the edge A to D
1074
+ *
1075
+ * Marlin automatically computes skew factors from these measurements.
1076
+ * Skew factors may also be computed and set manually:
1077
+ *
1078
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1079
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1080
+ *
1081
+ * If desired, follow the same procedure for XZ and YZ.
1082
+ * Use these diagrams for reference:
1083
+ *
1084
+ *    Y                     Z                     Z
1085
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1086
+ *    |    /       /        |    /       /        |    /       /
1087
+ *    |   /       /         |   /       /         |   /       /
1088
+ *    |  A-------D          |  A-------D          |  A-------D
1089
+ *    +-------------->X     +-------------->X     +-------------->Y
1090
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1091
+ */
1092
+//#define SKEW_CORRECTION
1093
+
1094
+#if ENABLED(SKEW_CORRECTION)
1095
+  // Input all length measurements here:
1096
+  #define XY_DIAG_AC 282.8427124746
1097
+  #define XY_DIAG_BD 282.8427124746
1098
+  #define XY_SIDE_AD 200
1099
+
1100
+  // Or, set the default skew factors directly here
1101
+  // to override the above measurements:
1102
+  #define XY_SKEW_FACTOR 0.0
1103
+
1104
+  //#define SKEW_CORRECTION_FOR_Z
1105
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1106
+    #define XZ_DIAG_AC 282.8427124746
1107
+    #define XZ_DIAG_BD 282.8427124746
1108
+    #define YZ_DIAG_AC 282.8427124746
1109
+    #define YZ_DIAG_BD 282.8427124746
1110
+    #define YZ_SIDE_AD 200
1111
+    #define XZ_SKEW_FACTOR 0.0
1112
+    #define YZ_SKEW_FACTOR 0.0
1113
+  #endif
1114
+
1115
+  // Enable this option for M852 to set skew at runtime
1116
+  //#define SKEW_CORRECTION_GCODE
1117
+#endif
1118
+
1062 1119
 //=============================================================================
1063 1120
 //============================= Additional Features ===========================
1064 1121
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/AliExpress/CL-260/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Anet/A6/Configuration.h View File

@@ -951,7 +951,7 @@
951 951
 //===========================================================================
952 952
 //=============================== Bed Leveling ==============================
953 953
 //===========================================================================
954
-// @section bedlevel
954
+// @section calibrate
955 955
 
956 956
 /**
957 957
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1196,6 +1196,63 @@
1196 1196
 #define HOMING_FEEDRATE_XY (50*60)
1197 1197
 #define HOMING_FEEDRATE_Z  (4*60)
1198 1198
 
1199
+// @section calibrate
1200
+
1201
+/**
1202
+ * Bed Skew Compensation
1203
+ *
1204
+ * This feature corrects for misalignment in the XYZ axes.
1205
+ *
1206
+ * Take the following steps to get the bed skew in the XY plane:
1207
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1208
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1209
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1210
+ *  4. For XY_SIDE_AD measure the edge A to D
1211
+ *
1212
+ * Marlin automatically computes skew factors from these measurements.
1213
+ * Skew factors may also be computed and set manually:
1214
+ *
1215
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1216
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1217
+ *
1218
+ * If desired, follow the same procedure for XZ and YZ.
1219
+ * Use these diagrams for reference:
1220
+ *
1221
+ *    Y                     Z                     Z
1222
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1223
+ *    |    /       /        |    /       /        |    /       /
1224
+ *    |   /       /         |   /       /         |   /       /
1225
+ *    |  A-------D          |  A-------D          |  A-------D
1226
+ *    +-------------->X     +-------------->X     +-------------->Y
1227
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1228
+ */
1229
+//#define SKEW_CORRECTION
1230
+
1231
+#if ENABLED(SKEW_CORRECTION)
1232
+  // Input all length measurements here:
1233
+  #define XY_DIAG_AC 282.8427124746
1234
+  #define XY_DIAG_BD 282.8427124746
1235
+  #define XY_SIDE_AD 200
1236
+
1237
+  // Or, set the default skew factors directly here
1238
+  // to override the above measurements:
1239
+  #define XY_SKEW_FACTOR 0.0
1240
+
1241
+  //#define SKEW_CORRECTION_FOR_Z
1242
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1243
+    #define XZ_DIAG_AC 282.8427124746
1244
+    #define XZ_DIAG_BD 282.8427124746
1245
+    #define YZ_DIAG_AC 282.8427124746
1246
+    #define YZ_DIAG_BD 282.8427124746
1247
+    #define YZ_SIDE_AD 200
1248
+    #define XZ_SKEW_FACTOR 0.0
1249
+    #define YZ_SKEW_FACTOR 0.0
1250
+  #endif
1251
+
1252
+  // Enable this option for M852 to set skew at runtime
1253
+  //#define SKEW_CORRECTION_GCODE
1254
+#endif
1255
+
1199 1256
 //=============================================================================
1200 1257
 //============================= Additional Features ===========================
1201 1258
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Anet/A8/Configuration.h View File

@@ -838,7 +838,7 @@
838 838
 //===========================================================================
839 839
 //=============================== Bed Leveling ==============================
840 840
 //===========================================================================
841
-// @section bedlevel
841
+// @section calibrate
842 842
 
843 843
 /**
844 844
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1045,6 +1045,63 @@
1045 1045
 #define HOMING_FEEDRATE_XY (100*60)
1046 1046
 #define HOMING_FEEDRATE_Z  (4*60)
1047 1047
 
1048
+// @section calibrate
1049
+
1050
+/**
1051
+ * Bed Skew Compensation
1052
+ *
1053
+ * This feature corrects for misalignment in the XYZ axes.
1054
+ *
1055
+ * Take the following steps to get the bed skew in the XY plane:
1056
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1057
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1058
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1059
+ *  4. For XY_SIDE_AD measure the edge A to D
1060
+ *
1061
+ * Marlin automatically computes skew factors from these measurements.
1062
+ * Skew factors may also be computed and set manually:
1063
+ *
1064
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1065
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1066
+ *
1067
+ * If desired, follow the same procedure for XZ and YZ.
1068
+ * Use these diagrams for reference:
1069
+ *
1070
+ *    Y                     Z                     Z
1071
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1072
+ *    |    /       /        |    /       /        |    /       /
1073
+ *    |   /       /         |   /       /         |   /       /
1074
+ *    |  A-------D          |  A-------D          |  A-------D
1075
+ *    +-------------->X     +-------------->X     +-------------->Y
1076
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1077
+ */
1078
+//#define SKEW_CORRECTION
1079
+
1080
+#if ENABLED(SKEW_CORRECTION)
1081
+  // Input all length measurements here:
1082
+  #define XY_DIAG_AC 282.8427124746
1083
+  #define XY_DIAG_BD 282.8427124746
1084
+  #define XY_SIDE_AD 200
1085
+
1086
+  // Or, set the default skew factors directly here
1087
+  // to override the above measurements:
1088
+  #define XY_SKEW_FACTOR 0.0
1089
+
1090
+  //#define SKEW_CORRECTION_FOR_Z
1091
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1092
+    #define XZ_DIAG_AC 282.8427124746
1093
+    #define XZ_DIAG_BD 282.8427124746
1094
+    #define YZ_DIAG_AC 282.8427124746
1095
+    #define YZ_DIAG_BD 282.8427124746
1096
+    #define YZ_SIDE_AD 200
1097
+    #define XZ_SKEW_FACTOR 0.0
1098
+    #define YZ_SKEW_FACTOR 0.0
1099
+  #endif
1100
+
1101
+  // Enable this option for M852 to set skew at runtime
1102
+  //#define SKEW_CORRECTION_GCODE
1103
+#endif
1104
+
1048 1105
 //=============================================================================
1049 1106
 //============================= Additional Features ===========================
1050 1107
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Azteeg/X5GT/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/BQ/Hephestos/Configuration.h View File

@@ -823,7 +823,7 @@
823 823
 //===========================================================================
824 824
 //=============================== Bed Leveling ==============================
825 825
 //===========================================================================
826
-// @section bedlevel
826
+// @section calibrate
827 827
 
828 828
 /**
829 829
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1030,6 +1030,63 @@
1030 1030
 #define HOMING_FEEDRATE_XY 2000
1031 1031
 #define HOMING_FEEDRATE_Z  150
1032 1032
 
1033
+// @section calibrate
1034
+
1035
+/**
1036
+ * Bed Skew Compensation
1037
+ *
1038
+ * This feature corrects for misalignment in the XYZ axes.
1039
+ *
1040
+ * Take the following steps to get the bed skew in the XY plane:
1041
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1042
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1043
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1044
+ *  4. For XY_SIDE_AD measure the edge A to D
1045
+ *
1046
+ * Marlin automatically computes skew factors from these measurements.
1047
+ * Skew factors may also be computed and set manually:
1048
+ *
1049
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1050
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1051
+ *
1052
+ * If desired, follow the same procedure for XZ and YZ.
1053
+ * Use these diagrams for reference:
1054
+ *
1055
+ *    Y                     Z                     Z
1056
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1057
+ *    |    /       /        |    /       /        |    /       /
1058
+ *    |   /       /         |   /       /         |   /       /
1059
+ *    |  A-------D          |  A-------D          |  A-------D
1060
+ *    +-------------->X     +-------------->X     +-------------->Y
1061
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1062
+ */
1063
+//#define SKEW_CORRECTION
1064
+
1065
+#if ENABLED(SKEW_CORRECTION)
1066
+  // Input all length measurements here:
1067
+  #define XY_DIAG_AC 282.8427124746
1068
+  #define XY_DIAG_BD 282.8427124746
1069
+  #define XY_SIDE_AD 200
1070
+
1071
+  // Or, set the default skew factors directly here
1072
+  // to override the above measurements:
1073
+  #define XY_SKEW_FACTOR 0.0
1074
+
1075
+  //#define SKEW_CORRECTION_FOR_Z
1076
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1077
+    #define XZ_DIAG_AC 282.8427124746
1078
+    #define XZ_DIAG_BD 282.8427124746
1079
+    #define YZ_DIAG_AC 282.8427124746
1080
+    #define YZ_DIAG_BD 282.8427124746
1081
+    #define YZ_SIDE_AD 200
1082
+    #define XZ_SKEW_FACTOR 0.0
1083
+    #define YZ_SKEW_FACTOR 0.0
1084
+  #endif
1085
+
1086
+  // Enable this option for M852 to set skew at runtime
1087
+  //#define SKEW_CORRECTION_GCODE
1088
+#endif
1089
+
1033 1090
 //=============================================================================
1034 1091
 //============================= Additional Features ===========================
1035 1092
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h View File

@@ -833,7 +833,7 @@
833 833
 //===========================================================================
834 834
 //=============================== Bed Leveling ==============================
835 835
 //===========================================================================
836
-// @section bedlevel
836
+// @section calibrate
837 837
 
838 838
 /**
839 839
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1040,6 +1040,63 @@
1040 1040
 #define HOMING_FEEDRATE_XY (60*60)
1041 1041
 #define HOMING_FEEDRATE_Z  120
1042 1042
 
1043
+// @section calibrate
1044
+
1045
+/**
1046
+ * Bed Skew Compensation
1047
+ *
1048
+ * This feature corrects for misalignment in the XYZ axes.
1049
+ *
1050
+ * Take the following steps to get the bed skew in the XY plane:
1051
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1052
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1053
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1054
+ *  4. For XY_SIDE_AD measure the edge A to D
1055
+ *
1056
+ * Marlin automatically computes skew factors from these measurements.
1057
+ * Skew factors may also be computed and set manually:
1058
+ *
1059
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1060
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1061
+ *
1062
+ * If desired, follow the same procedure for XZ and YZ.
1063
+ * Use these diagrams for reference:
1064
+ *
1065
+ *    Y                     Z                     Z
1066
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1067
+ *    |    /       /        |    /       /        |    /       /
1068
+ *    |   /       /         |   /       /         |   /       /
1069
+ *    |  A-------D          |  A-------D          |  A-------D
1070
+ *    +-------------->X     +-------------->X     +-------------->Y
1071
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1072
+ */
1073
+//#define SKEW_CORRECTION
1074
+
1075
+#if ENABLED(SKEW_CORRECTION)
1076
+  // Input all length measurements here:
1077
+  #define XY_DIAG_AC 282.8427124746
1078
+  #define XY_DIAG_BD 282.8427124746
1079
+  #define XY_SIDE_AD 200
1080
+
1081
+  // Or, set the default skew factors directly here
1082
+  // to override the above measurements:
1083
+  #define XY_SKEW_FACTOR 0.0
1084
+
1085
+  //#define SKEW_CORRECTION_FOR_Z
1086
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1087
+    #define XZ_DIAG_AC 282.8427124746
1088
+    #define XZ_DIAG_BD 282.8427124746
1089
+    #define YZ_DIAG_AC 282.8427124746
1090
+    #define YZ_DIAG_BD 282.8427124746
1091
+    #define YZ_SIDE_AD 200
1092
+    #define XZ_SKEW_FACTOR 0.0
1093
+    #define YZ_SKEW_FACTOR 0.0
1094
+  #endif
1095
+
1096
+  // Enable this option for M852 to set skew at runtime
1097
+  //#define SKEW_CORRECTION_GCODE
1098
+#endif
1099
+
1043 1100
 //=============================================================================
1044 1101
 //============================= Additional Features ===========================
1045 1102
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/BQ/WITBOX/Configuration.h View File

@@ -823,7 +823,7 @@
823 823
 //===========================================================================
824 824
 //=============================== Bed Leveling ==============================
825 825
 //===========================================================================
826
-// @section bedlevel
826
+// @section calibrate
827 827
 
828 828
 /**
829 829
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1030,6 +1030,63 @@
1030 1030
 #define HOMING_FEEDRATE_XY (120*60)
1031 1031
 #define HOMING_FEEDRATE_Z  432
1032 1032
 
1033
+// @section calibrate
1034
+
1035
+/**
1036
+ * Bed Skew Compensation
1037
+ *
1038
+ * This feature corrects for misalignment in the XYZ axes.
1039
+ *
1040
+ * Take the following steps to get the bed skew in the XY plane:
1041
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1042
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1043
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1044
+ *  4. For XY_SIDE_AD measure the edge A to D
1045
+ *
1046
+ * Marlin automatically computes skew factors from these measurements.
1047
+ * Skew factors may also be computed and set manually:
1048
+ *
1049
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1050
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1051
+ *
1052
+ * If desired, follow the same procedure for XZ and YZ.
1053
+ * Use these diagrams for reference:
1054
+ *
1055
+ *    Y                     Z                     Z
1056
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1057
+ *    |    /       /        |    /       /        |    /       /
1058
+ *    |   /       /         |   /       /         |   /       /
1059
+ *    |  A-------D          |  A-------D          |  A-------D
1060
+ *    +-------------->X     +-------------->X     +-------------->Y
1061
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1062
+ */
1063
+//#define SKEW_CORRECTION
1064
+
1065
+#if ENABLED(SKEW_CORRECTION)
1066
+  // Input all length measurements here:
1067
+  #define XY_DIAG_AC 282.8427124746
1068
+  #define XY_DIAG_BD 282.8427124746
1069
+  #define XY_SIDE_AD 200
1070
+
1071
+  // Or, set the default skew factors directly here
1072
+  // to override the above measurements:
1073
+  #define XY_SKEW_FACTOR 0.0
1074
+
1075
+  //#define SKEW_CORRECTION_FOR_Z
1076
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1077
+    #define XZ_DIAG_AC 282.8427124746
1078
+    #define XZ_DIAG_BD 282.8427124746
1079
+    #define YZ_DIAG_AC 282.8427124746
1080
+    #define YZ_DIAG_BD 282.8427124746
1081
+    #define YZ_SIDE_AD 200
1082
+    #define XZ_SKEW_FACTOR 0.0
1083
+    #define YZ_SKEW_FACTOR 0.0
1084
+  #endif
1085
+
1086
+  // Enable this option for M852 to set skew at runtime
1087
+  //#define SKEW_CORRECTION_GCODE
1088
+#endif
1089
+
1033 1090
 //=============================================================================
1034 1091
 //============================= Additional Features ===========================
1035 1092
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Cartesio/Configuration.h View File

@@ -831,7 +831,7 @@
831 831
 //===========================================================================
832 832
 //=============================== Bed Leveling ==============================
833 833
 //===========================================================================
834
-// @section bedlevel
834
+// @section calibrate
835 835
 
836 836
 /**
837 837
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1038,6 +1038,63 @@
1038 1038
 #define HOMING_FEEDRATE_XY (50*60)
1039 1039
 #define HOMING_FEEDRATE_Z  (10*60)
1040 1040
 
1041
+// @section calibrate
1042
+
1043
+/**
1044
+ * Bed Skew Compensation
1045
+ *
1046
+ * This feature corrects for misalignment in the XYZ axes.
1047
+ *
1048
+ * Take the following steps to get the bed skew in the XY plane:
1049
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1050
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1051
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1052
+ *  4. For XY_SIDE_AD measure the edge A to D
1053
+ *
1054
+ * Marlin automatically computes skew factors from these measurements.
1055
+ * Skew factors may also be computed and set manually:
1056
+ *
1057
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1058
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1059
+ *
1060
+ * If desired, follow the same procedure for XZ and YZ.
1061
+ * Use these diagrams for reference:
1062
+ *
1063
+ *    Y                     Z                     Z
1064
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1065
+ *    |    /       /        |    /       /        |    /       /
1066
+ *    |   /       /         |   /       /         |   /       /
1067
+ *    |  A-------D          |  A-------D          |  A-------D
1068
+ *    +-------------->X     +-------------->X     +-------------->Y
1069
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1070
+ */
1071
+//#define SKEW_CORRECTION
1072
+
1073
+#if ENABLED(SKEW_CORRECTION)
1074
+  // Input all length measurements here:
1075
+  #define XY_DIAG_AC 282.8427124746
1076
+  #define XY_DIAG_BD 282.8427124746
1077
+  #define XY_SIDE_AD 200
1078
+
1079
+  // Or, set the default skew factors directly here
1080
+  // to override the above measurements:
1081
+  #define XY_SKEW_FACTOR 0.0
1082
+
1083
+  //#define SKEW_CORRECTION_FOR_Z
1084
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1085
+    #define XZ_DIAG_AC 282.8427124746
1086
+    #define XZ_DIAG_BD 282.8427124746
1087
+    #define YZ_DIAG_AC 282.8427124746
1088
+    #define YZ_DIAG_BD 282.8427124746
1089
+    #define YZ_SIDE_AD 200
1090
+    #define XZ_SKEW_FACTOR 0.0
1091
+    #define YZ_SKEW_FACTOR 0.0
1092
+  #endif
1093
+
1094
+  // Enable this option for M852 to set skew at runtime
1095
+  //#define SKEW_CORRECTION_GCODE
1096
+#endif
1097
+
1041 1098
 //=============================================================================
1042 1099
 //============================= Additional Features ===========================
1043 1100
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Creality/CR-10/Configuration.h View File

@@ -842,7 +842,7 @@
842 842
 //===========================================================================
843 843
 //=============================== Bed Leveling ==============================
844 844
 //===========================================================================
845
-// @section bedlevel
845
+// @section calibrate
846 846
 
847 847
 /**
848 848
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1049,6 +1049,63 @@
1049 1049
 #define HOMING_FEEDRATE_XY (50*60)
1050 1050
 #define HOMING_FEEDRATE_Z  (4*60)
1051 1051
 
1052
+// @section calibrate
1053
+
1054
+/**
1055
+ * Bed Skew Compensation
1056
+ *
1057
+ * This feature corrects for misalignment in the XYZ axes.
1058
+ *
1059
+ * Take the following steps to get the bed skew in the XY plane:
1060
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1061
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1062
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1063
+ *  4. For XY_SIDE_AD measure the edge A to D
1064
+ *
1065
+ * Marlin automatically computes skew factors from these measurements.
1066
+ * Skew factors may also be computed and set manually:
1067
+ *
1068
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1069
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1070
+ *
1071
+ * If desired, follow the same procedure for XZ and YZ.
1072
+ * Use these diagrams for reference:
1073
+ *
1074
+ *    Y                     Z                     Z
1075
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1076
+ *    |    /       /        |    /       /        |    /       /
1077
+ *    |   /       /         |   /       /         |   /       /
1078
+ *    |  A-------D          |  A-------D          |  A-------D
1079
+ *    +-------------->X     +-------------->X     +-------------->Y
1080
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1081
+ */
1082
+//#define SKEW_CORRECTION
1083
+
1084
+#if ENABLED(SKEW_CORRECTION)
1085
+  // Input all length measurements here:
1086
+  #define XY_DIAG_AC 282.8427124746
1087
+  #define XY_DIAG_BD 282.8427124746
1088
+  #define XY_SIDE_AD 200
1089
+
1090
+  // Or, set the default skew factors directly here
1091
+  // to override the above measurements:
1092
+  #define XY_SKEW_FACTOR 0.0
1093
+
1094
+  //#define SKEW_CORRECTION_FOR_Z
1095
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1096
+    #define XZ_DIAG_AC 282.8427124746
1097
+    #define XZ_DIAG_BD 282.8427124746
1098
+    #define YZ_DIAG_AC 282.8427124746
1099
+    #define YZ_DIAG_BD 282.8427124746
1100
+    #define YZ_SIDE_AD 200
1101
+    #define XZ_SKEW_FACTOR 0.0
1102
+    #define YZ_SKEW_FACTOR 0.0
1103
+  #endif
1104
+
1105
+  // Enable this option for M852 to set skew at runtime
1106
+  //#define SKEW_CORRECTION_GCODE
1107
+#endif
1108
+
1052 1109
 //=============================================================================
1053 1110
 //============================= Additional Features ===========================
1054 1111
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Felix/Configuration.h View File

@@ -814,7 +814,7 @@
814 814
 //===========================================================================
815 815
 //=============================== Bed Leveling ==============================
816 816
 //===========================================================================
817
-// @section bedlevel
817
+// @section calibrate
818 818
 
819 819
 /**
820 820
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1021,6 +1021,63 @@
1021 1021
 #define HOMING_FEEDRATE_XY (50*60)
1022 1022
 #define HOMING_FEEDRATE_Z  (4*60)
1023 1023
 
1024
+// @section calibrate
1025
+
1026
+/**
1027
+ * Bed Skew Compensation
1028
+ *
1029
+ * This feature corrects for misalignment in the XYZ axes.
1030
+ *
1031
+ * Take the following steps to get the bed skew in the XY plane:
1032
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1033
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1034
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1035
+ *  4. For XY_SIDE_AD measure the edge A to D
1036
+ *
1037
+ * Marlin automatically computes skew factors from these measurements.
1038
+ * Skew factors may also be computed and set manually:
1039
+ *
1040
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1041
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1042
+ *
1043
+ * If desired, follow the same procedure for XZ and YZ.
1044
+ * Use these diagrams for reference:
1045
+ *
1046
+ *    Y                     Z                     Z
1047
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1048
+ *    |    /       /        |    /       /        |    /       /
1049
+ *    |   /       /         |   /       /         |   /       /
1050
+ *    |  A-------D          |  A-------D          |  A-------D
1051
+ *    +-------------->X     +-------------->X     +-------------->Y
1052
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1053
+ */
1054
+//#define SKEW_CORRECTION
1055
+
1056
+#if ENABLED(SKEW_CORRECTION)
1057
+  // Input all length measurements here:
1058
+  #define XY_DIAG_AC 282.8427124746
1059
+  #define XY_DIAG_BD 282.8427124746
1060
+  #define XY_SIDE_AD 200
1061
+
1062
+  // Or, set the default skew factors directly here
1063
+  // to override the above measurements:
1064
+  #define XY_SKEW_FACTOR 0.0
1065
+
1066
+  //#define SKEW_CORRECTION_FOR_Z
1067
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1068
+    #define XZ_DIAG_AC 282.8427124746
1069
+    #define XZ_DIAG_BD 282.8427124746
1070
+    #define YZ_DIAG_AC 282.8427124746
1071
+    #define YZ_DIAG_BD 282.8427124746
1072
+    #define YZ_SIDE_AD 200
1073
+    #define XZ_SKEW_FACTOR 0.0
1074
+    #define YZ_SKEW_FACTOR 0.0
1075
+  #endif
1076
+
1077
+  // Enable this option for M852 to set skew at runtime
1078
+  //#define SKEW_CORRECTION_GCODE
1079
+#endif
1080
+
1024 1081
 //=============================================================================
1025 1082
 //============================= Additional Features ===========================
1026 1083
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Felix/DUAL/Configuration.h View File

@@ -814,7 +814,7 @@
814 814
 //===========================================================================
815 815
 //=============================== Bed Leveling ==============================
816 816
 //===========================================================================
817
-// @section bedlevel
817
+// @section calibrate
818 818
 
819 819
 /**
820 820
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1021,6 +1021,63 @@
1021 1021
 #define HOMING_FEEDRATE_XY (50*60)
1022 1022
 #define HOMING_FEEDRATE_Z  (4*60)
1023 1023
 
1024
+// @section calibrate
1025
+
1026
+/**
1027
+ * Bed Skew Compensation
1028
+ *
1029
+ * This feature corrects for misalignment in the XYZ axes.
1030
+ *
1031
+ * Take the following steps to get the bed skew in the XY plane:
1032
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1033
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1034
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1035
+ *  4. For XY_SIDE_AD measure the edge A to D
1036
+ *
1037
+ * Marlin automatically computes skew factors from these measurements.
1038
+ * Skew factors may also be computed and set manually:
1039
+ *
1040
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1041
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1042
+ *
1043
+ * If desired, follow the same procedure for XZ and YZ.
1044
+ * Use these diagrams for reference:
1045
+ *
1046
+ *    Y                     Z                     Z
1047
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1048
+ *    |    /       /        |    /       /        |    /       /
1049
+ *    |   /       /         |   /       /         |   /       /
1050
+ *    |  A-------D          |  A-------D          |  A-------D
1051
+ *    +-------------->X     +-------------->X     +-------------->Y
1052
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1053
+ */
1054
+//#define SKEW_CORRECTION
1055
+
1056
+#if ENABLED(SKEW_CORRECTION)
1057
+  // Input all length measurements here:
1058
+  #define XY_DIAG_AC 282.8427124746
1059
+  #define XY_DIAG_BD 282.8427124746
1060
+  #define XY_SIDE_AD 200
1061
+
1062
+  // Or, set the default skew factors directly here
1063
+  // to override the above measurements:
1064
+  #define XY_SKEW_FACTOR 0.0
1065
+
1066
+  //#define SKEW_CORRECTION_FOR_Z
1067
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1068
+    #define XZ_DIAG_AC 282.8427124746
1069
+    #define XZ_DIAG_BD 282.8427124746
1070
+    #define YZ_DIAG_AC 282.8427124746
1071
+    #define YZ_DIAG_BD 282.8427124746
1072
+    #define YZ_SIDE_AD 200
1073
+    #define XZ_SKEW_FACTOR 0.0
1074
+    #define YZ_SKEW_FACTOR 0.0
1075
+  #endif
1076
+
1077
+  // Enable this option for M852 to set skew at runtime
1078
+  //#define SKEW_CORRECTION_GCODE
1079
+#endif
1080
+
1024 1081
 //=============================================================================
1025 1082
 //============================= Additional Features ===========================
1026 1083
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h View File

@@ -829,7 +829,7 @@
829 829
 //===========================================================================
830 830
 //=============================== Bed Leveling ==============================
831 831
 //===========================================================================
832
-// @section bedlevel
832
+// @section calibrate
833 833
 
834 834
 /**
835 835
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1036,6 +1036,63 @@
1036 1036
 #define HOMING_FEEDRATE_XY (40*60)
1037 1037
 #define HOMING_FEEDRATE_Z  (55)
1038 1038
 
1039
+// @section calibrate
1040
+
1041
+/**
1042
+ * Bed Skew Compensation
1043
+ *
1044
+ * This feature corrects for misalignment in the XYZ axes.
1045
+ *
1046
+ * Take the following steps to get the bed skew in the XY plane:
1047
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1048
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1049
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1050
+ *  4. For XY_SIDE_AD measure the edge A to D
1051
+ *
1052
+ * Marlin automatically computes skew factors from these measurements.
1053
+ * Skew factors may also be computed and set manually:
1054
+ *
1055
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1056
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1057
+ *
1058
+ * If desired, follow the same procedure for XZ and YZ.
1059
+ * Use these diagrams for reference:
1060
+ *
1061
+ *    Y                     Z                     Z
1062
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1063
+ *    |    /       /        |    /       /        |    /       /
1064
+ *    |   /       /         |   /       /         |   /       /
1065
+ *    |  A-------D          |  A-------D          |  A-------D
1066
+ *    +-------------->X     +-------------->X     +-------------->Y
1067
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1068
+ */
1069
+//#define SKEW_CORRECTION
1070
+
1071
+#if ENABLED(SKEW_CORRECTION)
1072
+  // Input all length measurements here:
1073
+  #define XY_DIAG_AC 282.8427124746
1074
+  #define XY_DIAG_BD 282.8427124746
1075
+  #define XY_SIDE_AD 200
1076
+
1077
+  // Or, set the default skew factors directly here
1078
+  // to override the above measurements:
1079
+  #define XY_SKEW_FACTOR 0.0
1080
+
1081
+  //#define SKEW_CORRECTION_FOR_Z
1082
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1083
+    #define XZ_DIAG_AC 282.8427124746
1084
+    #define XZ_DIAG_BD 282.8427124746
1085
+    #define YZ_DIAG_AC 282.8427124746
1086
+    #define YZ_DIAG_BD 282.8427124746
1087
+    #define YZ_SIDE_AD 200
1088
+    #define XZ_SKEW_FACTOR 0.0
1089
+    #define YZ_SKEW_FACTOR 0.0
1090
+  #endif
1091
+
1092
+  // Enable this option for M852 to set skew at runtime
1093
+  //#define SKEW_CORRECTION_GCODE
1094
+#endif
1095
+
1039 1096
 //=============================================================================
1040 1097
 //============================= Additional Features ===========================
1041 1098
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Geeetech/GT2560/Configuration.h View File

@@ -847,7 +847,7 @@
847 847
 //===========================================================================
848 848
 //=============================== Bed Leveling ==============================
849 849
 //===========================================================================
850
-// @section bedlevel
850
+// @section calibrate
851 851
 
852 852
 /**
853 853
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1054,6 +1054,63 @@
1054 1054
 #define HOMING_FEEDRATE_XY (50*60)
1055 1055
 #define HOMING_FEEDRATE_Z  (4*60)
1056 1056
 
1057
+// @section calibrate
1058
+
1059
+/**
1060
+ * Bed Skew Compensation
1061
+ *
1062
+ * This feature corrects for misalignment in the XYZ axes.
1063
+ *
1064
+ * Take the following steps to get the bed skew in the XY plane:
1065
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1066
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1067
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1068
+ *  4. For XY_SIDE_AD measure the edge A to D
1069
+ *
1070
+ * Marlin automatically computes skew factors from these measurements.
1071
+ * Skew factors may also be computed and set manually:
1072
+ *
1073
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1074
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1075
+ *
1076
+ * If desired, follow the same procedure for XZ and YZ.
1077
+ * Use these diagrams for reference:
1078
+ *
1079
+ *    Y                     Z                     Z
1080
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1081
+ *    |    /       /        |    /       /        |    /       /
1082
+ *    |   /       /         |   /       /         |   /       /
1083
+ *    |  A-------D          |  A-------D          |  A-------D
1084
+ *    +-------------->X     +-------------->X     +-------------->Y
1085
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1086
+ */
1087
+//#define SKEW_CORRECTION
1088
+
1089
+#if ENABLED(SKEW_CORRECTION)
1090
+  // Input all length measurements here:
1091
+  #define XY_DIAG_AC 282.8427124746
1092
+  #define XY_DIAG_BD 282.8427124746
1093
+  #define XY_SIDE_AD 200
1094
+
1095
+  // Or, set the default skew factors directly here
1096
+  // to override the above measurements:
1097
+  #define XY_SKEW_FACTOR 0.0
1098
+
1099
+  //#define SKEW_CORRECTION_FOR_Z
1100
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1101
+    #define XZ_DIAG_AC 282.8427124746
1102
+    #define XZ_DIAG_BD 282.8427124746
1103
+    #define YZ_DIAG_AC 282.8427124746
1104
+    #define YZ_DIAG_BD 282.8427124746
1105
+    #define YZ_SIDE_AD 200
1106
+    #define XZ_SKEW_FACTOR 0.0
1107
+    #define YZ_SKEW_FACTOR 0.0
1108
+  #endif
1109
+
1110
+  // Enable this option for M852 to set skew at runtime
1111
+  //#define SKEW_CORRECTION_GCODE
1112
+#endif
1113
+
1057 1114
 //=============================================================================
1058 1115
 //============================= Additional Features ===========================
1059 1116
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Infitary/i3-M508/Configuration.h View File

@@ -836,7 +836,7 @@
836 836
 //===========================================================================
837 837
 //=============================== Bed Leveling ==============================
838 838
 //===========================================================================
839
-// @section bedlevel
839
+// @section calibrate
840 840
 
841 841
 /**
842 842
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1043,6 +1043,63 @@
1043 1043
 #define HOMING_FEEDRATE_XY (50*60)
1044 1044
 #define HOMING_FEEDRATE_Z  (4*60)
1045 1045
 
1046
+// @section calibrate
1047
+
1048
+/**
1049
+ * Bed Skew Compensation
1050
+ *
1051
+ * This feature corrects for misalignment in the XYZ axes.
1052
+ *
1053
+ * Take the following steps to get the bed skew in the XY plane:
1054
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1055
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1056
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1057
+ *  4. For XY_SIDE_AD measure the edge A to D
1058
+ *
1059
+ * Marlin automatically computes skew factors from these measurements.
1060
+ * Skew factors may also be computed and set manually:
1061
+ *
1062
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1063
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1064
+ *
1065
+ * If desired, follow the same procedure for XZ and YZ.
1066
+ * Use these diagrams for reference:
1067
+ *
1068
+ *    Y                     Z                     Z
1069
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1070
+ *    |    /       /        |    /       /        |    /       /
1071
+ *    |   /       /         |   /       /         |   /       /
1072
+ *    |  A-------D          |  A-------D          |  A-------D
1073
+ *    +-------------->X     +-------------->X     +-------------->Y
1074
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1075
+ */
1076
+//#define SKEW_CORRECTION
1077
+
1078
+#if ENABLED(SKEW_CORRECTION)
1079
+  // Input all length measurements here:
1080
+  #define XY_DIAG_AC 282.8427124746
1081
+  #define XY_DIAG_BD 282.8427124746
1082
+  #define XY_SIDE_AD 200
1083
+
1084
+  // Or, set the default skew factors directly here
1085
+  // to override the above measurements:
1086
+  #define XY_SKEW_FACTOR 0.0
1087
+
1088
+  //#define SKEW_CORRECTION_FOR_Z
1089
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1090
+    #define XZ_DIAG_AC 282.8427124746
1091
+    #define XZ_DIAG_BD 282.8427124746
1092
+    #define YZ_DIAG_AC 282.8427124746
1093
+    #define YZ_DIAG_BD 282.8427124746
1094
+    #define YZ_SIDE_AD 200
1095
+    #define XZ_SKEW_FACTOR 0.0
1096
+    #define YZ_SKEW_FACTOR 0.0
1097
+  #endif
1098
+
1099
+  // Enable this option for M852 to set skew at runtime
1100
+  //#define SKEW_CORRECTION_GCODE
1101
+#endif
1102
+
1046 1103
 //=============================================================================
1047 1104
 //============================= Additional Features ===========================
1048 1105
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Malyan/M150/Configuration.h View File

@@ -856,7 +856,7 @@
856 856
 //===========================================================================
857 857
 //=============================== Bed Leveling ==============================
858 858
 //===========================================================================
859
-// @section bedlevel
859
+// @section calibrate
860 860
 
861 861
 /**
862 862
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1067,6 +1067,63 @@
1067 1067
 #define HOMING_FEEDRATE_XY (50*60)
1068 1068
 #define HOMING_FEEDRATE_Z  (4*60)
1069 1069
 
1070
+// @section calibrate
1071
+
1072
+/**
1073
+ * Bed Skew Compensation
1074
+ *
1075
+ * This feature corrects for misalignment in the XYZ axes.
1076
+ *
1077
+ * Take the following steps to get the bed skew in the XY plane:
1078
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1079
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1080
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1081
+ *  4. For XY_SIDE_AD measure the edge A to D
1082
+ *
1083
+ * Marlin automatically computes skew factors from these measurements.
1084
+ * Skew factors may also be computed and set manually:
1085
+ *
1086
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1087
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1088
+ *
1089
+ * If desired, follow the same procedure for XZ and YZ.
1090
+ * Use these diagrams for reference:
1091
+ *
1092
+ *    Y                     Z                     Z
1093
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1094
+ *    |    /       /        |    /       /        |    /       /
1095
+ *    |   /       /         |   /       /         |   /       /
1096
+ *    |  A-------D          |  A-------D          |  A-------D
1097
+ *    +-------------->X     +-------------->X     +-------------->Y
1098
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1099
+ */
1100
+//#define SKEW_CORRECTION
1101
+
1102
+#if ENABLED(SKEW_CORRECTION)
1103
+  // Input all length measurements here:
1104
+  #define XY_DIAG_AC 282.8427124746
1105
+  #define XY_DIAG_BD 282.8427124746
1106
+  #define XY_SIDE_AD 200
1107
+
1108
+  // Or, set the default skew factors directly here
1109
+  // to override the above measurements:
1110
+  #define XY_SKEW_FACTOR 0.0
1111
+
1112
+  //#define SKEW_CORRECTION_FOR_Z
1113
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1114
+    #define XZ_DIAG_AC 282.8427124746
1115
+    #define XZ_DIAG_BD 282.8427124746
1116
+    #define YZ_DIAG_AC 282.8427124746
1117
+    #define YZ_DIAG_BD 282.8427124746
1118
+    #define YZ_SIDE_AD 200
1119
+    #define XZ_SKEW_FACTOR 0.0
1120
+    #define YZ_SKEW_FACTOR 0.0
1121
+  #endif
1122
+
1123
+  // Enable this option for M852 to set skew at runtime
1124
+  //#define SKEW_CORRECTION_GCODE
1125
+#endif
1126
+
1070 1127
 //=============================================================================
1071 1128
 //============================= Additional Features ===========================
1072 1129
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Micromake/C1/basic/Configuration.h View File

@@ -836,7 +836,7 @@
836 836
 //===========================================================================
837 837
 //=============================== Bed Leveling ==============================
838 838
 //===========================================================================
839
-// @section bedlevel
839
+// @section calibrate
840 840
 
841 841
 /**
842 842
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1043,6 +1043,63 @@
1043 1043
 #define HOMING_FEEDRATE_XY (50*60)
1044 1044
 #define HOMING_FEEDRATE_Z  (4*60)
1045 1045
 
1046
+// @section calibrate
1047
+
1048
+/**
1049
+ * Bed Skew Compensation
1050
+ *
1051
+ * This feature corrects for misalignment in the XYZ axes.
1052
+ *
1053
+ * Take the following steps to get the bed skew in the XY plane:
1054
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1055
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1056
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1057
+ *  4. For XY_SIDE_AD measure the edge A to D
1058
+ *
1059
+ * Marlin automatically computes skew factors from these measurements.
1060
+ * Skew factors may also be computed and set manually:
1061
+ *
1062
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1063
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1064
+ *
1065
+ * If desired, follow the same procedure for XZ and YZ.
1066
+ * Use these diagrams for reference:
1067
+ *
1068
+ *    Y                     Z                     Z
1069
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1070
+ *    |    /       /        |    /       /        |    /       /
1071
+ *    |   /       /         |   /       /         |   /       /
1072
+ *    |  A-------D          |  A-------D          |  A-------D
1073
+ *    +-------------->X     +-------------->X     +-------------->Y
1074
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1075
+ */
1076
+//#define SKEW_CORRECTION
1077
+
1078
+#if ENABLED(SKEW_CORRECTION)
1079
+  // Input all length measurements here:
1080
+  #define XY_DIAG_AC 282.8427124746
1081
+  #define XY_DIAG_BD 282.8427124746
1082
+  #define XY_SIDE_AD 200
1083
+
1084
+  // Or, set the default skew factors directly here
1085
+  // to override the above measurements:
1086
+  #define XY_SKEW_FACTOR 0.0
1087
+
1088
+  //#define SKEW_CORRECTION_FOR_Z
1089
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1090
+    #define XZ_DIAG_AC 282.8427124746
1091
+    #define XZ_DIAG_BD 282.8427124746
1092
+    #define YZ_DIAG_AC 282.8427124746
1093
+    #define YZ_DIAG_BD 282.8427124746
1094
+    #define YZ_SIDE_AD 200
1095
+    #define XZ_SKEW_FACTOR 0.0
1096
+    #define YZ_SKEW_FACTOR 0.0
1097
+  #endif
1098
+
1099
+  // Enable this option for M852 to set skew at runtime
1100
+  //#define SKEW_CORRECTION_GCODE
1101
+#endif
1102
+
1046 1103
 //=============================================================================
1047 1104
 //============================= Additional Features ===========================
1048 1105
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h View File

@@ -836,7 +836,7 @@
836 836
 //===========================================================================
837 837
 //=============================== Bed Leveling ==============================
838 838
 //===========================================================================
839
-// @section bedlevel
839
+// @section calibrate
840 840
 
841 841
 /**
842 842
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1043,6 +1043,63 @@
1043 1043
 #define HOMING_FEEDRATE_XY (50*60)
1044 1044
 #define HOMING_FEEDRATE_Z  (4*60)
1045 1045
 
1046
+// @section calibrate
1047
+
1048
+/**
1049
+ * Bed Skew Compensation
1050
+ *
1051
+ * This feature corrects for misalignment in the XYZ axes.
1052
+ *
1053
+ * Take the following steps to get the bed skew in the XY plane:
1054
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1055
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1056
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1057
+ *  4. For XY_SIDE_AD measure the edge A to D
1058
+ *
1059
+ * Marlin automatically computes skew factors from these measurements.
1060
+ * Skew factors may also be computed and set manually:
1061
+ *
1062
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1063
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1064
+ *
1065
+ * If desired, follow the same procedure for XZ and YZ.
1066
+ * Use these diagrams for reference:
1067
+ *
1068
+ *    Y                     Z                     Z
1069
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1070
+ *    |    /       /        |    /       /        |    /       /
1071
+ *    |   /       /         |   /       /         |   /       /
1072
+ *    |  A-------D          |  A-------D          |  A-------D
1073
+ *    +-------------->X     +-------------->X     +-------------->Y
1074
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1075
+ */
1076
+//#define SKEW_CORRECTION
1077
+
1078
+#if ENABLED(SKEW_CORRECTION)
1079
+  // Input all length measurements here:
1080
+  #define XY_DIAG_AC 282.8427124746
1081
+  #define XY_DIAG_BD 282.8427124746
1082
+  #define XY_SIDE_AD 200
1083
+
1084
+  // Or, set the default skew factors directly here
1085
+  // to override the above measurements:
1086
+  #define XY_SKEW_FACTOR 0.0
1087
+
1088
+  //#define SKEW_CORRECTION_FOR_Z
1089
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1090
+    #define XZ_DIAG_AC 282.8427124746
1091
+    #define XZ_DIAG_BD 282.8427124746
1092
+    #define YZ_DIAG_AC 282.8427124746
1093
+    #define YZ_DIAG_BD 282.8427124746
1094
+    #define YZ_SIDE_AD 200
1095
+    #define XZ_SKEW_FACTOR 0.0
1096
+    #define YZ_SKEW_FACTOR 0.0
1097
+  #endif
1098
+
1099
+  // Enable this option for M852 to set skew at runtime
1100
+  //#define SKEW_CORRECTION_GCODE
1101
+#endif
1102
+
1046 1103
 //=============================================================================
1047 1104
 //============================= Additional Features ===========================
1048 1105
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Mks/Sbase/Configuration.h View File

@@ -833,7 +833,7 @@
833 833
 //===========================================================================
834 834
 //=============================== Bed Leveling ==============================
835 835
 //===========================================================================
836
-// @section bedlevel
836
+// @section calibrate
837 837
 
838 838
 /**
839 839
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1040,6 +1040,63 @@
1040 1040
 #define HOMING_FEEDRATE_XY (50*60)
1041 1041
 #define HOMING_FEEDRATE_Z  (4*60)
1042 1042
 
1043
+// @section calibrate
1044
+
1045
+/**
1046
+ * Bed Skew Compensation
1047
+ *
1048
+ * This feature corrects for misalignment in the XYZ axes.
1049
+ *
1050
+ * Take the following steps to get the bed skew in the XY plane:
1051
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1052
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1053
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1054
+ *  4. For XY_SIDE_AD measure the edge A to D
1055
+ *
1056
+ * Marlin automatically computes skew factors from these measurements.
1057
+ * Skew factors may also be computed and set manually:
1058
+ *
1059
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1060
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1061
+ *
1062
+ * If desired, follow the same procedure for XZ and YZ.
1063
+ * Use these diagrams for reference:
1064
+ *
1065
+ *    Y                     Z                     Z
1066
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1067
+ *    |    /       /        |    /       /        |    /       /
1068
+ *    |   /       /         |   /       /         |   /       /
1069
+ *    |  A-------D          |  A-------D          |  A-------D
1070
+ *    +-------------->X     +-------------->X     +-------------->Y
1071
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1072
+ */
1073
+//#define SKEW_CORRECTION
1074
+
1075
+#if ENABLED(SKEW_CORRECTION)
1076
+  // Input all length measurements here:
1077
+  #define XY_DIAG_AC 282.8427124746
1078
+  #define XY_DIAG_BD 282.8427124746
1079
+  #define XY_SIDE_AD 200
1080
+
1081
+  // Or, set the default skew factors directly here
1082
+  // to override the above measurements:
1083
+  #define XY_SKEW_FACTOR 0.0
1084
+
1085
+  //#define SKEW_CORRECTION_FOR_Z
1086
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1087
+    #define XZ_DIAG_AC 282.8427124746
1088
+    #define XZ_DIAG_BD 282.8427124746
1089
+    #define YZ_DIAG_AC 282.8427124746
1090
+    #define YZ_DIAG_BD 282.8427124746
1091
+    #define YZ_SIDE_AD 200
1092
+    #define XZ_SKEW_FACTOR 0.0
1093
+    #define YZ_SKEW_FACTOR 0.0
1094
+  #endif
1095
+
1096
+  // Enable this option for M852 to set skew at runtime
1097
+  //#define SKEW_CORRECTION_GCODE
1098
+#endif
1099
+
1043 1100
 //=============================================================================
1044 1101
 //============================= Additional Features ===========================
1045 1102
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/RigidBot/Configuration.h View File

@@ -830,7 +830,7 @@
830 830
 //===========================================================================
831 831
 //=============================== Bed Leveling ==============================
832 832
 //===========================================================================
833
-// @section bedlevel
833
+// @section calibrate
834 834
 
835 835
 /**
836 836
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1037,6 +1037,63 @@
1037 1037
 #define HOMING_FEEDRATE_XY (50*60)
1038 1038
 #define HOMING_FEEDRATE_Z  (15*60)
1039 1039
 
1040
+// @section calibrate
1041
+
1042
+/**
1043
+ * Bed Skew Compensation
1044
+ *
1045
+ * This feature corrects for misalignment in the XYZ axes.
1046
+ *
1047
+ * Take the following steps to get the bed skew in the XY plane:
1048
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1049
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1050
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1051
+ *  4. For XY_SIDE_AD measure the edge A to D
1052
+ *
1053
+ * Marlin automatically computes skew factors from these measurements.
1054
+ * Skew factors may also be computed and set manually:
1055
+ *
1056
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1057
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1058
+ *
1059
+ * If desired, follow the same procedure for XZ and YZ.
1060
+ * Use these diagrams for reference:
1061
+ *
1062
+ *    Y                     Z                     Z
1063
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1064
+ *    |    /       /        |    /       /        |    /       /
1065
+ *    |   /       /         |   /       /         |   /       /
1066
+ *    |  A-------D          |  A-------D          |  A-------D
1067
+ *    +-------------->X     +-------------->X     +-------------->Y
1068
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1069
+ */
1070
+//#define SKEW_CORRECTION
1071
+
1072
+#if ENABLED(SKEW_CORRECTION)
1073
+  // Input all length measurements here:
1074
+  #define XY_DIAG_AC 282.8427124746
1075
+  #define XY_DIAG_BD 282.8427124746
1076
+  #define XY_SIDE_AD 200
1077
+
1078
+  // Or, set the default skew factors directly here
1079
+  // to override the above measurements:
1080
+  #define XY_SKEW_FACTOR 0.0
1081
+
1082
+  //#define SKEW_CORRECTION_FOR_Z
1083
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1084
+    #define XZ_DIAG_AC 282.8427124746
1085
+    #define XZ_DIAG_BD 282.8427124746
1086
+    #define YZ_DIAG_AC 282.8427124746
1087
+    #define YZ_DIAG_BD 282.8427124746
1088
+    #define YZ_SIDE_AD 200
1089
+    #define XZ_SKEW_FACTOR 0.0
1090
+    #define YZ_SKEW_FACTOR 0.0
1091
+  #endif
1092
+
1093
+  // Enable this option for M852 to set skew at runtime
1094
+  //#define SKEW_CORRECTION_GCODE
1095
+#endif
1096
+
1040 1097
 //=============================================================================
1041 1098
 //============================= Additional Features ===========================
1042 1099
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/SCARA/Configuration.h View File

@@ -844,7 +844,7 @@
844 844
 //===========================================================================
845 845
 //=============================== Bed Leveling ==============================
846 846
 //===========================================================================
847
-// @section bedlevel
847
+// @section calibrate
848 848
 
849 849
 /**
850 850
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1051,6 +1051,63 @@
1051 1051
 #define HOMING_FEEDRATE_XY (40*60)
1052 1052
 #define HOMING_FEEDRATE_Z  (10*60)
1053 1053
 
1054
+// @section calibrate
1055
+
1056
+/**
1057
+ * Bed Skew Compensation
1058
+ *
1059
+ * This feature corrects for misalignment in the XYZ axes.
1060
+ *
1061
+ * Take the following steps to get the bed skew in the XY plane:
1062
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1063
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1064
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1065
+ *  4. For XY_SIDE_AD measure the edge A to D
1066
+ *
1067
+ * Marlin automatically computes skew factors from these measurements.
1068
+ * Skew factors may also be computed and set manually:
1069
+ *
1070
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1071
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1072
+ *
1073
+ * If desired, follow the same procedure for XZ and YZ.
1074
+ * Use these diagrams for reference:
1075
+ *
1076
+ *    Y                     Z                     Z
1077
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1078
+ *    |    /       /        |    /       /        |    /       /
1079
+ *    |   /       /         |   /       /         |   /       /
1080
+ *    |  A-------D          |  A-------D          |  A-------D
1081
+ *    +-------------->X     +-------------->X     +-------------->Y
1082
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1083
+ */
1084
+//#define SKEW_CORRECTION
1085
+
1086
+#if ENABLED(SKEW_CORRECTION)
1087
+  // Input all length measurements here:
1088
+  #define XY_DIAG_AC 282.8427124746
1089
+  #define XY_DIAG_BD 282.8427124746
1090
+  #define XY_SIDE_AD 200
1091
+
1092
+  // Or, set the default skew factors directly here
1093
+  // to override the above measurements:
1094
+  #define XY_SKEW_FACTOR 0.0
1095
+
1096
+  //#define SKEW_CORRECTION_FOR_Z
1097
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1098
+    #define XZ_DIAG_AC 282.8427124746
1099
+    #define XZ_DIAG_BD 282.8427124746
1100
+    #define YZ_DIAG_AC 282.8427124746
1101
+    #define YZ_DIAG_BD 282.8427124746
1102
+    #define YZ_SIDE_AD 200
1103
+    #define XZ_SKEW_FACTOR 0.0
1104
+    #define YZ_SKEW_FACTOR 0.0
1105
+  #endif
1106
+
1107
+  // Enable this option for M852 to set skew at runtime
1108
+  //#define SKEW_CORRECTION_GCODE
1109
+#endif
1110
+
1054 1111
 //=============================================================================
1055 1112
 //============================= Additional Features ===========================
1056 1113
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/STM32F10/Configuration.h View File

@@ -835,7 +835,7 @@
835 835
 //===========================================================================
836 836
 //=============================== Bed Leveling ==============================
837 837
 //===========================================================================
838
-// @section bedlevel
838
+// @section calibrate
839 839
 
840 840
 /**
841 841
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1042,6 +1042,63 @@
1042 1042
 #define HOMING_FEEDRATE_XY (50*60)
1043 1043
 #define HOMING_FEEDRATE_Z  (4*60)
1044 1044
 
1045
+// @section calibrate
1046
+
1047
+/**
1048
+ * Bed Skew Compensation
1049
+ *
1050
+ * This feature corrects for misalignment in the XYZ axes.
1051
+ *
1052
+ * Take the following steps to get the bed skew in the XY plane:
1053
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1054
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1055
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1056
+ *  4. For XY_SIDE_AD measure the edge A to D
1057
+ *
1058
+ * Marlin automatically computes skew factors from these measurements.
1059
+ * Skew factors may also be computed and set manually:
1060
+ *
1061
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1062
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1063
+ *
1064
+ * If desired, follow the same procedure for XZ and YZ.
1065
+ * Use these diagrams for reference:
1066
+ *
1067
+ *    Y                     Z                     Z
1068
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1069
+ *    |    /       /        |    /       /        |    /       /
1070
+ *    |   /       /         |   /       /         |   /       /
1071
+ *    |  A-------D          |  A-------D          |  A-------D
1072
+ *    +-------------->X     +-------------->X     +-------------->Y
1073
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1074
+ */
1075
+//#define SKEW_CORRECTION
1076
+
1077
+#if ENABLED(SKEW_CORRECTION)
1078
+  // Input all length measurements here:
1079
+  #define XY_DIAG_AC 282.8427124746
1080
+  #define XY_DIAG_BD 282.8427124746
1081
+  #define XY_SIDE_AD 200
1082
+
1083
+  // Or, set the default skew factors directly here
1084
+  // to override the above measurements:
1085
+  #define XY_SKEW_FACTOR 0.0
1086
+
1087
+  //#define SKEW_CORRECTION_FOR_Z
1088
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1089
+    #define XZ_DIAG_AC 282.8427124746
1090
+    #define XZ_DIAG_BD 282.8427124746
1091
+    #define YZ_DIAG_AC 282.8427124746
1092
+    #define YZ_DIAG_BD 282.8427124746
1093
+    #define YZ_SIDE_AD 200
1094
+    #define XZ_SKEW_FACTOR 0.0
1095
+    #define YZ_SKEW_FACTOR 0.0
1096
+  #endif
1097
+
1098
+  // Enable this option for M852 to set skew at runtime
1099
+  //#define SKEW_CORRECTION_GCODE
1100
+#endif
1101
+
1045 1102
 //=============================================================================
1046 1103
 //============================= Additional Features ===========================
1047 1104
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Sanguinololu/Configuration.h View File

@@ -863,7 +863,7 @@
863 863
 //===========================================================================
864 864
 //=============================== Bed Leveling ==============================
865 865
 //===========================================================================
866
-// @section bedlevel
866
+// @section calibrate
867 867
 
868 868
 /**
869 869
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1070,6 +1070,63 @@
1070 1070
 #define HOMING_FEEDRATE_XY (50*60)
1071 1071
 #define HOMING_FEEDRATE_Z  (6*60)
1072 1072
 
1073
+// @section calibrate
1074
+
1075
+/**
1076
+ * Bed Skew Compensation
1077
+ *
1078
+ * This feature corrects for misalignment in the XYZ axes.
1079
+ *
1080
+ * Take the following steps to get the bed skew in the XY plane:
1081
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1082
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1083
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1084
+ *  4. For XY_SIDE_AD measure the edge A to D
1085
+ *
1086
+ * Marlin automatically computes skew factors from these measurements.
1087
+ * Skew factors may also be computed and set manually:
1088
+ *
1089
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1090
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1091
+ *
1092
+ * If desired, follow the same procedure for XZ and YZ.
1093
+ * Use these diagrams for reference:
1094
+ *
1095
+ *    Y                     Z                     Z
1096
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1097
+ *    |    /       /        |    /       /        |    /       /
1098
+ *    |   /       /         |   /       /         |   /       /
1099
+ *    |  A-------D          |  A-------D          |  A-------D
1100
+ *    +-------------->X     +-------------->X     +-------------->Y
1101
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1102
+ */
1103
+//#define SKEW_CORRECTION
1104
+
1105
+#if ENABLED(SKEW_CORRECTION)
1106
+  // Input all length measurements here:
1107
+  #define XY_DIAG_AC 282.8427124746
1108
+  #define XY_DIAG_BD 282.8427124746
1109
+  #define XY_SIDE_AD 200
1110
+
1111
+  // Or, set the default skew factors directly here
1112
+  // to override the above measurements:
1113
+  #define XY_SKEW_FACTOR 0.0
1114
+
1115
+  //#define SKEW_CORRECTION_FOR_Z
1116
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1117
+    #define XZ_DIAG_AC 282.8427124746
1118
+    #define XZ_DIAG_BD 282.8427124746
1119
+    #define YZ_DIAG_AC 282.8427124746
1120
+    #define YZ_DIAG_BD 282.8427124746
1121
+    #define YZ_SIDE_AD 200
1122
+    #define XZ_SKEW_FACTOR 0.0
1123
+    #define YZ_SKEW_FACTOR 0.0
1124
+  #endif
1125
+
1126
+  // Enable this option for M852 to set skew at runtime
1127
+  //#define SKEW_CORRECTION_GCODE
1128
+#endif
1129
+
1073 1130
 //=============================================================================
1074 1131
 //============================= Additional Features ===========================
1075 1132
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/TinyBoy2/Configuration.h View File

@@ -888,7 +888,7 @@
888 888
 //===========================================================================
889 889
 //=============================== Bed Leveling ==============================
890 890
 //===========================================================================
891
-// @section bedlevel
891
+// @section calibrate
892 892
 
893 893
 /**
894 894
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1095,6 +1095,63 @@
1095 1095
 #define HOMING_FEEDRATE_XY (40*60)
1096 1096
 #define HOMING_FEEDRATE_Z  (3*60)
1097 1097
 
1098
+// @section calibrate
1099
+
1100
+/**
1101
+ * Bed Skew Compensation
1102
+ *
1103
+ * This feature corrects for misalignment in the XYZ axes.
1104
+ *
1105
+ * Take the following steps to get the bed skew in the XY plane:
1106
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1107
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1108
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1109
+ *  4. For XY_SIDE_AD measure the edge A to D
1110
+ *
1111
+ * Marlin automatically computes skew factors from these measurements.
1112
+ * Skew factors may also be computed and set manually:
1113
+ *
1114
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1115
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1116
+ *
1117
+ * If desired, follow the same procedure for XZ and YZ.
1118
+ * Use these diagrams for reference:
1119
+ *
1120
+ *    Y                     Z                     Z
1121
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1122
+ *    |    /       /        |    /       /        |    /       /
1123
+ *    |   /       /         |   /       /         |   /       /
1124
+ *    |  A-------D          |  A-------D          |  A-------D
1125
+ *    +-------------->X     +-------------->X     +-------------->Y
1126
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1127
+ */
1128
+//#define SKEW_CORRECTION
1129
+
1130
+#if ENABLED(SKEW_CORRECTION)
1131
+  // Input all length measurements here:
1132
+  #define XY_DIAG_AC 282.8427124746
1133
+  #define XY_DIAG_BD 282.8427124746
1134
+  #define XY_SIDE_AD 200
1135
+
1136
+  // Or, set the default skew factors directly here
1137
+  // to override the above measurements:
1138
+  #define XY_SKEW_FACTOR 0.0
1139
+
1140
+  //#define SKEW_CORRECTION_FOR_Z
1141
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1142
+    #define XZ_DIAG_AC 282.8427124746
1143
+    #define XZ_DIAG_BD 282.8427124746
1144
+    #define YZ_DIAG_AC 282.8427124746
1145
+    #define YZ_DIAG_BD 282.8427124746
1146
+    #define YZ_SIDE_AD 200
1147
+    #define XZ_SKEW_FACTOR 0.0
1148
+    #define YZ_SKEW_FACTOR 0.0
1149
+  #endif
1150
+
1151
+  // Enable this option for M852 to set skew at runtime
1152
+  //#define SKEW_CORRECTION_GCODE
1153
+#endif
1154
+
1098 1155
 //=============================================================================
1099 1156
 //============================= Additional Features ===========================
1100 1157
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Velleman/K8200/Configuration.h View File

@@ -862,7 +862,7 @@
862 862
 //===========================================================================
863 863
 //=============================== Bed Leveling ==============================
864 864
 //===========================================================================
865
-// @section bedlevel
865
+// @section calibrate
866 866
 
867 867
 /**
868 868
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1069,6 +1069,63 @@
1069 1069
 #define HOMING_FEEDRATE_XY (50*60)
1070 1070
 #define HOMING_FEEDRATE_Z  (4*60)
1071 1071
 
1072
+// @section calibrate
1073
+
1074
+/**
1075
+ * Bed Skew Compensation
1076
+ *
1077
+ * This feature corrects for misalignment in the XYZ axes.
1078
+ *
1079
+ * Take the following steps to get the bed skew in the XY plane:
1080
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1081
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1082
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1083
+ *  4. For XY_SIDE_AD measure the edge A to D
1084
+ *
1085
+ * Marlin automatically computes skew factors from these measurements.
1086
+ * Skew factors may also be computed and set manually:
1087
+ *
1088
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1089
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1090
+ *
1091
+ * If desired, follow the same procedure for XZ and YZ.
1092
+ * Use these diagrams for reference:
1093
+ *
1094
+ *    Y                     Z                     Z
1095
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1096
+ *    |    /       /        |    /       /        |    /       /
1097
+ *    |   /       /         |   /       /         |   /       /
1098
+ *    |  A-------D          |  A-------D          |  A-------D
1099
+ *    +-------------->X     +-------------->X     +-------------->Y
1100
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1101
+ */
1102
+//#define SKEW_CORRECTION
1103
+
1104
+#if ENABLED(SKEW_CORRECTION)
1105
+  // Input all length measurements here:
1106
+  #define XY_DIAG_AC 282.8427124746
1107
+  #define XY_DIAG_BD 282.8427124746
1108
+  #define XY_SIDE_AD 200
1109
+
1110
+  // Or, set the default skew factors directly here
1111
+  // to override the above measurements:
1112
+  #define XY_SKEW_FACTOR 0.0
1113
+
1114
+  //#define SKEW_CORRECTION_FOR_Z
1115
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1116
+    #define XZ_DIAG_AC 282.8427124746
1117
+    #define XZ_DIAG_BD 282.8427124746
1118
+    #define YZ_DIAG_AC 282.8427124746
1119
+    #define YZ_DIAG_BD 282.8427124746
1120
+    #define YZ_SIDE_AD 200
1121
+    #define XZ_SKEW_FACTOR 0.0
1122
+    #define YZ_SKEW_FACTOR 0.0
1123
+  #endif
1124
+
1125
+  // Enable this option for M852 to set skew at runtime
1126
+  //#define SKEW_CORRECTION_GCODE
1127
+#endif
1128
+
1072 1129
 //=============================================================================
1073 1130
 //============================= Additional Features ===========================
1074 1131
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Velleman/K8400/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (8*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (8*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/adafruit/ST7565/Configuration.h View File

@@ -832,7 +832,7 @@
832 832
 //===========================================================================
833 833
 //=============================== Bed Leveling ==============================
834 834
 //===========================================================================
835
-// @section bedlevel
835
+// @section calibrate
836 836
 
837 837
 /**
838 838
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1039,6 +1039,63 @@
1039 1039
 #define HOMING_FEEDRATE_XY (50*60)
1040 1040
 #define HOMING_FEEDRATE_Z  (4*60)
1041 1041
 
1042
+// @section calibrate
1043
+
1044
+/**
1045
+ * Bed Skew Compensation
1046
+ *
1047
+ * This feature corrects for misalignment in the XYZ axes.
1048
+ *
1049
+ * Take the following steps to get the bed skew in the XY plane:
1050
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1051
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1052
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1053
+ *  4. For XY_SIDE_AD measure the edge A to D
1054
+ *
1055
+ * Marlin automatically computes skew factors from these measurements.
1056
+ * Skew factors may also be computed and set manually:
1057
+ *
1058
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1059
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1060
+ *
1061
+ * If desired, follow the same procedure for XZ and YZ.
1062
+ * Use these diagrams for reference:
1063
+ *
1064
+ *    Y                     Z                     Z
1065
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1066
+ *    |    /       /        |    /       /        |    /       /
1067
+ *    |   /       /         |   /       /         |   /       /
1068
+ *    |  A-------D          |  A-------D          |  A-------D
1069
+ *    +-------------->X     +-------------->X     +-------------->Y
1070
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1071
+ */
1072
+//#define SKEW_CORRECTION
1073
+
1074
+#if ENABLED(SKEW_CORRECTION)
1075
+  // Input all length measurements here:
1076
+  #define XY_DIAG_AC 282.8427124746
1077
+  #define XY_DIAG_BD 282.8427124746
1078
+  #define XY_SIDE_AD 200
1079
+
1080
+  // Or, set the default skew factors directly here
1081
+  // to override the above measurements:
1082
+  #define XY_SKEW_FACTOR 0.0
1083
+
1084
+  //#define SKEW_CORRECTION_FOR_Z
1085
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1086
+    #define XZ_DIAG_AC 282.8427124746
1087
+    #define XZ_DIAG_BD 282.8427124746
1088
+    #define YZ_DIAG_AC 282.8427124746
1089
+    #define YZ_DIAG_BD 282.8427124746
1090
+    #define YZ_SIDE_AD 200
1091
+    #define XZ_SKEW_FACTOR 0.0
1092
+    #define YZ_SKEW_FACTOR 0.0
1093
+  #endif
1094
+
1095
+  // Enable this option for M852 to set skew at runtime
1096
+  //#define SKEW_CORRECTION_GCODE
1097
+#endif
1098
+
1042 1099
 //=============================================================================
1043 1100
 //============================= Additional Features ===========================
1044 1101
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h View File

@@ -962,7 +962,7 @@
962 962
 //===========================================================================
963 963
 //=============================== Bed Leveling ==============================
964 964
 //===========================================================================
965
-// @section bedlevel
965
+// @section calibrate
966 966
 
967 967
 /**
968 968
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1172,6 +1172,63 @@
1172 1172
 // Delta only homes to Z
1173 1173
 #define HOMING_FEEDRATE_Z  (100*60)
1174 1174
 
1175
+// @section calibrate
1176
+
1177
+/**
1178
+ * Bed Skew Compensation
1179
+ *
1180
+ * This feature corrects for misalignment in the XYZ axes.
1181
+ *
1182
+ * Take the following steps to get the bed skew in the XY plane:
1183
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1184
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1185
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1186
+ *  4. For XY_SIDE_AD measure the edge A to D
1187
+ *
1188
+ * Marlin automatically computes skew factors from these measurements.
1189
+ * Skew factors may also be computed and set manually:
1190
+ *
1191
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1192
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1193
+ *
1194
+ * If desired, follow the same procedure for XZ and YZ.
1195
+ * Use these diagrams for reference:
1196
+ *
1197
+ *    Y                     Z                     Z
1198
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1199
+ *    |    /       /        |    /       /        |    /       /
1200
+ *    |   /       /         |   /       /         |   /       /
1201
+ *    |  A-------D          |  A-------D          |  A-------D
1202
+ *    +-------------->X     +-------------->X     +-------------->Y
1203
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1204
+ */
1205
+//#define SKEW_CORRECTION
1206
+
1207
+#if ENABLED(SKEW_CORRECTION)
1208
+  // Input all length measurements here:
1209
+  #define XY_DIAG_AC 282.8427124746
1210
+  #define XY_DIAG_BD 282.8427124746
1211
+  #define XY_SIDE_AD 200
1212
+
1213
+  // Or, set the default skew factors directly here
1214
+  // to override the above measurements:
1215
+  #define XY_SKEW_FACTOR 0.0
1216
+
1217
+  //#define SKEW_CORRECTION_FOR_Z
1218
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1219
+    #define XZ_DIAG_AC 282.8427124746
1220
+    #define XZ_DIAG_BD 282.8427124746
1221
+    #define YZ_DIAG_AC 282.8427124746
1222
+    #define YZ_DIAG_BD 282.8427124746
1223
+    #define YZ_SIDE_AD 200
1224
+    #define XZ_SKEW_FACTOR 0.0
1225
+    #define YZ_SKEW_FACTOR 0.0
1226
+  #endif
1227
+
1228
+  // Enable this option for M852 to set skew at runtime
1229
+  //#define SKEW_CORRECTION_GCODE
1230
+#endif
1231
+
1175 1232
 //=============================================================================
1176 1233
 //============================= Additional Features ===========================
1177 1234
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h View File

@@ -962,7 +962,7 @@
962 962
 //===========================================================================
963 963
 //=============================== Bed Leveling ==============================
964 964
 //===========================================================================
965
-// @section bedlevel
965
+// @section calibrate
966 966
 
967 967
 /**
968 968
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1166,6 +1166,63 @@
1166 1166
 // Delta only homes to Z
1167 1167
 #define HOMING_FEEDRATE_Z  (45*60)
1168 1168
 
1169
+// @section calibrate
1170
+
1171
+/**
1172
+ * Bed Skew Compensation
1173
+ *
1174
+ * This feature corrects for misalignment in the XYZ axes.
1175
+ *
1176
+ * Take the following steps to get the bed skew in the XY plane:
1177
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1178
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1179
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1180
+ *  4. For XY_SIDE_AD measure the edge A to D
1181
+ *
1182
+ * Marlin automatically computes skew factors from these measurements.
1183
+ * Skew factors may also be computed and set manually:
1184
+ *
1185
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1186
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1187
+ *
1188
+ * If desired, follow the same procedure for XZ and YZ.
1189
+ * Use these diagrams for reference:
1190
+ *
1191
+ *    Y                     Z                     Z
1192
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1193
+ *    |    /       /        |    /       /        |    /       /
1194
+ *    |   /       /         |   /       /         |   /       /
1195
+ *    |  A-------D          |  A-------D          |  A-------D
1196
+ *    +-------------->X     +-------------->X     +-------------->Y
1197
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1198
+ */
1199
+//#define SKEW_CORRECTION
1200
+
1201
+#if ENABLED(SKEW_CORRECTION)
1202
+  // Input all length measurements here:
1203
+  #define XY_DIAG_AC 282.8427124746
1204
+  #define XY_DIAG_BD 282.8427124746
1205
+  #define XY_SIDE_AD 200
1206
+
1207
+  // Or, set the default skew factors directly here
1208
+  // to override the above measurements:
1209
+  #define XY_SKEW_FACTOR 0.0
1210
+
1211
+  //#define SKEW_CORRECTION_FOR_Z
1212
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1213
+    #define XZ_DIAG_AC 282.8427124746
1214
+    #define XZ_DIAG_BD 282.8427124746
1215
+    #define YZ_DIAG_AC 282.8427124746
1216
+    #define YZ_DIAG_BD 282.8427124746
1217
+    #define YZ_SIDE_AD 200
1218
+    #define XZ_SKEW_FACTOR 0.0
1219
+    #define YZ_SKEW_FACTOR 0.0
1220
+  #endif
1221
+
1222
+  // Enable this option for M852 to set skew at runtime
1223
+  //#define SKEW_CORRECTION_GCODE
1224
+#endif
1225
+
1169 1226
 //=============================================================================
1170 1227
 //============================= Additional Features ===========================
1171 1228
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/generic/Configuration.h View File

@@ -949,7 +949,7 @@
949 949
 //===========================================================================
950 950
 //=============================== Bed Leveling ==============================
951 951
 //===========================================================================
952
-// @section bedlevel
952
+// @section calibrate
953 953
 
954 954
 /**
955 955
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1160,6 +1160,63 @@
1160 1160
 // Delta only homes to Z
1161 1161
 #define HOMING_FEEDRATE_Z  (200*60)
1162 1162
 
1163
+// @section calibrate
1164
+
1165
+/**
1166
+ * Bed Skew Compensation
1167
+ *
1168
+ * This feature corrects for misalignment in the XYZ axes.
1169
+ *
1170
+ * Take the following steps to get the bed skew in the XY plane:
1171
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1172
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1173
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1174
+ *  4. For XY_SIDE_AD measure the edge A to D
1175
+ *
1176
+ * Marlin automatically computes skew factors from these measurements.
1177
+ * Skew factors may also be computed and set manually:
1178
+ *
1179
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1180
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1181
+ *
1182
+ * If desired, follow the same procedure for XZ and YZ.
1183
+ * Use these diagrams for reference:
1184
+ *
1185
+ *    Y                     Z                     Z
1186
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1187
+ *    |    /       /        |    /       /        |    /       /
1188
+ *    |   /       /         |   /       /         |   /       /
1189
+ *    |  A-------D          |  A-------D          |  A-------D
1190
+ *    +-------------->X     +-------------->X     +-------------->Y
1191
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1192
+ */
1193
+//#define SKEW_CORRECTION
1194
+
1195
+#if ENABLED(SKEW_CORRECTION)
1196
+  // Input all length measurements here:
1197
+  #define XY_DIAG_AC 282.8427124746
1198
+  #define XY_DIAG_BD 282.8427124746
1199
+  #define XY_SIDE_AD 200
1200
+
1201
+  // Or, set the default skew factors directly here
1202
+  // to override the above measurements:
1203
+  #define XY_SKEW_FACTOR 0.0
1204
+
1205
+  //#define SKEW_CORRECTION_FOR_Z
1206
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1207
+    #define XZ_DIAG_AC 282.8427124746
1208
+    #define XZ_DIAG_BD 282.8427124746
1209
+    #define YZ_DIAG_AC 282.8427124746
1210
+    #define YZ_DIAG_BD 282.8427124746
1211
+    #define YZ_SIDE_AD 200
1212
+    #define XZ_SKEW_FACTOR 0.0
1213
+    #define YZ_SKEW_FACTOR 0.0
1214
+  #endif
1215
+
1216
+  // Enable this option for M852 to set skew at runtime
1217
+  //#define SKEW_CORRECTION_GCODE
1218
+#endif
1219
+
1163 1220
 //=============================================================================
1164 1221
 //============================= Additional Features ===========================
1165 1222
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/kossel_mini/Configuration.h View File

@@ -952,7 +952,7 @@
952 952
 //===========================================================================
953 953
 //=============================== Bed Leveling ==============================
954 954
 //===========================================================================
955
-// @section bedlevel
955
+// @section calibrate
956 956
 
957 957
 /**
958 958
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1163,6 +1163,63 @@
1163 1163
 // Delta only homes to Z
1164 1164
 #define HOMING_FEEDRATE_Z  (200*60)
1165 1165
 
1166
+// @section calibrate
1167
+
1168
+/**
1169
+ * Bed Skew Compensation
1170
+ *
1171
+ * This feature corrects for misalignment in the XYZ axes.
1172
+ *
1173
+ * Take the following steps to get the bed skew in the XY plane:
1174
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1175
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1176
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1177
+ *  4. For XY_SIDE_AD measure the edge A to D
1178
+ *
1179
+ * Marlin automatically computes skew factors from these measurements.
1180
+ * Skew factors may also be computed and set manually:
1181
+ *
1182
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1183
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1184
+ *
1185
+ * If desired, follow the same procedure for XZ and YZ.
1186
+ * Use these diagrams for reference:
1187
+ *
1188
+ *    Y                     Z                     Z
1189
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1190
+ *    |    /       /        |    /       /        |    /       /
1191
+ *    |   /       /         |   /       /         |   /       /
1192
+ *    |  A-------D          |  A-------D          |  A-------D
1193
+ *    +-------------->X     +-------------->X     +-------------->Y
1194
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1195
+ */
1196
+//#define SKEW_CORRECTION
1197
+
1198
+#if ENABLED(SKEW_CORRECTION)
1199
+  // Input all length measurements here:
1200
+  #define XY_DIAG_AC 282.8427124746
1201
+  #define XY_DIAG_BD 282.8427124746
1202
+  #define XY_SIDE_AD 200
1203
+
1204
+  // Or, set the default skew factors directly here
1205
+  // to override the above measurements:
1206
+  #define XY_SKEW_FACTOR 0.0
1207
+
1208
+  //#define SKEW_CORRECTION_FOR_Z
1209
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1210
+    #define XZ_DIAG_AC 282.8427124746
1211
+    #define XZ_DIAG_BD 282.8427124746
1212
+    #define YZ_DIAG_AC 282.8427124746
1213
+    #define YZ_DIAG_BD 282.8427124746
1214
+    #define YZ_SIDE_AD 200
1215
+    #define XZ_SKEW_FACTOR 0.0
1216
+    #define YZ_SKEW_FACTOR 0.0
1217
+  #endif
1218
+
1219
+  // Enable this option for M852 to set skew at runtime
1220
+  //#define SKEW_CORRECTION_GCODE
1221
+#endif
1222
+
1166 1223
 //=============================================================================
1167 1224
 //============================= Additional Features ===========================
1168 1225
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/kossel_pro/Configuration.h View File

@@ -952,7 +952,7 @@
952 952
 //===========================================================================
953 953
 //=============================== Bed Leveling ==============================
954 954
 //===========================================================================
955
-// @section bedlevel
955
+// @section calibrate
956 956
 
957 957
 /**
958 958
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1163,6 +1163,63 @@
1163 1163
 // Delta only homes to Z
1164 1164
 #define HOMING_FEEDRATE_Z  (200*60)
1165 1165
 
1166
+// @section calibrate
1167
+
1168
+/**
1169
+ * Bed Skew Compensation
1170
+ *
1171
+ * This feature corrects for misalignment in the XYZ axes.
1172
+ *
1173
+ * Take the following steps to get the bed skew in the XY plane:
1174
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1175
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1176
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1177
+ *  4. For XY_SIDE_AD measure the edge A to D
1178
+ *
1179
+ * Marlin automatically computes skew factors from these measurements.
1180
+ * Skew factors may also be computed and set manually:
1181
+ *
1182
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1183
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1184
+ *
1185
+ * If desired, follow the same procedure for XZ and YZ.
1186
+ * Use these diagrams for reference:
1187
+ *
1188
+ *    Y                     Z                     Z
1189
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1190
+ *    |    /       /        |    /       /        |    /       /
1191
+ *    |   /       /         |   /       /         |   /       /
1192
+ *    |  A-------D          |  A-------D          |  A-------D
1193
+ *    +-------------->X     +-------------->X     +-------------->Y
1194
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1195
+ */
1196
+//#define SKEW_CORRECTION
1197
+
1198
+#if ENABLED(SKEW_CORRECTION)
1199
+  // Input all length measurements here:
1200
+  #define XY_DIAG_AC 282.8427124746
1201
+  #define XY_DIAG_BD 282.8427124746
1202
+  #define XY_SIDE_AD 200
1203
+
1204
+  // Or, set the default skew factors directly here
1205
+  // to override the above measurements:
1206
+  #define XY_SKEW_FACTOR 0.0
1207
+
1208
+  //#define SKEW_CORRECTION_FOR_Z
1209
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1210
+    #define XZ_DIAG_AC 282.8427124746
1211
+    #define XZ_DIAG_BD 282.8427124746
1212
+    #define YZ_DIAG_AC 282.8427124746
1213
+    #define YZ_DIAG_BD 282.8427124746
1214
+    #define YZ_SIDE_AD 200
1215
+    #define XZ_SKEW_FACTOR 0.0
1216
+    #define YZ_SKEW_FACTOR 0.0
1217
+  #endif
1218
+
1219
+  // Enable this option for M852 to set skew at runtime
1220
+  //#define SKEW_CORRECTION_GCODE
1221
+#endif
1222
+
1166 1223
 //=============================================================================
1167 1224
 //============================= Additional Features ===========================
1168 1225
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/delta/kossel_xl/Configuration.h View File

@@ -961,7 +961,7 @@
961 961
 //===========================================================================
962 962
 //=============================== Bed Leveling ==============================
963 963
 //===========================================================================
964
-// @section bedlevel
964
+// @section calibrate
965 965
 
966 966
 /**
967 967
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1172,6 +1172,63 @@
1172 1172
 // Delta only homes to Z
1173 1173
 #define HOMING_FEEDRATE_Z  (60*60)
1174 1174
 
1175
+// @section calibrate
1176
+
1177
+/**
1178
+ * Bed Skew Compensation
1179
+ *
1180
+ * This feature corrects for misalignment in the XYZ axes.
1181
+ *
1182
+ * Take the following steps to get the bed skew in the XY plane:
1183
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1184
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1185
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1186
+ *  4. For XY_SIDE_AD measure the edge A to D
1187
+ *
1188
+ * Marlin automatically computes skew factors from these measurements.
1189
+ * Skew factors may also be computed and set manually:
1190
+ *
1191
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1192
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1193
+ *
1194
+ * If desired, follow the same procedure for XZ and YZ.
1195
+ * Use these diagrams for reference:
1196
+ *
1197
+ *    Y                     Z                     Z
1198
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1199
+ *    |    /       /        |    /       /        |    /       /
1200
+ *    |   /       /         |   /       /         |   /       /
1201
+ *    |  A-------D          |  A-------D          |  A-------D
1202
+ *    +-------------->X     +-------------->X     +-------------->Y
1203
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1204
+ */
1205
+//#define SKEW_CORRECTION
1206
+
1207
+#if ENABLED(SKEW_CORRECTION)
1208
+  // Input all length measurements here:
1209
+  #define XY_DIAG_AC 282.8427124746
1210
+  #define XY_DIAG_BD 282.8427124746
1211
+  #define XY_SIDE_AD 200
1212
+
1213
+  // Or, set the default skew factors directly here
1214
+  // to override the above measurements:
1215
+  #define XY_SKEW_FACTOR 0.0
1216
+
1217
+  //#define SKEW_CORRECTION_FOR_Z
1218
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1219
+    #define XZ_DIAG_AC 282.8427124746
1220
+    #define XZ_DIAG_BD 282.8427124746
1221
+    #define YZ_DIAG_AC 282.8427124746
1222
+    #define YZ_DIAG_BD 282.8427124746
1223
+    #define YZ_SIDE_AD 200
1224
+    #define XZ_SKEW_FACTOR 0.0
1225
+    #define YZ_SKEW_FACTOR 0.0
1226
+  #endif
1227
+
1228
+  // Enable this option for M852 to set skew at runtime
1229
+  //#define SKEW_CORRECTION_GCODE
1230
+#endif
1231
+
1175 1232
 //=============================================================================
1176 1233
 //============================= Additional Features ===========================
1177 1234
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h View File

@@ -846,7 +846,7 @@
846 846
 //===========================================================================
847 847
 //=============================== Bed Leveling ==============================
848 848
 //===========================================================================
849
-// @section bedlevel
849
+// @section calibrate
850 850
 
851 851
 /**
852 852
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1053,6 +1053,63 @@
1053 1053
 #define HOMING_FEEDRATE_XY (60*60)
1054 1054
 #define HOMING_FEEDRATE_Z  (14*60)
1055 1055
 
1056
+// @section calibrate
1057
+
1058
+/**
1059
+ * Bed Skew Compensation
1060
+ *
1061
+ * This feature corrects for misalignment in the XYZ axes.
1062
+ *
1063
+ * Take the following steps to get the bed skew in the XY plane:
1064
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1065
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1066
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1067
+ *  4. For XY_SIDE_AD measure the edge A to D
1068
+ *
1069
+ * Marlin automatically computes skew factors from these measurements.
1070
+ * Skew factors may also be computed and set manually:
1071
+ *
1072
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1073
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1074
+ *
1075
+ * If desired, follow the same procedure for XZ and YZ.
1076
+ * Use these diagrams for reference:
1077
+ *
1078
+ *    Y                     Z                     Z
1079
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1080
+ *    |    /       /        |    /       /        |    /       /
1081
+ *    |   /       /         |   /       /         |   /       /
1082
+ *    |  A-------D          |  A-------D          |  A-------D
1083
+ *    +-------------->X     +-------------->X     +-------------->Y
1084
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1085
+ */
1086
+//#define SKEW_CORRECTION
1087
+
1088
+#if ENABLED(SKEW_CORRECTION)
1089
+  // Input all length measurements here:
1090
+  #define XY_DIAG_AC 282.8427124746
1091
+  #define XY_DIAG_BD 282.8427124746
1092
+  #define XY_SIDE_AD 200
1093
+
1094
+  // Or, set the default skew factors directly here
1095
+  // to override the above measurements:
1096
+  #define XY_SKEW_FACTOR 0.0
1097
+
1098
+  //#define SKEW_CORRECTION_FOR_Z
1099
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1100
+    #define XZ_DIAG_AC 282.8427124746
1101
+    #define XZ_DIAG_BD 282.8427124746
1102
+    #define YZ_DIAG_AC 282.8427124746
1103
+    #define YZ_DIAG_BD 282.8427124746
1104
+    #define YZ_SIDE_AD 200
1105
+    #define XZ_SKEW_FACTOR 0.0
1106
+    #define YZ_SKEW_FACTOR 0.0
1107
+  #endif
1108
+
1109
+  // Enable this option for M852 to set skew at runtime
1110
+  //#define SKEW_CORRECTION_GCODE
1111
+#endif
1112
+
1056 1113
 //=============================================================================
1057 1114
 //============================= Additional Features ===========================
1058 1115
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/makibox/Configuration.h View File

@@ -835,7 +835,7 @@
835 835
 //===========================================================================
836 836
 //=============================== Bed Leveling ==============================
837 837
 //===========================================================================
838
-// @section bedlevel
838
+// @section calibrate
839 839
 
840 840
 /**
841 841
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1042,6 +1042,63 @@
1042 1042
 #define HOMING_FEEDRATE_XY 1500
1043 1043
 #define HOMING_FEEDRATE_Z  (2*60)
1044 1044
 
1045
+// @section calibrate
1046
+
1047
+/**
1048
+ * Bed Skew Compensation
1049
+ *
1050
+ * This feature corrects for misalignment in the XYZ axes.
1051
+ *
1052
+ * Take the following steps to get the bed skew in the XY plane:
1053
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1054
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1055
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1056
+ *  4. For XY_SIDE_AD measure the edge A to D
1057
+ *
1058
+ * Marlin automatically computes skew factors from these measurements.
1059
+ * Skew factors may also be computed and set manually:
1060
+ *
1061
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1062
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1063
+ *
1064
+ * If desired, follow the same procedure for XZ and YZ.
1065
+ * Use these diagrams for reference:
1066
+ *
1067
+ *    Y                     Z                     Z
1068
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1069
+ *    |    /       /        |    /       /        |    /       /
1070
+ *    |   /       /         |   /       /         |   /       /
1071
+ *    |  A-------D          |  A-------D          |  A-------D
1072
+ *    +-------------->X     +-------------->X     +-------------->Y
1073
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1074
+ */
1075
+//#define SKEW_CORRECTION
1076
+
1077
+#if ENABLED(SKEW_CORRECTION)
1078
+  // Input all length measurements here:
1079
+  #define XY_DIAG_AC 282.8427124746
1080
+  #define XY_DIAG_BD 282.8427124746
1081
+  #define XY_SIDE_AD 200
1082
+
1083
+  // Or, set the default skew factors directly here
1084
+  // to override the above measurements:
1085
+  #define XY_SKEW_FACTOR 0.0
1086
+
1087
+  //#define SKEW_CORRECTION_FOR_Z
1088
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1089
+    #define XZ_DIAG_AC 282.8427124746
1090
+    #define XZ_DIAG_BD 282.8427124746
1091
+    #define YZ_DIAG_AC 282.8427124746
1092
+    #define YZ_DIAG_BD 282.8427124746
1093
+    #define YZ_SIDE_AD 200
1094
+    #define XZ_SKEW_FACTOR 0.0
1095
+    #define YZ_SKEW_FACTOR 0.0
1096
+  #endif
1097
+
1098
+  // Enable this option for M852 to set skew at runtime
1099
+  //#define SKEW_CORRECTION_GCODE
1100
+#endif
1101
+
1045 1102
 //=============================================================================
1046 1103
 //============================= Additional Features ===========================
1047 1104
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/tvrrug/Round2/Configuration.h View File

@@ -827,7 +827,7 @@
827 827
 //===========================================================================
828 828
 //=============================== Bed Leveling ==============================
829 829
 //===========================================================================
830
-// @section bedlevel
830
+// @section calibrate
831 831
 
832 832
 /**
833 833
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1034,6 +1034,63 @@
1034 1034
 #define HOMING_FEEDRATE_XY (50*60)
1035 1035
 #define HOMING_FEEDRATE_Z  (4*60)
1036 1036
 
1037
+// @section calibrate
1038
+
1039
+/**
1040
+ * Bed Skew Compensation
1041
+ *
1042
+ * This feature corrects for misalignment in the XYZ axes.
1043
+ *
1044
+ * Take the following steps to get the bed skew in the XY plane:
1045
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1046
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1047
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1048
+ *  4. For XY_SIDE_AD measure the edge A to D
1049
+ *
1050
+ * Marlin automatically computes skew factors from these measurements.
1051
+ * Skew factors may also be computed and set manually:
1052
+ *
1053
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1054
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1055
+ *
1056
+ * If desired, follow the same procedure for XZ and YZ.
1057
+ * Use these diagrams for reference:
1058
+ *
1059
+ *    Y                     Z                     Z
1060
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1061
+ *    |    /       /        |    /       /        |    /       /
1062
+ *    |   /       /         |   /       /         |   /       /
1063
+ *    |  A-------D          |  A-------D          |  A-------D
1064
+ *    +-------------->X     +-------------->X     +-------------->Y
1065
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1066
+ */
1067
+//#define SKEW_CORRECTION
1068
+
1069
+#if ENABLED(SKEW_CORRECTION)
1070
+  // Input all length measurements here:
1071
+  #define XY_DIAG_AC 282.8427124746
1072
+  #define XY_DIAG_BD 282.8427124746
1073
+  #define XY_SIDE_AD 200
1074
+
1075
+  // Or, set the default skew factors directly here
1076
+  // to override the above measurements:
1077
+  #define XY_SKEW_FACTOR 0.0
1078
+
1079
+  //#define SKEW_CORRECTION_FOR_Z
1080
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1081
+    #define XZ_DIAG_AC 282.8427124746
1082
+    #define XZ_DIAG_BD 282.8427124746
1083
+    #define YZ_DIAG_AC 282.8427124746
1084
+    #define YZ_DIAG_BD 282.8427124746
1085
+    #define YZ_SIDE_AD 200
1086
+    #define XZ_SKEW_FACTOR 0.0
1087
+    #define YZ_SKEW_FACTOR 0.0
1088
+  #endif
1089
+
1090
+  // Enable this option for M852 to set skew at runtime
1091
+  //#define SKEW_CORRECTION_GCODE
1092
+#endif
1093
+
1037 1094
 //=============================================================================
1038 1095
 //============================= Additional Features ===========================
1039 1096
 //=============================================================================

+ 58
- 1
Marlin/src/config/examples/wt150/Configuration.h View File

@@ -837,7 +837,7 @@
837 837
 //===========================================================================
838 838
 //=============================== Bed Leveling ==============================
839 839
 //===========================================================================
840
-// @section bedlevel
840
+// @section calibrate
841 841
 
842 842
 /**
843 843
  * Choose one of the options below to enable G29 Bed Leveling. The parameters
@@ -1044,6 +1044,63 @@
1044 1044
 #define HOMING_FEEDRATE_XY (50*60)
1045 1045
 #define HOMING_FEEDRATE_Z  (4*60)
1046 1046
 
1047
+// @section calibrate
1048
+
1049
+/**
1050
+ * Bed Skew Compensation
1051
+ *
1052
+ * This feature corrects for misalignment in the XYZ axes.
1053
+ *
1054
+ * Take the following steps to get the bed skew in the XY plane:
1055
+ *  1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
1056
+ *  2. For XY_DIAG_AC measure the diagonal A to C
1057
+ *  3. For XY_DIAG_BD measure the diagonal B to D
1058
+ *  4. For XY_SIDE_AD measure the edge A to D
1059
+ *
1060
+ * Marlin automatically computes skew factors from these measurements.
1061
+ * Skew factors may also be computed and set manually:
1062
+ *
1063
+ *  - Compute AB     : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
1064
+ *  - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
1065
+ *
1066
+ * If desired, follow the same procedure for XZ and YZ.
1067
+ * Use these diagrams for reference:
1068
+ *
1069
+ *    Y                     Z                     Z
1070
+ *    ^     B-------C       ^     B-------C       ^     B-------C
1071
+ *    |    /       /        |    /       /        |    /       /
1072
+ *    |   /       /         |   /       /         |   /       /
1073
+ *    |  A-------D          |  A-------D          |  A-------D
1074
+ *    +-------------->X     +-------------->X     +-------------->Y
1075
+ *     XY_SKEW_FACTOR        XZ_SKEW_FACTOR        YZ_SKEW_FACTOR
1076
+ */
1077
+//#define SKEW_CORRECTION
1078
+
1079
+#if ENABLED(SKEW_CORRECTION)
1080
+  // Input all length measurements here:
1081
+  #define XY_DIAG_AC 282.8427124746
1082
+  #define XY_DIAG_BD 282.8427124746
1083
+  #define XY_SIDE_AD 200
1084
+
1085
+  // Or, set the default skew factors directly here
1086
+  // to override the above measurements:
1087
+  #define XY_SKEW_FACTOR 0.0
1088
+
1089
+  //#define SKEW_CORRECTION_FOR_Z
1090
+  #if ENABLED(SKEW_CORRECTION_FOR_Z)
1091
+    #define XZ_DIAG_AC 282.8427124746
1092
+    #define XZ_DIAG_BD 282.8427124746
1093
+    #define YZ_DIAG_AC 282.8427124746
1094
+    #define YZ_DIAG_BD 282.8427124746
1095
+    #define YZ_SIDE_AD 200
1096
+    #define XZ_SKEW_FACTOR 0.0
1097
+    #define YZ_SKEW_FACTOR 0.0
1098
+  #endif
1099
+
1100
+  // Enable this option for M852 to set skew at runtime
1101
+  //#define SKEW_CORRECTION_GCODE
1102
+#endif
1103
+
1047 1104
 //=============================================================================
1048 1105
 //============================= Additional Features ===========================
1049 1106
 //=============================================================================

Loading…
Cancel
Save