AnetKlipperSKR Series

Klipper Example Config for SKR v1.3

Anet A8 & AM8

Klipper is a 3d-Printer firmware. It combines the power of a general purpose computer with one or more micro-controllers. Details can be found from https://www.klipper3d.org/

This configuration is mainly for AM8 (Anet A8 metal frame upgrade) but it should work with Anet A8 on SKR v1.3 mainboard.

Note: Depending on your bed position you should specify position_endstop:  value for both X and Y.

# This file contains common pin mappings for the BIGTREETECH SKR V1.3
# board. To use this config, the firmware should be compiled for the
# LPC1768.

#############################################################################
###########           CONFIGURATION STARTS HERE                   ###########
#############################################################################

[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1768_1E70000F801C3DAF883E975CC22000F5-if00

[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 1000
max_z_velocity: 20
max_z_accel: 100

#####################################################################
#  X/Y/Z Stepper Settings
#####################################################################

[stepper_x]
step_pin: P2.2
dir_pin: !P2.6
enable_pin: !P2.1
step_distance: .009981
endstop_pin: !P1.29  # P1.28 for X-max
position_endstop: -10
position_min: -14
position_max: 220
homing_speed: 50
second_homing_speed: 25
homing_retract_dist: 5

[stepper_y]
step_pin: P0.19
dir_pin: !P0.20
enable_pin: !P2.8
step_distance: .00995
endstop_pin: !P1.27  # P1.26 for Y-max
position_min: -26
position_endstop: -24
position_max: 220
homing_speed: 50
second_homing_speed: 25
homing_retract_dist: 5

[stepper_z]
step_pin: P0.22
dir_pin: !P2.11
enable_pin: !P0.21
step_distance: .002470
endstop_pin: !P1.25  # P1.24 for Z-max
position_endstop: 0
position_max: 200
position_min: -5
homing_speed: 10.0
second_homing_speed: 3
homing_retract_dist: 3.0

#####################################################################
#  Extruder Settings
#####################################################################

[extruder]
step_pin: P2.13
dir_pin: !P0.11
enable_pin: !P2.12
heater_pin: P2.7
sensor_pin: P0.25
smooth_time: 3.0
step_distance: 0.001733
nozzle_diameter: 0.4
filament_diameter: 1.75
max_extrude_cross_section: 50.0
max_extrude_only_distance: 780
sensor_type: ATC Semitec 104GT-2
control: pid  
pid_Kp: 27.666
pid_Ki: 1.724
pid_Kd: 111
min_temp: 15
max_temp: 260
max_power: 1.0
######### Try to keep pressure_advance below 1.0
######### PA can be disabled by declaring a 0.0 value
pressure_advance: 0.0
# time seconds to look ahead for PA moves default is 0.010 or 10ms
#pressure_advance_lookahead_time: 0.030

[verify_heater extruder]
max_error: 600
check_gain_time: 40
hysteresis: 15
heating_gain: 2

#####################################################################
#  Bed Heater
#####################################################################

[heater_bed]
heater_pin: P2.5
sensor_type: ATC Semitec 104GT-2
sensor_pin: P0.23
min_temp: 0
max_temp: 110
smooth_time: 3.0
control: pid
pid_Kp=75.945
pid_Ki=1.285
pid_Kd=1122.092

[verify_heater heater_bed]
max_error: 120
check_gain_time: 60
hysteresis: 5
heating_gain: 2

#####################################################################
#  Fan Control
#####################################################################

[fan]
pin: P2.3

[heater_fan my_nozzle_fan]
pin: P2.4
heater: extruder
heater_temp: 60.0
fan_speed: 1.0

#####################################################################
#  Homing and Adjustment Routines
#####################################################################

[bed_mesh]
mesh_min: 50,20
mesh_max: 220,185
probe_count: 4,4
horizontal_move_z: 12

#####################################################################
# Other Settings
#####################################################################

[idle_timeout]
gcode:
   TURN_OFF_HEATERS
   M84             ; disable steppers
timeout: 1800      ;30 min

[skew_correction]

# Pause/Resume Functionality
[pause_resume]
recover_velocity: 100

# This adds the 'respond' G-Code that you can use to send commands back to OctoPrint
[respond]
default_type: echo

#[force_move]
#enable_force_move: true

# add virtual sd card
[virtual_sdcard]
path: ~/.octoprint/uploads/

#[include /home/pi/custommenu.cfg]

#####################################################################
#  Display Routines
#  RepRapDiscount 128x64 Full Graphic Smart Controller
#####################################################################

[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
#kill_pin: ^!<RST>

[output_pin beeper]
pin: P1.30

#####################################################################
### 	MACROS
#####################################################################

[gcode_macro G32]
gcode:
   {% if printer.toolhead.status == "Ready" %}
      M141 S55      ; set chamber for 55C max
    {% if "z" not in printer.toolhead.homed_axes %} ; G28 Home if needed
      M117 Homing...      
      G28
    {% endif %}
      M117 Nozzle Cleaning...
      NOZZLE_CLEAN     ; Clean Nozzle
      M117 Homing...
      G28 Z0
      G0 X150 Y150 Z10 F6000
   {% else %}
      { printer.gcode.action_respond_info("G32 is disabled while printing!") }
   {% endif %}

[gcode_macro PRINT_START]
gcode:
  PRINT_START_1            ;print start macro 1
  M140 S{BED_TEMP}         ;set bed temperature and wait
  M109 S{EXTRUDER_TEMP}    ;set hotend temperature and wait
  M190 S{BED_TEMP}         ;set bed temperature and do not wait
  #G32
  #M117 Bed meshing...
  BED_MESH_CLEAR
  #bed_mesh_calibrate
  #BED_MESH_PROFILE LOAD=am8
  M117 Ready
default_parameter_EXTRUDER_TEMP: 205
default_parameter_BED_TEMP: 60

[gcode_macro PRINT_START_1]
gcode:                                    
    M104 S0    ;cancel set temp
    M107       ;turn cooling fans off
    G21        ;set units to mm
    G90        ;use absolute coordinates
    M83        ;use relative extrusion
    G92 E0.0   ;reset e count
    M220 S100  ;reset speed multiplier
    G28
    G0 X110 Y110 Z10 F6000

[gcode_macro PRINT_END]
#   Use PRINT_END for the slicer ending script - PLEASE CUSTOMISE THE SCRIPT FOR YOUR SLICER OF CHOICE
gcode:
   M400                           ; wait for buffer to clear
   G92 E0                         ; zero the extruder
   G1 E-4.0 F3600                 ; retract filament
   G91                            ; relative positioning
   G0 Z20 F3000                   ; move nozzle up 25mm
   TURN_OFF_HEATERS
   M107                           ; turn off fan
   G90                            ; absolute positioning
   G0 X110 Y200 F3600             ; park nozzle at rear
   M117 Finished!                 ; display message

[gcode_macro NOZZLE_CLEAN]
#   Use for scrubbing the nozzle to keep it clean and ensure accurate z height 
default_parameter_I: 5
gcode:
    G0 Z10 F3000                            ;lift z 10mm
    {% if "z" not in printer.toolhead.homed_axes %} ; G28 Home if needed
      M117 Homing...      
      G28
    {% endif %}
    SAVE_GCODE_STATE NAME=cleaning          ;save pre-run g-code state (relative/absolute, etc)
    G91                                     ;relative positioning
    G90                                     ;absolute positioning
    G0 X60 Y300 F3000                       ;move to nozzle scrubber
    G0 Z9 F5000                             ;lower z to brush height
    G91                                       ;relative positioning
    M117 Cleaning... 
    # loop scrub move back/forth I amount of times
    {% for wipe in range(1,I|int,1) %}
        {% for distance in [50,-50] %}
            G0 X{distance} F10000
        {% endfor %}
    {% endfor %}
    G0 Z10 F3000                            ;lift z 10mm
    RESTORE_GCODE_STATE NAME=cleaning         ;restore previous g-code state (relative/absolute, etc)
    M117 Ready...

#   Prime the nozzle 
[gcode_macro PRIME_LINE]
gcode: 
    SAVE_GCODE_STATE NAME=BEFORE_PRIME
    M117 Prime Line
    M83
    {% if "z" not in printer.toolhead.homed_axes %}
        G28                             ;Only G28 Home if needed
    {% endif %}
    G92 E0                              ;Reset Extruder
    G1 Z5.0 F3000                       ;Move Z Axis up
    G1 X5 Y30 Z0.24 F5000.0             ;Move to start position (5,30,.24)
    G1 X5 Y230.0 Z0.24 F1500.0 E20      ;Draw the first 200mm line
    G1 X5.5 Y230.0 Z0.24 F5000.0        ;Move to side a little
    G1 X5.5 Y30 Z0.24 F1500.0 E20       ;Draw the second line
    G92 E0                              ;Reset Extruder
    G1 Z5.0 F3000                       ;Move Z Axis up
    RESTORE_GCODE_STATE NAME=BEFORE_PRIME   

[gcode_macro OFFSET]
default_parameter_D: 0.025
gcode:
  set_gcode_offset z_adjust={D}
  NULL_MOVE

[gcode_macro BABY_UP]
gcode:
  OFFSET D=0.025

[gcode_macro BABY_DOWN]
gcode:
  OFFSET D=-0.025

[gcode_macro NULL_MOVE]
gcode:
  G91
  G1 Z0 Y0 X0
  G90

[gcode_macro LOAD_FILAMENT]
#   Extrusion lengths must be adjusted for your particular configuration before use
gcode:
   {% if printer.toolhead.status == "Ready" %}
      M83                            ; set extruder to relative
      G1 E400 F1800                  ; quickly load filament to down bowden
      G1 E40 F300                    ; slower extrusion for hotend path
      G1 E30 F150                    ; prime nozzle with filament
      M82                            ; set extruder to absolute
   {% else %}
      { printer.gcode.action_respond_info("Filament loading disabled while printing!") }
   {% endif %}

[gcode_macro UNLOAD_FILAMENT]
#   Extrusion lengths must be adjusted for your particular configuration before use
gcode:
   {% if printer.toolhead.status == "Ready" %}
      M83                            ; set extruder to relative
      G1 E10 F300                    ; extrude a little to soften tip
      G1 E-650 F1800                 ; retract filament completely
      M82                            ; set extruder to absolute
   {% else %}
      { printer.gcode.action_respond_info("Filament unloading disabled while printing!") }
   {% endif %}   

[gcode_macro M600]
default_parameter_X: 110
default_parameter_Y: 0
default_parameter_Z: 20
gcode:
    SAVE_GCODE_STATE NAME=STATE
    PAUSE
    G91
    G1 Z{Z} F900
    G90
    G1 X{X} Y{Y} F18000
    RESTORE_GCODE_STATE NAME=STATE

[gcode_macro ADVANCED_RESUME]
default_parameter_E: 2.5
default_parameter_Z: -20
gcode:
    SAVE_GCODE_STATE NAME=STATE
    G91
    G1 Z{Z} E{E} F900
    RESTORE_GCODE_STATE NAME=STATE
    RESUME

[gcode_macro ABS60]
gcode:
	M140 S60  ;set bed temperature and do not wait
	M109 S235 ;set print head temperature and wait

[gcode_macro ABS80]
gcode:
	M140 S80  ;set bed temperature and do not wait
	M109 S235 ;set print head temperature and wait

[gcode_macro ABS100]
gcode:
	M140 S100  ;set bed temperature and do not wait
	M109 S235 ;set print head temperature and wait

[gcode_macro PLA60]
gcode:
	M140 S60  ;set bed temperature and do not wait
	M109 S205 ;set print head temperature and wait

Show More

Related Articles

Back to top button
Close

Adblock Detected

Lütfen Add Blocker uygulamanızı bu site için devre dışı bırakın. Rahatsız edici bir reklam uygulamamız yoktur. Please turn the Add Blocker off as you may see there is no annoying ads in the blog.