The great cleanup

This commit is contained in:
Kyle Brown 2023-05-24 16:32:52 -07:00
parent 660342d278
commit 96de1946ef
3 changed files with 134 additions and 69 deletions

View file

@ -1,29 +1,62 @@
[gcode_macro PRINT_START]
# Use PRINT_START for the slicer starting script - please customize for your slicer of choice
gcode:
# Parameters
{% set bedTemp = params.BED|int %}
# Slicer Parameters
{% set hotendTemp = params.HOTEND|int %}
{% set Z = 200 %}
{% set bedTemp = params.BED|int %}
{% set chamberTemp = params.CHAMBER|default(0)|int %}
M104 S{hotendTemp|float*0.8} ; set extruder pre warm temp
M140 S{bedTemp} ; set bed temp to warm while starting up
G28 ; home after setting temps
#G1 Z20 F3000 ; move nozzle away from bed
M117 Waiting for temperatures...
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp} MAXIMUM={bedTemp+1} ; Wait for bed temp (within 1 degree)
Z_TILT_ADJUST
G28 Z
G90 ; absolute positioning
#BED_MESH_CALIBRATE
G1 X0 Y20 Z0.2 F20000 ; move to park position
G1 X0 Y20 Z0.2 F200 ; park nozzle on bed to prevent ooze
M109 S{hotendTemp} ; Set extruder to printing temperature
PURGE
# User Parameters
{% set x_park = 0 %}
{% set y_park = 20 %}
{% set z_park = 0.3 %}
{% set travel_speed = 300 %} # in mm/s
{% set z_speed = 5 %} # in mm/s
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={hotendTemp|float*0.6} # Set extruder pre warm temp
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} # Set bed temp to warm while starting up
G28 # home after setting temps
M117 Waiting for bed temperature...
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp} MAXIMUM={bedTemp+1} # Wait for bed temp (within 1 degree)
{% if chamberTemp != 0 %} # If chamber temp set
CHAMBER_WARMER TEMPERATURE={chamberTemp} # Warm chamber
{% endif %}
Z_TILT_ADJUST # Z-Tilt after soak
G28 Z # Rehome Z as it's not the same
G90 # Absolute positioning
G1 X{x_park} Y{y_park} F{travel_speed * 60} # Move to park position
G1 X{x_park} Y{y_park} Z{z_park} F{z_speed * 60} # Park nozzle on bed to prevent ooze
M109 S{hotendTemp} # Set extruder to printing temperature
PURGE_Y # Purge
M117 Printing...
[gcode_macro CHAMBER_WARMER]
description: Uses the bed and part cooling fan to warm the chamber
gcode:
# User Parameters
{% set z_pcf_height = 3 %} # Height from the bed while warming
{% set fan_speed = 100 %} # Fan speed in percent
{% set chamberTemp = params.TEMPERATURE|default(0)|int %}
G90 # Absolute positioning
# park above bed center
G1 X{printer.toolhead.axis_maximum.x/2} Y{printer.toolhead.axis_maximum.y/2} Z{z_pcf_height}
M106 S{fan_speed / 100 * 255} # Max out part cooling to cycle chamber air
M117 Waiting for chamber temperature {chamberTemp}c...
TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={chamberTemp} # Wait for chamber temp
M117 Chamber at temp
M106 S0 # Disable part cooling fan after soak
[gcode_macro PARK]
gcode:
G91 ; relative positioning
# User Parameters
{% set travel_speed = 300 %} # in mm/s
{% set z_speed = 5 %} # in mm/s
{hotendTemp} ; Set extruder to printing temperature
{% set x_park = 0 %}
{% set y_park = 20 %}
G91 # relative positioning
# Get Boundaries
{% set max_x = printer.configfile.config["stepper_x"]["position_max"]|float %}
@ -37,53 +70,53 @@ gcode:
{% set x_safe = -20.0 %}
{% endif %}
{% if printer.toolhead.position.y < (max_y - 20) %}
{% if printer.toolhead.position.y < (max_y - 200) %}
{% set y_safe = 20.0 %}
{% else %}
{% set y_safe = -20.0 %}
{% endif %}
{% if printer.toolhead.position.z < (max_z - 2) %}
{% set z_safe = 2.0 %}
{% if printer.toolhead.position.z < (max_z -30) %} # Overshoot for homing retract
{% set z_safe = 10.0 %}
{% else %}
{% set z_safe = max_z - printer.toolhead.position.z %}
{% endif %}
G0 Z{z_safe} F3600 ; move nozzle up
G0 X{x_safe} Y{y_safe} F20000 ; move nozzle to remove stringing
G90 ; absolute positioning
G0 X60 Y{max_y} F3600 ; park nozzle at rear
G0 Z{z_safe} F{z_speed * 60} # Move nozzle up
G0 X{x_safe} Y{y_safe} F{travel_speed * 60} # Move nozzle to remove stringing
G90 # Absolute positioning
G0 X{x_park} Y{y_park} F{travel_speed * 60} # Park nozzle
[gcode_macro PRINT_END]
# Use PRINT_END for the slicer ending script - please customize for your slicer of choice
gcode:
M400 ; wait for buffer to clear
G92 E0 ; zero the extruder
G1 E-4.0 F3600 ; retract filament
PARK
SET_IDLE_TIMEOUT TIMEOUT=1800 ; restore idle timeout
TURN_OFF_HEATERS
BED_MESH_CLEAR
M107 ; turn off fan
M400 # Wait for buffer to clear
G92 E0 # Zero the extruder
G1 E-4.0 F3600 # Retract filament
PARK # Park out of the way
SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 # Set extruder pre warm temp
#TURN_OFF_HEATERS # Don't turn off heaters. Idle is responsible for this
BED_MESH_CLEAR # Ensure no bed mesh sneaks through
M107 # Turn off fan
[gcode_macro LOAD_FILAMENT]
gcode:
{% if printer.extruder.can_extrude|lower != 'true' %} # checing for minimum extrusion temperature
# check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
M104 S235 T0 # set temperature and wait, 235 deg C is a good value for most of filament types.
{% if printer.extruder.can_extrude|lower != 'true' %} # Checking for minimum extrusion temperature
# Check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
M104 S235 T0 # Set temperature and wait, 235 deg C is a good value for most of filament types.
{% endif %}
M117 Filament loading!
M118 Filament loading!
M82 #set extruder to absolute mode
M82 #Set extruder to absolute mode
G92 E0
G4 P2000 # wait for two seconds
# check for extruder ready - hotend temperature is high enough, extrude 50mm then check temperature again. To avoid cold extrusion when filament load was started with hot hotend but temperature set to 0
{% if printer.extruder.can_extrude|lower != 'true' %} # checing for minimum extrusion temperature
# check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
G4 P2000 # Wait for two seconds
# Check for extruder ready - hotend temperature is high enough, extrude 50mm then check temperature again. To avoid cold extrusion when filament load was started with hot hotend but temperature set to 0
{% if printer.extruder.can_extrude|lower != 'true' %} # Checking for minimum extrusion temperature
# Check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
M118 Hotend heating!
M109 S235 T0 # set temperature and wait, 235 deg C is a good value for most of filament types.
M109 S235 T0 # Set temperature and wait, 235 deg C is a good value for most of filament types.
{% endif %}
G1 E200 F300 # extrude 200mm
G1 E200 F300 # Extrude 200mm
M400
M117 Filament load complete!
M118 Filament load complete!
@ -92,31 +125,55 @@ gcode:
gcode:
M118 Filament unloading!
M117 Filament unloading!
M82 #set extruder to absolute mode
M82 # Set extruder to absolute mode
G92 E0
{% if printer.extruder.can_extrude|lower != 'true' %} # checing for minimum extrusion temperature
# check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
{% if printer.extruder.can_extrude|lower != 'true' %} # Checking for minimum extrusion temperature
# Check if temperature is over the minimum extrusion temp. min_extrude_temp must be defined in the extruder config (to about 185)
M118 Hotend heating!
M109 S235 T0 # set temperature and wait
M109 S235 T0 # Set temperature and wait
{% endif %}
G1 E10 F{5*60} # extrude a little to soften tip
G0 E-5 F{60*60} # extract filament to cold end
G0 E-70 F{5*60} # continue extraction slow allow filament to be cooled enough before reaches the gears
G1 E10 F{5*60} # Extrude a little to soften tip
G0 E-5 F{60*60} # Extract filament to cold end
G0 E-70 F{5*60} # Continue extraction slow allow filament to be cooled enough before reaches the gears
M400
M118 Filament unload complete!
M117 Filament unload complete!
[gcode_macro PURGE]
[gcode_macro PURGE_X]
description: Purges along Y in the positive direction, and half a line back
gcode:
G92 E0
# User parameters
{% set x_start = 20 %}
{% set y_start = 0 %}
{% set z = 0.3 %}
{% set length = 80 %}
G92 E0 # Reset extruder position
M117 Purging Nozzle...
G1 X1.5 Y20 Z0.2
G1 E10 F{10*60} ; Prepurge in place before line
G1 X1.5 Y100 E15 F{10*60}
G1 X2 Y100 F{10*60}
G1 X2 Y60 E10 F{10*60}
G92 E0
M117 Printing...
G1 X{x_start} Y{y_start} Z{z} # Go to starting position
G1 E10 F{10*60} # Prepurge in place before line
G1 X{x_start + length} Y{y_start} E15 F{10*60} # Purge length in positive Y
G1 X{x_start + length} Y{y_start + 0.5} F{10*60} # Move 0.5 positive in X for return line
G1 X{x_start + length - 2} Y{y_start + 0.5} E10 F{10*60} # Purge half a line the other direction
G92 E0 # Reset extruder position
[gcode_macro PURGE_Y]
description: Purges along Y in the positive direction, and half a line back
gcode:
# User parameters
{% set x_start = 0 %}
{% set y_start = 20 %}
{% set z = 0.3 %}
{% set length = 80 %}
G92 E0 # Reset extruder position
M117 Purging Nozzle...
G1 X{x_start} Y{y_start} Z{z} # Go to starting position
G1 E10 F{10*60} # Prepurge in place before line
G1 X{x_start} Y{y_start + length} E15 F{10*60} # Purge length in positive Y
G1 X{x_start + 0.5} Y{y_start + length} F{10*60} # Move 0.5 positive in X for return line
G1 X{x_start + 0.5} Y{y_start + length / 2} E10 F{10*60} # Purge half a line the other direction
G92 E0 # Reset extruder position
[gcode_macro PID_HOTEND]
gcode:
@ -134,7 +191,6 @@ gcode:
SDCARD_RESET_FILE
BASE_CANCEL_PRINT
BED_MESH_CLEAR
SET_IDLE_TIMEOUT TIMEOUT=600 # restore idle timeout
[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
@ -169,3 +225,11 @@ gcode:
G90
G0 X76 Y43
PROBE_CALIBRATE
[gcode_macro BATCH_PRINT_MODE]
gcode:
SET_IDLE_TIMEOUT TIMEOUT=1800
[gcode_macro SINGLE_PRINT_MODE]
gcode:
SET_IDLE_TIMEOUT TIMEOUT=120

View file

@ -54,7 +54,7 @@ max_temp: 100
[temperature_sensor chamber]
sensor_type: ATC Semitec 104GT-2
sensor_pin: PA2
sensor_pin: skrPico:gpio27
min_temp: 0
max_temp: 100
@ -202,17 +202,18 @@ kick_start_time: 0.1
off_below: 0.10
[idle_timeout]
timeout: 600
timeout: 1800
[dockable_probe]
pin: skrPico:gpio25
sample_retract_dist: 4.0
samples: 3
samples: 1
dock_position: 0, 115.7, 10
approach_position: 24, 115.5
detach_position: 0, 24
check_open_attach: True
dock_fixed_z: True
dock_retries: 3
attach_speed: 15
detach_speed: 15
travel_speed: 50
@ -222,7 +223,7 @@ allow_delayed_detach: False
x_offset: -16
y_offset: 17
z_offset: 10.248
z_offset: 9.965
[bed_mesh]
speed: 120

View file

@ -46,7 +46,7 @@ uart_pin: skrPico:gpio9
tx_pin: skrPico:gpio8
uart_address: 2
interpolate: False
run_current: 0.3
run_current: 0.7
sense_resistor: 0.110
stealthchop_threshold: 0
@ -62,7 +62,7 @@ uart_pin: skrPico:gpio9
tx_pin: skrPico:gpio8
uart_address: 0
interpolate: False
run_current: 0.35
run_current: 0.5
sense_resistor: 0.110
stealthchop_threshold: 0
@ -75,7 +75,7 @@ points:
30, 0
80, 75
108, 0
speed: 200
speed: 500
horizontal_move_z: 15
retries: 5
retry_tolerance: 0.02
retries: 15
retry_tolerance: 0.025