#------------------------------------- # Ender 5 Plus w/ SKR 1.4 # v. 0.10 #------------------------------------- [include mainsail.cfg] #------------------------------------- # Firmware Retraction #------------------------------------- # [firmware_retraction] # retract_length: 0.8 # retract_speed: 60 # unretract_extra_length: 0 # unretract_speed: 60 #------------------------------------- # Pressure Advance #------------------------------------- # [extruder] # pressure_advance: 0.0 # Overture PLA #------------------------------------- # Input Shaper #------------------------------------- #[mcu rpi] #serial: /tmp/klipper_host_mcu #[adxl345] #cs_pin: rpi:None #[resonance_tester] #accel_chip: adxl345 #probe_points: # 180, 180, 20 # an example #------------------------------------- # Extruder #------------------------------------- [extruder] step_pin: P2.13 dir_pin: !P0.11 enable_pin: !P2.12 microsteps: 16 rotation_distance: 32.85 nozzle_diameter: 0.400 filament_diameter: 1.750 heater_pin: P2.7 sensor_type: EPCOS 100K B57560G104F sensor_pin: P0.24 min_temp: 0 max_temp: 260 max_extrude_only_distance: 500 #------------------------------------- # Printer General #------------------------------------- [safe_z_home] home_xy_position: 180, 180 speed: 100 z_hop: 10 z_hop_speed: 100 [bltouch] sensor_pin: P0.10 #Probe control_pin: P2.0 #SERVOS stow_on_each_sample: False probe_with_touch_mode: True pin_up_touch_mode_reports_triggered: False set_output_mode: 5V speed: 100 pin_move_time: 0.675 lift_speed: 200 samples: 4 sample_retract_dist: 10 #Mount Offset x_offset: -45 y_offset: -7 [bed_mesh] speed: 100 horizontal_move_z: 5 mesh_min: 5, 15 mesh_max: 310,337 probe_count: 5,5 fade_start: 1 fade_end: 10 [heater_bed] heater_pin: P2.5 sensor_type: EPCOS 100K B57560G104F sensor_pin: P0.25 max_power: 0.8 min_temp: 0 max_temp: 130 pwm_cycle_time: 0.01666 [fan] pin: P2.3 [mcu] serial: /dev/serial/by-id/usb-Klipper_lpc1768_2B4003196520BC9568FEE260C32000F5-if00 [filament_switch_sensor filament_sensor] switch_pin: P1.26 [printer] kinematics: cartesian max_velocity: 60 max_accel: 300 max_z_velocity: 5 max_z_accel: 100 [temperature_sensor raspberry_pi] sensor_type: temperature_host max_temp: 100 #------------------------------------- # Bed Leveling #------------------------------------- [z_tilt] z_positions: -18.4,180 378.4,180 points: 38,180 360,180 speed: 50 horizontal_move_z: 5 retries: 5 retry_tolerance:0.08 [screws_tilt_adjust] screw1: 71,60 screw1_name: front left screw screw2: 332,60 screw2_name: front right screw screw3: 332,321 screw3_name: rear right screw screw4: 71,321 screw4_name: rear left screw horizontal_move_z: 10. speed: 50. screw_thread: CW-M4 [bed_screws] screw1: 27.5, 47 screw2: 327.5, 47 screw3: 327.5, 307 screw4: 27.5, 307 [board_pins] aliases: 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=<5V>, 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= [display] lcd_type: uc1701 cs_pin: EXP1_3 a0_pin: EXP1_4 rst_pin: EXP1_5 encoder_pins: ^EXP2_5, ^EXP2_3 click_pin: ^!EXP1_2 # Prędkość odświeżania wyświetlacza. Zwiększ, jeśli obraz migocze, zmniejsz, jeśli masz problemy z MCU. # Ustaw na 120, jeśli nie masz problemów. spi_speed: 2000000 contrast: 63 [neopixel btt_mini12864] pin: EXP1_6 chain_count: 3 # Ten wyświetlacz ma 3 diody RGB color_order: RGB # Sprawdź, czy Twój wyświetlacz ma taki porządek kolorów, inaczej kolory mogą być pomieszane initial_RED: 0.0 # Początkowa jasność czerwonego (0.0 - 1.0) initial_GREEN: 0.5 # Początkowa jasność zielonego (0.0 - 1.0) initial_BLUE: 0.0 # Początkowa jasność niebieskiego (0.0 - 1.0) #------------------------------------- # Others #------------------------------------- [force_move] enable_force_move: True [virtual_sdcard] path: /home/pali112/printer_data/gcodes [exclude_object] [display_status] [pause_resume] #[respond] # default_type: echo [idle_timeout] timeout: 1800 gcode: TURN_OFF_HEATERS #------------------------------------- # Stepper Drivers #------------------------------------- [tmc2208 stepper_x] uart_pin: P1.10 interpolate: False sense_resistor: 0.110 run_current: 0.80 #hold_current: 0.500 stealthchop_threshold: 999999 [tmc2208 stepper_y] uart_pin: P1.9 interpolate: False sense_resistor: 0.110 run_current: 0.80 stealthchop_threshold: 999999 [tmc2208 stepper_z] #z uart_pin: P1.8 interpolate: False sense_resistor: 0.110 run_current: 0.80 stealthchop_threshold: 999999 [tmc2208 stepper_z1] #z1 uart_pin: P1.1 interpolate: False sense_resistor: 0.110 run_current: 0.80 stealthchop_threshold: 999999 [tmc2208 extruder] uart_pin: P1.4 run_current: 0.80 interpolate: False stealthchop_threshold: 999999 # ------------------------------------- # Steppers # ------------------------------------- [stepper_x] step_pin: P2.2 dir_pin: !P2.6 enable_pin: !P2.1 microsteps: 16 rotation_distance: 39.88 endstop_pin: P1.29 position_endstop: 360 position_min: 0 position_max: 360 homing_speed: 50 homing_retract_dist: 5 [stepper_y] step_pin: P0.19 dir_pin: !P0.20 enable_pin: !P2.8 microsteps: 16 rotation_distance: 39.83 endstop_pin: P1.28 position_endstop: 360 position_min: 0 position_max: 360 homing_speed: 50 homing_retract_dist: 5 # [stepper_z] # step_pin: P1.15 # dir_pin: !P1.14 # enable_pin: !P1.27 # microsteps: 16 # rotation_distance: 4 # endstop_pin: probe:z_virtual_endstop # position_max: 400 # position_min: -5 # [stepper_z1] # step_pin: P0.22 # dir_pin: !P2.11 # enable_pin: !P0.21 # microsteps: 16 # rotation_distance: 4 # endstop_pin: probe:z_virtual_endstop [stepper_z] step_pin: P0.22 dir_pin: !P2.11 # Upewnij się co do '!' (próba ruchu i zmiana jeśli trzeba) enable_pin: !P0.21 # Upewnij się co do '!' (próba ruchu i zmiana jeśli trzeba) microsteps: 16 rotation_distance: 4 endstop_pin: probe:z_virtual_endstop position_max: 400 position_min: -5 [stepper_z1] step_pin: P1.15 dir_pin: !P1.14 # Upewnij się co do '!' enable_pin: !P1.16 # Upewnij się co do '!' microsteps: 16 rotation_distance: 4 endstop_pin: probe:z_virtual_endstop # Tak, również dla tego silnika BLTouch jest referencją # Brak position_max i position_min - to jest poprawne dla dodatkowych silników #------------------------------------- # Macros #------------------------------------- [gcode_macro START_PRINT] gcode: {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} G28 ; Homing wszystkich osi # Rozpocznij grzanie stołu i ekstrudera do zadanych temperatur M140 S{BED_TEMP} ; Ustaw temperaturę stołu (bez czekania) M104 S{EXTRUDER_TEMP} ; Ustaw temperaturę ekstrudera (bez czekania) # Poczekaj, aż stół osiągnie zadaną temperaturę M190 S{BED_TEMP} # Poczekaj, aż ekstruder osiągnie zadaną temperaturę M109 S{EXTRUDER_TEMP} Z_TILT_ADJUST ; Wykonaj regulację Z-Tilt BED_MESH_PROFILE LOAD=default ; Załaduj domyślny profil siatki stołu G92 E0 ; Zresetuj ekstruder G1 Z2.0 F3000 ; Podnieś głowicę na wysokość 2 mm G1 X5.1 Y20 Z0.3 F5000.0 ; Przesuń głowicę do pozycji początkowej linii gruntującej G1 X5.1 Y200.0 Z0.3 F1500.0 E15 ; Wytłocz pierwszą część linii gruntującej G1 X5.4 Y200.0 Z0.3 F5000.0 ; Szybki ruch, aby odciągnąć dyszę od wytłoczonej linii G1 X5.4 Y20 Z0.3 F1500.0 E30 ; Wytłocz drugą część linii gruntującej G92 E0 ; Zresetuj ekstruder ponownie G1 Z2.0 F3000 ; Podnieś głowicę ponownie [gcode_macro _CLIENT_VARIABLE] variable_use_custom_pos : False ; use custom park coordinates for x,y [True/False] variable_custom_park_x : 0.0 ; custom x position; value must be within your defined min and max of X variable_custom_park_y : 0.0 ; custom y position; value must be within your defined min and max of Y variable_custom_park_dz : 2.0 ; custom dz value; the value in mm to lift the nozzle when move to park position variable_retract : 1.0 ; the value to retract while PAUSE variable_cancel_retract : 1 ; the value to retract while CANCEL_PRINT variable_speed_retract : 35.0 ; retract speed in mm/s variable_unretract : 1.0 ; the value to unretract while RESUME variable_speed_unretract : 35.0 ; unretract speed in mm/s variable_speed_hop : 15.0 ; z move speed in mm/s variable_speed_move : 100.0 ; move speed in mm/s variable_park_at_cancel : False ; allow to move the toolhead to park while execute CANCEL_PRINT [True,False] ## !!! Caution [firmware_retraction] must be defined in the printer.cfg if you set use_fw_retract: True !!! #variable_use_fw_retract : False ; use fw_retraction instead of the manual version [True/False] gcode: [gcode_macro BEEP_ALERT] gcode: M300 S200 P200 M300 S200 P200 M300 S200 P200 [gcode_macro BEEP_READY] gcode: M300 S500 P50 M300 S600 P50 M300 S700 P50 [gcode_macro BEEP_CONFIRM] gcode: M300 S1000 P100 M300 S1200 P100 M300 S1400 P100 [gcode_macro G29] gcode: G28 M190 S60 BED_MESH_CALIBRATE BED_MESH_PROFILE SAVE=default # G1 X0 Y0 Z5 F4000 M140 S0 [gcode_macro PAUSE] description: Pause the actual running print rename_existing: PAUSE_BASE variable_extrude: 1.0 gcode: {% set E = printer["gcode_macro PAUSE"].extrude|float %} {% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %} {% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %} {% set max_z = printer.toolhead.axis_maximum.z|float %} {% set act_z = printer.toolhead.position.z|float %} {% if act_z < (max_z - 2.0) %} {% set z_safe = 2.0 %} {% else %} {% set z_safe = max_z - act_z %} {% endif %} PAUSE_BASE G91 {% if printer.extruder.can_extrude|lower == 'true' %} G1 E-{E} F2100 {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} {% if "xyz" in printer.toolhead.homed_axes %} G1 Z{z_safe} F900 G90 G1 X{x_park} Y{y_park} F6000 {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro RESUME] description: Resume the actual running print rename_existing: RESUME_BASE gcode: {% set E = printer["gcode_macro PAUSE"].extrude|float %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {%else %} {% set get_params = "" %} {% endif %} {% if printer.extruder.can_extrude|lower == 'true' %} G91 G1 E{E} F2100 {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description: Cancel the actual running print rename_existing: CANCEL_PRINT_BASE gcode: # TURN_OFF_HEATERS CANCEL_PRINT_BASE [gcode_macro load_mesh] gcode: BED_MESH_PROFILE load=default [gcode_macro M300] gcode: # Use a default 1kHz tone if S is omitted. {% set S = params.S|default(1000)|int %} # Use a 10ms duration is P is omitted. {% set P = params.P|default(100)|int %} SET_PIN PIN=BEEPER_pin VALUE=0.5 CYCLE_TIME={ 1.0/S if S > 0 else 1 } G4 P{P} SET_PIN PIN=BEEPER_pin VALUE=0 [gcode_macro TESTZ] description: Wykonuje 5-liniowy test do kalibracji offsetu Z gcode: {% set H_TEMP = 200 %} ; Temperatura hotendu w stopniach C {% set B_TEMP = 60 %} ; Temperatura stołu w stopniach C M140 S{B_TEMP} ; Ustaw temperaturę stołu (bez czekania) M104 S{H_TEMP} ; Ustaw temperaturę hotendu (bez czekania) G28 ; Homing wszystkich osi (X, Y, Z) M190 S{B_TEMP} ; Czekaj, aż stół osiągnie temperaturę M109 S{H_TEMP} ; Czekaj, aż hotend osiągnie temperaturę G92 E0 ; Zeruj ekstruder G1 Z0.2 F300 ; Podnieś dyszę na wysokość pierwszej warstwy (0.2mm) G1 X10 Y10 F6000 ; Przesuń głowicę do pozycji startowej (X10, Y10) ; Linia 1 G1 E2 F1800 ; Wytłocz trochę filamentu, żeby wypełnić dyszę G1 X100 Y10 E10 F1200 ; Drukowanie linii (10-100 na X) G92 E0 ; Zeruj ekstruder G1 Z0.4 F300 ; Podnieś dyszę lekko w górę ; Linia 2 G1 X10 Y20 F6000 ; Przesuń głowicę do startu drugiej linii G1 X100 Y20 E10 F1200 ; Drukowanie linii (10-100 na X) G92 E0 ; Zeruj ekstruder G1 Z0.6 F300 ; Podnieś dyszę lekko w górę ; Linia 3 G1 X10 Y30 F6000 ; Przesuń głowicę do startu trzeciej linii G1 X100 Y30 E10 F1200 ; Drukowanie linii (10-100 na X) G92 E0 ; Zeruj ekstruder G1 Z0.8 F300 ; Podnieś dyszę lekko w górę ; Linia 4 G1 X10 Y40 F6000 ; Przesuń głowicę do startu czwartej linii G1 X100 Y40 E10 F1200 ; Drukowanie linii (10-100 na X) G92 E0 ; Zeruj ekstruder G1 Z1.0 F300 ; Podnieś dyszę lekko w górę ; Linia 5 G1 X10 Y50 F6000 ; Przesuń głowicę do startu piątej linii G1 X100 Y50 E10 F1200 ; Drukowanie linii (10-100 na X) G92 E0 ; Zeruj ekstruder G1 Z10 F300 ; Podnieś dyszę znacznie G1 X0 Y0 F6000 ; Przesuń głowicę do pozycji startowej M104 S0 ; Wyłącz grzałkę hotendu M140 S0 ; Wyłącz grzałkę stołu M84 ; Wyłącz silniki #------------------------------------- # Printer Save Config #------------------------------------- #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [extruder] #*# control = pid #*# pid_kp = 28.979 #*# pid_ki = 1.558 #*# pid_kd = 134.755 #*# #*# [heater_bed] #*# control = pid #*# pid_kp = 61.999 #*# pid_ki = 0.771 #*# pid_kd = 1246.178 #*# #*# [bltouch] #*# z_offset = 1.640 #*# #*# [bed_mesh default] #*# version = 1 #*# points = #*# 0.260937, 0.331250, 0.293750, 0.339375, 0.309062 #*# 0.272812, 0.325312, 0.237187, 0.263750, 0.274062 #*# 0.260625, 0.322187, 0.228437, 0.263750, 0.255000 #*# 0.238437, 0.295312, 0.228437, 0.263750, 0.242187 #*# 0.234062, 0.338125, 0.334375, 0.365625, 0.314687 #*# x_count = 5 #*# y_count = 5 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = lagrange #*# tension = 0.2 #*# min_x = 5.0 #*# max_x = 310.0 #*# min_y = 15.0 #*# max_y = 337.0 #*# #*# [input_shaper] #*# shaper_type_x = mzv #*# shaper_freq_x = 70.6 #*# shaper_type_y = mzv #*# shaper_freq_y = 57.0