FYSETC / FYSETC-R4

3D printer/CNC/Laser cutting motherboard based on RP2040
9 stars 3 forks source link

sensorless homing #4

Open freasy opened 1 year ago

freasy commented 1 year ago

I cant get sensorless homing to work. What ever configuration i do, it doesnt work. different ^, ~, ! setups, does only change if it does nothing (not moving) or not stopping. If i change the sense register, it doesnt change the behaviour at all.

mmarub commented 1 year ago

try to close pins on board, near to XY drivers

zedic commented 1 year ago

I can not get Sensorless Homing to work either. I have a jumper on X-Diag JP4 and Y-Diag JP5. I have followed the directions at https://www.klipper3d.org/TMC_Drivers.html#configure-printercfg-for-sensorless-homing

SET_TMC_FIELD STEPPER=stepper_x FIELD=SGTHRS VALUE=255 G28 X0

This causes the stepper to crash into end stop and bang repeatedly. It does not stop. I have tried various homing speeds and SGTHRS values . No luck.

Here is my config.

[stepper_x]
step_pin: gpio3
dir_pin: gpio2
enable_pin: !gpio4
rotation_distance: 40
microsteps: 32
full_steps_per_rotation:
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: 0
position_max: 235
homing_speed: 20
homing_retract_dist: 0

[tmc2209 stepper_x]
uart_pin: gpio9
tx_pin: gpio8
uart_address: 0
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
diag_pin: ^gpio11
driver_SGTHRS: 255
GerogeFu commented 1 year ago

The point to enable the sensorless feature have 3 key parameters(run_current, hold_current and driver_SGTHRS) need to adjust

run_current: 1.2
hold_current: 1
stealthchop_threshold: 999999
diag_pin: ^gpiox
driver_SGTHRS: 20 #100 

It is part of the config

The current need to be big enough to have the motor bump effect, but can't be too big or it won't work too driver_SGTHRS is related to the load The three parameter need to have the most effective combination to make sensorless homing work, it take me days to make it work too

And the config homing_retract_dist in [stepper_x] section need to set to 0 Of course, you need to close the related axis diag jumper near the stepper

Actually, i don't like this feature, it is not that reliable

zedic commented 1 year ago

FYI: The Klipper documentation (https://www.klipper3d.org/TMC_Drivers.html) states when setting up sensorless homing: "Be sure that a hold_current setting is not specified in the TMC driver section of the config." and they also recommend using "spreadCycle" with microsteps instead of steatlhchop. But I tried these new settings anyway, and they still did not work for me. The stepper does not stop. The end stop pin is never tripped. I used (diag_pin: ^gpio11) not (diag_pin: ^gpiox). I'm guessing your using board_pins aliases but that is not shown in the config.

GerogeFu commented 1 year ago

It is piece of the config, gpiox represent gpio you want to set.

aeresov commented 1 year ago

I confirm it doesn't work for me either

diagbyte commented 1 year ago

Someone solved this problem.(DIY세상 in Korea Kakao Talk Open Chat Room) The problem is the value of uart_address. extruder : 0 x: 1 y: 2 z: 3 That's it.