Sfoglia il codice sorgente

Univeral Bed Leveling - configuration

Scott Lahteine 7 anni fa
parent
commit
cf94688925
31 ha cambiato i file con 9070 aggiunte e 797 eliminazioni
  1. 1
    1
      Marlin/Conditionals_post.h
  2. 59
    36
      Marlin/Configuration.h
  3. 8
    1
      Marlin/Configuration_adv.h
  4. 40
    16
      Marlin/SanityCheck.h
  5. 58
    35
      Marlin/example_configurations/Cartesio/Configuration.h
  6. 22
    34
      Marlin/example_configurations/Felix/Configuration.h
  7. 58
    35
      Marlin/example_configurations/Felix/DUAL/Configuration.h
  8. 58
    35
      Marlin/example_configurations/Hephestos/Configuration.h
  9. 59
    36
      Marlin/example_configurations/Hephestos_2/Configuration.h
  10. 58
    35
      Marlin/example_configurations/K8200/Configuration.h
  11. 58
    35
      Marlin/example_configurations/K8400/Configuration.h
  12. 58
    35
      Marlin/example_configurations/K8400/Dual-head/Configuration.h
  13. 58
    35
      Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h
  14. 59
    36
      Marlin/example_configurations/RigidBot/Configuration.h
  15. 1503
    0
      Marlin/example_configurations/Roxys_printers/Folger_Tech_i3_2020/Configuration.h
  16. 1091
    0
      Marlin/example_configurations/Roxys_printers/Folger_Tech_i3_2020/Configuration_adv.h
  17. 1500
    0
      Marlin/example_configurations/Roxys_printers/gMax_1.5+/Configuration.h
  18. 1085
    0
      Marlin/example_configurations/Roxys_printers/gMax_1.5+/Configuration_adv.h
  19. 1505
    0
      Marlin/example_configurations/Roxys_printers/original_release_files/Configuration.h
  20. 1085
    0
      Marlin/example_configurations/Roxys_printers/original_release_files/Configuration_adv.h
  21. 58
    35
      Marlin/example_configurations/SCARA/Configuration.h
  22. 58
    35
      Marlin/example_configurations/TAZ4/Configuration.h
  23. 58
    35
      Marlin/example_configurations/WITBOX/Configuration.h
  24. 58
    35
      Marlin/example_configurations/adafruit/ST7565/Configuration.h
  25. 58
    38
      Marlin/example_configurations/delta/flsun_kossel_mini/Configuration.h
  26. 58
    36
      Marlin/example_configurations/delta/generic/Configuration.h
  27. 58
    35
      Marlin/example_configurations/delta/kossel_mini/Configuration.h
  28. 59
    36
      Marlin/example_configurations/delta/kossel_pro/Configuration.h
  29. 66
    37
      Marlin/example_configurations/delta/kossel_xl/Configuration.h
  30. 58
    35
      Marlin/example_configurations/makibox/Configuration.h
  31. 58
    35
      Marlin/example_configurations/tvrrug/Round2/Configuration.h

+ 1
- 1
Marlin/Conditionals_post.h Vedi File

@@ -667,7 +667,7 @@
667 667
    */
668 668
   #define ABL_PLANAR (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_3POINT))
669 669
   #define ABL_GRID   (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR))
670
-  #define HAS_ABL    (ABL_PLANAR || ABL_GRID)
670
+  #define HAS_ABL    (ABL_PLANAR || ABL_GRID || ENABLED(AUTO_BED_LEVELING_UBL))
671 671
 
672 672
   #define PLANNER_LEVELING      (HAS_ABL || ENABLED(MESH_BED_LEVELING))
673 673
   #define HAS_PROBING_PROCEDURE (HAS_ABL || ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST))

+ 59
- 36
Marlin/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad with NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -742,34 +742,7 @@
742 742
 #endif
743 743
 
744 744
 //===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770
-
771
-//===========================================================================
772
-//============================ Auto Bed Leveling ============================
745
+//=============================== Bed Leveling ==============================
773 746
 //===========================================================================
774 747
 // @section bedlevel
775 748
 
@@ -793,10 +766,23 @@
793 766
  *   Probe several points in a grid.
794 767
  *   You specify the rectangle and the density of sample points.
795 768
  *   The result is a mesh, best for large or uneven beds.
769
+ *
770
+ * - UBL Unified Bed Leveling
771
+ *   A comprehensive bed leveling system that combines features and benefits from previous
772
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
773
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
774
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
775
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
776
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
777
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
778
+ *       test on.
796 779
  */
797 780
 //#define AUTO_BED_LEVELING_3POINT
798 781
 //#define AUTO_BED_LEVELING_LINEAR
799 782
 //#define AUTO_BED_LEVELING_BILINEAR
783
+//#define MESH_BED_LEVELING
784
+//#define AUTO_BED_LEVELING_UBL
785
+
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 8
- 1
Marlin/Configuration_adv.h Vedi File

@@ -631,6 +631,13 @@
631 631
   #define MESH_MAX_Y (Y_MAX_POS - (MESH_INSET))
632 632
 #endif
633 633
 
634
+#if ENABLED(AUTO_BED_LEVELING_UBL)
635
+  #define UBL_MESH_MIN_X (X_MIN_POS + UBL_MESH_INSET)
636
+  #define UBL_MESH_MAX_X (X_MAX_POS - (UBL_MESH_INSET))
637
+  #define UBL_MESH_MIN_Y (Y_MIN_POS + UBL_MESH_INSET)
638
+  #define UBL_MESH_MAX_Y (Y_MAX_POS - (UBL_MESH_INSET))
639
+#endif
640
+
634 641
 // @section extras
635 642
 
636 643
 // Arc interpretation settings:
@@ -1036,7 +1043,7 @@
1036 1043
 #define I2C_SLAVE_ADDRESS  0 // Set a value from 8 to 127 to act as a slave
1037 1044
 
1038 1045
 /**
1039
- * Add M43 command for pins info and testing
1046
+ * Add M43, M44 and M45 commands for pins info and testing
1040 1047
  */
1041 1048
 //#define PINS_DEBUGGING
1042 1049
 

+ 40
- 16
Marlin/SanityCheck.h Vedi File

@@ -388,10 +388,13 @@ static_assert(1 >= 0
388 388
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
389 389
     + 1
390 390
   #endif
391
+  #if ENABLED(AUTO_BED_LEVELING_UBL)
392
+    + 1
393
+  #endif
391 394
   #if ENABLED(MESH_BED_LEVELING)
392 395
     + 1
393 396
   #endif
394
-  , "Select only one of: MESH_BED_LEVELING, AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT, or AUTO_BED_LEVELING_BILINEAR."
397
+  , "Select only one of: MESH_BED_LEVELING, AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_BILINEAR or AUTO_BED_LEVELING_UBL."
395 398
 );
396 399
 
397 400
 /**
@@ -403,6 +406,21 @@ static_assert(1 >= 0
403 406
   #elif MESH_NUM_X_POINTS > 9 || MESH_NUM_Y_POINTS > 9
404 407
     #error "MESH_NUM_X_POINTS and MESH_NUM_Y_POINTS must be less than 10."
405 408
   #endif
409
+#elif ENABLED(MANUAL_BED_LEVELING)
410
+  #error "MANUAL_BED_LEVELING only applies to MESH_BED_LEVELING."
411
+#endif
412
+
413
+/**
414
+ * Unified Bed Leveling
415
+ */
416
+#if ENABLED(AUTO_BED_LEVELING_UBL)
417
+  #if ENABLED(DELTA)
418
+    #error "AUTO_BED_LEVELING_UBL does not yet support DELTA printers."
419
+  #elif DISABLED(NEWPANEL)
420
+    #error "AUTO_BED_LEVELING_UBL requires an LCD controller."
421
+  #elif UBL_MESH_NUM_X_POINTS > 15 || UBL_MESH_NUM_Y_POINTS > 15
422
+    #error "UBL_MESH_NUM_X_POINTS and UBL_MESH_NUM_Y_POINTS must be less than 16."
423
+  #endif
406 424
 #endif
407 425
 
408 426
 /**
@@ -434,6 +452,7 @@ static_assert(1 >= 0
434 452
   , "Please enable only one probe: PROBE_MANUALLY, FIX_MOUNTED_PROBE, Z Servo, BLTOUCH, Z_PROBE_ALLEN_KEY, or Z_PROBE_SLED."
435 453
 );
436 454
 
455
+
437 456
 #if PROBE_SELECTED
438 457
 
439 458
   /**
@@ -577,21 +596,26 @@ static_assert(1 >= 0
577 596
       #endif
578 597
     #endif
579 598
   #else // !ABL_GRID
580
-
581
-    // Check the triangulation points
582
-    #if ABL_PROBE_PT_1_X < MIN_PROBE_X || ABL_PROBE_PT_1_X > MAX_PROBE_X
583
-      #error "The given ABL_PROBE_PT_1_X can't be reached by the Z probe."
584
-    #elif ABL_PROBE_PT_2_X < MIN_PROBE_X || ABL_PROBE_PT_2_X > MAX_PROBE_X
585
-      #error "The given ABL_PROBE_PT_2_X can't be reached by the Z probe."
586
-    #elif ABL_PROBE_PT_3_X < MIN_PROBE_X || ABL_PROBE_PT_3_X > MAX_PROBE_X
587
-      #error "The given ABL_PROBE_PT_3_X can't be reached by the Z probe."
588
-    #elif ABL_PROBE_PT_1_Y < MIN_PROBE_Y || ABL_PROBE_PT_1_Y > MAX_PROBE_Y
589
-      #error "The given ABL_PROBE_PT_1_Y can't be reached by the Z probe."
590
-    #elif ABL_PROBE_PT_2_Y < MIN_PROBE_Y || ABL_PROBE_PT_2_Y > MAX_PROBE_Y
591
-      #error "The given ABL_PROBE_PT_2_Y can't be reached by the Z probe."
592
-    #elif ABL_PROBE_PT_3_Y < MIN_PROBE_Y || ABL_PROBE_PT_3_Y > MAX_PROBE_Y
593
-      #error "The given ABL_PROBE_PT_3_Y can't be reached by the Z probe."
594
-    #endif
599
+    #if ENABLED(AUTO_BED_LEVELING_UBL)
600
+      #ifndef EEPROM_SETTINGS
601
+        #error "AUTO_BED_LEVELING_UBL requires EEPROM_SETTINGS. Please update your configuration."
602
+      #endif
603
+    #else // !UBL
604
+      // Check the triangulation points
605
+      #if ABL_PROBE_PT_1_X < MIN_PROBE_X || ABL_PROBE_PT_1_X > MAX_PROBE_X
606
+        #error "The given ABL_PROBE_PT_1_X can't be reached by the Z probe."
607
+      #elif ABL_PROBE_PT_2_X < MIN_PROBE_X || ABL_PROBE_PT_2_X > MAX_PROBE_X
608
+        #error "The given ABL_PROBE_PT_2_X can't be reached by the Z probe."
609
+      #elif ABL_PROBE_PT_3_X < MIN_PROBE_X || ABL_PROBE_PT_3_X > MAX_PROBE_X
610
+        #error "The given ABL_PROBE_PT_3_X can't be reached by the Z probe."
611
+      #elif ABL_PROBE_PT_1_Y < MIN_PROBE_Y || ABL_PROBE_PT_1_Y > MAX_PROBE_Y
612
+        #error "The given ABL_PROBE_PT_1_Y can't be reached by the Z probe."
613
+      #elif ABL_PROBE_PT_2_Y < MIN_PROBE_Y || ABL_PROBE_PT_2_Y > MAX_PROBE_Y
614
+        #error "The given ABL_PROBE_PT_2_Y can't be reached by the Z probe."
615
+      #elif ABL_PROBE_PT_3_Y < MIN_PROBE_Y || ABL_PROBE_PT_3_Y > MAX_PROBE_Y
616
+        #error "The given ABL_PROBE_PT_3_Y can't be reached by the Z probe."
617
+      #endif
618
+    #endif // !AUTO_BED_LEVEING_UBL
595 619
 
596 620
   #endif // !ABL_GRID
597 621
 

+ 58
- 35
Marlin/example_configurations/Cartesio/Configuration.h Vedi File

@@ -232,6 +232,7 @@
232 232
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
233 233
  *    66 : 4.7M High Temperature thermistor from Dyze Design
234 234
  *    70 : the 100K thermistor found in the bq Hephestos 2
235
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
235 236
  *
236 237
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
237 238
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -741,35 +741,9 @@
741 741
   #define FILAMENT_RUNOUT_SCRIPT "M600"
742 742
 #endif
743 743
 
744
-//===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770 744
 
771 745
 //===========================================================================
772
-//============================ Auto Bed Leveling ============================
746
+//=============================== Bed Leveling ==============================
773 747
 //===========================================================================
774 748
 // @section bedlevel
775 749
 
@@ -793,10 +767,22 @@
793 767
  *   Probe several points in a grid.
794 768
  *   You specify the rectangle and the density of sample points.
795 769
  *   The result is a mesh, best for large or uneven beds.
770
+ *
771
+ * - UBL Unified Bed Leveling
772
+ *   A comprehensive bed leveling system that combines features and benefits from previous
773
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
774
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
775
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
776
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
777
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
778
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
779
+ *       test on.
796 780
  */
797 781
 //#define AUTO_BED_LEVELING_3POINT
798 782
 //#define AUTO_BED_LEVELING_LINEAR
799 783
 //#define AUTO_BED_LEVELING_BILINEAR
784
+//#define MESH_BED_LEVELING
785
+//#define AUTO_BED_LEVELING_UBL
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 22
- 34
Marlin/example_configurations/Felix/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -586,8 +587,7 @@
586 587
 //
587 588
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
588 589
 //
589
-// For a servo-based Z probe, you must set up servo support below, including
590
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
590
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
591 591
 //
592 592
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
593 593
 // - Use 5V for powered (usu. inductive) sensors.
@@ -724,35 +724,9 @@
724 724
   #define FILAMENT_RUNOUT_SCRIPT "M600"
725 725
 #endif
726 726
 
727
-//===========================================================================
728
-//============================ Mesh Bed Leveling ============================
729
-//===========================================================================
730
-
731
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
732
-
733
-#if ENABLED(MESH_BED_LEVELING)
734
-  #define MESH_INSET 10        // Mesh inset margin on print area
735
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
736
-  #define MESH_NUM_Y_POINTS 3
737
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
738
-
739
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
740
-
741
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
742
-
743
-  #if ENABLED(MANUAL_BED_LEVELING)
744
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
745
-  #endif  // MANUAL_BED_LEVELING
746
-
747
-  // Gradually reduce leveling correction until a set height is reached,
748
-  // at which point movement will be level to the machine's XY plane.
749
-  // The height can be set with M420 Z<height>
750
-  #define ENABLE_LEVELING_FADE_HEIGHT
751
-
752
-#endif  // MESH_BED_LEVELING
753 727
 
754 728
 //===========================================================================
755
-//============================ Auto Bed Leveling ============================
729
+//=============================== Bed Leveling ==============================
756 730
 //===========================================================================
757 731
 // @section bedlevel
758 732
 
@@ -776,10 +750,22 @@
776 750
  *   Probe several points in a grid.
777 751
  *   You specify the rectangle and the density of sample points.
778 752
  *   The result is a mesh, best for large or uneven beds.
753
+ *
754
+ * - UBL Unified Bed Leveling
755
+ *   A comprehensive bed leveling system that combines features and benefits from previous
756
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
757
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
758
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
759
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
760
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
761
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
762
+ *       test on.
779 763
  */
780 764
 //#define AUTO_BED_LEVELING_3POINT
781 765
 //#define AUTO_BED_LEVELING_LINEAR
782 766
 //#define AUTO_BED_LEVELING_BILINEAR
767
+//#define MESH_BED_LEVELING
768
+//#define AUTO_BED_LEVELING_UBL
783 769
 
784 770
 /**
785 771
  * Enable detailed logging of G28, G29, M48, etc.
@@ -788,6 +774,13 @@
788 774
  */
789 775
 //#define DEBUG_LEVELING_FEATURE
790 776
 
777
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
778
+  // Gradually reduce leveling correction until a set height is reached,
779
+  // at which point movement will be level to the machine's XY plane.
780
+  // The height can be set with M420 Z<height>
781
+  #define ENABLE_LEVELING_FADE_HEIGHT
782
+#endif
783
+
791 784
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
792 785
 
793 786
   // Set the number of grid points per dimension.
@@ -808,11 +801,6 @@
808 801
 
809 802
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
810 803
 
811
-    // Gradually reduce leveling correction until a set height is reached,
812
-    // at which point movement will be level to the machine's XY plane.
813
-    // The height can be set with M420 Z<height>
814
-    #define ENABLE_LEVELING_FADE_HEIGHT
815
-
816 804
     //
817 805
     // Experimental Subdivision of the grid by Catmull-Rom method.
818 806
     // Synthesizes intermediate points to produce a more detailed mesh.

+ 58
- 35
Marlin/example_configurations/Felix/DUAL/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -586,8 +587,7 @@
586 587
 //
587 588
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
588 589
 //
589
-// For a servo-based Z probe, you must set up servo support below, including
590
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
590
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
591 591
 //
592 592
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
593 593
 // - Use 5V for powered (usu. inductive) sensors.
@@ -724,35 +724,9 @@
724 724
   #define FILAMENT_RUNOUT_SCRIPT "M600"
725 725
 #endif
726 726
 
727
-//===========================================================================
728
-//============================ Mesh Bed Leveling ============================
729
-//===========================================================================
730
-
731
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
732
-
733
-#if ENABLED(MESH_BED_LEVELING)
734
-  #define MESH_INSET 10        // Mesh inset margin on print area
735
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
736
-  #define MESH_NUM_Y_POINTS 3
737
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
738
-
739
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
740
-
741
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
742
-
743
-  #if ENABLED(MANUAL_BED_LEVELING)
744
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
745
-  #endif  // MANUAL_BED_LEVELING
746
-
747
-  // Gradually reduce leveling correction until a set height is reached,
748
-  // at which point movement will be level to the machine's XY plane.
749
-  // The height can be set with M420 Z<height>
750
-  #define ENABLE_LEVELING_FADE_HEIGHT
751
-
752
-#endif  // MESH_BED_LEVELING
753 727
 
754 728
 //===========================================================================
755
-//============================ Auto Bed Leveling ============================
729
+//=============================== Bed Leveling ==============================
756 730
 //===========================================================================
757 731
 // @section bedlevel
758 732
 
@@ -776,10 +750,22 @@
776 750
  *   Probe several points in a grid.
777 751
  *   You specify the rectangle and the density of sample points.
778 752
  *   The result is a mesh, best for large or uneven beds.
753
+ *
754
+ * - UBL Unified Bed Leveling
755
+ *   A comprehensive bed leveling system that combines features and benefits from previous
756
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
757
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
758
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
759
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
760
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
761
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
762
+ *       test on.
779 763
  */
780 764
 //#define AUTO_BED_LEVELING_3POINT
781 765
 //#define AUTO_BED_LEVELING_LINEAR
782 766
 //#define AUTO_BED_LEVELING_BILINEAR
767
+//#define MESH_BED_LEVELING
768
+//#define AUTO_BED_LEVELING_UBL
783 769
 
784 770
 /**
785 771
  * Enable detailed logging of G28, G29, M48, etc.
@@ -788,6 +774,13 @@
788 774
  */
789 775
 //#define DEBUG_LEVELING_FEATURE
790 776
 
777
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
778
+  // Gradually reduce leveling correction until a set height is reached,
779
+  // at which point movement will be level to the machine's XY plane.
780
+  // The height can be set with M420 Z<height>
781
+  #define ENABLE_LEVELING_FADE_HEIGHT
782
+#endif
783
+
791 784
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
792 785
 
793 786
   // Set the number of grid points per dimension.
@@ -808,11 +801,6 @@
808 801
 
809 802
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
810 803
 
811
-    // Gradually reduce leveling correction until a set height is reached,
812
-    // at which point movement will be level to the machine's XY plane.
813
-    // The height can be set with M420 Z<height>
814
-    #define ENABLE_LEVELING_FADE_HEIGHT
815
-
816 804
     //
817 805
     // Experimental Subdivision of the grid by Catmull-Rom method.
818 806
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -836,7 +824,42 @@
836 824
   #define ABL_PROBE_PT_3_X 170
837 825
   #define ABL_PROBE_PT_3_Y 20
838 826
 
839
-#endif
827
+#elif ENABLED(MESH_BED_LEVELING)
828
+
829
+//===========================================================================
830
+//=================================== Mesh ==================================
831
+//===========================================================================
832
+
833
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
834
+  #define MESH_INSET 10          // Mesh inset margin on print area
835
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
836
+  #define MESH_NUM_Y_POINTS 3
837
+
838
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
839
+
840
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
841
+
842
+  #if ENABLED(MANUAL_BED_LEVELING)
843
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
844
+  #endif  // MANUAL_BED_LEVELING
845
+
846
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
847
+
848
+//===========================================================================
849
+//========================= Unified Bed Leveling ============================
850
+//===========================================================================
851
+
852
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
853
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
854
+  #define UBL_MESH_NUM_Y_POINTS 10
855
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
856
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
857
+  #define UBL_PROBE_PT_2_X 39
858
+  #define UBL_PROBE_PT_2_Y 20
859
+  #define UBL_PROBE_PT_3_X 180
860
+  #define UBL_PROBE_PT_3_Y 20
861
+
862
+#endif  // BED_LEVELING
840 863
 
841 864
 /**
842 865
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/Hephestos/Configuration.h Vedi File

@@ -234,6 +234,7 @@
234 234
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
235 235
  *    66 : 4.7M High Temperature thermistor from Dyze Design
236 236
  *    70 : the 100K thermistor found in the bq Hephestos 2
237
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
237 238
  *
238 239
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
239 240
  *                              (but gives greater accuracy and more stable PID)
@@ -595,8 +596,7 @@
595 596
 //
596 597
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
597 598
 //
598
-// For a servo-based Z probe, you must set up servo support below, including
599
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
599
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
600 600
 //
601 601
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
602 602
 // - Use 5V for powered (usu. inductive) sensors.
@@ -733,35 +733,9 @@
733 733
   #define FILAMENT_RUNOUT_SCRIPT "M600"
734 734
 #endif
735 735
 
736
-//===========================================================================
737
-//============================ Mesh Bed Leveling ============================
738
-//===========================================================================
739
-
740
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
741
-
742
-#if ENABLED(MESH_BED_LEVELING)
743
-  #define MESH_INSET 10        // Mesh inset margin on print area
744
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
745
-  #define MESH_NUM_Y_POINTS 3
746
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
747
-
748
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
749
-
750
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
751
-
752
-  #if ENABLED(MANUAL_BED_LEVELING)
753
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
754
-  #endif  // MANUAL_BED_LEVELING
755
-
756
-  // Gradually reduce leveling correction until a set height is reached,
757
-  // at which point movement will be level to the machine's XY plane.
758
-  // The height can be set with M420 Z<height>
759
-  #define ENABLE_LEVELING_FADE_HEIGHT
760
-
761
-#endif  // MESH_BED_LEVELING
762 736
 
763 737
 //===========================================================================
764
-//============================ Auto Bed Leveling ============================
738
+//=============================== Bed Leveling ==============================
765 739
 //===========================================================================
766 740
 // @section bedlevel
767 741
 
@@ -785,10 +759,22 @@
785 759
  *   Probe several points in a grid.
786 760
  *   You specify the rectangle and the density of sample points.
787 761
  *   The result is a mesh, best for large or uneven beds.
762
+ *
763
+ * - UBL Unified Bed Leveling
764
+ *   A comprehensive bed leveling system that combines features and benefits from previous
765
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
766
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
767
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
768
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
769
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
770
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
771
+ *       test on.
788 772
  */
789 773
 //#define AUTO_BED_LEVELING_3POINT
790 774
 //#define AUTO_BED_LEVELING_LINEAR
791 775
 //#define AUTO_BED_LEVELING_BILINEAR
776
+//#define MESH_BED_LEVELING
777
+//#define AUTO_BED_LEVELING_UBL
792 778
 
793 779
 /**
794 780
  * Enable detailed logging of G28, G29, M48, etc.
@@ -797,6 +783,13 @@
797 783
  */
798 784
 //#define DEBUG_LEVELING_FEATURE
799 785
 
786
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
787
+  // Gradually reduce leveling correction until a set height is reached,
788
+  // at which point movement will be level to the machine's XY plane.
789
+  // The height can be set with M420 Z<height>
790
+  #define ENABLE_LEVELING_FADE_HEIGHT
791
+#endif
792
+
800 793
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
801 794
 
802 795
   // Set the number of grid points per dimension.
@@ -817,11 +810,6 @@
817 810
 
818 811
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
819 812
 
820
-    // Gradually reduce leveling correction until a set height is reached,
821
-    // at which point movement will be level to the machine's XY plane.
822
-    // The height can be set with M420 Z<height>
823
-    #define ENABLE_LEVELING_FADE_HEIGHT
824
-
825 813
     //
826 814
     // Experimental Subdivision of the grid by Catmull-Rom method.
827 815
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -845,7 +833,42 @@
845 833
   #define ABL_PROBE_PT_3_X 170
846 834
   #define ABL_PROBE_PT_3_Y 20
847 835
 
848
-#endif
836
+#elif ENABLED(MESH_BED_LEVELING)
837
+
838
+//===========================================================================
839
+//=================================== Mesh ==================================
840
+//===========================================================================
841
+
842
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
843
+  #define MESH_INSET 10          // Mesh inset margin on print area
844
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
845
+  #define MESH_NUM_Y_POINTS 3
846
+
847
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
848
+
849
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
850
+
851
+  #if ENABLED(MANUAL_BED_LEVELING)
852
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
853
+  #endif  // MANUAL_BED_LEVELING
854
+
855
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
856
+
857
+//===========================================================================
858
+//========================= Unified Bed Leveling ============================
859
+//===========================================================================
860
+
861
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
862
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
863
+  #define UBL_MESH_NUM_Y_POINTS 10
864
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
865
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
866
+  #define UBL_PROBE_PT_2_X 39
867
+  #define UBL_PROBE_PT_2_Y 20
868
+  #define UBL_PROBE_PT_3_X 180
869
+  #define UBL_PROBE_PT_3_Y 20
870
+
871
+#endif  // BED_LEVELING
849 872
 
850 873
 /**
851 874
  * Commands to execute at the end of G29 probing.

+ 59
- 36
Marlin/example_configurations/Hephestos_2/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -597,8 +598,7 @@
597 598
 //
598 599
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
599 600
 //
600
-// For a servo-based Z probe, you must set up servo support below, including
601
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
601
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
602 602
 //
603 603
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
604 604
 // - Use 5V for powered (usu. inductive) sensors.
@@ -735,35 +735,9 @@
735 735
   #define FILAMENT_RUNOUT_SCRIPT "M600"
736 736
 #endif
737 737
 
738
-//===========================================================================
739
-//============================ Mesh Bed Leveling ============================
740
-//===========================================================================
741
-
742
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
743
-
744
-#if ENABLED(MESH_BED_LEVELING)
745
-  #define MESH_INSET 10        // Mesh inset margin on print area
746
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
747
-  #define MESH_NUM_Y_POINTS 3
748
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
749
-
750
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
751
-
752
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
753
-
754
-  #if ENABLED(MANUAL_BED_LEVELING)
755
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
756
-  #endif  // MANUAL_BED_LEVELING
757
-
758
-  // Gradually reduce leveling correction until a set height is reached,
759
-  // at which point movement will be level to the machine's XY plane.
760
-  // The height can be set with M420 Z<height>
761
-  #define ENABLE_LEVELING_FADE_HEIGHT
762
-
763
-#endif  // MESH_BED_LEVELING
764 738
 
765 739
 //===========================================================================
766
-//============================ Auto Bed Leveling ============================
740
+//=============================== Bed Leveling ==============================
767 741
 //===========================================================================
768 742
 // @section bedlevel
769 743
 
@@ -787,10 +761,22 @@
787 761
  *   Probe several points in a grid.
788 762
  *   You specify the rectangle and the density of sample points.
789 763
  *   The result is a mesh, best for large or uneven beds.
764
+ *
765
+ * - UBL Unified Bed Leveling
766
+ *   A comprehensive bed leveling system that combines features and benefits from previous
767
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
768
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
769
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
770
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
771
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
772
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
773
+ *       test on.
790 774
  */
791 775
 //#define AUTO_BED_LEVELING_3POINT
792
-#define AUTO_BED_LEVELING_LINEAR
776
+//#define AUTO_BED_LEVELING_LINEAR
793 777
 //#define AUTO_BED_LEVELING_BILINEAR
778
+//#define MESH_BED_LEVELING
779
+//#define AUTO_BED_LEVELING_UBL
794 780
 
795 781
 /**
796 782
  * Enable detailed logging of G28, G29, M48, etc.
@@ -799,6 +785,13 @@
799 785
  */
800 786
 //#define DEBUG_LEVELING_FEATURE
801 787
 
788
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
789
+  // Gradually reduce leveling correction until a set height is reached,
790
+  // at which point movement will be level to the machine's XY plane.
791
+  // The height can be set with M420 Z<height>
792
+  #define ENABLE_LEVELING_FADE_HEIGHT
793
+#endif
794
+
802 795
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
803 796
 
804 797
   // Set the number of grid points per dimension.
@@ -819,11 +812,6 @@
819 812
 
820 813
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
821 814
 
822
-    // Gradually reduce leveling correction until a set height is reached,
823
-    // at which point movement will be level to the machine's XY plane.
824
-    // The height can be set with M420 Z<height>
825
-    #define ENABLE_LEVELING_FADE_HEIGHT
826
-
827 815
     //
828 816
     // Experimental Subdivision of the grid by Catmull-Rom method.
829 817
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -847,7 +835,42 @@
847 835
   #define ABL_PROBE_PT_3_X ((X_MIN_POS + X_MAX_POS) / 2)
848 836
   #define ABL_PROBE_PT_3_Y Y_MAX_POS - (Y_PROBE_OFFSET_FROM_EXTRUDER)
849 837
 
850
-#endif
838
+#elif ENABLED(MESH_BED_LEVELING)
839
+
840
+//===========================================================================
841
+//=================================== Mesh ==================================
842
+//===========================================================================
843
+
844
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
845
+  #define MESH_INSET 10          // Mesh inset margin on print area
846
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
847
+  #define MESH_NUM_Y_POINTS 3
848
+
849
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
850
+
851
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
852
+
853
+  #if ENABLED(MANUAL_BED_LEVELING)
854
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
855
+  #endif  // MANUAL_BED_LEVELING
856
+
857
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
858
+
859
+//===========================================================================
860
+//========================= Unified Bed Leveling ============================
861
+//===========================================================================
862
+
863
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
864
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
865
+  #define UBL_MESH_NUM_Y_POINTS 10
866
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
867
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
868
+  #define UBL_PROBE_PT_2_X 39
869
+  #define UBL_PROBE_PT_2_Y 20
870
+  #define UBL_PROBE_PT_3_X 180
871
+  #define UBL_PROBE_PT_3_Y 20
872
+
873
+#endif  // BED_LEVELING
851 874
 
852 875
 /**
853 876
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/K8200/Configuration.h Vedi File

@@ -251,6 +251,7 @@
251 251
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
252 252
  *    66 : 4.7M High Temperature thermistor from Dyze Design
253 253
  *    70 : the 100K thermistor found in the bq Hephestos 2
254
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
254 255
  *
255 256
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
256 257
  *                              (but gives greater accuracy and more stable PID)
@@ -632,8 +633,7 @@
632 633
 //
633 634
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
634 635
 //
635
-// For a servo-based Z probe, you must set up servo support below, including
636
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
636
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
637 637
 //
638 638
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
639 639
 // - Use 5V for powered (usu. inductive) sensors.
@@ -770,35 +770,9 @@
770 770
   #define FILAMENT_RUNOUT_SCRIPT "M600"
771 771
 #endif
772 772
 
773
-//===========================================================================
774
-//============================ Mesh Bed Leveling ============================
775
-//===========================================================================
776
-
777
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
778
-
779
-#if ENABLED(MESH_BED_LEVELING)
780
-  #define MESH_INSET 10        // Mesh inset margin on print area
781
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
782
-  #define MESH_NUM_Y_POINTS 3
783
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
784
-
785
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
786
-
787
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
788
-
789
-  #if ENABLED(MANUAL_BED_LEVELING)
790
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
791
-  #endif  // MANUAL_BED_LEVELING
792
-
793
-  // Gradually reduce leveling correction until a set height is reached,
794
-  // at which point movement will be level to the machine's XY plane.
795
-  // The height can be set with M420 Z<height>
796
-  #define ENABLE_LEVELING_FADE_HEIGHT
797
-
798
-#endif  // MESH_BED_LEVELING
799 773
 
800 774
 //===========================================================================
801
-//============================ Auto Bed Leveling ============================
775
+//=============================== Bed Leveling ==============================
802 776
 //===========================================================================
803 777
 // @section bedlevel
804 778
 
@@ -822,10 +796,22 @@
822 796
  *   Probe several points in a grid.
823 797
  *   You specify the rectangle and the density of sample points.
824 798
  *   The result is a mesh, best for large or uneven beds.
799
+ *
800
+ * - UBL Unified Bed Leveling
801
+ *   A comprehensive bed leveling system that combines features and benefits from previous
802
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
803
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
804
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
805
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
806
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
807
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
808
+ *       test on.
825 809
  */
826 810
 //#define AUTO_BED_LEVELING_3POINT
827 811
 //#define AUTO_BED_LEVELING_LINEAR
828 812
 //#define AUTO_BED_LEVELING_BILINEAR
813
+//#define MESH_BED_LEVELING
814
+//#define AUTO_BED_LEVELING_UBL
829 815
 
830 816
 /**
831 817
  * Enable detailed logging of G28, G29, M48, etc.
@@ -834,6 +820,13 @@
834 820
  */
835 821
 //#define DEBUG_LEVELING_FEATURE
836 822
 
823
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
824
+  // Gradually reduce leveling correction until a set height is reached,
825
+  // at which point movement will be level to the machine's XY plane.
826
+  // The height can be set with M420 Z<height>
827
+  #define ENABLE_LEVELING_FADE_HEIGHT
828
+#endif
829
+
837 830
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
838 831
 
839 832
   // Set the number of grid points per dimension.
@@ -854,11 +847,6 @@
854 847
 
855 848
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
856 849
 
857
-    // Gradually reduce leveling correction until a set height is reached,
858
-    // at which point movement will be level to the machine's XY plane.
859
-    // The height can be set with M420 Z<height>
860
-    #define ENABLE_LEVELING_FADE_HEIGHT
861
-
862 850
     //
863 851
     // Experimental Subdivision of the grid by Catmull-Rom method.
864 852
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -882,7 +870,42 @@
882 870
   #define ABL_PROBE_PT_3_X 170
883 871
   #define ABL_PROBE_PT_3_Y 20
884 872
 
885
-#endif
873
+#elif ENABLED(MESH_BED_LEVELING)
874
+
875
+//===========================================================================
876
+//=================================== Mesh ==================================
877
+//===========================================================================
878
+
879
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
880
+  #define MESH_INSET 10          // Mesh inset margin on print area
881
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
882
+  #define MESH_NUM_Y_POINTS 3
883
+
884
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
885
+
886
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
887
+
888
+  #if ENABLED(MANUAL_BED_LEVELING)
889
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
890
+  #endif  // MANUAL_BED_LEVELING
891
+
892
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
893
+
894
+//===========================================================================
895
+//========================= Unified Bed Leveling ============================
896
+//===========================================================================
897
+
898
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
899
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
900
+  #define UBL_MESH_NUM_Y_POINTS 10
901
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
902
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
903
+  #define UBL_PROBE_PT_2_X 39
904
+  #define UBL_PROBE_PT_2_Y 20
905
+  #define UBL_PROBE_PT_3_X 180
906
+  #define UBL_PROBE_PT_3_Y 20
907
+
908
+#endif  // BED_LEVELING
886 909
 
887 910
 /**
888 911
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/K8400/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -741,35 +741,9 @@
741 741
   #define FILAMENT_RUNOUT_SCRIPT "M600"
742 742
 #endif
743 743
 
744
-//===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770 744
 
771 745
 //===========================================================================
772
-//============================ Auto Bed Leveling ============================
746
+//=============================== Bed Leveling ==============================
773 747
 //===========================================================================
774 748
 // @section bedlevel
775 749
 
@@ -793,10 +767,22 @@
793 767
  *   Probe several points in a grid.
794 768
  *   You specify the rectangle and the density of sample points.
795 769
  *   The result is a mesh, best for large or uneven beds.
770
+ *
771
+ * - UBL Unified Bed Leveling
772
+ *   A comprehensive bed leveling system that combines features and benefits from previous
773
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
774
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
775
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
776
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
777
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
778
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
779
+ *       test on.
796 780
  */
797 781
 //#define AUTO_BED_LEVELING_3POINT
798 782
 //#define AUTO_BED_LEVELING_LINEAR
799 783
 //#define AUTO_BED_LEVELING_BILINEAR
784
+//#define MESH_BED_LEVELING
785
+//#define AUTO_BED_LEVELING_UBL
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/K8400/Dual-head/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -741,35 +741,9 @@
741 741
   #define FILAMENT_RUNOUT_SCRIPT "M600"
742 742
 #endif
743 743
 
744
-//===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770 744
 
771 745
 //===========================================================================
772
-//============================ Auto Bed Leveling ============================
746
+//=============================== Bed Leveling ==============================
773 747
 //===========================================================================
774 748
 // @section bedlevel
775 749
 
@@ -793,10 +767,22 @@
793 767
  *   Probe several points in a grid.
794 768
  *   You specify the rectangle and the density of sample points.
795 769
  *   The result is a mesh, best for large or uneven beds.
770
+ *
771
+ * - UBL Unified Bed Leveling
772
+ *   A comprehensive bed leveling system that combines features and benefits from previous
773
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
774
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
775
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
776
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
777
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
778
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
779
+ *       test on.
796 780
  */
797 781
 //#define AUTO_BED_LEVELING_3POINT
798 782
 //#define AUTO_BED_LEVELING_LINEAR
799 783
 //#define AUTO_BED_LEVELING_BILINEAR
784
+//#define MESH_BED_LEVELING
785
+//#define AUTO_BED_LEVELING_UBL
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -741,35 +741,9 @@
741 741
   #define FILAMENT_RUNOUT_SCRIPT "M600"
742 742
 #endif
743 743
 
744
-//===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770 744
 
771 745
 //===========================================================================
772
-//============================ Auto Bed Leveling ============================
746
+//=============================== Bed Leveling ==============================
773 747
 //===========================================================================
774 748
 // @section bedlevel
775 749
 
@@ -793,10 +767,22 @@
793 767
  *   Probe several points in a grid.
794 768
  *   You specify the rectangle and the density of sample points.
795 769
  *   The result is a mesh, best for large or uneven beds.
770
+ *
771
+ * - UBL Unified Bed Leveling
772
+ *   A comprehensive bed leveling system that combines features and benefits from previous
773
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
774
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
775
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
776
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
777
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
778
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
779
+ *       test on.
796 780
  */
797 781
 //#define AUTO_BED_LEVELING_3POINT
798 782
 //#define AUTO_BED_LEVELING_LINEAR
799 783
 //#define AUTO_BED_LEVELING_BILINEAR
784
+//#define MESH_BED_LEVELING
785
+//#define AUTO_BED_LEVELING_UBL
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 59
- 36
Marlin/example_configurations/RigidBot/Configuration.h Vedi File

@@ -234,6 +234,7 @@
234 234
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
235 235
  *    66 : 4.7M High Temperature thermistor from Dyze Design
236 236
  *    70 : the 100K thermistor found in the bq Hephestos 2
237
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
237 238
  *
238 239
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
239 240
  *                              (but gives greater accuracy and more stable PID)
@@ -602,8 +603,7 @@
602 603
 //
603 604
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
604 605
 //
605
-// For a servo-based Z probe, you must set up servo support below, including
606
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
606
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
607 607
 //
608 608
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
609 609
 // - Use 5V for powered (usu. inductive) sensors.
@@ -740,35 +740,9 @@
740 740
   #define FILAMENT_RUNOUT_SCRIPT "M600"
741 741
 #endif
742 742
 
743
-//===========================================================================
744
-//============================ Mesh Bed Leveling ============================
745
-//===========================================================================
746
-
747
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
748
-
749
-#if ENABLED(MESH_BED_LEVELING)
750
-  #define MESH_INSET 10        // Mesh inset margin on print area
751
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
752
-  #define MESH_NUM_Y_POINTS 3
753
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
754
-
755
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
756
-
757
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
758
-
759
-  #if ENABLED(MANUAL_BED_LEVELING)
760
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
761
-  #endif  // MANUAL_BED_LEVELING
762
-
763
-  // Gradually reduce leveling correction until a set height is reached,
764
-  // at which point movement will be level to the machine's XY plane.
765
-  // The height can be set with M420 Z<height>
766
-  #define ENABLE_LEVELING_FADE_HEIGHT
767
-
768
-#endif  // MESH_BED_LEVELING
769 743
 
770 744
 //===========================================================================
771
-//============================ Auto Bed Leveling ============================
745
+//=============================== Bed Leveling ==============================
772 746
 //===========================================================================
773 747
 // @section bedlevel
774 748
 
@@ -792,10 +766,22 @@
792 766
  *   Probe several points in a grid.
793 767
  *   You specify the rectangle and the density of sample points.
794 768
  *   The result is a mesh, best for large or uneven beds.
769
+ *
770
+ * - UBL Unified Bed Leveling
771
+ *   A comprehensive bed leveling system that combines features and benefits from previous
772
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
773
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
774
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
775
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
776
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
777
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
778
+ *       test on.
795 779
  */
796 780
 //#define AUTO_BED_LEVELING_3POINT
797 781
 //#define AUTO_BED_LEVELING_LINEAR
798 782
 //#define AUTO_BED_LEVELING_BILINEAR
783
+//#define MESH_BED_LEVELING
784
+//#define AUTO_BED_LEVELING_UBL
799 785
 
800 786
 /**
801 787
  * Enable detailed logging of G28, G29, M48, etc.
@@ -804,6 +790,13 @@
804 790
  */
805 791
 //#define DEBUG_LEVELING_FEATURE
806 792
 
793
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
794
+  // Gradually reduce leveling correction until a set height is reached,
795
+  // at which point movement will be level to the machine's XY plane.
796
+  // The height can be set with M420 Z<height>
797
+  #define ENABLE_LEVELING_FADE_HEIGHT
798
+#endif
799
+
807 800
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
808 801
 
809 802
   // Set the number of grid points per dimension.
@@ -824,11 +817,6 @@
824 817
 
825 818
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
826 819
 
827
-    // Gradually reduce leveling correction until a set height is reached,
828
-    // at which point movement will be level to the machine's XY plane.
829
-    // The height can be set with M420 Z<height>
830
-    #define ENABLE_LEVELING_FADE_HEIGHT
831
-
832 820
     //
833 821
     // Experimental Subdivision of the grid by Catmull-Rom method.
834 822
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -852,7 +840,42 @@
852 840
   #define ABL_PROBE_PT_3_X 170
853 841
   #define ABL_PROBE_PT_3_Y 20
854 842
 
855
-#endif
843
+#elif ENABLED(MESH_BED_LEVELING)
844
+
845
+//===========================================================================
846
+//=================================== Mesh ==================================
847
+//===========================================================================
848
+
849
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
850
+  #define MESH_INSET 10          // Mesh inset margin on print area
851
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
852
+  #define MESH_NUM_Y_POINTS 3
853
+
854
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
855
+
856
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
857
+
858
+  #if ENABLED(MANUAL_BED_LEVELING)
859
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
860
+  #endif  // MANUAL_BED_LEVELING
861
+
862
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
863
+
864
+//===========================================================================
865
+//========================= Unified Bed Leveling ============================
866
+//===========================================================================
867
+
868
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
869
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
870
+  #define UBL_MESH_NUM_Y_POINTS 10
871
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
872
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
873
+  #define UBL_PROBE_PT_2_X 39
874
+  #define UBL_PROBE_PT_2_Y 20
875
+  #define UBL_PROBE_PT_3_X 180
876
+  #define UBL_PROBE_PT_3_Y 20
877
+
878
+#endif  // BED_LEVELING
856 879
 
857 880
 /**
858 881
  * Commands to execute at the end of G29 probing.
@@ -1434,7 +1457,7 @@
1434 1457
 // leaving it undefined or defining as 0 will disable the servo subsystem
1435 1458
 // If unsure, leave commented / disabled
1436 1459
 //
1437
-#define NUM_SERVOS 0 // DGlass3D - Servo index starts with 0 for M280 command
1460
+//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command
1438 1461
 
1439 1462
 // Delay (in milliseconds) before the next move will start, to give the servo time to reach its target angle.
1440 1463
 // 300ms is a good value but you can try less delay.

+ 1503
- 0
Marlin/example_configurations/Roxys_printers/Folger_Tech_i3_2020/Configuration.h
File diff soppresso perché troppo grande
Vedi File


+ 1091
- 0
Marlin/example_configurations/Roxys_printers/Folger_Tech_i3_2020/Configuration_adv.h
File diff soppresso perché troppo grande
Vedi File


+ 1500
- 0
Marlin/example_configurations/Roxys_printers/gMax_1.5+/Configuration.h
File diff soppresso perché troppo grande
Vedi File


+ 1085
- 0
Marlin/example_configurations/Roxys_printers/gMax_1.5+/Configuration_adv.h
File diff soppresso perché troppo grande
Vedi File


+ 1505
- 0
Marlin/example_configurations/Roxys_printers/original_release_files/Configuration.h
File diff soppresso perché troppo grande
Vedi File


+ 1085
- 0
Marlin/example_configurations/Roxys_printers/original_release_files/Configuration_adv.h
File diff soppresso perché troppo grande
Vedi File


+ 58
- 35
Marlin/example_configurations/SCARA/Configuration.h Vedi File

@@ -263,6 +263,7 @@
263 263
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
264 264
  *    66 : 4.7M High Temperature thermistor from Dyze Design
265 265
  *    70 : the 100K thermistor found in the bq Hephestos 2
266
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
266 267
  *
267 268
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
268 269
  *                              (but gives greater accuracy and more stable PID)
@@ -618,8 +619,7 @@
618 619
 //
619 620
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
620 621
 //
621
-// For a servo-based Z probe, you must set up servo support below, including
622
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
622
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
623 623
 //
624 624
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
625 625
 // - Use 5V for powered (usu. inductive) sensors.
@@ -756,35 +756,9 @@
756 756
   #define FILAMENT_RUNOUT_SCRIPT "M600"
757 757
 #endif
758 758
 
759
-//===========================================================================
760
-//============================ Mesh Bed Leveling ============================
761
-//===========================================================================
762
-
763
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
764
-
765
-#if ENABLED(MESH_BED_LEVELING)
766
-  #define MESH_INSET 10        // Mesh inset margin on print area
767
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
768
-  #define MESH_NUM_Y_POINTS 3
769
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
770
-
771
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
772
-
773
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
774
-
775
-  #if ENABLED(MANUAL_BED_LEVELING)
776
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
777
-  #endif  // MANUAL_BED_LEVELING
778
-
779
-  // Gradually reduce leveling correction until a set height is reached,
780
-  // at which point movement will be level to the machine's XY plane.
781
-  // The height can be set with M420 Z<height>
782
-  #define ENABLE_LEVELING_FADE_HEIGHT
783
-
784
-#endif  // MESH_BED_LEVELING
785 759
 
786 760
 //===========================================================================
787
-//============================ Auto Bed Leveling ============================
761
+//=============================== Bed Leveling ==============================
788 762
 //===========================================================================
789 763
 // @section bedlevel
790 764
 
@@ -808,10 +782,22 @@
808 782
  *   Probe several points in a grid.
809 783
  *   You specify the rectangle and the density of sample points.
810 784
  *   The result is a mesh, best for large or uneven beds.
785
+ *
786
+ * - UBL Unified Bed Leveling
787
+ *   A comprehensive bed leveling system that combines features and benefits from previous
788
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
789
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
790
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
791
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
792
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
793
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
794
+ *       test on.
811 795
  */
812 796
 //#define AUTO_BED_LEVELING_3POINT
813 797
 //#define AUTO_BED_LEVELING_LINEAR
814 798
 //#define AUTO_BED_LEVELING_BILINEAR
799
+//#define MESH_BED_LEVELING
800
+//#define AUTO_BED_LEVELING_UBL
815 801
 
816 802
 /**
817 803
  * Enable detailed logging of G28, G29, M48, etc.
@@ -820,6 +806,13 @@
820 806
  */
821 807
 //#define DEBUG_LEVELING_FEATURE
822 808
 
809
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
810
+  // Gradually reduce leveling correction until a set height is reached,
811
+  // at which point movement will be level to the machine's XY plane.
812
+  // The height can be set with M420 Z<height>
813
+  #define ENABLE_LEVELING_FADE_HEIGHT
814
+#endif
815
+
823 816
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
824 817
 
825 818
   // Set the number of grid points per dimension.
@@ -840,11 +833,6 @@
840 833
 
841 834
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
842 835
 
843
-    // Gradually reduce leveling correction until a set height is reached,
844
-    // at which point movement will be level to the machine's XY plane.
845
-    // The height can be set with M420 Z<height>
846
-    #define ENABLE_LEVELING_FADE_HEIGHT
847
-
848 836
     //
849 837
     // Experimental Subdivision of the grid by Catmull-Rom method.
850 838
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -868,7 +856,42 @@
868 856
   #define ABL_PROBE_PT_3_X 170
869 857
   #define ABL_PROBE_PT_3_Y 20
870 858
 
871
-#endif
859
+#elif ENABLED(MESH_BED_LEVELING)
860
+
861
+//===========================================================================
862
+//=================================== Mesh ==================================
863
+//===========================================================================
864
+
865
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
866
+  #define MESH_INSET 10          // Mesh inset margin on print area
867
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
868
+  #define MESH_NUM_Y_POINTS 3
869
+
870
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
871
+
872
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
873
+
874
+  #if ENABLED(MANUAL_BED_LEVELING)
875
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
876
+  #endif  // MANUAL_BED_LEVELING
877
+
878
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
879
+
880
+//===========================================================================
881
+//========================= Unified Bed Leveling ============================
882
+//===========================================================================
883
+
884
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
885
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
886
+  #define UBL_MESH_NUM_Y_POINTS 10
887
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
888
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
889
+  #define UBL_PROBE_PT_2_X 39
890
+  #define UBL_PROBE_PT_2_Y 20
891
+  #define UBL_PROBE_PT_3_X 180
892
+  #define UBL_PROBE_PT_3_Y 20
893
+
894
+#endif  // BED_LEVELING
872 895
 
873 896
 /**
874 897
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/TAZ4/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -624,8 +625,7 @@
624 625
 //
625 626
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
626 627
 //
627
-// For a servo-based Z probe, you must set up servo support below, including
628
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
628
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
629 629
 //
630 630
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
631 631
 // - Use 5V for powered (usu. inductive) sensors.
@@ -762,35 +762,9 @@
762 762
   #define FILAMENT_RUNOUT_SCRIPT "M600"
763 763
 #endif
764 764
 
765
-//===========================================================================
766
-//============================ Mesh Bed Leveling ============================
767
-//===========================================================================
768
-
769
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
770
-
771
-#if ENABLED(MESH_BED_LEVELING)
772
-  #define MESH_INSET 10        // Mesh inset margin on print area
773
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
774
-  #define MESH_NUM_Y_POINTS 3
775
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
776
-
777
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
778
-
779
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
780
-
781
-  #if ENABLED(MANUAL_BED_LEVELING)
782
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
783
-  #endif  // MANUAL_BED_LEVELING
784
-
785
-  // Gradually reduce leveling correction until a set height is reached,
786
-  // at which point movement will be level to the machine's XY plane.
787
-  // The height can be set with M420 Z<height>
788
-  #define ENABLE_LEVELING_FADE_HEIGHT
789
-
790
-#endif  // MESH_BED_LEVELING
791 765
 
792 766
 //===========================================================================
793
-//============================ Auto Bed Leveling ============================
767
+//=============================== Bed Leveling ==============================
794 768
 //===========================================================================
795 769
 // @section bedlevel
796 770
 
@@ -814,10 +788,22 @@
814 788
  *   Probe several points in a grid.
815 789
  *   You specify the rectangle and the density of sample points.
816 790
  *   The result is a mesh, best for large or uneven beds.
791
+ *
792
+ * - UBL Unified Bed Leveling
793
+ *   A comprehensive bed leveling system that combines features and benefits from previous
794
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
795
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
796
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
797
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
798
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
799
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
800
+ *       test on.
817 801
  */
818 802
 //#define AUTO_BED_LEVELING_3POINT
819 803
 //#define AUTO_BED_LEVELING_LINEAR
820 804
 //#define AUTO_BED_LEVELING_BILINEAR
805
+//#define MESH_BED_LEVELING
806
+//#define AUTO_BED_LEVELING_UBL
821 807
 
822 808
 /**
823 809
  * Enable detailed logging of G28, G29, M48, etc.
@@ -826,6 +812,13 @@
826 812
  */
827 813
 //#define DEBUG_LEVELING_FEATURE
828 814
 
815
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
816
+  // Gradually reduce leveling correction until a set height is reached,
817
+  // at which point movement will be level to the machine's XY plane.
818
+  // The height can be set with M420 Z<height>
819
+  #define ENABLE_LEVELING_FADE_HEIGHT
820
+#endif
821
+
829 822
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
830 823
 
831 824
   // Set the number of grid points per dimension.
@@ -846,11 +839,6 @@
846 839
 
847 840
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
848 841
 
849
-    // Gradually reduce leveling correction until a set height is reached,
850
-    // at which point movement will be level to the machine's XY plane.
851
-    // The height can be set with M420 Z<height>
852
-    #define ENABLE_LEVELING_FADE_HEIGHT
853
-
854 842
     //
855 843
     // Experimental Subdivision of the grid by Catmull-Rom method.
856 844
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -874,7 +862,42 @@
874 862
   #define ABL_PROBE_PT_3_X 170
875 863
   #define ABL_PROBE_PT_3_Y 20
876 864
 
877
-#endif
865
+#elif ENABLED(MESH_BED_LEVELING)
866
+
867
+//===========================================================================
868
+//=================================== Mesh ==================================
869
+//===========================================================================
870
+
871
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
872
+  #define MESH_INSET 10          // Mesh inset margin on print area
873
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
874
+  #define MESH_NUM_Y_POINTS 3
875
+
876
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
877
+
878
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
879
+
880
+  #if ENABLED(MANUAL_BED_LEVELING)
881
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
882
+  #endif  // MANUAL_BED_LEVELING
883
+
884
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
885
+
886
+//===========================================================================
887
+//========================= Unified Bed Leveling ============================
888
+//===========================================================================
889
+
890
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
891
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
892
+  #define UBL_MESH_NUM_Y_POINTS 10
893
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
894
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
895
+  #define UBL_PROBE_PT_2_X 39
896
+  #define UBL_PROBE_PT_2_Y 20
897
+  #define UBL_PROBE_PT_3_X 180
898
+  #define UBL_PROBE_PT_3_Y 20
899
+
900
+#endif  // BED_LEVELING
878 901
 
879 902
 /**
880 903
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/WITBOX/Configuration.h Vedi File

@@ -234,6 +234,7 @@
234 234
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
235 235
  *    66 : 4.7M High Temperature thermistor from Dyze Design
236 236
  *    70 : the 100K thermistor found in the bq Hephestos 2
237
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
237 238
  *
238 239
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
239 240
  *                              (but gives greater accuracy and more stable PID)
@@ -595,8 +596,7 @@
595 596
 //
596 597
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
597 598
 //
598
-// For a servo-based Z probe, you must set up servo support below, including
599
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
599
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
600 600
 //
601 601
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
602 602
 // - Use 5V for powered (usu. inductive) sensors.
@@ -733,35 +733,9 @@
733 733
   #define FILAMENT_RUNOUT_SCRIPT "M600"
734 734
 #endif
735 735
 
736
-//===========================================================================
737
-//============================ Mesh Bed Leveling ============================
738
-//===========================================================================
739
-
740
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
741
-
742
-#if ENABLED(MESH_BED_LEVELING)
743
-  #define MESH_INSET 10        // Mesh inset margin on print area
744
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
745
-  #define MESH_NUM_Y_POINTS 3
746
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
747
-
748
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
749
-
750
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
751
-
752
-  #if ENABLED(MANUAL_BED_LEVELING)
753
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
754
-  #endif  // MANUAL_BED_LEVELING
755
-
756
-  // Gradually reduce leveling correction until a set height is reached,
757
-  // at which point movement will be level to the machine's XY plane.
758
-  // The height can be set with M420 Z<height>
759
-  #define ENABLE_LEVELING_FADE_HEIGHT
760
-
761
-#endif  // MESH_BED_LEVELING
762 736
 
763 737
 //===========================================================================
764
-//============================ Auto Bed Leveling ============================
738
+//=============================== Bed Leveling ==============================
765 739
 //===========================================================================
766 740
 // @section bedlevel
767 741
 
@@ -785,10 +759,22 @@
785 759
  *   Probe several points in a grid.
786 760
  *   You specify the rectangle and the density of sample points.
787 761
  *   The result is a mesh, best for large or uneven beds.
762
+ *
763
+ * - UBL Unified Bed Leveling
764
+ *   A comprehensive bed leveling system that combines features and benefits from previous
765
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
766
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
767
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
768
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
769
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
770
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
771
+ *       test on.
788 772
  */
789 773
 //#define AUTO_BED_LEVELING_3POINT
790 774
 //#define AUTO_BED_LEVELING_LINEAR
791 775
 //#define AUTO_BED_LEVELING_BILINEAR
776
+//#define MESH_BED_LEVELING
777
+//#define AUTO_BED_LEVELING_UBL
792 778
 
793 779
 /**
794 780
  * Enable detailed logging of G28, G29, M48, etc.
@@ -797,6 +783,13 @@
797 783
  */
798 784
 //#define DEBUG_LEVELING_FEATURE
799 785
 
786
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
787
+  // Gradually reduce leveling correction until a set height is reached,
788
+  // at which point movement will be level to the machine's XY plane.
789
+  // The height can be set with M420 Z<height>
790
+  #define ENABLE_LEVELING_FADE_HEIGHT
791
+#endif
792
+
800 793
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
801 794
 
802 795
   // Set the number of grid points per dimension.
@@ -817,11 +810,6 @@
817 810
 
818 811
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
819 812
 
820
-    // Gradually reduce leveling correction until a set height is reached,
821
-    // at which point movement will be level to the machine's XY plane.
822
-    // The height can be set with M420 Z<height>
823
-    #define ENABLE_LEVELING_FADE_HEIGHT
824
-
825 813
     //
826 814
     // Experimental Subdivision of the grid by Catmull-Rom method.
827 815
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -845,7 +833,42 @@
845 833
   #define ABL_PROBE_PT_3_X 170
846 834
   #define ABL_PROBE_PT_3_Y 20
847 835
 
848
-#endif
836
+#elif ENABLED(MESH_BED_LEVELING)
837
+
838
+//===========================================================================
839
+//=================================== Mesh ==================================
840
+//===========================================================================
841
+
842
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
843
+  #define MESH_INSET 10          // Mesh inset margin on print area
844
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
845
+  #define MESH_NUM_Y_POINTS 3
846
+
847
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
848
+
849
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
850
+
851
+  #if ENABLED(MANUAL_BED_LEVELING)
852
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
853
+  #endif  // MANUAL_BED_LEVELING
854
+
855
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
856
+
857
+//===========================================================================
858
+//========================= Unified Bed Leveling ============================
859
+//===========================================================================
860
+
861
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
862
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
863
+  #define UBL_MESH_NUM_Y_POINTS 10
864
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
865
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
866
+  #define UBL_PROBE_PT_2_X 39
867
+  #define UBL_PROBE_PT_2_Y 20
868
+  #define UBL_PROBE_PT_3_X 180
869
+  #define UBL_PROBE_PT_3_Y 20
870
+
871
+#endif  // BED_LEVELING
849 872
 
850 873
 /**
851 874
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/adafruit/ST7565/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -603,8 +604,7 @@
603 604
 //
604 605
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
605 606
 //
606
-// For a servo-based Z probe, you must set up servo support below, including
607
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
607
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
608 608
 //
609 609
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
610 610
 // - Use 5V for powered (usu. inductive) sensors.
@@ -741,35 +741,9 @@
741 741
   #define FILAMENT_RUNOUT_SCRIPT "M600"
742 742
 #endif
743 743
 
744
-//===========================================================================
745
-//============================ Mesh Bed Leveling ============================
746
-//===========================================================================
747
-
748
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
749
-
750
-#if ENABLED(MESH_BED_LEVELING)
751
-  #define MESH_INSET 10        // Mesh inset margin on print area
752
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
753
-  #define MESH_NUM_Y_POINTS 3
754
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
755
-
756
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
757
-
758
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
759
-
760
-  #if ENABLED(MANUAL_BED_LEVELING)
761
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
762
-  #endif  // MANUAL_BED_LEVELING
763
-
764
-  // Gradually reduce leveling correction until a set height is reached,
765
-  // at which point movement will be level to the machine's XY plane.
766
-  // The height can be set with M420 Z<height>
767
-  #define ENABLE_LEVELING_FADE_HEIGHT
768
-
769
-#endif  // MESH_BED_LEVELING
770 744
 
771 745
 //===========================================================================
772
-//============================ Auto Bed Leveling ============================
746
+//=============================== Bed Leveling ==============================
773 747
 //===========================================================================
774 748
 // @section bedlevel
775 749
 
@@ -793,10 +767,22 @@
793 767
  *   Probe several points in a grid.
794 768
  *   You specify the rectangle and the density of sample points.
795 769
  *   The result is a mesh, best for large or uneven beds.
770
+ *
771
+ * - UBL Unified Bed Leveling
772
+ *   A comprehensive bed leveling system that combines features and benefits from previous
773
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
774
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
775
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
776
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
777
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
778
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
779
+ *       test on.
796 780
  */
797 781
 //#define AUTO_BED_LEVELING_3POINT
798 782
 //#define AUTO_BED_LEVELING_LINEAR
799 783
 //#define AUTO_BED_LEVELING_BILINEAR
784
+//#define MESH_BED_LEVELING
785
+//#define AUTO_BED_LEVELING_UBL
800 786
 
801 787
 /**
802 788
  * Enable detailed logging of G28, G29, M48, etc.
@@ -805,6 +791,13 @@
805 791
  */
806 792
 //#define DEBUG_LEVELING_FEATURE
807 793
 
794
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
795
+  // Gradually reduce leveling correction until a set height is reached,
796
+  // at which point movement will be level to the machine's XY plane.
797
+  // The height can be set with M420 Z<height>
798
+  #define ENABLE_LEVELING_FADE_HEIGHT
799
+#endif
800
+
808 801
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
809 802
 
810 803
   // Set the number of grid points per dimension.
@@ -825,11 +818,6 @@
825 818
 
826 819
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
827 820
 
828
-    // Gradually reduce leveling correction until a set height is reached,
829
-    // at which point movement will be level to the machine's XY plane.
830
-    // The height can be set with M420 Z<height>
831
-    #define ENABLE_LEVELING_FADE_HEIGHT
832
-
833 821
     //
834 822
     // Experimental Subdivision of the grid by Catmull-Rom method.
835 823
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -853,7 +841,42 @@
853 841
   #define ABL_PROBE_PT_3_X 170
854 842
   #define ABL_PROBE_PT_3_Y 20
855 843
 
856
-#endif
844
+#elif ENABLED(MESH_BED_LEVELING)
845
+
846
+//===========================================================================
847
+//=================================== Mesh ==================================
848
+//===========================================================================
849
+
850
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
851
+  #define MESH_INSET 10          // Mesh inset margin on print area
852
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
853
+  #define MESH_NUM_Y_POINTS 3
854
+
855
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
856
+
857
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
858
+
859
+  #if ENABLED(MANUAL_BED_LEVELING)
860
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
861
+  #endif  // MANUAL_BED_LEVELING
862
+
863
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
864
+
865
+//===========================================================================
866
+//========================= Unified Bed Leveling ============================
867
+//===========================================================================
868
+
869
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
870
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
871
+  #define UBL_MESH_NUM_Y_POINTS 10
872
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
873
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
874
+  #define UBL_PROBE_PT_2_X 39
875
+  #define UBL_PROBE_PT_2_Y 20
876
+  #define UBL_PROBE_PT_3_X 180
877
+  #define UBL_PROBE_PT_3_Y 20
878
+
879
+#endif  // BED_LEVELING
857 880
 
858 881
 /**
859 882
  * Commands to execute at the end of G29 probing.

+ 58
- 38
Marlin/example_configurations/delta/flsun_kossel_mini/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -705,8 +706,7 @@
705 706
 //
706 707
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
707 708
 //
708
-// For a servo-based Z probe, you must set up servo support below, including
709
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
709
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
710 710
 //
711 711
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
712 712
 // - Use 5V for powered (usu. inductive) sensors.
@@ -844,35 +844,7 @@
844 844
 #endif
845 845
 
846 846
 //===========================================================================
847
-//============================ Mesh Bed Leveling ============================
848
-//===========================================================================
849
-//
850
-// MESH_BED_LEVELING does not yet support DELTA printers.
851
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
852
-
853
-#if ENABLED(MESH_BED_LEVELING)
854
-  #define MESH_INSET 10        // Mesh inset margin on print area
855
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
856
-  #define MESH_NUM_Y_POINTS 3
857
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
858
-
859
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
860
-
861
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
862
-
863
-  #if ENABLED(MANUAL_BED_LEVELING)
864
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
865
-  #endif  // MANUAL_BED_LEVELING
866
-
867
-  // Gradually reduce leveling correction until a set height is reached,
868
-  // at which point movement will be level to the machine's XY plane.
869
-  // The height can be set with M420 Z<height>
870
-  #define ENABLE_LEVELING_FADE_HEIGHT
871
-
872
-#endif  // MESH_BED_LEVELING
873
-
874
-//===========================================================================
875
-//============================ Auto Bed Leveling ============================
847
+//=============================== Bed Leveling ==============================
876 848
 //===========================================================================
877 849
 // @section bedlevel
878 850
 
@@ -896,10 +868,22 @@
896 868
  *   Probe several points in a grid.
897 869
  *   You specify the rectangle and the density of sample points.
898 870
  *   The result is a mesh, best for large or uneven beds.
871
+ *
872
+ * - UBL Unified Bed Leveling
873
+ *   A comprehensive bed leveling system that combines features and benefits from previous
874
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
875
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
876
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
877
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
878
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
879
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
880
+ *       test on.
899 881
  */
900 882
 //#define AUTO_BED_LEVELING_3POINT // Only AUTO_BED_LEVELING_BILINEAR is supported for DELTA bed leveling.
901 883
 //#define AUTO_BED_LEVELING_LINEAR // Only AUTO_BED_LEVELING_BILINEAR is supported for DELTA bed leveling.
902 884
 #define AUTO_BED_LEVELING_BILINEAR // Only AUTO_BED_LEVELING_BILINEAR is supported for DELTA bed leveling.
885
+//#define MESH_BED_LEVELING
886
+//#define AUTO_BED_LEVELING_UBL
903 887
 
904 888
 /**
905 889
  * Enable detailed logging of G28, G29, M48, etc.
@@ -908,6 +892,13 @@
908 892
  */
909 893
 //#define DEBUG_LEVELING_FEATURE
910 894
 
895
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
896
+  // Gradually reduce leveling correction until a set height is reached,
897
+  // at which point movement will be level to the machine's XY plane.
898
+  // The height can be set with M420 Z<height>
899
+  //#define ENABLE_LEVELING_FADE_HEIGHT
900
+#endif
901
+
911 902
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
912 903
 
913 904
   // Set the number of grid points per dimension.
@@ -928,12 +919,6 @@
928 919
   //#define PROBE_Y_FIRST
929 920
 
930 921
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
931
-
932
-    // Gradually reduce leveling correction until a set height is reached,
933
-    // at which point movement will be level to the machine's XY plane.
934
-    // The height can be set with M420 Z<height>
935
-    //#define ENABLE_LEVELING_FADE_HEIGHT
936
-
937 922
     //
938 923
     // Experimental Subdivision of the grid by Catmull-Rom method.
939 924
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -957,7 +942,42 @@
957 942
   #define ABL_PROBE_PT_3_X 170
958 943
   #define ABL_PROBE_PT_3_Y 20
959 944
 
960
-#endif
945
+#elif ENABLED(MESH_BED_LEVELING)
946
+
947
+//===========================================================================
948
+//=================================== Mesh ==================================
949
+//===========================================================================
950
+
951
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
952
+  #define MESH_INSET 10          // Mesh inset margin on print area
953
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
954
+  #define MESH_NUM_Y_POINTS 3
955
+
956
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
957
+
958
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
959
+
960
+  #if ENABLED(MANUAL_BED_LEVELING)
961
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
962
+  #endif  // MANUAL_BED_LEVELING
963
+
964
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
965
+
966
+//===========================================================================
967
+//========================= Unified Bed Leveling ============================
968
+//===========================================================================
969
+
970
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
971
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
972
+  #define UBL_MESH_NUM_Y_POINTS 10
973
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
974
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
975
+  #define UBL_PROBE_PT_2_X 39
976
+  #define UBL_PROBE_PT_2_Y 20
977
+  #define UBL_PROBE_PT_3_X 180
978
+  #define UBL_PROBE_PT_3_Y 20
979
+
980
+#endif  // BED_LEVELING
961 981
 
962 982
 /**
963 983
  * Commands to execute at the end of G29 probing.

+ 58
- 36
Marlin/example_configurations/delta/generic/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -689,8 +690,7 @@
689 690
 //
690 691
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
691 692
 //
692
-// For a servo-based Z probe, you must set up servo support below, including
693
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
693
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
694 694
 //
695 695
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
696 696
 // - Use 5V for powered (usu. inductive) sensors.
@@ -827,35 +827,9 @@
827 827
   #define FILAMENT_RUNOUT_SCRIPT "M600"
828 828
 #endif
829 829
 
830
-//===========================================================================
831
-//============================ Mesh Bed Leveling ============================
832
-//===========================================================================
833
-
834
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
835
-
836
-#if ENABLED(MESH_BED_LEVELING)
837
-  #define MESH_INSET 10        // Mesh inset margin on print area
838
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
839
-  #define MESH_NUM_Y_POINTS 3
840
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
841
-
842
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
843
-
844
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
845
-
846
-  #if ENABLED(MANUAL_BED_LEVELING)
847
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
848
-  #endif  // MANUAL_BED_LEVELING
849
-
850
-  // Gradually reduce leveling correction until a set height is reached,
851
-  // at which point movement will be level to the machine's XY plane.
852
-  // The height can be set with M420 Z<height>
853
-  #define ENABLE_LEVELING_FADE_HEIGHT
854
-
855
-#endif  // MESH_BED_LEVELING
856 830
 
857 831
 //===========================================================================
858
-//============================ Auto Bed Leveling ============================
832
+//=============================== Bed Leveling ==============================
859 833
 //===========================================================================
860 834
 // @section bedlevel
861 835
 
@@ -879,10 +853,22 @@
879 853
  *   Probe several points in a grid.
880 854
  *   You specify the rectangle and the density of sample points.
881 855
  *   The result is a mesh, best for large or uneven beds.
856
+ *
857
+ * - UBL Unified Bed Leveling
858
+ *   A comprehensive bed leveling system that combines features and benefits from previous
859
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
860
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
861
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
862
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
863
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
864
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
865
+ *       test on.
882 866
  */
883 867
 //#define AUTO_BED_LEVELING_3POINT
884 868
 //#define AUTO_BED_LEVELING_LINEAR
885 869
 //#define AUTO_BED_LEVELING_BILINEAR
870
+//#define MESH_BED_LEVELING
871
+//#define AUTO_BED_LEVELING_UBL
886 872
 
887 873
 /**
888 874
  * Enable detailed logging of G28, G29, M48, etc.
@@ -891,6 +877,13 @@
891 877
  */
892 878
 //#define DEBUG_LEVELING_FEATURE
893 879
 
880
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
881
+  // Gradually reduce leveling correction until a set height is reached,
882
+  // at which point movement will be level to the machine's XY plane.
883
+  // The height can be set with M420 Z<height>
884
+  //#define ENABLE_LEVELING_FADE_HEIGHT
885
+#endif
886
+
894 887
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
895 888
 
896 889
   // Set the number of grid points per dimension.
@@ -912,12 +905,6 @@
912 905
   //#define PROBE_Y_FIRST
913 906
 
914 907
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
915
-
916
-    // Gradually reduce leveling correction until a set height is reached,
917
-    // at which point movement will be level to the machine's XY plane.
918
-    // The height can be set with M420 Z<height>
919
-    //#define ENABLE_LEVELING_FADE_HEIGHT
920
-
921 908
     //
922 909
     // Experimental Subdivision of the grid by Catmull-Rom method.
923 910
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -941,7 +928,42 @@
941 928
   #define ABL_PROBE_PT_3_X 170
942 929
   #define ABL_PROBE_PT_3_Y 20
943 930
 
944
-#endif
931
+#elif ENABLED(MESH_BED_LEVELING)
932
+
933
+//===========================================================================
934
+//=================================== Mesh ==================================
935
+//===========================================================================
936
+
937
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
938
+  #define MESH_INSET 10          // Mesh inset margin on print area
939
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
940
+  #define MESH_NUM_Y_POINTS 3
941
+
942
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
943
+
944
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
945
+
946
+  #if ENABLED(MANUAL_BED_LEVELING)
947
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
948
+  #endif  // MANUAL_BED_LEVELING
949
+
950
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
951
+
952
+//===========================================================================
953
+//========================= Unified Bed Leveling ============================
954
+//===========================================================================
955
+
956
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
957
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
958
+  #define UBL_MESH_NUM_Y_POINTS 10
959
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
960
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
961
+  #define UBL_PROBE_PT_2_X 39
962
+  #define UBL_PROBE_PT_2_Y 20
963
+  #define UBL_PROBE_PT_3_X 180
964
+  #define UBL_PROBE_PT_3_Y 20
965
+
966
+#endif  // BED_LEVELING
945 967
 
946 968
 /**
947 969
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/delta/kossel_mini/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -692,8 +693,7 @@
692 693
 //
693 694
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
694 695
 //
695
-// For a servo-based Z probe, you must set up servo support below, including
696
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
696
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
697 697
 //
698 698
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
699 699
 // - Use 5V for powered (usu. inductive) sensors.
@@ -830,35 +830,9 @@
830 830
   #define FILAMENT_RUNOUT_SCRIPT "M600"
831 831
 #endif
832 832
 
833
-//===========================================================================
834
-//============================ Mesh Bed Leveling ============================
835
-//===========================================================================
836
-
837
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
838
-
839
-#if ENABLED(MESH_BED_LEVELING)
840
-  #define MESH_INSET 10        // Mesh inset margin on print area
841
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
842
-  #define MESH_NUM_Y_POINTS 3
843
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
844
-
845
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
846
-
847
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
848
-
849
-  #if ENABLED(MANUAL_BED_LEVELING)
850
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
851
-  #endif  // MANUAL_BED_LEVELING
852
-
853
-  // Gradually reduce leveling correction until a set height is reached,
854
-  // at which point movement will be level to the machine's XY plane.
855
-  // The height can be set with M420 Z<height>
856
-  #define ENABLE_LEVELING_FADE_HEIGHT
857
-
858
-#endif  // MESH_BED_LEVELING
859 833
 
860 834
 //===========================================================================
861
-//============================ Auto Bed Leveling ============================
835
+//=============================== Bed Leveling ==============================
862 836
 //===========================================================================
863 837
 // @section bedlevel
864 838
 
@@ -882,10 +856,22 @@
882 856
  *   Probe several points in a grid.
883 857
  *   You specify the rectangle and the density of sample points.
884 858
  *   The result is a mesh, best for large or uneven beds.
859
+ *
860
+ * - UBL Unified Bed Leveling
861
+ *   A comprehensive bed leveling system that combines features and benefits from previous
862
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
863
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
864
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
865
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
866
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
867
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
868
+ *       test on.
885 869
  */
886 870
 //#define AUTO_BED_LEVELING_3POINT
887 871
 //#define AUTO_BED_LEVELING_LINEAR
888 872
 //#define AUTO_BED_LEVELING_BILINEAR
873
+//#define MESH_BED_LEVELING
874
+//#define AUTO_BED_LEVELING_UBL
889 875
 
890 876
 /**
891 877
  * Enable detailed logging of G28, G29, M48, etc.
@@ -894,6 +880,13 @@
894 880
  */
895 881
 //#define DEBUG_LEVELING_FEATURE
896 882
 
883
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
884
+  // Gradually reduce leveling correction until a set height is reached,
885
+  // at which point movement will be level to the machine's XY plane.
886
+  // The height can be set with M420 Z<height>
887
+  //#define ENABLE_LEVELING_FADE_HEIGHT
888
+#endif
889
+
897 890
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
898 891
 
899 892
   // Set the number of grid points per dimension.
@@ -916,11 +909,6 @@
916 909
 
917 910
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
918 911
 
919
-    // Gradually reduce leveling correction until a set height is reached,
920
-    // at which point movement will be level to the machine's XY plane.
921
-    // The height can be set with M420 Z<height>
922
-    #define ENABLE_LEVELING_FADE_HEIGHT
923
-
924 912
     //
925 913
     // Experimental Subdivision of the grid by Catmull-Rom method.
926 914
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -944,7 +932,42 @@
944 932
   #define ABL_PROBE_PT_3_X 170
945 933
   #define ABL_PROBE_PT_3_Y 20
946 934
 
947
-#endif
935
+#elif ENABLED(MESH_BED_LEVELING)
936
+
937
+//===========================================================================
938
+//=================================== Mesh ==================================
939
+//===========================================================================
940
+
941
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
942
+  #define MESH_INSET 10          // Mesh inset margin on print area
943
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
944
+  #define MESH_NUM_Y_POINTS 3
945
+
946
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
947
+
948
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
949
+
950
+  #if ENABLED(MANUAL_BED_LEVELING)
951
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
952
+  #endif  // MANUAL_BED_LEVELING
953
+
954
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
955
+
956
+//===========================================================================
957
+//========================= Unified Bed Leveling ============================
958
+//===========================================================================
959
+
960
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
961
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
962
+  #define UBL_MESH_NUM_Y_POINTS 10
963
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
964
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
965
+  #define UBL_PROBE_PT_2_X 39
966
+  #define UBL_PROBE_PT_2_Y 20
967
+  #define UBL_PROBE_PT_3_X 180
968
+  #define UBL_PROBE_PT_3_Y 20
969
+
970
+#endif  // BED_LEVELING
948 971
 
949 972
 /**
950 973
  * Commands to execute at the end of G29 probing.

+ 59
- 36
Marlin/example_configurations/delta/kossel_pro/Configuration.h Vedi File

@@ -235,6 +235,7 @@
235 235
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
236 236
  *    66 : 4.7M High Temperature thermistor from Dyze Design
237 237
  *    70 : the 100K thermistor found in the bq Hephestos 2
238
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
238 239
  *
239 240
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
240 241
  *                              (but gives greater accuracy and more stable PID)
@@ -691,8 +692,7 @@
691 692
 //
692 693
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
693 694
 //
694
-// For a servo-based Z probe, you must set up servo support below, including
695
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
695
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
696 696
 //
697 697
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
698 698
 // - Use 5V for powered (usu. inductive) sensors.
@@ -829,35 +829,9 @@
829 829
   #define FILAMENT_RUNOUT_SCRIPT "M600"
830 830
 #endif
831 831
 
832
-//===========================================================================
833
-//============================ Mesh Bed Leveling ============================
834
-//===========================================================================
835
-
836
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
837
-
838
-#if ENABLED(MESH_BED_LEVELING)
839
-  #define MESH_INSET 10        // Mesh inset margin on print area
840
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
841
-  #define MESH_NUM_Y_POINTS 3
842
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
843
-
844
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
845
-
846
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
847
-
848
-  #if ENABLED(MANUAL_BED_LEVELING)
849
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
850
-  #endif  // MANUAL_BED_LEVELING
851
-
852
-  // Gradually reduce leveling correction until a set height is reached,
853
-  // at which point movement will be level to the machine's XY plane.
854
-  // The height can be set with M420 Z<height>
855
-  #define ENABLE_LEVELING_FADE_HEIGHT
856
-
857
-#endif  // MESH_BED_LEVELING
858 832
 
859 833
 //===========================================================================
860
-//============================ Auto Bed Leveling ============================
834
+//=============================== Bed Leveling ==============================
861 835
 //===========================================================================
862 836
 // @section bedlevel
863 837
 
@@ -881,10 +855,22 @@
881 855
  *   Probe several points in a grid.
882 856
  *   You specify the rectangle and the density of sample points.
883 857
  *   The result is a mesh, best for large or uneven beds.
858
+ *
859
+ * - UBL Unified Bed Leveling
860
+ *   A comprehensive bed leveling system that combines features and benefits from previous
861
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
862
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
863
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
864
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
865
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
866
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
867
+ *       test on.
884 868
  */
885 869
 //#define AUTO_BED_LEVELING_3POINT
886 870
 //#define AUTO_BED_LEVELING_LINEAR
887
-#define AUTO_BED_LEVELING_BILINEAR
871
+//#define AUTO_BED_LEVELING_BILINEAR
872
+//#define MESH_BED_LEVELING
873
+//#define AUTO_BED_LEVELING_UBL
888 874
 
889 875
 /**
890 876
  * Enable detailed logging of G28, G29, M48, etc.
@@ -893,6 +879,13 @@
893 879
  */
894 880
 //#define DEBUG_LEVELING_FEATURE
895 881
 
882
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
883
+  // Gradually reduce leveling correction until a set height is reached,
884
+  // at which point movement will be level to the machine's XY plane.
885
+  // The height can be set with M420 Z<height>
886
+  //#define ENABLE_LEVELING_FADE_HEIGHT
887
+#endif
888
+
896 889
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
897 890
 
898 891
   // Set the number of grid points per dimension.
@@ -915,11 +908,6 @@
915 908
 
916 909
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
917 910
 
918
-    // Gradually reduce leveling correction until a set height is reached,
919
-    // at which point movement will be level to the machine's XY plane.
920
-    // The height can be set with M420 Z<height>
921
-    //#define ENABLE_LEVELING_FADE_HEIGHT
922
-
923 911
     //
924 912
     // Experimental Subdivision of the grid by Catmull-Rom method.
925 913
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -943,7 +931,42 @@
943 931
   #define ABL_PROBE_PT_3_X 170
944 932
   #define ABL_PROBE_PT_3_Y 20
945 933
 
946
-#endif
934
+#elif ENABLED(MESH_BED_LEVELING)
935
+
936
+//===========================================================================
937
+//=================================== Mesh ==================================
938
+//===========================================================================
939
+
940
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
941
+  #define MESH_INSET 10          // Mesh inset margin on print area
942
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
943
+  #define MESH_NUM_Y_POINTS 3
944
+
945
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
946
+
947
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
948
+
949
+  #if ENABLED(MANUAL_BED_LEVELING)
950
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
951
+  #endif  // MANUAL_BED_LEVELING
952
+
953
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
954
+
955
+//===========================================================================
956
+//========================= Unified Bed Leveling ============================
957
+//===========================================================================
958
+
959
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
960
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
961
+  #define UBL_MESH_NUM_Y_POINTS 10
962
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
963
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
964
+  #define UBL_PROBE_PT_2_X 39
965
+  #define UBL_PROBE_PT_2_Y 20
966
+  #define UBL_PROBE_PT_3_X 180
967
+  #define UBL_PROBE_PT_3_Y 20
968
+
969
+#endif  // BED_LEVELING
947 970
 
948 971
 /**
949 972
  * Commands to execute at the end of G29 probing.

+ 66
- 37
Marlin/example_configurations/delta/kossel_xl/Configuration.h Vedi File

@@ -74,6 +74,13 @@
74 74
 // example_configurations/delta directory.
75 75
 //
76 76
 
77
+//===========================================================================
78
+//============================= SCARA Printer ===============================
79
+//===========================================================================
80
+// For a Scara printer replace the configuration files with the files in the
81
+// example_configurations/SCARA directory.
82
+//
83
+
77 84
 // @section info
78 85
 
79 86
 // User-specified version info of this build to display in [Pronterface, etc] terminal window during
@@ -224,6 +231,7 @@
224 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
225 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
226 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
227 235
  *
228 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
229 237
  *                              (but gives greater accuracy and more stable PID)
@@ -695,8 +703,7 @@
695 703
 //
696 704
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
697 705
 //
698
-// For a servo-based Z probe, you must set up servo support below, including
699
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
706
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
700 707
 //
701 708
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
702 709
 // - Use 5V for powered (usu. inductive) sensors.
@@ -833,35 +840,9 @@
833 840
   #define FILAMENT_RUNOUT_SCRIPT "M600"
834 841
 #endif
835 842
 
836
-//===========================================================================
837
-//============================ Mesh Bed Leveling ============================
838
-//===========================================================================
839
-
840
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
841
-
842
-#if ENABLED(MESH_BED_LEVELING)
843
-  #define MESH_INSET 10        // Mesh inset margin on print area
844
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
845
-  #define MESH_NUM_Y_POINTS 3
846
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
847
-
848
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
849
-
850
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
851
-
852
-  #if ENABLED(MANUAL_BED_LEVELING)
853
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
854
-  #endif  // MANUAL_BED_LEVELING
855
-
856
-  // Gradually reduce leveling correction until a set height is reached,
857
-  // at which point movement will be level to the machine's XY plane.
858
-  // The height can be set with M420 Z<height>
859
-  #define ENABLE_LEVELING_FADE_HEIGHT
860
-
861
-#endif  // MESH_BED_LEVELING
862 843
 
863 844
 //===========================================================================
864
-//============================ Auto Bed Leveling ============================
845
+//=============================== Bed Leveling ==============================
865 846
 //===========================================================================
866 847
 // @section bedlevel
867 848
 
@@ -885,10 +866,22 @@
885 866
  *   Probe several points in a grid.
886 867
  *   You specify the rectangle and the density of sample points.
887 868
  *   The result is a mesh, best for large or uneven beds.
869
+ *
870
+ * - UBL Unified Bed Leveling
871
+ *   A comprehensive bed leveling system that combines features and benefits from previous
872
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
873
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
874
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
875
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
876
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
877
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
878
+ *       test on.
888 879
  */
889 880
 //#define AUTO_BED_LEVELING_3POINT
890 881
 //#define AUTO_BED_LEVELING_LINEAR
891
-#define AUTO_BED_LEVELING_BILINEAR
882
+//#define AUTO_BED_LEVELING_BILINEAR
883
+//#define MESH_BED_LEVELING
884
+//#define AUTO_BED_LEVELING_UBL
892 885
 
893 886
 /**
894 887
  * Enable detailed logging of G28, G29, M48, etc.
@@ -897,6 +890,13 @@
897 890
  */
898 891
 //#define DEBUG_LEVELING_FEATURE
899 892
 
893
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
894
+  // Gradually reduce leveling correction until a set height is reached,
895
+  // at which point movement will be level to the machine's XY plane.
896
+  // The height can be set with M420 Z<height>
897
+  //#define ENABLE_LEVELING_FADE_HEIGHT
898
+#endif
899
+
900 900
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
901 901
 
902 902
   // Set the number of grid points per dimension.
@@ -918,12 +918,6 @@
918 918
   //#define PROBE_Y_FIRST
919 919
 
920 920
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
921
-
922
-    // Gradually reduce leveling correction until a set height is reached,
923
-    // at which point movement will be level to the machine's XY plane.
924
-    // The height can be set with M420 Z<height>
925
-    //#define ENABLE_LEVELING_FADE_HEIGHT
926
-
927 921
     //
928 922
     // Experimental Subdivision of the grid by Catmull-Rom method.
929 923
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -947,7 +941,42 @@
947 941
   #define ABL_PROBE_PT_3_X 170
948 942
   #define ABL_PROBE_PT_3_Y 20
949 943
 
950
-#endif
944
+#elif ENABLED(MESH_BED_LEVELING)
945
+
946
+//===========================================================================
947
+//=================================== Mesh ==================================
948
+//===========================================================================
949
+
950
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
951
+  #define MESH_INSET 10          // Mesh inset margin on print area
952
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
953
+  #define MESH_NUM_Y_POINTS 3
954
+
955
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
956
+
957
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
958
+
959
+  #if ENABLED(MANUAL_BED_LEVELING)
960
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
961
+  #endif  // MANUAL_BED_LEVELING
962
+
963
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
964
+
965
+//===========================================================================
966
+//========================= Unified Bed Leveling ============================
967
+//===========================================================================
968
+
969
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
970
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
971
+  #define UBL_MESH_NUM_Y_POINTS 10
972
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
973
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
974
+  #define UBL_PROBE_PT_2_X 39
975
+  #define UBL_PROBE_PT_2_Y 20
976
+  #define UBL_PROBE_PT_3_X 180
977
+  #define UBL_PROBE_PT_3_Y 20
978
+
979
+#endif  // BED_LEVELING
951 980
 
952 981
 /**
953 982
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/makibox/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -606,8 +607,7 @@
606 607
 //
607 608
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
608 609
 //
609
-// For a servo-based Z probe, you must set up servo support below, including
610
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
610
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
611 611
 //
612 612
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
613 613
 // - Use 5V for powered (usu. inductive) sensors.
@@ -744,35 +744,9 @@
744 744
   #define FILAMENT_RUNOUT_SCRIPT "M600"
745 745
 #endif
746 746
 
747
-//===========================================================================
748
-//============================ Mesh Bed Leveling ============================
749
-//===========================================================================
750
-
751
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
752
-
753
-#if ENABLED(MESH_BED_LEVELING)
754
-  #define MESH_INSET 10        // Mesh inset margin on print area
755
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
756
-  #define MESH_NUM_Y_POINTS 3
757
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
758
-
759
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
760
-
761
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
762
-
763
-  #if ENABLED(MANUAL_BED_LEVELING)
764
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
765
-  #endif  // MANUAL_BED_LEVELING
766
-
767
-  // Gradually reduce leveling correction until a set height is reached,
768
-  // at which point movement will be level to the machine's XY plane.
769
-  // The height can be set with M420 Z<height>
770
-  #define ENABLE_LEVELING_FADE_HEIGHT
771
-
772
-#endif  // MESH_BED_LEVELING
773 747
 
774 748
 //===========================================================================
775
-//============================ Auto Bed Leveling ============================
749
+//=============================== Bed Leveling ==============================
776 750
 //===========================================================================
777 751
 // @section bedlevel
778 752
 
@@ -796,10 +770,22 @@
796 770
  *   Probe several points in a grid.
797 771
  *   You specify the rectangle and the density of sample points.
798 772
  *   The result is a mesh, best for large or uneven beds.
773
+ *
774
+ * - UBL Unified Bed Leveling
775
+ *   A comprehensive bed leveling system that combines features and benefits from previous
776
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
777
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
778
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
779
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
780
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
781
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
782
+ *       test on.
799 783
  */
800 784
 //#define AUTO_BED_LEVELING_3POINT
801 785
 //#define AUTO_BED_LEVELING_LINEAR
802 786
 //#define AUTO_BED_LEVELING_BILINEAR
787
+//#define MESH_BED_LEVELING
788
+//#define AUTO_BED_LEVELING_UBL
803 789
 
804 790
 /**
805 791
  * Enable detailed logging of G28, G29, M48, etc.
@@ -808,6 +794,13 @@
808 794
  */
809 795
 //#define DEBUG_LEVELING_FEATURE
810 796
 
797
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
798
+  // Gradually reduce leveling correction until a set height is reached,
799
+  // at which point movement will be level to the machine's XY plane.
800
+  // The height can be set with M420 Z<height>
801
+  #define ENABLE_LEVELING_FADE_HEIGHT
802
+#endif
803
+
811 804
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
812 805
 
813 806
   // Set the number of grid points per dimension.
@@ -828,11 +821,6 @@
828 821
 
829 822
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
830 823
 
831
-    // Gradually reduce leveling correction until a set height is reached,
832
-    // at which point movement will be level to the machine's XY plane.
833
-    // The height can be set with M420 Z<height>
834
-    #define ENABLE_LEVELING_FADE_HEIGHT
835
-
836 824
     //
837 825
     // Experimental Subdivision of the grid by Catmull-Rom method.
838 826
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -856,7 +844,42 @@
856 844
   #define ABL_PROBE_PT_3_X 170
857 845
   #define ABL_PROBE_PT_3_Y 20
858 846
 
859
-#endif
847
+#elif ENABLED(MESH_BED_LEVELING)
848
+
849
+//===========================================================================
850
+//=================================== Mesh ==================================
851
+//===========================================================================
852
+
853
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
854
+  #define MESH_INSET 10          // Mesh inset margin on print area
855
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
856
+  #define MESH_NUM_Y_POINTS 3
857
+
858
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
859
+
860
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
861
+
862
+  #if ENABLED(MANUAL_BED_LEVELING)
863
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
864
+  #endif  // MANUAL_BED_LEVELING
865
+
866
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
867
+
868
+//===========================================================================
869
+//========================= Unified Bed Leveling ============================
870
+//===========================================================================
871
+
872
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
873
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
874
+  #define UBL_MESH_NUM_Y_POINTS 10
875
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
876
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
877
+  #define UBL_PROBE_PT_2_X 39
878
+  #define UBL_PROBE_PT_2_Y 20
879
+  #define UBL_PROBE_PT_3_X 180
880
+  #define UBL_PROBE_PT_3_Y 20
881
+
882
+#endif  // BED_LEVELING
860 883
 
861 884
 /**
862 885
  * Commands to execute at the end of G29 probing.

+ 58
- 35
Marlin/example_configurations/tvrrug/Round2/Configuration.h Vedi File

@@ -231,6 +231,7 @@
231 231
  *    60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
232 232
  *    66 : 4.7M High Temperature thermistor from Dyze Design
233 233
  *    70 : the 100K thermistor found in the bq Hephestos 2
234
+ *    75 : 100k Generic Silicon Heat Pad typically a NTC 100K MGB18-104F39050L32 thermistor
234 235
  *
235 236
  *       1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
236 237
  *                              (but gives greater accuracy and more stable PID)
@@ -599,8 +600,7 @@
599 600
 //
600 601
 // To use a separate Z probe, your board must define a Z_MIN_PROBE_PIN.
601 602
 //
602
-// For a servo-based Z probe, you must set up servo support below, including
603
-// NUM_SERVOS, Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES.
603
+// For a servo-based Z probe, just set Z_ENDSTOP_SERVO_NR and Z_SERVO_ANGLES above.
604 604
 //
605 605
 // - RAMPS 1.3/1.4 boards may be able to use the 5V, GND, and Aux4->D32 pin.
606 606
 // - Use 5V for powered (usu. inductive) sensors.
@@ -737,35 +737,9 @@
737 737
   #define FILAMENT_RUNOUT_SCRIPT "M600"
738 738
 #endif
739 739
 
740
-//===========================================================================
741
-//============================ Mesh Bed Leveling ============================
742
-//===========================================================================
743
-
744
-//#define MESH_BED_LEVELING    // Enable mesh bed leveling.
745
-
746
-#if ENABLED(MESH_BED_LEVELING)
747
-  #define MESH_INSET 10        // Mesh inset margin on print area
748
-  #define MESH_NUM_X_POINTS 3  // Don't use more than 7 points per axis, implementation limited.
749
-  #define MESH_NUM_Y_POINTS 3
750
-  #define MANUAL_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
751
-
752
-  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS
753
-
754
-  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
755
-
756
-  #if ENABLED(MANUAL_BED_LEVELING)
757
-    #define MBL_Z_STEP 0.025  // Step size while manually probing Z axis.
758
-  #endif  // MANUAL_BED_LEVELING
759
-
760
-  // Gradually reduce leveling correction until a set height is reached,
761
-  // at which point movement will be level to the machine's XY plane.
762
-  // The height can be set with M420 Z<height>
763
-  #define ENABLE_LEVELING_FADE_HEIGHT
764
-
765
-#endif  // MESH_BED_LEVELING
766 740
 
767 741
 //===========================================================================
768
-//============================ Auto Bed Leveling ============================
742
+//=============================== Bed Leveling ==============================
769 743
 //===========================================================================
770 744
 // @section bedlevel
771 745
 
@@ -789,10 +763,22 @@
789 763
  *   Probe several points in a grid.
790 764
  *   You specify the rectangle and the density of sample points.
791 765
  *   The result is a mesh, best for large or uneven beds.
766
+ *
767
+ * - UBL Unified Bed Leveling
768
+ *   A comprehensive bed leveling system that combines features and benefits from previous
769
+ *   bed leveling system.  The UBL Bed Leveling System also includes an integrated and easy to use
770
+ *   Mesh Generation, Mesh Validation and Mesh Editing system.
771
+ *     - Currently, the UBL Bed Leveling System is only checked out for Cartesian Printers.  But with
772
+ *       that said, it was primarily designed to handle poor quality Delta Printers.  If you feel
773
+ *       adventurous and have a Delta, please post an issue if something doesn't work correctly.
774
+ *       Initially, you will need to reduce your declared bed size so you have a rectangular area to
775
+ *       test on.
792 776
  */
793 777
 //#define AUTO_BED_LEVELING_3POINT
794 778
 //#define AUTO_BED_LEVELING_LINEAR
795 779
 //#define AUTO_BED_LEVELING_BILINEAR
780
+//#define MESH_BED_LEVELING
781
+//#define AUTO_BED_LEVELING_UBL
796 782
 
797 783
 /**
798 784
  * Enable detailed logging of G28, G29, M48, etc.
@@ -801,6 +787,13 @@
801 787
  */
802 788
 //#define DEBUG_LEVELING_FEATURE
803 789
 
790
+#if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(AUTO_BED_LEVELING_UBL)
791
+  // Gradually reduce leveling correction until a set height is reached,
792
+  // at which point movement will be level to the machine's XY plane.
793
+  // The height can be set with M420 Z<height>
794
+  #define ENABLE_LEVELING_FADE_HEIGHT
795
+#endif
796
+
804 797
 #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
805 798
 
806 799
   // Set the number of grid points per dimension.
@@ -821,11 +814,6 @@
821 814
 
822 815
   #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
823 816
 
824
-    // Gradually reduce leveling correction until a set height is reached,
825
-    // at which point movement will be level to the machine's XY plane.
826
-    // The height can be set with M420 Z<height>
827
-    #define ENABLE_LEVELING_FADE_HEIGHT
828
-
829 817
     //
830 818
     // Experimental Subdivision of the grid by Catmull-Rom method.
831 819
     // Synthesizes intermediate points to produce a more detailed mesh.
@@ -849,7 +837,42 @@
849 837
   #define ABL_PROBE_PT_3_X 170
850 838
   #define ABL_PROBE_PT_3_Y 20
851 839
 
852
-#endif
840
+#elif ENABLED(MESH_BED_LEVELING)
841
+
842
+//===========================================================================
843
+//=================================== Mesh ==================================
844
+//===========================================================================
845
+
846
+  #define MANUAL_PROBE_Z_RANGE 4 // Z after Home, bed somewhere below but above 0.0.
847
+  #define MESH_INSET 10          // Mesh inset margin on print area
848
+  #define MESH_NUM_X_POINTS 3    // Don't use more than 7 points per axis, implementation limited.
849
+  #define MESH_NUM_Y_POINTS 3
850
+
851
+  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest at origin [0,0,0]
852
+
853
+  //#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling.
854
+
855
+  #if ENABLED(MANUAL_BED_LEVELING)
856
+    #define MBL_Z_STEP 0.025     // Step size while manually probing Z axis.
857
+  #endif  // MANUAL_BED_LEVELING
858
+
859
+#elif ENABLED(AUTO_BED_LEVELING_UBL)
860
+
861
+//===========================================================================
862
+//========================= Unified Bed Leveling ============================
863
+//===========================================================================
864
+
865
+  #define UBL_MESH_INSET 1          // Mesh inset margin on print area
866
+  #define UBL_MESH_NUM_X_POINTS 10  // Don't use more than 15 points per axis, implementation limited.
867
+  #define UBL_MESH_NUM_Y_POINTS 10
868
+  #define UBL_PROBE_PT_1_X 39       // These set the probe locations for when UBL does a 3-Point leveling
869
+  #define UBL_PROBE_PT_1_Y 180      // of the mesh.
870
+  #define UBL_PROBE_PT_2_X 39
871
+  #define UBL_PROBE_PT_2_Y 20
872
+  #define UBL_PROBE_PT_3_X 180
873
+  #define UBL_PROBE_PT_3_Y 20
874
+
875
+#endif  // BED_LEVELING
853 876
 
854 877
 /**
855 878
  * Commands to execute at the end of G29 probing.

Loading…
Annulla
Salva