Skip to content

Instantly share code, notes, and snippets.

#### END_PRINT ####
[gcode_macro END_PRINT]
gcode:
#Get Printer built volume dimensions
{% set X_MAX = printer.toolhead.axis_maximum.x|default(100)|float %}
{% set Y_MAX = printer.toolhead.axis_maximum.y|default(100)|float %}
#Fix-up extruder
G91
G1 E-2 F2700
[gcode_macro CANCEL_PRINT]
description: Cancels the printer
rename_existing: CANCEL_PRINT_BASE
gcode:
END_PRINT
TURN_OFF_HEATERS
CLEAR_PAUSE
#SDCARD_RESET_FILE
CANCEL_PRINT_BASE
[gcode_macro PAUSE]
description: Pausa la impresion actual.
rename_existing: BASE_PAUSE
gcode:
{% if not printer.pause_resume.is_paused %}
{% set vg = printer["gcode_macro _VAR_GLOBALS"] %}
SET_GCODE_VARIABLE MACRO=_VAR_GLOBALS VARIABLE=temp_extruder_pause VALUE={printer.extruder.target}
M400
SAVE_GCODE_STATE NAME=PAUSE_state
BASE_PAUSE
[gcode_macro RESUME]
description: Reanuda la impresion si la impresora esta en pausa.
rename_existing: RESUME_BASE
gcode:
{% if printer.pause_resume.is_paused %}
{% set vg = printer["gcode_macro _VAR_GLOBALS"] %}
{% if printer.extruder.can_extrude %}
G91
G1 E{vg.retract_length} F2100
[gcode_macro MOVE_PARK]
description: Aparca el cabezal de impresion, se puede ajustar en _VAR_GLOBALS.
gcode:
{% set vg = printer["gcode_macro _VAR_GLOBALS"] %}
# Se realiza el calculo de la posicion Z, X e Y se definen en _VAR_GLOBALS.
{% set max_z = printer.toolhead.axis_maximum.z|float %}
{% set pos_z = printer.toolhead.position.z|float %}
{% if pos_z < vg.z_park %}
#### START PRINT ####
[gcode_macro START_PRINT]
# Configure prime line - From Klipper-Adaptive-Meshing-Purging https://github.com/kyleisah/Klipper-Adaptive-Meshing-Purging
variable_adaptive_enable: True # Change to False if you'd like the purge to be in the same spot every print
variable_z_height: 0.3 # Height above the bed to purge
variable_purge_amount: 35 # Amount of filament in millimeters to purge
variable_line_length: 70 # Overall desired length of purge line in millimeters, around 1/5th of X axis length is a good starting value
variable_flow_rate: 12 # Desired flow rate in mm3/s (Around 12 for standard flow hotends, around 24 for high flow hotends)
variable_x_default: 10 # Default X location to purge. If adaptive_enable is True, this is overwritten
variable_y_default: 10 # Default Y location to purge. If adaptive_enable is True, this is overwritten
[gcode_macro START_PRINT]
description: Uso: PRINT_START TEMP_EXTRUDER=<[TempI] | [Temp1C , TempI]> TEMP_BED=<[TempI] | [Temp1C , TempI]>\n Opcionales\n Temp Cabina TEMP_CHAMBER=[TempCab]\n mallado inteligente PRINT_MIN=[MINX,MINY] PRINT_MAX=[MAXX,MAXY]
gcode:
{% if params.TEMP_EXTRUDER and params.TEMP_BED %}
{% set vg = printer["gcode_macro _VAR_GLOBALS"] %} ; se accede a las variables globales
# El parametro TEMP_EXTRUDER se puede utilizar con un valor como con dos valores separados por una coma y entre []
# TEMP_EXTRUDER=250 (unico valor para ambas variables(temperatura primera capa e impresion))
# TEMP_EXTRUDER=260, 250 (cada variable tiene su valor(temperatura primera capa e impresion))
######################################################################
# CAMBIO DE FILAMENTO
######################################################################
# M600
# M601
# CHANGE_FILAMENT
# LOAD_FILAMENT
# UNLOAD_FILAMENT
# NOTIFY
# BEEP
# Carga las variables globales de forma automática
[delayed_gcode activate_VAR_GLOBALS]
initial_duration: 1
gcode:
_VAR_GLOBALS ; Se cargan las variables globales al iniciar la impresion.
[gcode_macro _VAR_GLOBALS]
# Temperaturas de impresion
variable_temp_extruder : 225.0 # temperatura de impresion
variable_temp_extruder_pause : 0 # temperatura de impresion antes de la pausa
@LauOtero
LauOtero / bambu_studio.cfg
Created February 5, 2023 19:37
Bambu Studio macro support
[gcode_arcs]
resolution: 0.1
[gcode_macro m201]
gcode:
{% if 'X' in params or 'Y' in params %}
{% set accel = (params.X|default(params.Y)|float,
params.Y|default(params.X)|float)|min %}
SET_VELOCITY_LIMIT ACCEL={accel} ACCEL_TO_DECEL={accel * 0.5}
{% else %}