TMC5160 PRO + Octopus 1.1 @24V Sensorless homing not working
Hello,
I have RR V-Core 3.1, Octopus 1.1 24V. I've been running sensorless homing on my XY TMC 2209 drivers with no problems. Now I've swapped XY drivers to BTT TMC5160 PRO (running @24V). The axes move as they should so the drivers should be working fine. BUT my Homing does not work and after "G28 X0" or calling the macro directly "HOME_X_SENSORLESS" I get this error:
Error evaluating 'gcode_macro HOME_X_SENSORLESS:gcode': jinja2.exceptions.UndefinedError: 'dict object' has no attribute 'tmc2209 stepper_x'
I tried searching this discord and found a german thread and a MK3S thread where the fix was a corrected homing macro that is the same as I have....
Any ideas what to do to get the sensorless homing working please?
I've done the following:
Hardware:
1. removed 2209's
2. added jumpers as per BTT guide for SPI mode (4 total per driver)
3. insert 5160's
4. left the two jumpers enabling sensorless homing in the two bottom right
Software: 1. I deleted everything from STEPPER MOTORS, DRIVERS & SPEED LIMITS, except for [include RatOS/printers/v-core-3/steppers.cfg] 2. I created override_steppers.cfg that is called in USER OVERRIDES section of printer.cfg. This cfg is a combination of [tmc5160] and [stepper] configs for X and Y and it copy pastes the Z steppers configs. 5160 diag0_pin is the same position as 2209 diag_pin acc to pin maps for drivers. See below for x stepper config.
Software: 1. I deleted everything from STEPPER MOTORS, DRIVERS & SPEED LIMITS, except for [include RatOS/printers/v-core-3/steppers.cfg] 2. I created override_steppers.cfg that is called in USER OVERRIDES section of printer.cfg. This cfg is a combination of [tmc5160] and [stepper] configs for X and Y and it copy pastes the Z steppers configs. 5160 diag0_pin is the same position as 2209 diag_pin acc to pin maps for drivers. See below for x stepper config.
10 Replies
This is the X stepper section of my override_steppers.cfg:
[tmc5160 stepper_x]
cs_pin: x_uart_pin
spi_software_mosi_pin: stepper_spi_mosi_pin
spi_software_miso_pin: stepper_spi_miso_pin
spi_software_sclk_pin: stepper_spi_sclk_pin
run_current: 1.6
driver_TBL: 2
driver_TOFF: 3
driver_HEND: 0
driver_HSTRT: 6
;added:
diag0_pin: ^!x_diag_pin
driver_SGT: -64 #-64 is the most sensitive for 5160 https://docs.vorondesign.com/community/howto/clee/sensorless_xy_homing.html#finding-the-right-stallguard-threshold
stealthchop_threshold: 0
interpolate: False
[stepper_x]
endstop_pin: tmc5160_stepper_x:virtual_endstop
position_endstop: -1
position_min: -1
position_max: 402
homing_retract_dist: 0
SENSORLESS_HOMING_X should be complete vanilla:
[gcode_macro HOME_X_SENSORLESS]
gcode:
{% set speed = printer["gcode_macro RatOS"].macro_travel_speed|float * 60 %}
{% set safe_home_x = printer["gcode_macro RatOS"].safe_home_x %}
{% if safe_home_x is not defined or safe_home_x|lower == 'middle' %}
{% set safe_home_x = printer.toolhead.axis_maximum.x / 2 %}
{% endif %}
M204 S1000 # Set homing acceleration (important!)
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={printer["gcode_macro RatOS"].sensorless_x_current}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={printer["gcode_macro RatOS"].sensorless_x_current}
G4 P500 # Wait for currents to settle
G28 X
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={printer.configfile.config["tmc2209 stepper_x"].run_current}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={printer.configfile.config["tmc2209 stepper_y"].run_current}
G4 P500 # Wait for currents to settle
# Restore acceleration
M204 S{printer.configfile.config.printer.max_accel}
as always, upload your full printer.cfg
apologies, here:
The override for steppers and drivers. It is called in [include myoverrides/_myoverrides.cfg]
:
ratos homing macro, it should be vanilla but to be sure:
SOLVED - I'll leave this here for anybody as blind as I am.
HOME_X_SENSORLESS and HOME_Y_SENSORLESS calls for [tmc2209 stepper_y]. You have to create your new HOME macros calling [TMC5160 stepper_x/y] and rewrite the RATOS ones.
That is correct
For now at least
5160 and high voltage is slightly outside the scope of RatOS so a minimum of customization is required. At least until the config is fully generated.
Oh, after fiddeling around I finally found someone with the same issue and apparently a solution. Could you elaborate your solution so far that I can also implement it? I am by far not new to 3D printing, but it is my first RatRig (200, 5160, Octopus Pro, 48V). @_niggurath probably also wants to read in 😉
other-emerald•2y ago
hey- tghis is my first time using Discord- i have trouble finding the right spot to post my question: where and how do i adjust the current for sensorless homing?
you should start a new post in #ratos-support - that way your information isn't confused with this post