# This file contains common pin mappings for the BigTreeTech SKR 3. # This board can ship with one of two chips, STM32H743 or STM32H723. # To use this config, during "make menuconfig" enable "low-level # options", "STM32H743" or "STM32H723", "128KiB bootloader", and "25MHz clock". # # SensorLess Homing ------- # https://www.klipper3d.org/TMC_Drivers.html?h=sensorless # https://klipper.discourse.group/t/sensorless-homing-macro-suggested-in-klipper-docs/896/4 # https://www.reddit.com/r/BIGTREETECH/comments/wmkg4y/skr_3_ez_sensorless_homing/ # - Board: put DIAG jumper for X-stepper , see user manual SKR 3 EZ # - Unplug: endstop for X # - repeat for Y # # See docs/Config_Reference.md for a description of parameters. [mcu] serial: /dev/ttyACM0 [printer] kinematics: corexy max_velocity: 300 max_accel: 3000 max_z_velocity: 25 max_z_accel: 100 square_corner_velocity: 5.0 [stepper_x] step_pin: PD4 dir_pin: PD3 enable_pin: !PD6 microsteps: 64 full_steps_per_rotation:400 #set to 400 for 0.9 degree stepper rotation_distance: 39.5475 # endstop_pin: ^!PC1 # Not with SensorlessHoming endstop_pin = tmc2209_stepper_x:virtual_endstop homing_speed: 20 homing_retract_dist: 0 position_endstop: -35 position_min: -35 position_max: 224 [stepper_y] step_pin: PA15 dir_pin: PA8 enable_pin: !PD1 microsteps: 64 full_steps_per_rotation:400 #set to 400 for 0.9 degree stepper rotation_distance: 39.5475 # endstop_pin: ^!PC3 # Not with SensorlessHoming endstop_pin = tmc2209_stepper_y:virtual_endstop homing_speed: 20 homing_retract_dist: 0 position_endstop: 0 position_min: 0 position_max: 360 [stepper_z] step_pin: PE2 dir_pin: PE3 enable_pin: !PE0 microsteps: 64 full_steps_per_rotation:400 #set to 400 for 0.9 degree stepper rotation_distance: 1.4982 #1.5063 and layers not attached ## endstop_pin: ^!PC0 # Not with BlTouch, required when using a switch as stop. endstop_pin: probe:z_virtual_endstop ## position_endstop: 0 # Not with BlTouch, required When using a switch as stop. position_min: -6 position_max: 400 [extruder] step_pin: PD15 dir_pin: !PD14 enable_pin: !PC7 microsteps: 16 full_steps_per_rotation:200 #set to 200 for 1.4 degree stepper rotation_distance: 7.837500 nozzle_diameter: 0.400 filament_diameter: 1.750 max_extrude_only_distance: 101 heater_pin: PB3 sensor_type: ATC Semitec 104GT-2 sensor_pin: PA2 control: pid pid_Kp: 17.104 pid_Ki: 1.086 pid_Kd: 67.347 min_temp: 0 max_temp: 275 #[extruder1] #step_pin: PD11 #dir_pin: PD10 #enable_pin: !PD13 #heater_pin: PB4 #sensor_pin: PA3 #... [heater_bed] heater_pin: PD7 sensor_type: Generic 3950 sensor_pin: PA1 control: watermark max_delta: 1.0 min_temp: 0 max_temp: 110 [fan] pin: PB7 #[heater_fan fan1] #pin: PB6 #[heater_fan fan2] #pin: PB5 ###################################################################### # "RepRapDiscount 128x64 Full Graphic Smart Controller" type displays ###################################################################### [display] lcd_type: st7920 cs_pin: EXP1_4 sclk_pin: EXP1_5 sid_pin: EXP1_3 encoder_pins: ^EXP2_3, ^EXP2_5 click_pin: ^!EXP1_2 #kill_pin: ^!EXP2_8 [output_pin beeper] pin: EXP1_1 ######################################## # EXP1 / EXP2 (display) pins ######################################## [board_pins] aliases: # EXP1 header EXP1_1=PC5, EXP1_3=PB1, EXP1_5=PE9, EXP1_7=PE11, EXP1_9=, EXP1_2=PB0, EXP1_4=PE8, EXP1_6=PE10, EXP1_8=PE12, EXP1_10=<5V>, # EXP2 header EXP2_1=PA6, EXP2_3=PE7, EXP2_5=PB2, EXP2_7=PC4, EXP2_9=, EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=, EXP2_10= ######################################## # TMC2209 configuration ######################################## [tmc2209 stepper_x] uart_pin: PD5 run_current: 0.800 diag_pin: ^PC1 driver_SGTHRS: 105 # max 255 [tmc2209 stepper_y] uart_pin: PD0 run_current: 0.800 diag_pin: ^PC3 driver_SGTHRS: 105 # max 255 [tmc2209 stepper_z] uart_pin: PE1 run_current: 0.800 diag_pin: [tmc2209 extruder] uart_pin: PC6 run_current: 0.800 diag_pin: #[tmc2209 extruder1] #uart_pin: PD12 #run_current: 0.600 #diag_pin: [gcode_macro SENSORLESS_HOME_X] gcode: {% set HOME_CUR = 0.700 %} {% set driver_config = printer.configfile.settings['tmc2209 stepper_x'] %} {% set RUN_CUR = driver_config.run_current %} # Set current for sensorless homing SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CUR} # Pause to ensure driver stall flag is clear G4 P2000 # Home G28 X0 # Move away G90 G1 X+5 F1200 # Set current during print SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CUR} [gcode_macro SENSORLESS_HOME_Y] gcode: {% set HOME_CUR = 0.700 %} {% set driver_config = printer.configfile.settings['tmc2209 stepper_y'] %} {% set RUN_CUR = driver_config.run_current %} # Set current for sensorless homing SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CUR} # Pause to ensure driver stall flag is clear G4 P2000 # Home G28 Y0 # Move away, G90 G1 Y+5 F1200 # Set current during print SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CUR}