[gcode_macro ABL_MESH] gcode: SMARTHOME QUAD_GANTRY_LEVEL G28 BED_MESH_CALIBRATE BED_MESH_PROFILE SAVE=default M117 Restarting... SAVE_CONFIG [gcode_macro CLEAN_EXTRUDER] gcode: M117 Cleaning # Indicate nozzle clean in progress on LCD M109 S255 # Uncomment to set your own temp [run warmer to clean out nozzle] M107 # Turn layer fan off G21 # Set to metric [change to G20 if you want Imperial] G90 # Force coordinates to be absolute relative to the origin G28 # Home X/Y/Z axis G0 X1 Y0 Z0.15 F9000 # Move in 1mm from edge and up [z] 0.15mm G92 E0 # Set extruder to [0] zero G1 Y290 E100 F500 # Extrude 100mm filiment along Y axis 290mm long to prime and clean the nozzle G92 E0 # Reset extruder to [0] zero end of cleaning run G1 E-3 F500 # Retract filiment by 3 mm to reduce string effect G1 X3 Y290 Z15 F9000 # Move over and rise to safe Z height G1 X3 Y0 Z15 F9000 # Move back to front of bed at safe Z height to shear strings G1 E3 F500 # Uncomment if you believe exruder will be reset [gcode_macro TUNE_EXTRUDER] gcode: M117 Tuning G28 X0 Y0 Z0 # HOME ALL AXIS G90 # ABSOLUTE POSITIONING G92 E0 # SET EXTRUDER TO ZERO VALUE M190 S60 M104 S215 M109 M82 G01 E100 F50 # ADVANCE 100MM OF FILAMENT M140 S0 M104 S0 G90 E0 # Return to absolute positioning [gcode_macro BLTOUCH_RESET] gcode: BLTOUCH_DEBUG COMMAND=reset # Lighting Control [gcode_macro lights_on] gcode: SET_PIN PIN=caselight VALUE=100 [gcode_macro lights_off] gcode: SET_PIN PIN=caselight VALUE=0 [gcode_macro lights_toggle] gcode: {% if printer["output_pin caselight"].value == 100 %} lights_off {% else %} lights_on {% endif %} [gcode_macro GOTO_CENTER] gcode: ##### Get Boundaries ##### {% set mid_x = (printer.toolhead.axis_maximum.x|float / 2)|float %} {% set mid_y = (printer.toolhead.axis_maximum.y|float / 2)|float %} LIFT_Z G90 G0 X{mid_x} Y{mid_y} F6000 [gcode_macro LIFT_Z] gcode: ##### Get Boundaries ##### {% set max_z = printer.toolhead.axis_maximum.z|float %} {% set act_z = printer.toolhead.position.z|float %} ##### Calculate save move ##### {% if act_z < (max_z - 2.0) %} {% set z_safe = 2.0 %} {% else %} {% set z_safe = max_z - act_z %} {% endif %} G91 G0 Z{z_safe} F2000 G90 [gcode_macro SAVE_AT_END] variable_save: 0 gcode: SET_GCODE_VARIABLE MACRO=SAVE_AT_END VARIABLE=save VALUE=1 [gcode_macro SAVE_IF_SET] gcode: {% if printer["gcode_macro SAVE_AT_END"].save == 1 %} {printer.gcode.action_respond_info("Saving was requested - saving and restarting now")} SAVE_CONFIG {% endif %} [gcode_macro TUNE_HOTEND] gcode: M106 S64 M117 Hotend PID Cal PID_CALIBRATE HEATER=extruder TARGET=245 M117 Restarting... SAVE_AT_END [gcode_macro TUNE_HOTBED] gcode: M117 Hotbed PID Cal GOTO_CENTER G0 Z5 F6000 PID_CALIBRATE HEATER=heater_bed TARGET=100 M117 Restarting... SAVE_AT_END [gcode_macro TUNE_ENDSTOP_PHASE] gcode: M117 Running Endstop Cal SMARTHOME G1 X0 Y0 Z5 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X60 Y60 Z60 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X25 Y25 Z25 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X119 Y119 Z1 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X100 Y100 Z100 F6000 G28 ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_z [gcode_macro heat_soak] gcode: {% if printer.toolhead.status == "Ready" %} G28 G1 Z10 G1 X0 Y0 Z5 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X0 Y0 Z5 F6000 G28 ENDSTOP_PHASE_CALIBRATE G1 X150 Y150 F6000 M140 S100 UPDATE_DELAYED_GCODE ID=heatsoakDelay DURATION=600 {% else %} M117 "Load disabled while printing!" {% endif %} [delayed_gcode heatsoakDelay] gcode: M117 SET_PIN PIN=caselight VALUE=1 G4 P250 SET_PIN PIN=caselight VALUE=0 G4 P250 SET_PIN PIN=caselight VALUE=1 G4 P250 SET_PIN PIN=caselight VALUE=0 ## Tuning Adjustments ## Adjust Z (SET_GCODE_OFFSET) based on each filament type (based on bed temp) [gcode_macro TEMPADJUSTOFFSET] gcode: #ABS {% if printer.heater_bed.target >= 100 %} {% endif %} #PETG {% if printer.heater_bed.target > 65 and printer.heater_bed.target < 100 %} SET_GCODE_OFFSET Z=0 MOVE=1 SET_GCODE_OFFSET Z_ADJUST=0.05 MOVE=1 {% endif %} #PLA {% if printer.heater_bed.target <= 65 %} SET_GCODE_OFFSET Z=0 MOVE=1 SET_GCODE_OFFSET Z_ADJUST=0.1 MOVE=1 {% endif %} ## Pressure Advance Adjustments ## Use a different PA setting for each filiment type (uses bed temp to determine) [gcode_macro TEMPADJUSTPA] gcode: #ABS {% if printer.heater_bed.target >= 100 %} SET_PRESSURE_ADVANCE ADVANCE=0.05585 {% endif %} #PETG {% if printer.heater_bed.target > 65 and printer.heater_bed.target < 100 %} SET_PRESSURE_ADVANCE ADVANCE=0.0785 {% endif %} #PLA {% if printer.heater_bed.target <= 65 %} SET_PRESSURE_ADVANCE ADVANCE=0.0325 {% endif %}