Files
klipper_configs_flyingbear/Flying Bear Generic Configs/macros/filament_management.cfg
oducceu 31ac02031d Updates and fixes
update /macros folder

Update *bltouch.cfg

Fix Z and Y pins

Fix Y direction

Update MKSRN-Sv1.3 pins

Clean obsolete comments
2021-10-19 22:26:54 +03:00

112 lines
5.0 KiB
INI

################################################################################
# Board: MKS Robin Nano v1.1 (Flying Bear Reborn 2.0) / MKS Robin Nano v1.3 / MKS Robin Nano-S v1.3
# Printer: Flying Bear Ghost 4S / Ghost 5 / Reborn
# G-code Macros by ODUCCEU
################################################################################
# WARNING! DO NOT EDIT THIS FILE!
# To override settings from this file, you can copy and paste the relevant
# sections into your printer.cfg and change it there.
################################################################################
# Filament Change ##############################################################
[gcode_macro FILAMENT_CHANGE]
# Unloads filament, waites 5 minutes for manual filament switch and loads again
gcode:
SAVE_GCODE_STATE NAME=FILAMENT_CHANGE_STATE
{% set timer = params.T|default(300)|float %}
{% set unload = params.U|default(100)|float %}
{% set load = params.L|default(100)|float %}
{% if printer.pause_resume.is_paused %}
M118 Already paused
{% else %}
{% if printer.toolhead.homed_axes != "xyz" %}
M118 Homing
G28 # home if not homed
{% else %}
M118 Pausing print
PAUSE
{% endif %}
{% endif %}
M118 Changing filament...
SET_IDLE_TIMEOUT TIMEOUT=7200
FILAMENT_UNLOAD U={unload}
COUNTDOWN TIME={timer} MSG="Change filament! Time left: "
FILAMENT_LOAD L={load}
RESTORE_GCODE_STATE NAME=FILAMENT_CHANGE_STATE
[gcode_macro FILAMENT_LOAD]
gcode:
{% set load = params.L|default(100)|float * 0.5 %}
{% set extruder_temp = params.T|default(220)|float %}
SAVE_GCODE_STATE NAME=FILAMENT_LOAD_STATE
LOW_TEMP_CHECK T={extruder_temp}
M118 Loading filament...
M83 # relative extrusion
G0 E{load} F600 # load the filament into the hotend area
G4 P1000 # wait 1 second
G1 E50 F100 # purge
M400 # wait until all moves are completed
M118 Filament loaded!
BEEP
RESTORE_GCODE_STATE NAME=FILAMENT_LOAD_STATE
[gcode_macro FILAMENT_UNLOAD]
gcode:
{% set unload = params.U|default(100)|float %}
{% set extruder_temp = params.T|default(220)|float %}
SAVE_GCODE_STATE NAME=FILAMENT_UNLOAD_STATE
LOW_TEMP_CHECK T={extruder_temp}
M118 Unloading filament
M83 # relative extrusion
G0 E-5 F3600 # extract filament to the coldend zone
G4 P3000 # wait for 3 seconds
G0 E5 F3600 # push back the filament to smash any stringing
G0 E-15 F3600 # extract back fast to the coldend zone
G0 E-{unload} F300 # extract a lot
M400 # wait until all moves are completed
M118 Filament unloaded!
BEEP
RESTORE_GCODE_STATE NAME=FILAMENT_UNLOAD_STATE
[gcode_macro LOW_TEMP_CHECK]
gcode:
{% set extruder_temp = params.T|default(220)|float %}
{% if printer.extruder.target > extruder_temp %} # check for a setpoint for extruder
{% set extruder_temp = printer.extruder.target %}
{% endif %}
{% if printer.extruder.temperature < extruder_temp %} # heat to the target temp
M118 Heating to {extruder_temp}
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={extruder_temp}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={extruder_temp}
{% endif %}
[gcode_macro COUNTDOWN]
gcode:
{% set timer = params.TIME|default(10)|int %}
{% set message = params.MSG|default("Time: ") %}
# countdown
{% if timer > 60 %}
{% for s in range(timer, 60, -10) %}
M118 {message} {s}s
G4 P10000 # wait 10 seconds
{% endfor %}
{% set timer = 60 %}
{% endif %}
{% if timer > 10 %}
{% for s in range(timer, 10, -5) %}
M118 {message} {s}s
G4 P5000 # wait 5 seconds
{% endfor %}
{% set timer = 10 %}
{% endif %}
{% if timer > 0 %}
{% for s in range(timer, 0, -1) %}
M118 {message} {s}s
G4 P1000 # wait 1 second
{% endfor %}
{% endif %}
BEEP
################################################################################