Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- eiiii#[gcode_macro M300]
- #gcode: SET_PIN PIN=_BEEPER_pin VALUE={S}
- # G4 P{P}
- # SET_PIN PIN=_BEEPER_pin VALUE=0
- [gcode_macro PARK]
- gcode:
- PAUSE
- [gcode_macro M600]
- description: Filament change macro
- gcode:
- {% if printer.toolhead.homed_axes != "xyz" %}
- M118 Homing
- G28
- {% endif %}
- {% if printer.extruder.can_extrude == 0 %}
- {% set max_z = printer.toolhead.axis_maximum.z|float %}
- {% set act_z = printer.toolhead.position.z|float %}
- {% if act_z > (max_z - 20.0) %}
- {% set z_safe = max_z %}
- {% else %}
- {% set z_safe = (act_z + 20.0) %}
- {% endif %}
- G91
- G1 Z{z_safe}
- G90
- G1 X0 Y0 F2100
- M118 Acquiring temperature
- M109 S200
- {% endif %}
- {% if printer.pause_resume.is_paused == 0 %}
- PAUSE
- {% endif %}
- M118 First UNLOAD, then LOAD new and RESUME when ready
- #[gcode_macro UNLOAD]
- description: Unload filament helper
- gcode:
- {% if printer.pause_resume.is_paused == 1 %}
- {% if printer.extruder.can_extrude == 1 %}
- G91
- G1 E5 F300
- G1 E-50 F300
- G90
- {% else %}
- RESPOND TYPE=error MSG="Extrude below minimum temp"
- {% endif %}
- {% else %}
- RESPOND TYPE=error MSG="Printer must be paused"
- {% endif %}
- #[gcode_macro LOAD]
- description: Load filament helper
- gcode:
- {% if printer.pause_resume.is_paused == 1 %}
- {% if printer.extruder.can_extrude == 1 %}
- G91
- G1 E20 F300
- G90
- {% else %}
- RESPOND TYPE=error MSG="Extrude below minimum temp"
- {% endif %}
- {% else %}
- RESPOND TYPE=error MSG="Printer must be paused"
- {% endif %}
- [gcode_macro LOW_TEMP_CHECK_T]
- gcode:
- {% if printer.extruder.target != 0 %} # if there is a setpoint for extruder
- {% if printer.extruder.temperature < printer.extruder.target %} # if not reached, heat
- # M118 Heating from {printer.extruder.temperature} to {printer.extruder.target}.
- M109 S{printer.extruder.target|float}
- {% endif %}
- {% else %} # if no setpoint for extruder
- {% if printer.extruder.target < T %} # heat to T.
- # M118 No setpoint, heating to {T}.
- M109 S{T}
- {% endif %}
- {% endif %}
- [gcode_macro M900]
- description: Set pressure advance
- gcode:
- SET_PRESSURE_ADVANCE ADVANCE={params.K|default(0)}
- [gcode_macro PAUSE]
- rename_existing: BASE_PAUSE
- gcode:
- ##### set defaults #####
- {% set x = params.X|default(10) %} #edit to your park position
- {% set y = params.Y|default(170) %} #edit to your park position
- {% set z = params.Z|default(20)|float %} #edit to your park position
- {% set e = params.E|default(1) %} #edit to your retract length
- ##### calculate safe lift position #####
- {% set max_z = printer.toolhead.axis_maximum.z|float %}
- {% set act_z = printer.toolhead.position.z|float %}
- {% set lift_z = z|abs %}
- {% if act_z < (max_z - lift_z) %}
- {% set z_safe = lift_z %}
- {% else %}
- {% set z_safe = max_z - act_z %}
- {% endif %}
- ##### end of definitions #####
- SAVE_GCODE_STATE NAME=PAUSE_state
- BASE_PAUSE
- G91
- G1 E-{e} F300
- G1 Z{z_safe}
- G90
- G1 X{x} Y{y} F4000
- [gcode_macro RESUME]
- rename_existing: BASE_RESUME
- gcode:
- ##### set defaults #####
- {% set e = params.E|default(1) %} #edit to your retract length
- G91
- G1 E{e} F300
- G90
- RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1
- BASE_RESUME
- [gcode_macro CANCEL_PRINT]
- rename_existing: BASE_CANCEL_PRINT
- gcode:
- {% set ENDY = printer.toolhead.axis_maximum.y|float - 10 %}
- G91
- G1 E-1 F300
- G1 Z1 E-1 F4000
- G90
- G1 X0 Y{ENDY}
- M84
- M106 S0
- TURN_OFF_HEATERS
- CLEAR_PAUSE
- SDCARD_RESET_FILE
- BASE_CANCEL_PRINT
- #[gcode_macro Bed_Mesh]
- gcode:
- {% if printer.toolhead.homed_axes != "xyz" %}
- G28 # home if not homed
- {% endif %}
- SAVE_GCODE_STATE NAME=G29_STATE
- {% if T|int > 30 %}
- M140 S{T} # set bed temperature
- M190 S{T} # wait for bed temperature
- {% endif %}
- BED_MESH_CALIBRATE
- G0 X10 Y10 F6000
- #[gcode_macro PROBE_CALIBRATE]
- rename_existing: BASE_PROBE_CALIBRATE
- gcode:
- {% if printer.toolhead.homed_axes != "xyz" %}
- G28 # home if not homed
- {% endif %}
- BASE_PROBE_CALIBRATE
- #[gcode_macro PRIME_LINE]
- #PrusaSliser: PRIME_LINE F={first_layer_speed}
- #Cura: PRIME_LINE F={speed_print_layer_0}
- gcode:
- {% set feedrate = params.F|default(20)|float * 60 %}
- {% set length = params.L|default(120)|float %}
- {% if 'Y' in params %}
- {% set length_max = ( printer.toolhead.axis_maximum.y|float - 10.0 ) %}
- {% else %}
- {% set length_max = ( printer.toolhead.axis_maximum.x|float - 10.0 ) %}
- {% endif %}
- {% if length > length_max %}
- {% set length = length_max %}
- {% endif %}
- {% set width = printer.configfile.settings.extruder.nozzle_diameter|float %}
- {% set height = ( (width / 0.04)|int - (width / 0.04 / 4)|int )|float * 0.04 %}
- {% set extrude = 1.5 * length * width * height / 2.4 %}
- SAVE_GCODE_STATE NAME=PRIME_LINE_STATE
- SET_IDLE_TIMEOUT TIMEOUT=7200
- {% if 'Y' in params %}
- {% set x_start = 5.0 %}
- {% set y_start = (printer.toolhead.axis_maximum.y|float - length) / 2 %}
- G0 X{x_start} Y{y_start} Z{height} F5000 # move to start position
- G91 # relative positioning
- G1 Y{length} E{extrude} F{feedrate} # draw the 1st line
- G1 X{width} F5000 # move to the next line
- G1 Y-{length} E{extrude} F{feedrate} # draw the 2nd line
- {% else %}
- {% set x_start = (printer.toolhead.axis_maximum.x|float - length) / 2 %}
- {% set y_start = 5.0 %}
- G0 X{x_start} Y{y_start} Z{height} F5000 # move to start position
- G91 # relative positioning
- G1 X{length} E{extrude} F{feedrate} # draw the 1st line
- G1 Y{width} F5000 # move to the next line
- G1 X-{length} E{extrude} F{feedrate} # draw the 2nd line
- {% endif %}
- RESTORE_GCODE_STATE NAME=PRIME_LINE_STATE
- #[gcode_macro _FILAMENT_BALL]
- description: Helper: Round the filament tip
- gcode:
- ##### set default parameter value #####
- {% set wait = params.WAIT|default(0) %}
- ##### end of definitions #####
- SAVE_GCODE_STATE NAME=STATE_FILAMENT_BALL
- # Ball up the filament tip
- G92 E0 ; zero the extruder
- M82 ; absolute extrusion
- G1 E2 F3600
- G1 E0 F3600
- G1 E4 F3600
- G1 E0 F3600
- G1 E8 F3600
- G1 E0 F3600
- M83 ; relative extrusion
- G1 E-25 F3600
- G4 P{wait|int * 1000}
- RESTORE_GCODE_STATE NAME=STATE_FILAMENT_BALL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement