Browse Source

[2.0.x] Add Z_AFTER_PROBING option (#10058)

Some "fix-mounted" probes need manual stowing. And after probing some may prefer to raise or lower the nozzle. This restores an old option but tailors it to allow raise or lower as preferred.
pull/1/head
Scott Lahteine 7 years ago
committed by GitHub
parent
commit
28f1276286
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      Marlin/Configuration.h
  2. 1
      Marlin/src/config/default/Configuration.h
  3. 1
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h
  4. 1
      Marlin/src/config/examples/AliExpress/CL-260/Configuration.h
  5. 4
      Marlin/src/config/examples/Anet/A6/Configuration.h
  6. 1
      Marlin/src/config/examples/Anet/A8/Configuration.h
  7. 1
      Marlin/src/config/examples/Azteeg/X5GT/Configuration.h
  8. 1
      Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h
  9. 1
      Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h
  10. 1
      Marlin/src/config/examples/BQ/Hephestos/Configuration.h
  11. 1
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h
  12. 1
      Marlin/src/config/examples/BQ/WITBOX/Configuration.h
  13. 1
      Marlin/src/config/examples/Cartesio/Configuration.h
  14. 1
      Marlin/src/config/examples/Creality/CR-10/Configuration.h
  15. 1
      Marlin/src/config/examples/Creality/CR-10S/Configuration.h
  16. 1
      Marlin/src/config/examples/Creality/CR-10mini/Configuration.h
  17. 1
      Marlin/src/config/examples/Creality/Ender-2/Configuration.h
  18. 1
      Marlin/src/config/examples/Creality/Ender-4/Configuration.h
  19. 1
      Marlin/src/config/examples/Felix/Configuration.h
  20. 1
      Marlin/src/config/examples/Felix/DUAL/Configuration.h
  21. 1
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h
  22. 1
      Marlin/src/config/examples/Geeetech/GT2560/Configuration.h
  23. 1
      Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h
  24. 1
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h
  25. 1
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h
  26. 1
      Marlin/src/config/examples/Infitary/i3-M508/Configuration.h
  27. 1
      Marlin/src/config/examples/JGAurora/A5/Configuration.h
  28. 1
      Marlin/src/config/examples/MakerParts/Configuration.h
  29. 5
      Marlin/src/config/examples/Malyan/M150/Configuration.h
  30. 1
      Marlin/src/config/examples/Malyan/M200/Configuration.h
  31. 1
      Marlin/src/config/examples/Micromake/C1/basic/Configuration.h
  32. 1
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h
  33. 1
      Marlin/src/config/examples/Mks/Sbase/Configuration.h
  34. 1
      Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h
  35. 1
      Marlin/src/config/examples/RigidBot/Configuration.h
  36. 1
      Marlin/src/config/examples/SCARA/Configuration.h
  37. 1
      Marlin/src/config/examples/STM32F10/Configuration.h
  38. 1
      Marlin/src/config/examples/Sanguinololu/Configuration.h
  39. 1
      Marlin/src/config/examples/TheBorg/Configuration.h
  40. 1
      Marlin/src/config/examples/TinyBoy2/Configuration.h
  41. 1
      Marlin/src/config/examples/Tronxy/X1/Configuration.h
  42. 1
      Marlin/src/config/examples/Tronxy/X5S/Configuration.h
  43. 1
      Marlin/src/config/examples/Tronxy/XY100/Configuration.h
  44. 1
      Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h
  45. 1
      Marlin/src/config/examples/Velleman/K8200/Configuration.h
  46. 1
      Marlin/src/config/examples/Velleman/K8400/Configuration.h
  47. 1
      Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h
  48. 1
      Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h
  49. 1
      Marlin/src/config/examples/adafruit/ST7565/Configuration.h
  50. 1
      Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h
  51. 1
      Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h
  52. 1
      Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h
  53. 1
      Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h
  54. 1
      Marlin/src/config/examples/delta/generic/Configuration.h
  55. 1
      Marlin/src/config/examples/delta/kossel_mini/Configuration.h
  56. 1
      Marlin/src/config/examples/delta/kossel_pro/Configuration.h
  57. 1
      Marlin/src/config/examples/delta/kossel_xl/Configuration.h
  58. 1
      Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h
  59. 1
      Marlin/src/config/examples/makibox/Configuration.h
  60. 1
      Marlin/src/config/examples/stm32f103ret6/Configuration.h
  61. 1
      Marlin/src/config/examples/tvrrug/Round2/Configuration.h
  62. 1
      Marlin/src/config/examples/wt150/Configuration.h
  63. 7
      Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp
  64. 10
      Marlin/src/gcode/bedlevel/abl/G29.cpp
  65. 7
      Marlin/src/gcode/calibrate/G28.cpp
  66. 5
      Marlin/src/gcode/probe/G30.cpp
  67. 12
      Marlin/src/gcode/probe/M401_M402.cpp
  68. 4
      Marlin/src/inc/SanityCheck.h
  69. 10
      Marlin/src/module/probe.cpp
  70. 5
      Marlin/src/module/probe.h

1
Marlin/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/default/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h

@ -773,6 +773,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/AliExpress/CL-260/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

4
Marlin/src/config/examples/Anet/A6/Configuration.h

@ -823,8 +823,10 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
//#define Z_AFTER_PROBING 5 // Z position after probing is done
//#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
//#define Z_CLEARANCE_BETWEEN_PROBES 3 // Z Clearance between probe points
//#define Z_AFTER_PROBING 3 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Anet/A8/Configuration.h

@ -760,6 +760,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Azteeg/X5GT/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h

@ -753,6 +753,7 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 10 // Z Clearance between probe points
//#define Z_AFTER_PROBING 10 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 10 // Z Clearance between probe points
//#define Z_AFTER_PROBING 10 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/BQ/Hephestos/Configuration.h

@ -741,6 +741,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h

@ -754,6 +754,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 0 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 2 // Z Clearance between probe points
//#define Z_AFTER_PROBING 2 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -2

1
Marlin/src/config/examples/BQ/WITBOX/Configuration.h

@ -741,6 +741,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Cartesio/Configuration.h

@ -752,6 +752,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Creality/CR-10/Configuration.h

@ -763,6 +763,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 10 // Z Clearance between probe points
//#define Z_AFTER_PROBING 10 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Creality/CR-10S/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Creality/CR-10mini/Configuration.h

@ -772,6 +772,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Creality/Ender-2/Configuration.h

@ -757,6 +757,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Creality/Ender-4/Configuration.h

@ -763,6 +763,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Felix/Configuration.h

@ -735,6 +735,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Felix/DUAL/Configuration.h

@ -735,6 +735,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h

@ -760,6 +760,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 3 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 3 // Z Clearance between probe points
//#define Z_AFTER_PROBING 3 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Geeetech/GT2560/Configuration.h

@ -768,6 +768,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 6 // Z Clearance between probe points
//#define Z_AFTER_PROBING 6 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h

@ -769,6 +769,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h

@ -768,6 +768,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Infitary/i3-M508/Configuration.h

@ -757,6 +757,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/JGAurora/A5/Configuration.h

@ -765,6 +765,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/MakerParts/Configuration.h

@ -773,6 +773,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

5
Marlin/src/config/examples/Malyan/M150/Configuration.h

@ -775,8 +775,9 @@
* Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle.
* But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle.
*/
//#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
//#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
//#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Malyan/M200/Configuration.h

@ -752,6 +752,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Micromake/C1/basic/Configuration.h

@ -757,6 +757,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h

@ -757,6 +757,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Mks/Sbase/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/RigidBot/Configuration.h

@ -751,6 +751,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/SCARA/Configuration.h

@ -764,6 +764,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/STM32F10/Configuration.h

@ -756,6 +756,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Sanguinololu/Configuration.h

@ -784,6 +784,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/TheBorg/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/TinyBoy2/Configuration.h

@ -804,6 +804,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Tronxy/X1/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Tronxy/X5S/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Tronxy/XY100/Configuration.h

@ -764,6 +764,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Velleman/K8200/Configuration.h

@ -782,6 +782,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Velleman/K8400/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h

@ -763,6 +763,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/adafruit/ST7565/Configuration.h

@ -753,6 +753,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h

@ -883,6 +883,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 2 // Z Clearance between probe points
//#define Z_AFTER_PROBING 2 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h

@ -883,6 +883,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 2 // Z Clearance between probe points
//#define Z_AFTER_PROBING 2 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h

@ -883,6 +883,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 50 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h

@ -885,6 +885,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/generic/Configuration.h

@ -870,6 +870,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/kossel_mini/Configuration.h

@ -873,6 +873,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 50 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/delta/kossel_pro/Configuration.h

@ -872,6 +872,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 100 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset

1
Marlin/src/config/examples/delta/kossel_xl/Configuration.h

@ -882,6 +882,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 20 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 10 // Z Clearance between probe points
//#define Z_AFTER_PROBING 10 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h

@ -766,6 +766,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 6 // Z Clearance between probe points
//#define Z_AFTER_PROBING 6 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/makibox/Configuration.h

@ -756,6 +756,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/stm32f103ret6/Configuration.h

@ -754,6 +754,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/tvrrug/Round2/Configuration.h

@ -748,6 +748,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

1
Marlin/src/config/examples/wt150/Configuration.h

@ -758,6 +758,7 @@
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
//#define Z_AFTER_PROBING 5 // Z position after probing is done
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20

7
Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp

@ -391,6 +391,7 @@
restore_ubl_active_state_and_leave();
}
do_blocking_move_to_xy(0.5 * (MESH_MAX_X - (MESH_MIN_X)), 0.5 * (MESH_MAX_Y - (MESH_MIN_Y)));
report_current_position();
}
#endif // HAS_BED_PROBE
@ -428,6 +429,8 @@
}
probe_entire_mesh(g29_x_pos + X_PROBE_OFFSET_FROM_EXTRUDER, g29_y_pos + Y_PROBE_OFFSET_FROM_EXTRUDER,
parser.seen('T'), parser.seen('E'), parser.seen('U'));
report_current_position();
break;
#endif // HAS_BED_PROBE
@ -475,6 +478,8 @@
SERIAL_PROTOCOLLNPGM("G29 P2 finished.");
report_current_position();
#else
SERIAL_PROTOCOLLNPGM("?P2 is only available when an LCD is present.");
@ -758,6 +763,8 @@
} while (location.x_index >= 0 && --count);
STOW_PROBE();
move_z_after_probing();
restore_ubl_active_state_and_leave();
do_blocking_move_to_xy(

10
Marlin/src/gcode/bedlevel/abl/G29.cpp

@ -733,7 +733,7 @@ void GcodeSuite::G29() {
#endif // AUTO_BED_LEVELING_3POINT
// Stow the probe, raising if not fix-mounted.
// Stow the probe. No raise for FIX_MOUNTED_PROBE.
if (STOW_PROBE()) {
set_bed_leveling_enabled(abl_should_enable);
measured_z = NAN;
@ -967,12 +967,16 @@ void GcodeSuite::G29() {
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("<<< G29");
#endif
report_current_position();
KEEPALIVE_STATE(IN_HANDLER);
if (planner.leveling_active)
SYNC_PLAN_POSITION_KINEMATIC();
#if HAS_BED_PROBE
move_z_after_probing();
#endif
report_current_position();
}
#endif // OLDSCHOOL_ABL

7
Marlin/src/gcode/calibrate/G28.cpp

@ -39,6 +39,10 @@
#include "../../feature/tmc_util.h"
#endif
#if HOMING_Z_WITH_PROBE
#include "../../module/probe.h"
#endif
#include "../../lcd/ultralcd.h"
#if ENABLED(QUICK_HOME)
@ -304,6 +308,9 @@ void GcodeSuite::G28(const bool always_home_all) {
HOMEAXIS(Z);
#endif
} // home_all || homeZ
#if HOMING_Z_WITH_PROBE
move_z_after_probing();
#endif
#endif // Z_HOME_DIR < 0
SYNC_PLAN_POSITION_KINEMATIC();

5
Marlin/src/gcode/probe/G30.cpp

@ -51,7 +51,8 @@ void GcodeSuite::G30() {
setup_for_endstop_or_probe_move();
const float measured_z = probe_pt(xpos, ypos, parser.boolval('E'), 1);
const bool do_stow = parser.boolval('E');
const float measured_z = probe_pt(xpos, ypos, do_stow, 1);
if (!isnan(measured_z)) {
SERIAL_PROTOCOLPAIR("Bed X: ", FIXFLOAT(xpos));
@ -61,6 +62,8 @@ void GcodeSuite::G30() {
clean_up_after_endstop_or_probe_move();
if (do_stow) move_z_after_probing();
report_current_position();
}

12
Marlin/src/gcode/probe/M401_M402.cpp

@ -25,16 +25,24 @@
#if HAS_BED_PROBE
#include "../gcode.h"
#include "../../module/motion.h"
#include "../../module/probe.h"
/**
* M401: Deploy and activate the Z probe
*/
void GcodeSuite::M401() { DEPLOY_PROBE(); }
void GcodeSuite::M401() {
DEPLOY_PROBE();
report_current_position();
}
/**
* M402: Deactivate and stow the Z probe
*/
void GcodeSuite::M402() { STOW_PROBE(); }
void GcodeSuite::M402() {
STOW_PROBE();
move_z_after_probing();
report_current_position();
}
#endif // HAS_BED_PROBE

4
Marlin/src/inc/SanityCheck.h

@ -162,7 +162,7 @@
#elif defined(MIN_Z_HEIGHT_FOR_HOMING)
#error "MIN_Z_HEIGHT_FOR_HOMING is now Z_HOMING_HEIGHT. Please update your configuration."
#elif defined(Z_RAISE_BEFORE_PROBING) || defined(Z_RAISE_AFTER_PROBING)
#error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE instead."
#error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE and Z_AFTER_PROBING instead."
#elif defined(Z_RAISE_PROBE_DEPLOY_STOW) || defined(Z_RAISE_BETWEEN_PROBINGS)
#error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES. Please update your configuration."
#elif defined(Z_PROBE_DEPLOY_HEIGHT) || defined(Z_PROBE_TRAVEL_HEIGHT)
@ -789,6 +789,8 @@ static_assert(1 >= 0
#error "Probes need Z_CLEARANCE_DEPLOY_PROBE >= 0."
#elif Z_CLEARANCE_BETWEEN_PROBES < 0
#error "Probes need Z_CLEARANCE_BETWEEN_PROBES >= 0."
#elif Z_AFTER_PROBING < 0
#error "Probes need Z_AFTER_PROBING >= 0."
#endif
#if MULTIPLE_PROBING && MULTIPLE_PROBING < 2

10
Marlin/src/module/probe.cpp

@ -465,6 +465,16 @@ bool set_probe_deployed(const bool deploy) {
return false;
}
#ifdef Z_AFTER_PROBING
// After probing move to a preferred Z position
void move_z_after_probing() {
if (current_position[Z_AXIS] != Z_AFTER_PROBING) {
do_blocking_move_to_z(Z_AFTER_PROBING);
current_position[Z_AXIS] = Z_AFTER_PROBING;
}
}
#endif
/**
* @brief Used by run_z_probe to do a single Z probe move.
*

5
Marlin/src/module/probe.h

@ -32,6 +32,11 @@
#if HAS_BED_PROBE
extern float zprobe_zoffset;
bool set_probe_deployed(const bool deploy);
#ifdef Z_AFTER_PROBING
void move_z_after_probing();
#else
inline void move_z_after_probing() {}
#endif
float probe_pt(const float &rx, const float &ry, const bool, const uint8_t, const bool probe_relative=true);
#define DEPLOY_PROBE() set_probe_deployed(true)
#define STOW_PROBE() set_probe_deployed(false)

Loading…
Cancel
Save