TMC 5160
Basic Parameters
- Input Voltage: 12V-24V
- Maximum Current: 4.4A
- Suitable for: Marlin/Klipper/RRF firmware
- Drive Mode Support: TMC: SPI
- Stepper/direction interface with microPlyer interpolation
- Highest resolution is 256 microsteps
- Supports stealthChop2 silent operation and smooth motion
- Supports resonance suppression at mid-frequency resonance
- Supports spreadCycle high dynamic motor control chopper
- Supports dcStep load-dependent speed control
- Supports stallGuard2 high precision sensorless motor load detection
- Supports coolStep current control, up to 75% energy saving
Mainboard Jumper Explanation
- TMC5160 uses SPI jumpers
- The SPI pin for the FLY drive is the fourth pin from the left on the bottom. The CS pin is the SPI pin. If the motherboard does not have the corresponding pin position, SPI cannot be used.
TMC5160 Reference Configuration
dangerous
- The drive sampling resistor is
sense_resistor: 0.075
. Please do not set it incorrectly. - Only one of
spi_bus
andspi_software
can be selected.
SPI Mode Reference Configuration
[tmc5160 stepper_x]
cs_pin:
spi_bus:
# spi_software_mosi_pin:
# spi_software_miso_pin:
# spi_software_sclk_pin:
run_current: 1.0 # Motor operating current value
interpolate: False # Whether to enable 256 microstep interpolation (enable is True, disable is False)
sense_resistor: 0.075
stealthchop_threshold: 0
driver_DISS2G: 1
driver_DISS2VS: 1
Infinite Limit Usage Instructions
Infinite Position Usage Tip
- Infinite position usage requires occupying a limit port, normally IO1 is used for the first drive position, IO2 for the second drive position, and so on.
- When using infinite position, please make sure not to connect anything to the corresponding limit port.
- For some FLY motherboards, the drive ports are directly connected, please pay attention to whether DIAG is directly connected to the corresponding pin.
Infinite Limit Usage Tip
- This driver requires you to solder the DIAG pin yourself; otherwise, the infinite limit function cannot be used.
- The original
endstop_pin:
needs to be masked or deleted, and addendstop_pin: tmc5160_stepper_x:virtual_endstop
- After configuring
diag1_pin:
, the limit status refresh is not triggered. - You need to test a suitable value for
driver_SGT:
- Reference Configuration
[stepper_x]
# endstop_pin:PF3
endstop_pin: tmc5160_stepper_x:virtual_endstop
homing_retract_dist: 0 # Retract distance should not be changed to 0 as it may cause failed homing
[tmc5160 stepper_x]
diag1_pin: ^!
driver_SGT: 1
# After configuration, ensure that the limit status is not triggered
# This pin usually uses the "^" prefix to enable internal pull-up
# Sensitivity is related to belt tension and needs to be adjusted manually
# (Ensure that `driver_SGTHRS` is set to an appropriate sensitivity at the same time)