# Rat Rig V-core 3 Klipper Config # Documentation: https://os.ratrig.com # 0) Sanity check and PID Tuning: https://www.klipper3d.org/Config_checks.html # 1) Pressure Advance: https://www.klipper3d.org/Pressure_Advance.html # 2) Skew Correction: https://www.klipper3d.org/Skew_Correction.html # 3) Resonance Compensation: https://www.klipper3d.org/Resonance_Compensation.html # Read more about klipper here: https://www.klipper3d.org/Overview.html [mcu] baud: 250000 serial: /dev/btt-octopus-11 [temperature_sensor Octopus] sensor_type: temperature_mcu min_temp: 0 max_temp: 100 [temperature_sensor raspberry_pi] sensor_type: temperature_host [adxl345] spi_bus: spi3 cs_pin: PA15 ############################################################################################################# ### BASE SETUP ############################################################################################################# [idle_timeout] gcode: {% if printer.webhooks.state|lower == 'ready' %} {% if printer.pause_resume.is_paused|lower == 'false' %} M117 Idle timeout reached TURN_OFF_HEATERS M84 {% endif %} {% endif %} # 2 hour timeout timeout: 7200 [skew_correction] [input_shaper] [virtual_sdcard] path: ~/gcode_files [display_status] [pause_resume] [force_move] enable_force_move: True [respond] [heater_bed] heater_pin: PA1 sensor_pin: PF3 sensor_type: Generic 3950 min_temp: 0 max_temp: 120 pwm_cycle_time: 0.02 # 50hz for european AC, to avoid flickering lights. [fan] pin: PA8 shutdown_speed: 1.0 [heater_fan toolhead_cooling_fan] pin: PE5 fan_speed: 1 [controller_fan controller_fan] pin: PD12 # These are only safeguards for first time users # Modify printer.cfg to tune acceleration. [printer] kinematics: corexy max_velocity: 300 max_accel: 1500 max_accel_to_decel: 750 max_z_velocity: 15 max_z_accel: 20 [printer] max_velocity: 150 max_accel: 500 max_accel_to_decel: 500 max_z_velocity: 15 max_z_accel: 20 ############################################################################################################# ### STEPPER MOTORS, DRIVERS & SPEED LIMITS ### Pick the drivers and stepper motors you're using. See the RatOS documentation for custom combinations. ############################################################################################################# [stepper_x] step_pin: PF13 dir_pin: PF12 enable_pin: !PF14 rotation_distance: 40 microsteps: 64 homing_speed: 50 homing_retract_dist: 0 [stepper_y] step_pin: PG0 dir_pin: PG1 enable_pin: !PF15 rotation_distance: 40 microsteps: 64 homing_speed: 50 homing_retract_dist: 0 [stepper_z] endstop_pin: probe:z_virtual_endstop step_pin: PC13 dir_pin: PF0 enable_pin: !PF1 rotation_distance: 4 microsteps: 64 position_min: -5 # Needed for z-offset calibration and tilt_adjust. homing_speed: 10 [stepper_z1] step_pin: PE2 dir_pin: PE3 enable_pin: !PD4 rotation_distance: 4 microsteps: 64 [stepper_z2] step_pin: PE6 dir_pin: PA14 enable_pin: !PE0 rotation_distance: 4 microsteps: 64 [extruder] step_pin: PF11 dir_pin: !PG3 enable_pin: !PG5 microsteps: 64 # UNCOOLED TMC 2209 + LDO-42STH48-2504AC [bed_mesh] speed: 200 [z_tilt] speed: 200 [printer] max_velocity: 200 max_accel: 1500 max_accel_to_decel: 750 max_z_velocity: 15 max_z_accel: 30 square_corner_velocity: 5 # Backwards compatibility [tmc2209 stepper_x] uart_pin: PC4 run_current: 1.1 stealthchop_threshold: 1 [tmc2209 stepper_y] uart_pin: y_uart_pin run_current: 1.1 stealthchop_threshold: 1 [tmc2209 extruder] uart_pin: PC6 run_current: 0.5 stealthchop_threshold: 0 [tmc2209 stepper_z] uart_pin: z0_uart_pin run_current: 1.0 stealthchop_threshold: 1 [tmc2209 stepper_z1] uart_pin: PE1 run_current: 1.1 stealthchop_threshold: 1 [tmc2209 stepper_z2] uart_pin: PD3 run_current: 1.0 stealthchop_threshold: 1 [tmc2209 stepper_x] uart_pin: PC4 run_current: 1.1 stealthchop_threshold: 1 [tmc2209 stepper_y] uart_pin: y_uart_pin run_current: 1.1 stealthchop_threshold: 1 [tmc2209 extruder] uart_pin: PC6 run_current: 0.5 stealthchop_threshold: 0 [tmc2209 stepper_z] uart_pin: z0_uart_pin run_current: 1.0 stealthchop_threshold: 1 [tmc2209 stepper_z1] uart_pin: PE1 run_current: 1.1 stealthchop_threshold: 1 [tmc2209 stepper_z2] uart_pin: PD3 run_current: 1.0 stealthchop_threshold: 1 [tmc2209 stepper_x] uart_pin: PC4 run_current: 1.1 driver_TBL: 1 driver_TOFF: 3 driver_HEND: 0 driver_HSTRT: 0 [tmc2209 stepper_y] uart_pin: y_uart_pin run_current: 1.1 driver_TBL: 1 driver_TOFF: 3 driver_HEND: 0 driver_HSTRT: 0 [tmc2209 stepper_z] uart_pin: z0_uart_pin run_current: 1.1 driver_TBL: 1 driver_TOFF: 3 driver_HEND: 0 driver_HSTRT: 0 [tmc2209 stepper_z1] uart_pin: PE1 run_current: 1.1 driver_TBL: 1 driver_TOFF: 3 driver_HEND: 0 driver_HSTRT: 0 [tmc2209 stepper_z2] uart_pin: PD3 run_current: 1.1 driver_TBL: 1 driver_TOFF: 3 driver_HEND: 0 driver_HSTRT: 0 ############################################################################################################# ### HOMING ### Pick your probe and endstops ############################################################################################################# # BL Touch [bltouch] sensor_pin: ^PB7 control_pin: PB6 speed: 7 pin_move_time: 0.675 sample_retract_dist: 10 pin_up_reports_not_triggered: True pin_up_touch_mode_reports_triggered: True x_offset: -28 y_offset: -13 # Physical endstops [stepper_x] endstop_pin: PG6 homing_retract_dist: 5.0 [stepper_y] endstop_pin: PG9 homing_positive_dir: true homing_retract_dist: 5.0 [safe_z_home] home_xy_position: 150,150 speed: 135 z_hop: 12 ############################################################################################################# ### PHYSICAL DIMENSIONS ### Pick your printer size ############################################################################################################# [stepper_x] position_max: 500 [stepper_y] position_max: 500 [stepper_z] position_max: 500 [bed_mesh] horizontal_move_z: 5 mesh_min: 20,20 mesh_max:465,460 probe_count: 7,7 fade_start: 1.0 fade_end: 10.0 mesh_pps: 2,2 algorithm: bicubic bicubic_tension: .2 [z_tilt] z_positions: 0,0 250,500 500,0 points: 60,60 285,470 460,60 horizontal_move_z: 12 retries: 10 retry_tolerance: 0.02 ############################################################################################################# ### extruder and hotend ############################################################################################################# [extruder] rotation_distance: 4.63 full_steps_per_rotation: 200 filament_diameter: 1.750 max_extrude_only_velocity: 60 max_extrude_only_distance: 200 nozzle_diameter: 0.4 heater_pin: PA2 sensor_type: ATC Semitec 104GT-2 sensor_pin: PF4 min_extrude_temp: 170 min_temp: 0 max_temp: 400 pressure_advance: 0.05 [tmc2209 extruder] run_current: 0.35 stealthchop_threshold: 0 [firmware_retraction] retract_speed: 60 unretract_extra_length: 0 unretract_speed: 60 retract_length: 0.5 ############################################################################################################# ### MACROS ############################################################################################################# [include macros.cfg] [include shell-macros.cfg] # Print macros. Call these from your slicer (custom g-code). # You can copy these to printer.cfg and modify them to your liking, or just use them as is. # Read more here: https://rat-rig.github.io/V-CoreOS/#/slicers [gcode_macro _START_PRINT_AFTER_HEATING_BED] gcode: {% if printer["gcode_macro RatOS"].preheat_extruder|lower == 'true' %} M117 Pre-heating extruder... # Wait for extruder to reach 150 so an inductive probe (if present) is at a predictable temp. # Also allows the bed heat to spread a little, and softens any plastic that might be stuck to the nozzle. M104 S150 TEMPERATURE_WAIT SENSOR=extruder MINIMUM=150 {% endif %} M117 Adjusting for tilt... # Adjust bed tilt Z_TILT_ADJUST M117 Rehoming after tilt adjustment... # Home again as Z will have changed after tilt adjustment and bed heating. G28 Z ############################################################################################################# ### MACRO CONFIGURATION ### Configure the behavior of RatOS macros ############################################################################################################# [gcode_macro RatOS] # Use absolute extrusion mode # Set to True to use relative extrusion mode variable_relative_extrusion: False # Wait for extruder to reach 150 so an inductive probe (if present) is at a predictable temp. # Also allows the bed heat to spread a little, and softens any plastic that might be stuck to the nozzle. # Set to False to disable variable_preheat_extruder: True # Calibrate the bed mesh in the START_PRINT macro. # Set to false to skip BED_MESH_CALIBRATE, it will still load the BED_MESH # with the name "ratos", be sure to save your bed_mesh profile with that name. # or override the _START_PRINT_BED_MESH macro to implement your own mesh handling logic. variable_calibrate_bed_mesh: True # Print a prime line or blob at the end of the START_PRINT macro # set to "primeline" or "primeblob", or False to disable nozzle_priming. variable_nozzle_priming: "false" # Park in the back when waiting for the extruder to heat up # set to "front" to park in the front, or "center" to park in the center. variable_start_print_park_in: "back" # Height to park it when waiting for extruder to heat. variable_start_print_park_z_height: 50 # Skew profile to load before starting the print # uncomment this to use your calibrated skew correction profile. #variable_skew_profile: "my_skew_profile" # Park in the back after the print has ended or was cancelled. # set to "front" to park in the front, or "center" to park in the center. variable_end_print_park_in: "back" # Park in the back when the print is paused. # set to "front" to park in the front, or "center" to park in the center. variable_pause_print_park_in: "back" # Set the speed for travel moves in RatOS Macros in mm/s. variable_macro_travel_speed: 100 ############################################################################################################# ### PRINTER CONFIGURATION ### Customize the defaults to your specific build ############################################################################################################# [stepper_x] dir_pin: PF12 # Add ! in front of pin name to reverse X stepper direction rotation_distance: 40 # 40 for 20 tooth 2GT pulleys, 32 for 16 tooth 2GT pulleys position_endstop: 0 # Adjust this to your setup #x_offset: -27.0 [stepper_y] dir_pin: PG1 # Add ! in front of pin name to reverse Y stepper direction rotation_distance: 40 # 40 for 20 tooth 2GT pulleys, 32 for 16 tooth 2GT pulleys position_endstop: 480 # 300mm printer position_min: 5 #y_offset: -21.0 #position_endstop: 400 # 400mm printer #position_endstop: 500 # 500mm printer [stepper_z] dir_pin: !PF0 # Add ! in front of pin name to reverse Z stepper direction rotation_distance: 4 # 4 for TR8*4 lead screws endstop_pin: probe: z_virtual_endstop [stepper_z1] dir_pin: !PE3 # Add ! in front of pin name to reverse Z1 direction rotation_distance: 4 # 4 for TR8*4 lead screws endstop_pin: probe: z_virtual_endstop [stepper_z2] dir_pin: !PA14 # Add ! in front of pin name to reverse Z2 direction rotation_distance: 4 # 4 for TR8*4 lead screws endstop_pin: probe: z_virtual_endstop #Z Probe configuration [bltouch] sensor_pin: ^PB7 control_pin: PB6 x_offset: -27.0 y_offset: -21.0 #pin_up_touch_mode_reports_triggered: True pin_move_time: 0.8 #z_offset: 3.20 # USE FOR PLA #z_offset: 2.75 # USE FOR PETG # [probe] # z_offset: 1.0 # Adjust this to fit your setup -> "1.0" is placeholder! # pin: ^PB7 # For NPN NC probes such as the Super Pinda / Vinda / SupCR / Decoprobe probes. #pin: ^!PB7 # NPN NO (refer to the specs on your probe) #pin: PB7 # PNP NO (refer to the specs on your probe) #pin: !PB7 # PNP NC (refer to the specs on your probe) # Safe Z Home (Physical endstops only) [safe_z_home] home_xy_position: 250, 250 # Change coordinates to the center of your print bed speed: 50 z_hop: 10 # Move up 10mm z_hop_speed: 5 #ORIGINAL #home_xy_position: 150,150 # 300mm printer #home_xy_position: 200,200 # 400mm printer #home_xy_position: 250,250 # 500mm printer [extruder] # Check https://www.klipper3d.org/Pressure_Advance.html for pressure advance tuning. #pressure_advance: 0.05 nozzle_diameter: 0.4 # Remember to change this if you change nozzle diameter. dir_pin: PG3 # Remove ! in front of pin name to reverse extruder direction #control: pid #pid_kp: 28.413 #pid_ki: 1.334 #pid_kd: 151.300 # [bed_mesh] # speed: 30 # horizontal_move_z: 10 # mesh_min: 15, 15 # mesh_max: 450, 450 # probe_count: 5 , 5 [bed_mesh] horizontal_move_z: 5 mesh_min: 15,15 mesh_max:465,460 probe_count: 28,13 fade_start: 1.0 fade_end: 100.0 mesh_pps: 2,2 algorithm: bicubic bicubic_tension: .2 ############################################################################################################# ### INPUT SHAPER ### Enable/disable input shaper calibration ############################################################################################################# # Uncomment this next line if you have an ADXL345 connected to your control board #[include config/printers/v-core-3/input-shaper.cfg] # ADXL345 resonance testing configuration #[resonance_tester] #probe_points: # 150,150,20 # 300mm printer # 200,200,20 # 400mm printer # 250,250,20 # 500mm printer #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [bltouch] #*# z_offset = 2.880 #*# #*# [bed_mesh default] #*# version = 1 #*# points = #*# 0.701562, 0.589062, 0.516875, 0.447187, 0.421250, 0.335625, 0.278437, 0.241250, 0.243750, 0.238750, 0.185312, 0.194062, 0.226562, 0.215312, 0.224375, 0.213750, 0.241562, 0.268125, 0.285000, 0.314687, 0.349375, 0.381562, 0.409375, 0.451250, 0.456250, 0.526875, 0.568125, 0.635312 #*# 0.629375, 0.554375, 0.466562, 0.396875, 0.353125, 0.285937, 0.263750, 0.230312, 0.221250, 0.195000, 0.170625, 0.190312, 0.220937, 0.231562, 0.214687, 0.238750, 0.230312, 0.240312, 0.292812, 0.342187, 0.356250, 0.380937, 0.442187, 0.460312, 0.495000, 0.523750, 0.618750, 0.643437 #*# 0.550625, 0.514687, 0.394687, 0.350312, 0.301875, 0.269062, 0.249062, 0.225625, 0.174062, 0.188750, 0.185312, 0.165937, 0.170000, 0.184687, 0.183437, 0.190312, 0.235312, 0.260625, 0.296562, 0.336250, 0.349062, 0.383437, 0.424375, 0.421875, 0.495625, 0.565000, 0.579375, 0.636250 #*# 0.421875, 0.326562, 0.301562, 0.268125, 0.200000, 0.170937, 0.146562, 0.123125, 0.142500, 0.114062, 0.136250, 0.108437, 0.110625, 0.135312, 0.141562, 0.171250, 0.179375, 0.247500, 0.231562, 0.294687, 0.312500, 0.331875, 0.380937, 0.442812, 0.478750, 0.504375, 0.566250, 0.618750 #*# 0.254062, 0.188750, 0.151875, 0.175937, 0.140312, 0.080000, 0.037187, 0.031875, 0.045937, 0.052812, 0.036875, 0.095625, 0.090000, 0.098125, 0.092500, 0.154062, 0.161250, 0.207500, 0.224062, 0.282187, 0.282500, 0.338750, 0.388750, 0.412500, 0.468750, 0.534687, 0.565625, 0.636562 #*# 0.178125, 0.136562, 0.095937, 0.065937, 0.055000, 0.031250, 0.018125, 0.013437, -0.015938, 0.024375, 0.050937, 0.055312, 0.065625, 0.092187, 0.110625, 0.148125, 0.127812, 0.174687, 0.245000, 0.276562, 0.299375, 0.369062, 0.342500, 0.398437, 0.473125, 0.534375, 0.599687, 0.642812 #*# 0.046562, 0.037500, 0.009062, -0.031875, -0.015000, -0.046563, -0.078438, -0.084688, -0.082188, -0.051250, -0.032188, -0.025313, 0.019375, 0.038437, 0.055000, 0.089375, 0.160625, 0.192500, 0.181250, 0.250000, 0.302187, 0.332500, 0.349375, 0.433437, 0.472187, 0.534062, 0.595312, 0.675937 #*# 0.055625, 0.001250, -0.017500, -0.045938, -0.057500, -0.089688, -0.084063, -0.068750, -0.066250, -0.043750, -0.052188, -0.028750, 0.015625, 0.009687, 0.076875, 0.091250, 0.149062, 0.170312, 0.221875, 0.267187, 0.319375, 0.368125, 0.381875, 0.424062, 0.510000, 0.550000, 0.604687, 0.670000 #*# 0.001250, -0.014688, -0.019063, -0.037500, -0.020938, -0.047188, -0.018750, 0.021250, -0.025000, 0.021250, 0.019062, 0.041562, 0.095937, 0.074375, 0.132187, 0.185000, 0.187187, 0.264375, 0.281875, 0.324062, 0.390312, 0.458750, 0.490000, 0.536562, 0.596250, 0.620000, 0.686875, 0.741875 #*# 0.048437, 0.029375, 0.033437, 0.051562, 0.047500, 0.035312, 0.025937, 0.069687, 0.070625, 0.062812, 0.076250, 0.102187, 0.135937, 0.184062, 0.206562, 0.240000, 0.261875, 0.332812, 0.352500, 0.422187, 0.454375, 0.495625, 0.526250, 0.583437, 0.615312, 0.694062, 0.730625, 0.799375 #*# 0.159375, 0.151875, 0.116562, 0.094687, 0.107187, 0.116562, 0.118750, 0.120312, 0.151875, 0.175937, 0.195000, 0.202812, 0.249687, 0.250937, 0.295312, 0.327500, 0.354687, 0.383437, 0.461562, 0.488750, 0.537500, 0.568750, 0.615000, 0.671875, 0.687812, 0.753437, 0.807500, 0.877187 #*# 0.255625, 0.220937, 0.219375, 0.231875, 0.231875, 0.212187, 0.202187, 0.225000, 0.234375, 0.290312, 0.297187, 0.319375, 0.397812, 0.415625, 0.410625, 0.460312, 0.528750, 0.514062, 0.582500, 0.616562, 0.644687, 0.668750, 0.739062, 0.789062, 0.799062, 0.857187, 0.915937, 0.984062 #*# 0.347812, 0.358125, 0.334687, 0.327187, 0.346562, 0.317187, 0.335937, 0.378125, 0.393437, 0.440625, 0.457187, 0.458125, 0.532187, 0.534375, 0.548125, 0.589687, 0.576562, 0.658125, 0.698750, 0.746250, 0.745000, 0.811562, 0.812812, 0.892812, 0.947187, 0.941562, 1.029062, 1.114687 #*# tension = 0.2 #*# min_x = 15.0 #*# algo = bicubic #*# y_count = 13 #*# mesh_y_pps = 2 #*# min_y = 15.0 #*# x_count = 28 #*# max_y = 459.96 #*# mesh_x_pps = 2 #*# max_x = 464.82 #*# #*# [extruder] #*# control = pid #*# pid_kp = 19.661 #*# pid_ki = 0.819 #*# pid_kd = 117.969 #*# #*# [heater_bed] #*# control = pid #*# pid_kp = 64.455 #*# pid_ki = 1.659 #*# pid_kd = 626.020