// How To Setup Up Sensorless Homing In Klipper // GoldenJaguar392
ฝัง
- เผยแพร่เมื่อ 2 มิ.ย. 2024
- Hey guy! Its Jprince (GoldenJaguar392)
In Today's video I am going to show you how to enable sensorless homing In klipper firmware
Klipper sensorless Homing page links
www.klipper3d.org/TMC_Drivers...
Royalty Free Music from Bensound
BE SURE TO HIT THAT BELL 🔔!!
To See What I Ordered To Complete My Builds Visit the Links Below!!
**My 1st Voron Build.....
&
**Voron Legacy Build Parts:
&
**Pruz ender pro build links
&
**Ender 3 Pro Switch-Wire Conversion
&
**Ender 3 X Carriage Plate Link
*SEE OUR PAGE Link*
www.amazon.com/shop/goldenjag...
OTHER LINKS BELOW!!
Y belt tensioner
github.com/walttriano/VoronUs...
Linear Rail Bed Adapter
www.thingiverse.com/thing:458...
Voron Toolhead Mod For Ender 3 Pro
www.thingiverse.com/thing:474...
_________________________________________________________________________
I'm here to help so if you have ideas for videos please message me or comment below.
_________________________________________________________________________
Be sure to HIT THAT BELL🔔! & Subscribe to get the latest of PCS, All Things 3-D, and Cars👍.
_______________________________________________________________________
📢Please subscribe and follow: (Visit us on FB, YT, and 📢IG!)
🤓FAST CARS, 3-D Printers & Tech Talks, and PC Mods, and More!!!! 🤓
YT/IG/FB: (goldenjagaur392) / goldenjaguar392
📢HEY, GUYS! COME CHECK OUT MY WIVES CHANNEL!!!📢
💕 For the crafters! Check Out! DIY, HAULS, AND CRAFTS.....💕
YT/IG/FB: (KraftsbyJazzy) / kraftsbyjazzy - วิทยาศาสตร์และเทคโนโลยี
Unbelievable how much easier this just made my life. Thank you!
Another great video on something that has intimidated me for a long time jag you are great at explaining how to do stuff
Thank you 🙏🏿 this mean a lot!!.
Thank you! This simplified the process for me and helped me get this going on the first try. Been intimidated by it just reading the klipper docs. This explanation was WAY better.
Seriously, thank you.
Thank you happy I was able to help ☺️
Finally a video (actually it was 2) that is easy to follow and work along. I have not counted how many I had to go through to find this channel, but it mos def were more than a few. Thank you so much, I am in the process of starting the homing, i.E. the last missing piece (before, when I tried after watching the 1st video, it rammed into the wall)
I’m happy my videos was able to help.
Thank you, your video always have amazing explanations
Thank you bro!
Hi, thank you very much for the video. I'm from Brazil and I loved your didactics, very detailed for inexperienced people like me. +1 sub
great video, explained really well easy to follow , keep up the great work 👍
Glad you liked it!
Man! you are doing really great I have learned a lot from your videos
Thank you!! 🙏🏿
nice one! thank you!
Yo u doing it man ur the man great video dude keep them coming
Thank you!
thank you, worked perfect for me :)
You’re welcome
Pretty helpful video!
Glad it was helpful!
Have you tried adding a homing macro on any of your printers yet? The Voron printers use a homing macro that lowers the driver current on the motors, and it applies some other changes to the TMC drivers, which allows for the homing retract to work properly without the endstop error being triggered when it uses your standard TMC driver settings in the config. I am looking for a good tutorial on how to do this with TMC2209, but I cant seem to find any.
Thanks mate for the tutorial. Works fine on my X stepper, but with my Z still is not working! I need to do different configuration?
sensorless homing is not recommended for z axis.
Do you have to cut diag pins for Z axis and E axis drivers? I remember having to do this while configuring marlin way back..
also, do you need to specify diag pin and driver_SGTHRS for all axis that should have sensorless homing?
For example in the video the config does not contain diag_pin and driver_SGTHRS in stepper Y.
you with new board like skr 3 skr 2 and skr octopus board you don't need to cut the pin any longer..a jumper is used instead to activate sensorless home on the axis that It's needed on.. Yes you will need to specify a diag pin which is basically the endstop pin of the axis and driver_SGTHRS for sensitivity. for axes that are not using sensorless homing you wouldn't need any of the latter.
When doing the sensorless homing, is it just X that's sensorless? Currently building my 2.4r2 and learning as I go.
Nice, i will try this on my printer How does it work in a heated (60 C) chamber?
Hello. Why did you use stealthchop_threshold: 1? Looks like docs says it should be stealthchop_threshold: 0 to disable stealthchop
Very goog. Thanks
You’re welcome
lets setup senseless homing !!! great content you have helped me a ton one question i have is do you know how i can add a slider to fans in the mainsail console
you're welcome...which fan ?
Currently I am using spread cycle but do I need to adjust jumpers on board beside these tips? (fluiddpi +skr 1.4 turbo
No you shouldn’t need to for sensorless homing, you only adjust the jumpers to config uart mode communication for the drivers.
@@GoldenJaguar3D Thank you bro after my print is done I will try right away, I am sick of my endstop spring being to pop out
do i need to cut the pin on the stepper drivers or is that not needed in klipper?
yes you need the pin on the stepper driver, If you cut it sensorless homing won't work.
Hi, Thank you for the video. Very well explained. It would be much better though without that annoying background tune.
Hi I have followed your tutorial, even copying your settings from comment below and still not working, it is just crushing into side of printer ... Do I need to change something on stepper? Cutting/bending pin or something? On marlin with sensorless they worked fine (but to do so i had to cut of one pin from driver, is it a case?)
Hey sorry to hear about this man, but to answer you’re question, no you need the Diag pin in order to use sensorless homing, if you cut it you can’t use sensorless homing and will need to use a limit switch. So make sure that the driver your using have the diag pin intact and supports sensorless homing.
The file he posted below DOES NOT have any sensorless homing in it.
Okay, maybe stupid question here about the diag pin. I think you said your setup is for a SKR 1.4 and your diag pin is shown as P1.29 which seems to be the x-endstop pin. If sensorless homing means getting rid of the physical x- (and y-) endstops, why is it required to include the diag pin? Wouldn't that pin have nothing connected to it? I ask because I think I read somewhere about connecting pins with jumpers and that's kind of where I got lost. Otherwise I understand the configuration, makes good sense. Appreciate any response. I feel like you're going to answer and I'm going to immediately realize whatever it is my brain just isn't grasping right now.
Well the diag pin the located on the 2209 driver itself, it purpose is to detect stepper motor stall, in the case of sensorless homing where motor hits the side of the gantry. in your printer.cfg you're telling firmware that you're using a virtual endstop, just like you would for a z probe, but in this case its a pin on the driver (2209) itself. If you don't set a pin in the config. The firmware won't know where the senor is, I hope this helps. Pin P1.29 can be used as a physical or virtual endstop.
@@GoldenJaguar3D I think I get it. The diag pin is on the driver and I'm telling the firmware to take that signal and treat it as it would a signal coming from Pin P1.29 (aka, the pin that would normally be a physical endstop) so when the diag pin detects a stall, the firmware takes that stall and calls for the motor to stop. Hence, virtual endstop. I think?
@@phildawgydawg exactly you got it!!
Thank you for your good video, ı made your settings then X step working good but when ı make same settings for Y mainsail give me an eror, "pin virtual_endstop used multiple times in config" how can ı do it for Y too ?
thank you for your help
It’s sound like you have the same pin duplicated in your config make sure to remove the pin from your y stepper endstop since you’re going to be using it as a diag pin for your y stepper driver.
@@GoldenJaguar3D sorry can you explane more clear ı am not full control on this job :)
Works great for the X but just crashes into the Y no matter the sensitivity. Even tried swapping drivers. Any ideas?
what board are you using?
@@GoldenJaguar3D fysetc spider v1.1. Jumped the xy diag, removed the endstop wiring, and definitely using the right pin designations for the diag. If I switch the diag pin to have a ^ in front then the Y wont move at all
actually it says "By default, Klipper places the TMC drivers in “spreadcycle” mode." so spread cycle is enabled by default. you don't need to set it to 1 or 0.
you correct the website says that, but if you look it say to enable stealth_chop ad 99999 to the config the default config atleast for the skr if you go the driver section show 99999 which enables stealth_chop and not spread cycle mode, so it could some to report.
@@GoldenJaguar3D Current docs say to remove it:
> It is recommended to always use "spreadcycle" mode (by not specifying stealthchop_threshold) or to always use "stealthchop" mode (by setting stealthchop_threshold to 999999).
@@GoldenJaguar3D yeah depends on the config u downlaoded
Btw homie, stealthchop can actually lower your torque, especially if used in combo with pressure advance and raise heat while reducing that torque. Idk that you want to run stealth chop if you want max torque homie g slice biscuit
Love your videos, could you post your config so i could take a look please ?
sure I'll will uploading another video soon, I post a link to my one drive with all my printer configs.
@@GoldenJaguar3D hey thanks for the video! did you happen to upload your config file anywhere? I tried looking through your other videos but couldn't find it.
Hi bro, am getting an error saying -
position_endstop in section 'stepper_x' must be between position_min and position_max.
Please help me am not able to figure it out
this what I got for my axis
[stepper_x]
step_pin: P2.2
dir_pin: P2.6
enable_pin: !P2.1
microsteps: 16
rotation_distance: 40
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: 300
position_max: 300
homing_speed: 50
homing_retract_dist: 0
@@GoldenJaguar3D glad u replied fast... Anyway i corrected it ..now its working fine😊
@@krishnankv7894 awesome 👏🏿
I'm having troubles just to get mine to home and I've gone every which way with the sensitivity and it still does not work?
Sorry about this man, did you make your driver supports senorless homing
@@GoldenJaguar3D I did it's the tmc2209s
@@hunterfisher2304 what brand is it? also what board are you using?
@@GoldenJaguar3D Im using the bigtreetech skr 1.3 and the bigtreetech tmc 2209 v1.2 stepper driver's
@@hunterfisher2304 ok take a look at this video, make sure you didn't cut the diag pin else it won't work. th-cam.com/video/zZYd0aYtThY/w-d-xo.html
Can you do this for z axis?
yes you can but generally its not recommended for accuracy, and could cause damage to your printer depending implementation.
can you share your printer config? I'm having problems getting things working.
Sure thing, I will when I get off work.
@@GoldenJaguar3D thanks I appreciate it, i'm upgrading the tronxy x5sa pro
@@hankb7725 here you go as promise, [virtual_sdcard]
path: ~/gcode_files
[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
default_parameter_X: 1 #edit to your park position
default_parameter_Y: 320 #edit to your park position
default_parameter_Z: 10 #edit to your park position
default_parameter_E: 1 #edit to your retract length
gcode:
SAVE_GCODE_STATE NAME=PAUSE_state
BASE_PAUSE
G91
G1 E-{E} F2100
G1 Z{Z}
G90
G1 X{X} Y{Y} F6000
[gcode_macro RESUME]
rename_existing: BASE_RESUME
default_parameter_E: 1 #edit to your retract length
gcode:
G91
G1 E{E} F2100
G90
RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1
BASE_RESUME
[gcode_macro CANCEL_PRINT]
rename_existing: BASE_CANCEL_PRINT
gcode:
TURN_OFF_HEATERS
CLEAR_PAUSE
SDCARD_RESET_FILE
BASE_CANCEL_PRINT
[stepper_x]
step_pin: P2.2
dir_pin: !P2.6
enable_pin: !P2.1
step_distance: .01
endstop_pin: P1.29
position_endstop: 0
position_max: 320
homing_speed: 100
[stepper_y]
step_pin: P0.19
dir_pin: !P0.20
enable_pin: !P2.8
step_distance: .01
endstop_pin: !P1.28
position_endstop: 0
position_max: 320
homing_speed: 100
[stepper_z]
step_pin: P0.22
dir_pin: !P2.11
enable_pin: !P0.21
step_distance: .0025
endstop_pin: probe:z_virtual_endstop
position_min = -3
position_max: 380
homing_speed: 50
[stepper_z1]
step_pin: P1.15
dir_pin: !P1.14
enable_pin: !P1.16
step_distance: .0025
# Define a probe
[bltouch]
sensor_pin:P1.27
control_pin:P2.0
pin_up_reports_not_triggered: true
pin_up_touch_mode_reports_triggered: false
speed:5.0
pin_move_time: 0.680
x_offset: 0
y_offset: 0
z_offset: 1.965
samples: 3
samples_result: median
sample_retract_dist: 3.0
# The safe_z_home section modifies the default G28 behavior
[safe_z_home]
home_xy_position: 189,168
speed: 250
z_hop: 15
z_hop_speed: 50
[idle_timeout]
timeout: 2500
[bed_mesh]
speed: 250
horizontal_move_z: 5
mesh_min: 50,50
mesh_max: 310,290
algorithm: bicubic
fade_start: 1
fade_end: 5
move_check_distance: 3
probe_count: 4,4
mesh_pps: 4,4
bicubic_tension: 0.8
split_delta_z: .025
relative_reference_index: 7
[input_shaper]
#shaper_freq_x: 46.51
#shaper_freq_y: 55.86
shaper_type: mzv
[gcode_arcs]
resolution: 0.05
[display_status]
[z_tilt]
z_positions: 318, 168
59, 168
points: 318,168
59, 168
speed: 300
horizontal_move_z: 5
retries: 20
retry_tolerance: .0025
[bed_screws]
screw1: 154,11
screw2: 2,318
screw3: 315,318
[screws_tilt_adjust]
screw1: 49,318
screw1_name: rear left screw
screw2: 318,318
screw2_name: rear right screw
screw3: 183,31
screw3_name: front screw
horizontal_move_z: 5
speed: 300
screw_thread: CCW-M3
[idle_timeout]
timeout: 2500
[extruder]
step_pin: P2.13
dir_pin: !P0.11
enable_pin: !P2.12
step_distance: 0.0023148148148148
nozzle_diameter: 0.400
pressure_advance: 0.0676
filament_diameter: 1.750
max_extrude_only_distance: 200.0
heater_pin: P2.7
sensor_type: NTC 100K beta 3950
sensor_pin: P0.24
#control: pid
#pid_Kp: 22.2
#pid_Ki: 1.08
#pid_Kd: 114
min_temp: 0
max_temp: 300
[heater_bed]
heater_pin: P2.5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: P0.25
#control: pid
#pid_Kp: 54.027
#pid_Ki: 0.770
#pid_Kd: 948.182
min_temp: 0
max_power: 0.8
max_temp: 150
pwm_cycle_time: 0.0166
######################################################################
# Filament Change
######################################################################
# M600: Filament Change. This macro will pause the printer, move the
# tool to the change position, and retract the filament 50mm. Adjust
# the retraction settings for your own extruder. After filament has
# been changed, the print can be resumed from its previous position
# with the "RESUME" gcode.
[pause_resume]
[gcode_macro M600]
default_parameter_X: 1
default_parameter_Y: 320
default_parameter_Z: 10
gcode:
SAVE_GCODE_STATE NAME=M600_state
PAUSE
G91
G1 E-.8 F2700
G1 Z{Z}
G90
G1 X{X} Y{Y} F3000
G91
G1 E-100 F1000
RESTORE_GCODE_STATE NAME=M600_state
[fan]
pin: P2.3
[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1769_07B0FF0FA69869AFB04A415EC72000F5-if00
[printer]
kinematics: corexy
max_velocity: 300
max_accel: 10000
max_accel_to_decel: 1000
max_z_velocity: 50
max_z_accel: 100
########################################
# TMC2208 configuration
########################################
[tmc2209 stepper_x]
uart_pin: P1.10
microsteps: 16
run_current: 0.950
hold_current: 0.600
stealthchop_threshold: 1
[tmc2209 stepper_y]
uart_pin: P1.9
microsteps: 16
run_current: 0.950
hold_current: 0.600
stealthchop_threshold: 1
[tmc2209 stepper_z]
uart_pin: P1.8
microsteps: 16
run_current: 0.800
hold_current: 0.500
stealthchop_threshold: 1
[tmc2209 extruder]
uart_pin: P1.4
microsteps: 16
run_current: 0.550
hold_current: 0.400
stealthchop_threshold: 1
[tmc2209 stepper_z1]
uart_pin: P1.1
microsteps: 16
run_current: 0.800
hold_current: 0.500
stealthchop_threshold: 1
########################################
# EXP1 / EXP2 (display) pins
########################################
[board_pins]
aliases:
# EXP1 header
EXP1_1=P1.30, EXP1_3=P1.18, EXP1_5=P1.20, EXP1_7=P1.22, EXP1_9=,
EXP1_2=P0.28, EXP1_4=P1.19, EXP1_6=P1.21, EXP1_8=P1.23, EXP1_10=,
# EXP2 header
EXP2_1=P0.17, EXP2_3=P3.26, EXP2_5=P3.25, EXP2_7=P1.31, EXP2_9=,
EXP2_2=P0.15, EXP2_4=P0.16, EXP2_6=P0.18, EXP2_8=, EXP2_10=
# Pins EXP2_1, EXP2_6, EXP2_2 are also MISO, MOSI, SCK of bus "ssp0"
[display]
lcd_type: st7920
cs_pin: P1.19
sclk_pin: P1.20
sid_pin: P1.18
encoder_pins: ^P3.26, ^P3.25
click_pin: ^!P0.28
[output_pin beeper]
pin: EXP1_1
@@GoldenJaguar3D awesome man. thanks! I appreciate it. yeah i have not been able to get the inductive bed leveling sensor working with the skr 1.4 turbo. I'll check your config to see what i'm missing.
hey, was trying to get this going on a octopus 1.1 but i need to bring the print head back to middle of bed after each axis homes. I tried a macro but its not working. any ideas on how to do it? i tried the klipper example for x but after it homes x it just goes in a diagonal move and then tries to adjust bed, never even attempted to home. any ideas?
Hello
GoldenJaguar3D, could you pass your printer.cfg to check the settings? I'm having a problem that I can't do the home correctly, if you can pass it, I'd appreciate it.. a big hug.
aw sorry for super late reply buddy didn't even see you're comment till now
[stepper_x]
step_pin: gpio11
dir_pin: !gpio10
enable_pin: !gpio12
microsteps: 16
rotation_distance: 32
full_steps_per_rotation: 200
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: 300
position_max: 300
homing_speed: 50
homing_retract_dist: 0
[tmc2209 stepper_x]
uart_pin: gpio9
tx_pin: gpio8
interpolate: false
uart_address: 0
run_current: 1.2
diag_pin: ^gpio4
driver_SGTHRS: 130
stealthchop_threshold: 0
VERY GOOD YOUR VIDEO...
I NEED A VIDEO SENSOR LESS HOME FOR THE SKR 2B PRO BOARD PLEASE HELP ME I AM NOT ABLE TO CONFIGURE THE DRIVER PART
PARAMETERS;
DIAG_PIN,
TX_PIN , OF DRIVER TMC 2209
did you get this issue resolved!
great video but wow could you lower that intro slightly?!?!?!
Thank you...I've changed the intro in my newer videos I can't change in on this because it baked in already 🙂
my printer wouldn't move at all after this config ?
forgot to disconnect the old switches, all good now works great
glad you figured it out.
I recognize this music but I'm not gonna say from where 😅
You sure lol 😆
the music in the background is overbearing just so you know
yep I'm well aware of it.. I've been getting comments like yours now and then but this has been address thanks.