Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [gcode_macro mainled_on]
- gcode:
- SET_LED LED=main_led WHITE=1
- [gcode_macro mainled_off]
- gcode:
- SET_LED LED=main_led WHITE=0
- #--------------------------------------------------------------------#
- #--------------------------------------------------------------------#
- [force_move]
- enable_force_move: True
- [gcode_macro _global_var]
- variable_pause_park:{'x': 0, 'y': 0, 'z': 10, 'e': 1}
- variable_cancel_park:{'x': 0, 'y': 350, 'z': 10, 'e': 1}
- variable_z_maximum_lifting_distance: 345
- variable_pause_resume_travel_speed: 150
- variable_bed_mesh_calibrate_target_temp: 60
- variable_load_filament_extruder_temp: 230
- variable_heat_soak_time: 0 # in minutes
- gcode:
- [gcode_macro START_PRINT]
- description:
- variable_state: 'Prepare'
- variable_record_extruder_temp:0
- variable_max_record_extruder_temp:0
- gcode:
- {% set bedtemp = params.BED_TEMP|default(60)|int %}
- {% set hotendtemp = params.EXTRUDER_TEMP|default(230)|int %}
- {% set heatsoak = params.HEATSOAK|default(True)|int %}
- {% set heatsoak_time = printer['gcode_macro _global_var'].heat_soak_time|default(0)|int %} # takes heatsoak time from global variables
- {% set mesh_name = "default" %}
- {% set extruder_target_temp = 125 %}
- {% set bed_target_temp = bedtemp|int %}
- M400
- CLEAR_PAUSE
- G90
- {% if state == 'Prepare' %}
- {action_respond_info("Prepare!")}
- {% if printer['filament_switch_sensor filament_sensor'].enable == True and
- printer['filament_switch_sensor filament_sensor'].filament_detected != True
- %}
- M117 No filament!
- {action_respond_info("Please Insert filament in Sensor!")}
- CANCEL_PRINT
- {% endif %}
- {% if printer.extruder.temperature < extruder_target_temp %}
- M117 Nozzle pre-heating...
- {action_respond_info("Nozzle pre-heating...")}
- M109 S{extruder_target_temp}
- {% endif %}
- {% if printer.toolhead.homed_axes|lower != "xyz" %}
- G28
- {% endif %}
- #Start exhaust fan
- #SET_FAN_SPEED FAN=exhaust_fan SPEED=1
- {action_respond_info("Check Heating!")}
- {% if printer.heater_bed.temperature < bed_target_temp %}
- M117 Bed heating...
- {action_respond_info("Bed heating...")}
- M190 S{bed_target_temp}
- {% endif %}
- M140 S{bed_target_temp}
- M104 S{extruder_target_temp}
- {% if heatsoak == True %}
- M117 Short Heat Soak
- G4 P{heatsoak_time * 60000} # pause for x number of minute(s) (see variable_heat_soak_time)
- {% endif %}
- {% if printer.quad_gantry_level.applied|lower != 'true' %}
- M117 QGL
- #QUAD_GANTRY_LEVEL_BASE # We use the _BASE variant here as not to remove the stock Sovol override (but we also don't want to use the Sovol override here)
- QUAD_GANTRY_LEVEL
- M117 Home Z after QGL
- G28 Z # And once again after QGL, important..
- # M117 Auto Z Offset
- # Z_OFFSET_CALIBRATION
- {% endif %}
- #EDDY-NG Tap Routine
- # First clean at low temp
- M117 Cleaning
- CLEAN_NOZZLE TEMP=150
- # Home Z again after QGL and cleaning
- M117 Homing
- G28 Z
- #EDDY TAP
- SET_DISPLAY_TEXT MSG="Tappy tap"
- CENTER # this is center of parts during a print
- PROBE_EDDY_NG_TAP TARGET_Z=-.350
- # We use the _BASE variant here as not to remove the stock Sovol override (but we also don't want to use the Sovol override here)
- # Remove the comment to add 'METHOD=rapid_scan' when using the Eddy probe
- M117 Bed Mesh
- BED_MESH_CALIBRATE_BASE ADAPTIVE=1 METHOD=rapid_scan
- # Set final temperatures before printing instead of relying on the OrcaSlicer start gcode..
- M117 Final Heating...
- {action_respond_info("Final heating...")}
- M140 S{bedtemp} ;set bed temp
- M104 S{hotendtemp} ;set extruder temp
- M190 S{bedtemp} ;wait for bed temp
- M109 S{hotendtemp};wait for extruder temp
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=state VALUE='"Start"'
- UPDATE_DELAYED_GCODE ID=_print_start_wait DURATION=0.5
- {% elif state == 'Start' %}
- M117 Printing
- {action_respond_info("Start!")}
- {% endif %}
- [gcode_macro END_PRINT]
- description:
- variable_state: 'normal'
- gcode:
- {% set z_max = printer['gcode_macro _global_var'].z_maximum_lifting_distance|int %}
- {% set e_mintemp = printer.configfile.settings['extruder'].min_extrude_temp %}
- M400
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=state VALUE='"Prepare"'
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=record_extruder_temp VALUE=0
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=max_record_extruder_temp VALUE=0
- M117 Done
- G91
- {% if printer['filament_switch_sensor filament_sensor'].enable == True and
- printer['filament_switch_sensor filament_sensor'].filament_detected == True
- %}
- {% if (printer.extruder.target != 0 and printer.extruder.temperature >= printer.extruder.target) or
- printer.extruder.temperature >= e_mintemp
- %}
- G1 E-2 F2700
- G1 E-2 Z0.2 F2400
- {% endif %}
- {% endif %}
- {% if (printer.gcode_move.position.z + 25) < z_max %}
- G1 Z+25 F3000
- {% else %}
- G1 Z+{(z_max - printer.gcode_move.position.z)} F3000
- {% endif %}
- G90
- G1 X0 Y360 F9000
- _ALL_FAN_OFF
- TURN_OFF_HEATERS
- M84 X Y Z E
- M220 S100
- M221 S100
- CLEAR_PAUSE
- #Clear Eddy-NG offsets
- PROBE_EDDY_NG_SET_TAP_OFFSET VALUE=0
- {action_respond_info("Finish Print!")}
- [gcode_macro _IDLE_TIMEOUT]
- gcode:
- {% if printer.print_stats.state == "paused" %}
- RESPOND TYPE=echo MSG="No operations in 10min!"
- {% else %}
- M84
- TURN_OFF_HEATERS
- {% endif %}
- [delayed_gcode exhaust_fan_off]
- gcode:
- SET_FAN_SPEED FAN=exhaust_fan SPEED=0
- [gcode_macro _ALL_FAN_OFF]
- gcode:
- M106 S0
- # Run the exhaust fan for another 2min after the other fans and then turn it off
- # UPDATE_DELAYED_GCODE ID=exhaust_fan_off DURATION=120
- M107
- [gcode_macro CLEAN_NOZZLE]
- gcode:
- {% if printer.toolhead.homed_axes != "xyz" %}
- G28
- {% endif %}
- G90
- G1 X348 Y0 Z0.3 F9000
- M117 Nozzle heating...
- M109 S200
- G91
- G1 Z10 F300
- G90
- M106 S255
- M104 S130
- M117 Clean nozzle
- G1 X315 Y360 F9000
- G1 Z0.2 F300
- G1 X352 F4500
- G1 Y360 X324
- G1 Y360 X345
- G1 Y360 X324
- G1 Y360 X345
- G1 Y360 X324
- G1 Y360 X345
- G1 Y360 X324
- G1 Y360 X345
- G1 Y360 X324
- G1 Y360 X325
- G1 Y356 X324 Z5
- G1 Z0.2
- G1 Y360 X324
- G1 Y357 X326
- G1 Y360 X326
- G1 Y357 X328
- G1 Y360 X330
- G1 Y357 X332
- G1 Y360 X334
- G1 Y357 X336
- G1 Y360 X338
- G1 Y357 X340
- G1 Y360 X324
- G1 Y357 X326
- G1 Y360 X326
- G1 Y357 X328
- G1 Y360 X330
- G1 Y357 X332
- G1 Y360 X334
- G1 Y357 X336
- G1 Y360 X338
- G1 Y357 X340
- G1 Y360 X324
- G1 Y357 X326
- G1 Y360 X326
- G1 Y357 X328
- G1 Y360 X330
- G1 Y357 X332
- G1 Y360 X334
- G1 Y357 X336
- G1 Y360 X338
- M400
- M117 Finished cleaning
- M109 S130
- M107
- G91
- G1 Z10 F300
- G90
- G28 Z0
- # Bring the nozzle to the center of the bed
- [gcode_macro CENTER]
- gcode:
- G0 X175 Y175 F5000
- [gcode_macro _CALIBRATION_ZOFFSET]
- gcode:
- M117 Calibrate Offset
- QUAD_GANTRY_LEVEL
- M140 S65
- G4 P500
- CLEAN_NOZZLE
- G4 P500
- M117 Z-offset calibration
- Z_OFFSET_CALIBRATION
- Z_OFFSET_APPLY_PROBE
- SAVE_CONFIG
- [delayed_gcode _auto_zoffset]
- gcode:
- SAVE_VARIABLE VARIABLE=offsetadjust VALUE={'%05.2f' % (0)}
- _CALIBRATION_ZOFFSET
- [gcode_macro _Delay_Calibrate]
- gcode:
- UPDATE_DELAYED_GCODE ID=_auto_zoffset DURATION=1.0
- [delayed_gcode TEST_BELT]
- initial_duration: 0.3
- gcode:
- {% set x_freq = printer.save_variables.variables.x_freq|float %}
- {% set y_freq = printer.save_variables.variables.y_freq|float %}
- {% set show_freq = printer.save_variables.variables.show_freq %}
- {% if show_freq == 1 %}
- M117 x {x_freq}, y {y_freq}
- SAVE_VARIABLE VARIABLE=show_freq VALUE=0
- {% endif %}
- #RAPPETOR QUAD GANTRY LEVEL
- # [gcode_macro QUAD_GANTRY_LEVEL]
- # rename_existing:QUAD_GANTRY_LEVEL_BASE
- # gcode:
- # {% set mesh_name = "default" %}
- # {% set mesh_calibrate_temp = printer['gcode_macro _global_var'].bed_mesh_calibrate_target_temp|int %}
- # {% set current_target_temp = printer.heater_bed.target|int %}
- # {action_respond_info("Check Heating!")}
- # {% if printer.heater_bed.temperature != mesh_calibrate_temp %}
- # {action_respond_info("The bed target temperature was not reached!")}
- # {action_respond_info("Bed heating...")}
- # {% if current_target_temp <= mesh_calibrate_temp %}
- # M190 S{mesh_calibrate_temp}
- # {% else %}
- # M190 S{current_target_temp}
- # {% endif %}
- # {% endif %}
- # {% if printer.toolhead.homed_axes|lower != "xyz" %}
- # G28
- # {% endif %}
- # QUAD_GANTRY_LEVEL_BASE
- # {% if current_target_temp == 0 %}
- # M140 S0
- # {% endif %}
- #EDDY-NG QUAD GANTRY LEVEL
- [gcode_macro QUAD_GANTRY_LEVEL]
- rename_existing: _QUAD_GANTRY_LEVEL
- gcode:
- SAVE_GCODE_STATE NAME=STATE_QGL
- BED_MESH_CLEAR
- # if QGL has not been done yet, do two rounds at 10mm height first
- # to correct any major skew
- {% if not printer.quad_gantry_level.applied %}
- _QUAD_GANTRY_LEVEL horizontal_move_z=10 retry_tolerance=1
- {% endif %}
- # Finish off with a low QGL for precision
- _QUAD_GANTRY_LEVEL horizontal_move_z=2
- RESTORE_GCODE_STATE NAME=STATE_QGL
- [gcode_macro PROBE_CALIBRATE]
- rename_existing:PROBE_CALIBRATE_BASE
- gcode:
- {% set current_target_temp = printer.heater_bed.target|int %}
- {% set z_offset_calibrate_temp = printer['gcode_macro _global_var'].bed_mesh_calibrate_target_temp|int %}
- {action_respond_info("z_offset_calibrate")}
- {% if printer.heater_bed.temperature != z_offset_calibrate_temp %}
- M140 S{z_offset_calibrate_temp}
- {action_respond_info("The bed target temperature was not reached!")}
- {action_respond_info("Bed heating...")}
- M190 S{z_offset_calibrate_temp}
- {% endif %}
- G28
- PROBE_CALIBRATE_BASE
- TESTZ z=-4
- [gcode_macro BED_MESH_CALIBRATE]
- rename_existing: BED_MESH_CALIBRATE_BASE
- gcode:
- {% set mesh_name = "default" %}
- {% set mesh_calibrate_temp = printer['gcode_macro _global_var'].bed_mesh_calibrate_target_temp|int %}
- {% set current_target_temp = printer.heater_bed.target|int %}
- {action_respond_info("Check Heating!")}
- {% if printer.heater_bed.temperature != mesh_calibrate_temp %}
- {action_respond_info("The bed target temperature was not reached!")}
- {action_respond_info("Bed heating...")}
- {% if current_target_temp <= mesh_calibrate_temp %}
- M190 S{mesh_calibrate_temp}
- {% else %}
- M190 S{current_target_temp}
- {% endif %}
- {% endif %}
- {% if printer.toolhead.homed_axes|lower != "xyz" %}
- G28
- {% endif %}
- BED_MESH_CLEAR
- BED_MESH_CALIBRATE_BASE ADAPTIVE=1 METHOD=rapid_scan
- {% if current_target_temp == 0 %}
- M140 S0
- {% endif %}
- [gcode_macro G34]
- gcode:
- BED_MESH_CLEAR
- {% if printer.toolhead.homed_axes|lower != "xyz" %}
- G28
- {% else %}
- G28 Z
- {% endif %}
- QUAD_GANTRY_LEVEL
- G28 Z
- G0 X175 Y175 Z30 F3600
- [delayed_gcode bed_mesh_init]
- initial_duration: .01
- gcode:
- BED_MESH_PROFILE LOAD=default
- [delayed_gcode _print_start_wait]
- gcode:
- {% if printer['gcode_macro START_PRINT'].state == 'Heating'%}
- {action_respond_info("Prepare->Heating!")}
- {% elif printer['gcode_macro START_PRINT'].state == 'Start' %}
- {action_respond_info("Heating->Start!")}
- {% endif %}
- {% if printer['gcode_macro START_PRINT'].execute|lower != 'false' %}
- START_PRINT
- {% endif %}
- [gcode_macro CANCEL_PRINT]
- description:
- rename_existing: CANCEL_PRINT_BASE
- gcode:
- {% set x_park = printer['gcode_macro _global_var'].cancel_park.x|float %}
- {% set y_park = printer['gcode_macro _global_var'].cancel_park.y|float %}
- {% set z_park = printer['gcode_macro _global_var'].cancel_park.z|float %}
- {% set z_lift_max = printer['gcode_macro _global_var'].z_maximum_lifting_distance %}
- {% set e_restract = printer['gcode_macro _global_var'].cancel_park.e|float %}
- {% set e_mintemp = printer.configfile.settings['extruder'].min_extrude_temp %}
- CANCEL_PRINT_BASE
- M117 Print canceled!
- G91
- {% if printer['filament_switch_sensor filament_sensor'].enabled == True and
- printer['filament_switch_sensor filament_sensor'].filament_detected == True
- %}
- {% if (printer.extruder.target != 0 and printer.extruder.temperature >= printer.extruder.target) or
- printer.extruder.temperature >= e_mintemp
- %}
- G1 E-{e_restract} F500
- {% else %}
- {action_respond_info("Nozzle not hot enough")}
- {% endif %}
- {% endif %}
- {%if (printer.gcode_move.position.z + 10) < z_lift_max %}
- G1 Z+10 F3000
- {% else %}
- G1 Z+{(z_lift_max - printer.gcode_move.position.z)} F3000
- {% endif %}
- G90
- G1 X{x_park} Y{y_park} F9000
- TURN_OFF_HEATERS
- _ALL_FAN_OFF
- CLEAR_PAUSE
- M84 X Y Z E
- M117 Ready
- {action_respond_info("Cancel Print Success!")}
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=state VALUE='"Prepare"'
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=record_extruder_temp VALUE=0
- SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=max_record_extruder_temp VALUE=0
- [gcode_macro PAUSE]
- rename_existing: PAUSE_BASE
- variable_state: 'normal'
- gcode:
- {% if printer.pause_resume.is_paused == False %}
- {% set x_park = printer['gcode_macro _global_var'].pause_park.x|float %}
- {% set y_park = printer['gcode_macro _global_var'].pause_park.y|float %}
- {% set e_restract = printer['gcode_macro _global_var'].pause_park.e|float %}
- {% set z_lift_max = printer['gcode_macro _global_var'].z_maximum_lifting_distance %}
- {% set state = params.STATE if 'filament_change' in params.STATE else 'normal' %}
- {action_respond_info("Pause Print!")}
- PAUSE_BASE
- M117 Pause Print!!!
- G91
- {% if (printer.gcode_move.position.z + 5) < z_lift_max %}
- G1 Z+5 F3000
- {% else %}
- G1 Z+{(z_lift_max - printer.gcode_move.position.z)} F3000
- {% endif %}
- G90
- {% if printer.gcode_move.position.x != x_park and
- printer.gcode_move.position.y != y_park
- %}
- G1 X{x_park} Y{y_park} F{printer["gcode_macro _global_var"].pause_resume_travel_speed * 60}
- {% endif %}
- M104 S{printer.extruder.target}
- {% if state == 'normal' %}
- {% if (printer.extruder.temperature + 5 >= printer.extruder.target) and (printer.extruder.temperature >= printer.configfile.settings['extruder'].min_extrude_temp) %}
- {% if printer['filament_switch_sensor filament_sensor'].enabled == True and
- printer['filament_switch_sensor filament_sensor'].filament_detected == True
- %}
- G91
- G1 E-{e_restract} F300
- G90
- {% elif printer['filament_switch_sensor filament_sensor'].enabled == True and
- printer['filament_switch_sensor filament_sensor'].filament_detected != True %}
- G91
- G1 E+95 F300
- G1 E-10 F1500
- G1 E-20 F600
- M400
- G4 P3000
- G1 E-50 F300
- G90
- {% endif %}
- {% endif %}
- {% elif state == 'filament_change' %}
- {% if (printer.extruder.temperature + 5 >= printer.extruder.target) and (printer.extruder.temperature >= printer.configfile.settings['extruder'].min_extrude_temp) %}
- G91
- G1 E+25 F300
- G1 E-10 F1500
- G1 E-20 F600
- M400
- G4 P3000
- G1 E-50 F300
- G90
- {% endif %}
- {% endif %}
- {% endif %}
- [delayed_gcode _resume_wait]
- gcode:
- {% if printer['gcode_macro RESUME'].execute|lower != 'false' %}
- RESUME
- {% endif %}
- [gcode_macro RESUME]
- description: Pause the actual running print
- rename_existing: RESUME_BASE
- variable_state: 'normal'
- gcode:
- {% set e_restract = printer['gcode_macro _global_var'].pause_park.e|float %}
- {% set extruder_target_temp = printer.extruder.target|int %}
- {% set state = params.STATE if 'filament_change' in params.STATE else 'normal' %}
- {% if state == 'filament_change' %}
- {% if printer["filament_switch_sensor filament_sensor"].enable == True and
- printer["filament_switch_sensor filament_sensor"].filament_detected != True
- %}
- {action_respond_info("Please Insert filament in Sensor!")}
- {% else %}
- {% if printer.extruder.temperature + 5 >= printer.extruder.target %}
- G91
- G1 E30 F300
- G1 E10 F150
- G90
- {% else %}
- M104 S{extruder_target_temp}
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{extruder_target_temp}
- G91
- G1 E30 F300
- G1 E10 F150
- G90
- {% endif %}
- {action_respond_info("Print resumming!")}
- RESUME_BASE
- {% endif %}
- {% elif state == 'normal' %}
- {% if printer['filament_switch_sensor filament_sensor'].enable != True and
- printer['filament_switch_sensor filament_sensor'].filament_detected != True
- %}
- {action_respond_info("Please Insert filament in Sensor!")}
- {% else %}
- {action_respond_info("Print resumming!")}
- G91
- G1 E{e_restract} F300
- G90
- M117 Printing now!!!
- RESUME_BASE
- {% endif %}
- {% endif %}
- [gcode_macro LOAD_FILAMENT]
- gcode:
- {% set extruder_temp = printer['gcode_macro _global_var'].load_filament_extruder_temp|int %}
- {% set current_target_temp = printer.extruder.target|int %}
- {% if printer.print_stats.state != "printing" %}
- {% if printer.print_stats.state != "paused" %}
- M104 S{extruder_temp}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{extruder_temp}
- {% else %}
- {% if printer.extruder.target == 0 %}
- M104 S{extruder_temp}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{extruder_temp}
- {% else %}
- M104 S{printer.extruder.target}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{printer.extruder.target}
- {% endif %}
- {% endif %}
- M117 Extruding...
- G91
- G1 E75 F300
- G1 E30 F150
- G1 E-2 F300
- G90
- M400
- M117 Filament loaded.
- M400
- {% if current_target_temp == 0 or printer.print_stats.state != "paused"%}
- M104 S0
- {% endif %}
- {% else %}
- {action_respond_info("Don't load filament during printing!!!")}
- {% endif %}
- [gcode_macro UNLOAD_FILAMENT]
- gcode:
- {% set extruder_temp = printer['gcode_macro _global_var'].load_filament_extruder_temp|int %}
- {% set current_target_temp = printer.extruder.target|int %}
- {% if printer.print_stats.state != "printing" %}
- {% if printer.print_stats.state != "paused" %}
- M104 S{extruder_temp}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{extruder_temp}
- {% else %}
- {% if printer.extruder.target == 0 %}
- M104 S{extruder_temp}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{extruder_temp}
- {% else %}
- M104 S{printer.extruder.target}
- M117 Nozzle heating...
- {action_respond_info("Nozzle not hot enough!")}
- {action_respond_info("Nozzle heating...")}
- M109 S{printer.extruder.target}
- {% endif %}
- {% endif %}
- M117 Retracting...
- G91
- G1 E+25 F300
- G1 E-10 F1500
- G1 E-20 F600
- M400
- G4 P3000
- G1 E-50 F300
- G90
- M400
- M117 Filament ejected.
- M400
- {% if current_target_temp == 0 or printer.print_stats.state != "paused"%}
- M104 S0
- {% endif %}
- {% else %}
- {action_respond_info("Don't unload filament during printing!!!")}
- {% endif %}
- [gcode_macro M109]
- rename_existing: M99109
- gcode:
- {% set s = params.S|float %}
- M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
- {% if s != 0 %}
- TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s-1} MAXIMUM={s+1}
- {% endif %}
- [gcode_macro M190]
- rename_existing: M99190
- gcode:
- {% set s = params.S|float %}
- M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
- {% if s != 0 %}
- TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-1} MAXIMUM={s+1}
- {% endif %}
- [gcode_macro M600]
- gcode:
- PAUSE STATE=filament_change
Advertisement
Add Comment
Please, Sign In to add comment