Advertisement
Agsikap3D

macros.cfg

Oct 16th, 2024
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 7.32 KB | None | 0 0
  1. eiiii#[gcode_macro M300]
  2. #gcode:  SET_PIN PIN=_BEEPER_pin VALUE={S}
  3. #        G4 P{P}
  4. #        SET_PIN PIN=_BEEPER_pin VALUE=0
  5.  
  6. [gcode_macro PARK]
  7. gcode:
  8.     PAUSE
  9.  
  10. [gcode_macro M600]
  11. description: Filament change macro
  12. gcode:
  13.   {% if printer.toolhead.homed_axes != "xyz" %}
  14.     M118 Homing
  15.     G28
  16.   {% endif %}
  17.   {% if printer.extruder.can_extrude == 0 %}
  18.     {% set max_z = printer.toolhead.axis_maximum.z|float %}
  19.     {% set act_z = printer.toolhead.position.z|float %}
  20.     {% if act_z > (max_z - 20.0) %}
  21.         {% set z_safe = max_z %}
  22.     {% else %}
  23.         {% set z_safe = (act_z + 20.0) %}
  24.     {% endif %}
  25.     G91
  26.     G1 Z{z_safe}
  27.     G90
  28.     G1 X0 Y0 F2100
  29.     M118 Acquiring temperature
  30.     M109 S200
  31.   {% endif %}  
  32.   {% if printer.pause_resume.is_paused == 0 %}
  33.     PAUSE
  34.   {% endif %}
  35.   M118 First UNLOAD, then LOAD new and RESUME when ready
  36.  
  37. #[gcode_macro UNLOAD]
  38. description: Unload filament helper
  39. gcode:
  40.   {% if printer.pause_resume.is_paused == 1 %}
  41.     {% if printer.extruder.can_extrude == 1 %}
  42.       G91
  43.       G1 E5 F300
  44.       G1 E-50 F300
  45.       G90
  46.     {% else %}
  47.       RESPOND TYPE=error MSG="Extrude below minimum temp"
  48.     {% endif %}
  49.   {% else %}
  50.     RESPOND TYPE=error MSG="Printer must be paused"
  51.   {% endif %}
  52.  
  53. #[gcode_macro LOAD]
  54. description: Load filament helper
  55. gcode:
  56.   {% if printer.pause_resume.is_paused == 1 %}
  57.     {% if printer.extruder.can_extrude == 1 %}
  58.       G91
  59.       G1 E20 F300
  60.       G90
  61.     {% else %}
  62.       RESPOND TYPE=error MSG="Extrude below minimum temp"
  63.     {% endif %}
  64.   {% else %}
  65.     RESPOND TYPE=error MSG="Printer must be paused"
  66.   {% endif %}
  67.  
  68. [gcode_macro LOW_TEMP_CHECK_T]
  69. gcode:
  70.     {% if printer.extruder.target != 0 %} # if there is a setpoint for extruder
  71.         {% if printer.extruder.temperature < printer.extruder.target %} # if not reached, heat
  72. #            M118 Heating from {printer.extruder.temperature} to {printer.extruder.target}.
  73.             M109 S{printer.extruder.target|float}
  74.         {% endif %}
  75.     {% else %} # if no setpoint for extruder
  76.         {% if printer.extruder.target < T %}  # heat to T.
  77. #            M118 No setpoint, heating to {T}.
  78.             M109 S{T}
  79.         {% endif %}
  80.     {% endif %}
  81.  
  82. [gcode_macro M900]
  83. description: Set pressure advance
  84. gcode:
  85.   SET_PRESSURE_ADVANCE ADVANCE={params.K|default(0)}
  86.  
  87. [gcode_macro PAUSE]
  88. rename_existing: BASE_PAUSE
  89. gcode:
  90.     ##### set defaults #####
  91.     {% set x = params.X|default(10) %}       #edit to your park position
  92.     {% set y = params.Y|default(170) %}      #edit to your park position
  93.     {% set z = params.Z|default(20)|float %} #edit to your park position
  94.     {% set e = params.E|default(1) %}        #edit to your retract length
  95.     ##### calculate safe lift position #####
  96.     {% set max_z = printer.toolhead.axis_maximum.z|float %}
  97.     {% set act_z = printer.toolhead.position.z|float %}
  98.     {% set lift_z = z|abs %}
  99.     {% if act_z < (max_z - lift_z) %}
  100.         {% set z_safe = lift_z %}
  101.     {% else %}
  102.         {% set z_safe = max_z - act_z %}
  103.     {% endif %}
  104.     ##### end of definitions #####
  105.     SAVE_GCODE_STATE NAME=PAUSE_state
  106.     BASE_PAUSE
  107.     G91
  108.     G1 E-{e} F300
  109.     G1 Z{z_safe}
  110.     G90
  111.     G1 X{x} Y{y} F4000
  112.  
  113. [gcode_macro RESUME]
  114. rename_existing: BASE_RESUME
  115. gcode:
  116.     ##### set defaults #####
  117.     {% set e = params.E|default(1) %} #edit to your retract length
  118.     G91
  119.     G1 E{e} F300
  120.     G90
  121.     RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1
  122.     BASE_RESUME  
  123.  
  124. [gcode_macro CANCEL_PRINT]
  125. rename_existing: BASE_CANCEL_PRINT
  126. gcode:
  127.     {% set ENDY = printer.toolhead.axis_maximum.y|float - 10 %}
  128.     G91      
  129.     G1    E-1 F300
  130.     G1 Z1 E-1 F4000
  131.     G90
  132.     G1 X0 Y{ENDY}
  133.     M84
  134.     M106 S0
  135.     TURN_OFF_HEATERS
  136.     CLEAR_PAUSE
  137.     SDCARD_RESET_FILE
  138.     BASE_CANCEL_PRINT
  139.  
  140. #[gcode_macro Bed_Mesh]
  141. gcode:
  142.     {% if printer.toolhead.homed_axes != "xyz" %}
  143.         G28                                                                     # home if not homed
  144.     {% endif %}
  145.     SAVE_GCODE_STATE NAME=G29_STATE
  146.     {% if T|int > 30 %}
  147.         M140 S{T}                                                               # set bed temperature
  148.         M190 S{T}                                                               # wait for bed temperature
  149.     {% endif %}
  150.     BED_MESH_CALIBRATE
  151.     G0 X10 Y10 F6000
  152.  
  153.  
  154. #[gcode_macro PROBE_CALIBRATE]
  155. rename_existing: BASE_PROBE_CALIBRATE
  156. gcode:
  157.     {% if printer.toolhead.homed_axes != "xyz" %}
  158.         G28                                                                     # home if not homed
  159.     {% endif %}
  160.     BASE_PROBE_CALIBRATE
  161.  
  162. #[gcode_macro PRIME_LINE]
  163. #PrusaSliser: PRIME_LINE F={first_layer_speed}
  164. #Cura: PRIME_LINE F={speed_print_layer_0}
  165. gcode:
  166.     {% set feedrate = params.F|default(20)|float * 60 %}
  167.     {% set length = params.L|default(120)|float %}
  168.     {% if 'Y' in params %}
  169.         {% set length_max = ( printer.toolhead.axis_maximum.y|float - 10.0 ) %}
  170.     {% else %}
  171.         {% set length_max = ( printer.toolhead.axis_maximum.x|float - 10.0 ) %}
  172.     {% endif %}
  173.     {% if length > length_max %}
  174.         {% set length = length_max %}
  175.     {% endif %}
  176.     {% set width = printer.configfile.settings.extruder.nozzle_diameter|float %}
  177.     {% set height = ( (width / 0.04)|int - (width / 0.04 / 4)|int )|float * 0.04 %}
  178.     {% set extrude = 1.5 * length * width * height / 2.4 %}
  179.     SAVE_GCODE_STATE NAME=PRIME_LINE_STATE
  180.     SET_IDLE_TIMEOUT TIMEOUT=7200
  181.     {% if 'Y' in params %}
  182.         {% set x_start = 5.0 %}
  183.         {% set y_start = (printer.toolhead.axis_maximum.y|float - length) / 2 %}
  184.         G0 X{x_start} Y{y_start} Z{height} F5000                                # move to start position
  185.         G91                                                                     # relative positioning
  186.         G1 Y{length} E{extrude} F{feedrate}                                     # draw the 1st line
  187.         G1 X{width} F5000                                                       # move to the next line
  188.         G1 Y-{length} E{extrude} F{feedrate}                                    # draw the 2nd line
  189.     {% else %}
  190.         {% set x_start = (printer.toolhead.axis_maximum.x|float - length) / 2 %}
  191.         {% set y_start = 5.0 %}
  192.         G0 X{x_start} Y{y_start} Z{height} F5000                                # move to start position
  193.         G91                                                                     # relative positioning
  194.         G1 X{length} E{extrude} F{feedrate}                                     # draw the 1st line
  195.         G1 Y{width} F5000                                                       # move to the next line
  196.         G1 X-{length} E{extrude} F{feedrate}                                    # draw the 2nd line
  197.     {% endif %}
  198.     RESTORE_GCODE_STATE NAME=PRIME_LINE_STATE
  199.  
  200. #[gcode_macro _FILAMENT_BALL]
  201. description: Helper: Round the filament tip
  202. gcode:
  203.   ##### set default parameter value #####
  204.   {% set wait = params.WAIT|default(0) %}
  205.   ##### end of definitions #####
  206.   SAVE_GCODE_STATE NAME=STATE_FILAMENT_BALL
  207.   # Ball up the filament tip
  208.   G92 E0       ; zero the extruder
  209.   M82          ; absolute extrusion
  210.   G1 E2 F3600
  211.   G1 E0 F3600
  212.   G1 E4 F3600
  213.   G1 E0 F3600
  214.   G1 E8 F3600
  215.   G1 E0 F3600
  216.   M83          ; relative extrusion
  217.   G1 E-25 F3600
  218.   G4 P{wait|int * 1000}
  219.   RESTORE_GCODE_STATE NAME=STATE_FILAMENT_BALL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement