Skip to main content

Site Navigation

Your Account

Choose Language

Help

Revision to Setting up automatic probing of the print bed

Tony

See [[Connecting a Z probe|Connecting a Z probe]] for details on the electrical connections.
 
Instructions on setting up the mini differential IRFor a comparison of advantages and disadvantages for various Z probe are [https://miscsolutions.wordpress.com/mini-height-sensor-board/|available on dc42's web pageoptions see [[Choosing a Z probe|Choosing a Z probe]].
Instructions on setting up the mini differential IRFor a comparison of advantages and disadvantages for various Z probe are [https://miscsolutions.wordpress.com/mini-height-sensor-board/|available on dc42's web pageoptions see [[Choosing a Z probe|Choosing a Z probe]].
 
== Choosing which types(s) of probing to use ==
* [[Gcode#Section_G29_Detailed_Z_Probe|G29]] probing uses a grid of points defined by its size and the spacing between points. You can probe a large number of points without having to define their coordinates individually. It is only used for bed compensation.
 
On a Delta printer, you can if you wish use G32 to perform auto calibration[[Calibrating_a_delta_printer|auto calibration]] followed by G29 to compensate for any residual bed height errors. On a Cartesian or CoreXY printer you can use G32 bed probing for leadscrew adjustment[[Bed levelling using multiple independent Z motors]], followed by G29 probing to do bed compensation.

== Probing-related G-code ==

* [[Gcode#Section_G30_Single_Z_Probe|G30]] - run a single probe.
* [[Gcode#Section_G31_Set_or_Report_Current_Probe_status|G31]] - set up probe, in particular the Z height at which the probe triggers; note the firmware supports multiple probes, so you must run M558 first to specify which one.
* [[Gcode#Section_G32_Probe_Z_and_calculate_Z_plane|G32]] - run a full autoprobe (that is, execute bed.g or uses the matrix defined by M557)
* [[Gcode#Section_G92_Set_Position|G92]] - redefine coordinates so that current position is zero (or values specified)
* [[Gcode#Section_M114_Get_Current_Position|M114]] - report current position.
* [[Gcode#Section_M557_Set_Z_probe_point_or_define_probing_grid|M557]] - Set Z probe point or define probing grid.
* [[Gcode#Section_M558_Set_Z_probe_type|M558]] - set probe type (e.g. analog); also select which probe to use, so run this early in the setup process
* [[Gcode#Section_M561_Set_Identity_Transform|M561]] - clear all autocalibration or G92 settings
* [[Gcode#Section_M665_Set_delta_configuration|M665]] - set delta configuration; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values
* [[Gcode#Section_M666_Set_delta_endstop_adjustment|M666]] - set delta endstop adjustment; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values

== Obsolete information ==
On a Delta printer, you can if you wish use G32 to perform auto calibration[[Calibrating_a_delta_printer|auto calibration]] followed by G29 to compensate for any residual bed height errors. On a Cartesian or CoreXY printer you can use G32 bed probing for leadscrew adjustment[[Bed levelling using multiple independent Z motors]], followed by G29 probing to do bed compensation.

== Probing-related G-code ==

* [[Gcode#Section_G30_Single_Z_Probe|G30]] - run a single probe.
* [[Gcode#Section_G31_Set_or_Report_Current_Probe_status|G31]] - set up probe, in particular the Z height at which the probe triggers; note the firmware supports multiple probes, so you must run M558 first to specify which one.
* [[Gcode#Section_G32_Probe_Z_and_calculate_Z_plane|G32]] - run a full autoprobe (that is, execute bed.g or uses the matrix defined by M557)
* [[Gcode#Section_G92_Set_Position|G92]] - redefine coordinates so that current position is zero (or values specified)
* [[Gcode#Section_M114_Get_Current_Position|M114]] - report current position.
* [[Gcode#Section_M557_Set_Z_probe_point_or_define_probing_grid|M557]] - Set Z probe point or define probing grid.
* [[Gcode#Section_M558_Set_Z_probe_type|M558]] - set probe type (e.g. analog); also select which probe to use, so run this early in the setup process
* [[Gcode#Section_M561_Set_Identity_Transform|M561]] - clear all autocalibration or G92 settings
* [[Gcode#Section_M665_Set_delta_configuration|M665]] - set delta configuration; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values
* [[Gcode#Section_M666_Set_delta_endstop_adjustment|M666]] - set delta endstop adjustment; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values

== Obsolete information ==
 
'''The remainder of this page describes G32 bed probing for bed compensation, which is no longer recommended. For G29 bed probing, see [[Using mesh bed compensation|Using mesh bed compensation]].'''
 
==See:

* '''[[Calibrating_a_delta_printer|Delta calibration]]'''

* '''[[Bed levelling using multiple independent Z motors]]'''

* '''[[Using mesh bed compensation]]'''

Rather than following the rest of this guide.

===
Setting up the probe points for G32 probing =====
==See:

* '''[[Calibrating_a_delta_printer|Delta calibration]]'''

* '''[[Bed levelling using multiple independent Z motors]]'''

* '''[[Using mesh bed compensation]]'''

Rather than following the rest of this guide.

===
Setting up the probe points for G32 probing =====
 
The autoprobing command, G32, probes the bed at some number of points and then tells the printer to do a least-squares fit for some of the parameters. The set of points and number of parameters is set in the file bed.g. The easiest way to make such a file is with [http://escher3d.com/pages/wizards/wizardbed.php].
Some sensors produce height errors that depend on the (X,Y) position. For example, a slightly misaligned delta robot will have an effector platform that tilts as it moves around the bed; if the sensor is not exactly at the same place as the nozzle, this will slightly change the height readings. If this is a problem with your printer, you can provide a height correction to each probe point with the H parameter. These would be determined by manually measuring the right height (perhaps with the paper test), probing at the same position, and recording the difference.
 
===== Setting probe parameters =====
===== Setting probe parameters =====
 
The most important probe parameter is the height of the nozzle when the probe triggers. This will determine the height of the first layer. It is set with the G31 command, usually placed in your config.g. The process of determining this value is fairly straightforward:
* If, in later prints, you find the first layer is too thick or too thin, adjust the value in your G31 command
 
===== Sensor offset adjustment (H parameter in bed and bed_report macro) =====
===== Sensor offset adjustment (H parameter in bed and bed_report macro) =====
 
'''''Note: the best way to avoide the effect of trigger height varying across the bed is to use a nozzle contact sensor such as the [[Smart effector and carriage adapters for delta printer|Smart Effector]]'''''
'''''Note: the best way to avoide the effect of trigger height varying across the bed is to use a nozzle contact sensor such as the [[Smart effector and carriage adapters for delta printer|Smart Effector]]'''''
 
Mechanical sensors (FSR and other switches types) have offsets which may vary with the head position, especially on delta printers. The offset shall be adjusted for each probe point.
 
Note that all macros could be run after being loaded on the SD card, without rebooting or restarting.
 
== Probing-related G-code ==
 
* [[Gcode#Section_G30_Single_Z_Probe|G30]] - run a single probe.
* [[Gcode#Section_G31_Set_or_Report_Current_Probe_status|G31]] - set up probe, in particular the Z height at which the probe triggers; note the firmware supports multiple probes, so you must run M558 first to specify which one.
* [[Gcode#Section_G32_Probe_Z_and_calculate_Z_plane|G32]] - run a full autoprobe (that is, execute bed.g or uses the matrix defined by M557)
* [[Gcode#Section_G92_Set_Position|G92]] - redefine coordinates so that current position is zero (or values specified)
* [[Gcode#Section_M114_Get_Current_Position|M114]] - report current position.
* [[Gcode#Section_M557_Set_Z_probe_point_or_define_probing_grid|M557]] - Set Z probe point or define probing grid.
* [[Gcode#Section_M558_Set_Z_probe_type|M558]] - set probe type (e.g. analog); also select which probe to use, so run this early in the setup process
* [[Gcode#Section_M561_Set_Identity_Transform|M561]] - clear all autocalibration or G92 settings
* [[Gcode#Section_M665_Set_delta_configuration|M665]] - set delta configuration; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values
* [[Gcode#Section_M666_Set_delta_endstop_adjustment|M666]] - set delta endstop adjustment; this includes the manual calibration values that are the starting point for autocalibration. You can also use this command after an autoprobe to see the fitted values

To undo the changes made by this version, click 'Revert Changes.' This will automatically restore the previous version of this guide.

Revert Changes