endstop_phase: Move endstop phase homing code to new "extras" module

Move the endstop phase tracking code from stepper.py to a new
extras/endstop_phase.py module.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2018-10-09 21:36:02 -04:00
parent 216905ceca
commit a2df01b88e
5 changed files with 114 additions and 89 deletions

View file

@ -322,33 +322,34 @@
# axis is triggered.
# Stepper phase adjusted endstops. The following additional parameters
# may be added to a stepper axis definition to improve the accuracy of
# endstop switches.
#[stepper_z]
#homing_stepper_phases:
# One may set this to the number of phases of the stepper motor
# driver (which is the number of micro-steps multiplied by
# four). This parameter must be provided if using stepper phase
# adjustments.
#homing_endstop_accuracy: 0.200
# Stepper phase adjusted endstops. To use this feature, define a
# config section with an "endstop_phase" prefix followed by the name
# of the corresponding stepper config section (for example,
# "[endstop_phase stepper_z]"). This feature can improve the accuracy
# of endstop switches.
#[endstop_phase stepper_z]
#phases:
# Set this to the number of phases of the given stepper motor driver
# (which is the number of micro-steps multiplied by four). This
# parameter must be provided.
#endstop_accuracy: 0.200
# Sets the expected accuracy (in mm) of the endstop. This represents
# the maximum error distance the endstop may trigger (eg, if an
# endstop may occasionally trigger 100um early or up to 100um late
# then set this to 0.200 for 200um). The default is
# homing_stepper_phases*step_distance.
#homing_endstop_phase:
# phases*step_distance.
#endstop_phase:
# This specifies the phase of the stepper motor driver to expect
# when hitting the endstop. Only set this value if one is sure the
# stepper motor driver is reset every time the mcu is reset. If this
# is not set, then the stepper phase will be detected on the first
# home and that phase will be used on all subsequent homes.
#homing_endstop_align_zero: False
# If true then the code will arrange for the zero position on the
# axis to occur at a full step on the stepper motor. (If used on the
# Z axis and the print layer height is a multiple of a full step
# distance then every layer will occur on a full step.) The default
# is False.
#endstop_align_zero: False
# If true then the position_endstop of the axis will effectively be
# modified so that the zero position for the axis occurs at a full
# step on the stepper motor. (If used on the Z axis and the print
# layer height is a multiple of a full step distance then every
# layer will occur on a full step.) The default is False.
# Heater cooling fans (one may define any number of sections with a