tmc5160: Add support for TMC5160 steppers (#1637)

Signed-off-by: Stephan Oelze <stephan.oelze@gmail.com>
This commit is contained in:
Stephan 2019-05-20 22:29:37 +02:00 committed by KevinOConnor
parent 777013da4f
commit de7ead1783
2 changed files with 516 additions and 0 deletions

View file

@ -1148,6 +1148,85 @@
# either 0 or one will lead to layout changes (the first bit of HDEC)
# is interpreted as the MSB of HSTRT in this case).
# Configure a TMC5160 stepper motor driver via SPI bus. To use this
# feature, define a config section with a "tmc5160" prefix followed by
# the name of the corresponding stepper config section (for example,
# "[tmc5160 stepper_x]").
# This block is an example with values that may be intersting.
# If you want to turn further, see trinamics documentation.
# Following registers are implemented with theyre fields:
# COOLCONF, CHOPCONF, DRV_STATUS, FACTORY_CONF, GCONF, GSTAT, IHOLD_IRUN, IOIN
# LOST_STEPS, MSCNT, MSCURACT, OTP_READ, PWM_AUTO, PWMCONF, PWM_SCALE, TPOWERDOWN,
# TPWMTHRS, TSTEP
#[tmc5160 stepper_x]
#cs_pin:
# The pin corresponding to the TMC5160 chip select line. This pin
# will be set to low at the start of SPI messages and raised to high
# after the message completes. This parameter must be provided.
#spi_bus:
#spi_speed:
#spi_software_sclk_pin:
#spi_software_mosi_pin:
#spi_software_miso_pin:
# These optional parameters allow one to customize the SPI settings
# used to communicate with the chip.
#microsteps:
# The number of microsteps to configure the driver to use. Valid
# values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must
# be provided.
#interpolate: True
# If true, enable step interpolation (the driver will internally
# step at a rate of 256 micro-steps). The default is True.
#run_current:
# The amount of current (in amps) to configure the driver to use
# during stepper movement. This parameter must be provided.
#hold_current:
# The amount of current (in amps) to configure the driver to use
# when the stepper is not moving. The default is to use the same
# value as run_current.
#sense_resistor: 0.075
# The resistance (in ohms) of the motor sense resistor. The default
# is 0.075 ohms.
#stealthchop_threshold: 0
# The velocity (in mm/s) to set the "stealthChop" threshold to. When
# set, "stealthChop" mode will be enabled if the stepper motor
# velocity is below this value. The default is 0, which disables
# "stealthChop" mode. Try to reexperience this with tmc5160.
# Values can be much higher than other tmcs.
#driver_IHOLDDELAY: 6
#driver_TPOWERDOWN: 10
#driver_TBL: 2
#driver_TOFF: 0
#driver_HEND: 2
#driver_HSTRT: 5
#driver_tpfd: 4
#driver_pwm_autoscale: True
#driver_pwm_autograd: True
#driver_pwm_freq: 1
#driver_PWM_GRAD: 0
#driver_PWM_OFS: 30
#driver_PWM_REG: 4
#driver_PWM_LIM: 12
#driver_SGT: 0
# Set the given register during the configuration of the TMC5160
# chip. This may be used to set custom motor parameters. The
# defaults for each parameter are next to the parameter name in the
# above list.
#diag1_pin:
# The micro-controller pin attached to the DIAG1 line of the TMC5160
# chip. Setting this creates a "tmc5160_stepper_x:virtual_endstop"
# virtual pin which may be used as the stepper's endstop_pin. Doing
# this enables "sensorless homing". (Be sure to also set driver_SGT
# to an appropriate sensitivity value.) The default is to not enable
# sensorless homing. See docs/Sensorless_Homing.md for details on how
# to configure this.
#driver_semin: 0
#driver_seup: 0
#driver_semax: 0
#driver_sedn: 0
#driver_seimin: 0
#driver_sfilt: 0
# Homing override. One may use this mechanism to run a series of
# g-code commands in place of a G28 found in the normal g-code input.
# This may be useful on printers that require a specific procedure to