3D-Printer-Conf/Neptune4Pro/printer.cfg

906 lines
23 KiB
INI
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

####################################################################################
# Machine type: NEPTUNE 4 PRO
# Current configuration version: V1.4
# Date2023-12-1
####################################################################################
# This product (Neptune 4/4pro/4plus/4max) adopts Klipper firmware
# and does not support users to update the official klipper/fluidd
# /moonraker by themselves, otherwise the machine will not work properly.
# If you want to DIY and are an expert or interested in this field,
# we recommend that you prepare your own tools for burning images so
# that you can restore them if problems arise. Please contact after-sales
# support team for tutorials on burning images. Thank you for your cooperation!
####################################################################################
# This file contains common pin mappings for ZNP-K1-V1.0
# boards. To use this config, the firmware should be compiled for the
# STM32F402. When running "make menuconfig", enable "extra low-level
# configuration setup", select the 32KiB bootloader, and serial (on
# USART1 PA10/PA9) communication.
# The "make flash" command does not work on the ZN-K1-V1.0. Instead,
# after running "make", copy the generated "out/klipper.bin" file to a
# file named "elegoo_k1.bin" on an SD card and then restart the ZNP-K1-V1.0
# with that SD card.
# See docs/Config_Reference.md for a description of parameters.
####################################################################################
[include plr.cfg]
[include macros.cfg]
# [include adxlmcu.cfg]
[mcu]
# The hardware use USART1 PA10/PA9 connect to RK3328
serial: /dev/ttyS0
restart_method: command
[stepper_x]
step_pin:PC14
dir_pin:PC13
enable_pin:!PC15
microsteps: 16
rotation_distance: 40
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
endstop_pin:PC0
position_min: -10
position_endstop:-8
position_max: 235
homing_speed:50
homing_retract_dist:5
homing_positive_dir:false
[stepper_y]
step_pin:PB4
dir_pin:PB3
enable_pin:!PB5
microsteps:16
rotation_distance: 40
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
endstop_pin:PB8
position_min: -2
position_endstop:0
position_max:235
homing_speed:50
homing_retract_dist:5
homing_positive_dir:false
[stepper_z]
step_pin:PC10
dir_pin:!PA15
enable_pin: !PC11
microsteps: 16
rotation_distance: 8
full_steps_per_rotation: 200
endstop_pin:probe:z_virtual_endstop ## PB12 for Z-max; endstop have'!' is NO
## Z-position of nozzle (in mm) to z-endstop trigger point relative to print surface (Z0)
## (+) value = endstop above Z0, (-) value = endstop below
## Increasing position_endstop brings nozzle closer to the bed
## After you run Z_ENDSTOP_CALIBRATE, position_endstop will be stored at the very end of your config
#position_endstop:-5
position_max: 268
position_min: -5
homing_speed: 8
homing_retract_dist: 5
second_homing_speed: 3
[extruder]
step_pin:PA5
dir_pin:!PA6
enable_pin:!PA4
microsteps:16
rotation_distance: 29.07 # Sunlu PLA
# rotation_distance: 28 # #3DFillies PETG
# rotation_distance: 28 # #3DFillies PLA Matte
#rotation_distance: 28.7086 #31.4 #Bondtech 5mm Drive Gears # DEFAULT
gear_ratio: 52:10
full_steps_per_rotation: 200 #200 for 1.8 degree, 400 for 0.9 degree
nozzle_diameter: 0.400
filament_diameter: 1.750
min_temp: 0
max_temp: 330
heater_pin: PA7
sensor_type:NTC 100K MGB18-104F39050L32
sensor_pin: PA1
max_power: 1
# 255C [3DFillies PETG]
# control: pid
# pid_kp: 20.038
# pid_ki: 0.947
# pid_kd: 105.953
# 250C
# control: pid
# pid_kp: 21.629
# pid_ki: 1.276
# pid_kd: 91.651
# 220C [Sunlu PLA+ 2.0]
control: pid
pid_kp: 19.639
pid_ki: 0.977
pid_kd: 98.687
# 215C [Sunlu PLA]
# control: pid
# pid_kp: 21.4275
# pid_ki: 1.172
# pid_kd: 96.537
# 210C [3DFillies PLA Mate]
# control: pid
# pid_kp: 22.471
# pid_ki: 1.338
# pid_kd: 94.378
#control : pid
#pid_kp : 26.213
#pid_ki : 1.304
#pid_kd : 131.721
# pressure_advance: 0.0475 # 3DFillies PETG
pressure_advance: 0.02 # [SUNLU PLA+ V2]
# pressure_advance: 0.021 # [3DFillies PLA Mate, SUNLU PLA]
#pressure_advance: 0.024 #DEFAULT
pressure_advance_smooth_time: 0.01
instantaneous_corner_velocity: 2.5
max_extrude_only_distance: 300
max_extrude_only_velocity:30
max_extrude_only_accel:5000
max_extrude_cross_section: 99
min_extrude_temp:0
[verify_heater extruder]
max_error: 120
check_gain_time:30
hysteresis: 10
heating_gain: 2
[heater_bed]
heater_pin:PB10
sensor_type: NTC 100K MGB18-104F39050L32
sensor_pin: PA0
max_power: 1.0
# 80C
# control: pid
# pid_Kp: 70.251
# pid_Ki: 2.178
# pid_Kd: 566.400
# 75C
# control: pid
# pid_Kp: 68.956
# pid_Ki: 2.168
# pid_Kd: 548.198
# 65C
control: pid
pid_kp: 69.585
pid_ki: 2.220
pid_kd: 545.376
# Default
#control = pid
#pid_kp = 75.397
#pid_ki = 0.823
#pid_kd = 1727.531
min_temp: 0
max_temp: 120
[verify_heater heater_bed]
max_error: 120
check_gain_time:120
hysteresis: 10
heating_gain: 2
[respond]
default_type: echo
default_prefix: echo:
[virtual_sdcard]
path: ~/gcode_files
on_error_gcode:
# test OK
G91
G1 Z25 F900
G90
TURN_OFF_HEATERS
M106 S100
M84
M300 P10000 S1
G4 P300
M300
M300
M300
M300
M300
M300
M300
M300
M300
M300
M300
########################################
# PRINT_START/CANCEL_PRINT/PAUSE/RESUME/filament_switch_sensor
########################################
[print_stats]
[gcode_move]
[gcode_macro PRINT_START]
gcode:
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=True
G92 E0
G90
CLEAR_PAUSE
M117 Printing
[gcode_macro PRINT_END]
gcode:
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
RUN_SHELL_COMMAND CMD=clear_plr
clear_last_file
{% set RUN_VELOCITY = printer.configfile.settings['printer'].max_velocity|float %}
{% set RUN_ACCEL = printer.configfile.settings['printer'].max_accel|float %}
{% set RUN_DECEL = printer.configfile.settings['printer'].max_accel_to_decel|float %}
SET_VELOCITY_LIMIT VELOCITY={RUN_VELOCITY} ACCEL={RUN_ACCEL} ACCEL_TO_DECEL={RUN_DECEL}
M220 S100
M221 S100
{% set z = params.Z|default(100)|int %}
{% if (printer.gcode_move.position.z+5) < z %}
G90
G1 Z{z+5} F6000
{% endif %}
TURN_OFF_HEATERS
M107
M84
[gcode_macro CANCEL_PRINT]
rename_existing: BASE_CANCEL_PRINT
gcode:
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
RUN_SHELL_COMMAND CMD=clear_plr
clear_last_file
{% set RUN_VELOCITY = printer.configfile.settings['printer'].max_velocity|float %}
{% set RUN_ACCEL = printer.configfile.settings['printer'].max_accel|float %}
{% set RUN_DECEL = printer.configfile.settings['printer'].max_accel_to_decel|float %}
SET_VELOCITY_LIMIT VELOCITY={RUN_VELOCITY} ACCEL={RUN_ACCEL} ACCEL_TO_DECEL={RUN_DECEL}
{% set z = params.Z|default(100)|int %}
{% set x_park = params.X|default(printer.toolhead.axis_minimum.x+5)|int %}
{% set y_park = params.Y|default(printer.toolhead.axis_maximum.y-5)|int %}
SET_IDLE_TIMEOUT TIMEOUT={printer.configfile.settings.idle_timeout.timeout}
SDCARD_RESET_FILE
M220 S100
M221 S100
M400
G91
M83
G1 E-10.0 F1200
TURN_OFF_HEATERS
M107
{% if (printer.gcode_move.position.z+5) < z %}
G90
G0 X{x_park} Y{y_park} Z{z+5} F6000
{% endif %}
{%if (printer.gcode_move.position.z+5) >= z %}
{%if (printer.gcode_move.position.z+5) < printer.toolhead.axis_maximum.z %}
G91
G1 Z5 F300
G90
G0 X{x_park} Y{y_park} F6000
{% else %}
G90
G0 X{x_park} Y{y_park} Z{printer.toolhead.axis_maximum.z} F6000
{% endif %}
{% endif %}
M84
[pause_resume]
recover_velocity: 50.0
[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
gcode:
M400
{% set z = params.Z|default(30)|int %}
{% set E = (params.E|default(2))|float %}
{% set x_park = params.X|default(printer.toolhead.axis_minimum.x+5)|int %}
{% set y_park = params.Y|default(printer.toolhead.axis_maximum.y-5)|int %}
{% if (printer.gcode_move.position.x) <= (x_park+1) and (printer.gcode_move.position.y) >= (y_park-1) %}
M400
{% else %}
{% set position = printer.gcode_move.gcode_position %}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=saved_x VALUE="{position.x}"
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=saved_y VALUE="{position.y}"
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=saved_z VALUE="{position.z}"
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=saved_e VALUE="{E}"
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=etemp VALUE={printer['extruder'].target}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=bed_temp VALUE={printer['heater_bed'].target}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=bed1_temp VALUE={printer['heater_generic heater_bed1'].target}
SAVE_GCODE_STATE NAME=timelapse_state_a
M83
G91
{% if (printer.gcode_move.position.z+5) < printer.toolhead.axis_maximum.z %}
G1 E-2 X3 Z1 F2100
G1 Z4 F600
{% endif %}
SAVE_GCODE_STATE NAME=timelapse_state_b
G90
{% if (printer.gcode_move.position.z+5) < z %}
G1 Z{z+5} X{x_park} Y{y_park} E-20 F6000
{% else %}
G1 X{x_park} Y{y_park} E-20 F6000
{% endif %}
M400
M25
SET_IDLE_TIMEOUT TIMEOUT=1200
M400
{% endif %}
[gcode_macro RESUME]
rename_existing: BASE_RESUME
variable_zhop: 0
variable_etemp: 0
variable_bed_temp: 0
variable_bed1_temp: 0
variable_saved_x: 0.0
variable_saved_y: 0.0
variable_saved_z: 0.0
variable_saved_e: 0.0
gcode:
M24
{% set e = params.E|default(2)|int %}
SET_IDLE_TIMEOUT TIMEOUT={printer.configfile.settings.idle_timeout.timeout}
{% if printer[printer.toolhead.extruder].temperature < etemp-4 %}
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={etemp}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bed_temp}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={bed1_temp}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={etemp-4} MAXIMUM={etemp+10}
{% endif %}
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={etemp}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bed_temp}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={bed1_temp}
M17 E
G91
M83
G1 E100 F200
G4 P2000
G1 X20 F15000
G1 X-20
G1 X20
G1 X-20
G1 X20
G1 X-20
;G1 E-2 F600
G90
G92 E{saved_e}
RESTORE_GCODE_STATE NAME=timelapse_state_b MOVE=1 MOVE_SPEED=250
RESTORE_GCODE_STATE NAME=timelapse_state_a MOVE=1 MOVE_SPEED=250
SAVE_GCODE_STATE NAME=timelapse_state_a
SAVE_GCODE_STATE NAME=timelapse_state_b
M400
;M24
[filament_switch_sensor fila]
pause_on_runout: True
runout_gcode:
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=1
insert_gcode:
event_delay: 3.0
pause_delay: 1.0
switch_pin: PA12
##############################################################
#fan for printed model FAN0
[fan]
pin: PC9
#fan for hotend FAN1
[heater_fan fan1]
pin: PA8
shutdown_speed: 1
# [controller_fan controller_fan1]
# pin: PA8
# fan_speed: 1.0
# idle_timeout: 900
[printer]
kinematics:cartesian
max_velocity: 500
max_accel: 4800
# max_accel: 5000
max_accel_to_decel: 2500
max_z_velocity: 20
max_z_accel: 100
square_corner_velocity: 9.0
[input_shaper]
# shaper_freq_x: 66.66
shaper_freq_x: 96.2
shaper_freq_y: 40.2
# shaper_freq_y: 42.05
# shaper_type_x: mzv
shaper_type_x: mzv
shaper_type_y: mzv
# shaper_type_y: ei
#damping_ratio_x: 0.1
#damping_ratio_y: 0.1
####################################################################
# Homing and Gantry Adjustment Routines
#####################################################################
[idle_timeout]
timeout: 3600
gcode:
{% if printer[printer.toolhead.extruder].temperature > 140 %} # Reduce the hot end temperature after 10 minutes
{action_respond_info("Extruder powered down on idle timeout.")}
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={120} # After pausing printing, reduce nozzle temperature to 50℃
M84 E
# SET_IDLE_TIMEOUT TIMEOUT=259200 # Timer duration 3 days.
{% else %}
TURN_OFF_HEATERS
M84 E
{% endif %}
[safe_z_home]
home_xy_position: 141.75,97.05
speed: 200
z_hop: 10
z_hop_speed: 5
[gcode_macro G29]
gcode:
M400
BED_MESH_CLEAR
G28
BED_MESH_CALIBRATE profile=6 mesh_min=10,21 mesh_max=200,220 probe_count=6 algorithm=bicubic
M400
G4 P2000
G91
G1 Z5 F300
G90
G28 Z
G1 X117.5 Y117.5 F12000
G1 Z0 F300
#####################################################################
# Probe
#####################################################################
[probe]
pin:^PA11
x_offset: -24.25
y_offset: 20.45
z_offset: 1.650 # Flat Side
# z_offset: 1.800
speed: 10.0
samples: 2
samples_result: median
sample_retract_dist: 3.0
samples_tolerance: 0.05
samples_tolerance_retries: 5
[bed_mesh]
speed:500
horizontal_move_z:10
mesh_min:10,21
mesh_max:210,211
probe_count:6,6
algorithm:bicubic
bicubic_tension:0.2
mesh_pps: 2, 2
fade_start:5.0
fade_end:30.0
#####################################################################
# LED Control
#####################################################################
[output_pin caselight]
pin: PB7
pwm: false
shutdown_value:0
value:0.0
[output_pin caselight1]
pin: PC7
pwm: false
shutdown_value:0
value:0.0
[gcode_macro FLASHLIGHT_ON]
description: Turn on Hotend LEDs
gcode:
SET_PIN PIN=caselight VALUE=1
[gcode_macro FLASHLIGHT_OFF]
description: Turn off Hotend LEDs
gcode:
SET_PIN PIN=caselight VALUE=0
[gcode_macro MODLELIGHT_ON]
description: Turn on Logo LEDs
gcode:
SET_PIN PIN=caselight1 VALUE=1
[gcode_macro MODLELIGHT_OFF]
description: Turn off Logo LEDs
gcode:
SET_PIN PIN=caselight1 VALUE=0
# [gcode_macro FLASHLIGHT_SWITCH]
# description: Switch Hotend LEDs
# gcode:
# RUN_SHELL_COMMAND CMD=FLASHLIGHT
# [gcode_shell_command FLASHLIGHT]
# command: sh /home/mks/sled2.sh
# timeout: 5.
# [gcode_macro MODLELIGHT_SWITCH]
# description: Switch Logo LEDs
# gcode:
# RUN_SHELL_COMMAND CMD=MODLELIGHT
# [gcode_shell_command MODLELIGHT]
# command: sh /home/mks/sled1.sh
# timeout: 5.
########################################
# TMC UART configuration
########################################
[tmc2209 stepper_x]
uart_pin: PB9
run_current: 1.0
hold_current: 0.8
interpolate: True
stealthchop_threshold:0
[tmc2209 stepper_y]
uart_pin: PD2
run_current: 1.1
hold_current: 0.8
interpolate: True
stealthchop_threshold:0
[tmc2209 stepper_z]
uart_pin: PC5
run_current: 0.8
hold_current: 0.5
interpolate: True
stealthchop_threshold: 0
[tmc2209 extruder]
uart_pin: PC4
run_current: 0.8
hold_current: 0.5
interpolate: True
stealthchop_threshold: 0
[mcu rpi]
serial: /tmp/klipper_host_mcu
# [adxl345]
# cs_pin: rpi:None
# spi_bus: spidev0.2
# [resonance_tester]
# accel_chip: adxl345
# probe_points:
# 100, 100, 20 # an example
[force_move]
enable_force_move : true
[gcode_macro M109]
rename_existing: M99109
gcode:
#Parameters
{% if 'S' in params %}
{% set s = params.S|float %}
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
{% if printer[printer.toolhead.extruder].temperature >= s-4 %}
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
{% else %}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s-4} MAXIMUM={s+10}
{% endif %}
{% else %}
M104 S0
{% endif %}
[display_status]
[gcode_macro M17]
gcode:
{% if 'X' in params or 'Y' in params or 'Z' in params or 'E' in params %}
{% if 'X' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=1
{% endif %}
{% if 'Y' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_y enable=1
{% endif %}
{% if 'Z' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
{% endif %}
{% if 'E' in params %}
SET_STEPPER_ENABLE STEPPER=extruder enable=1
{% endif %}
{% else %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=1
SET_STEPPER_ENABLE STEPPER=stepper_y enable=1
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
#SET_STEPPER_ENABLE STEPPER=extruder enable=1
{% endif %}
[gcode_macro M84]
rename_existing:M84.1
gcode:
{% if 'X' in params or 'Y' in params or 'Z' in params or 'E' in params %}
{% if 'X' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=0
{% endif %}
{% if 'Y' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_y enable=0
{% endif %}
{% if 'Z' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_z enable=0
{% endif %}
{% if 'E' in params %}
SET_STEPPER_ENABLE STEPPER=extruder enable=0
{% endif %}
{% else %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=0
SET_STEPPER_ENABLE STEPPER=stepper_y enable=0
SET_STEPPER_ENABLE STEPPER=stepper_z enable=0
SET_STEPPER_ENABLE STEPPER=extruder enable=0
{% endif %}
[delayed_gcode KINEMATIC_POSITION]
initial_duration:3.0
gcode:
SET_KINEMATIC_POSITION X=110
SET_KINEMATIC_POSITION Y=110
SET_KINEMATIC_POSITION Z=0
####################################################################
# Configuration related to partition heating
#####################################################################
[heater_generic heater_bed1]
gcode_id:M105
heater_pin:PC8
max_power:1.0
sensor_type: NTC 100K MGB18-104F39050L32
sensor_pin:PC2
#control = watermark
# 80C
# control = pid
# pid_Kp = 75.210
# pid_Ki = 1.385
# pid_Kd = 1020.975
# 70C
# control = pid
# pid_Kp = 75.100
# pid_Ki = 1.311
# pid_Kd = 1075.810
# pid_Kp=74.251 pid_Ki=1.105 pid_Kd=1247.425
# 65C
control = pid
pid_Kp = 74.251
pid_Ki = 1.105
pid_Kd = 1247.725
# DEFAULT
# control = pid
# pid_Kp = 70.591
# pid_Ki = 1.055
# pid_Kd = 1180.632
min_temp:0
max_temp:120
[verify_heater heater_bed1]
max_error: 600
check_gain_time:120
hysteresis: 10
heating_gain: 2
[gcode_macro M191]
gcode:
{% set s = (params.S|float,120)|min %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={s|int}
{% if printer.heater_bed.temperature <= s-2 %}
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-2} MAXIMUM={s+10}
# G4 P20000
# {% else %}
# G4 P10000
{% endif %}
{% else %}
M140 S0
{% endif %}
[gcode_macro M190]
rename_existing: M99190
gcode:
{% set s = (params.S|float,120)|min %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={s|int}
{% if printer.heater_bed.temperature <= s-2 %}
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-2} MAXIMUM={s+10}
# G4 P20000
# {% else %}
# G4 P10000
{% endif %}
{% else %}
M140 S0
{% endif %}
[gcode_macro M140]
rename_existing: M99140
gcode:
{% set s = (params.S|float,120)|min %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={s|int}
{% else %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET=0
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET=0
{% endif %}
[gcode_macro M141]
gcode:
{% set s = (params.S|float,120)|min %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={s|int}
{% else %}
SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET=0
{% endif %}
####################################################################
## G-code macro definition
#####################################################################
[gcode_macro M205]
description: Sets square corner velocity.
Usage: M205 [X<velocity>] [Y<velocity>]
gcode:
{% set max_square_corner_velocity = 30 %}
{% if 'X' in params or 'Y' in params %}
SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY="{(params.X|default(0)|float, params.Y|default(0)|float,max_square_corner_velocity)|min}"
{% else %}
SET_VELOCITY_LIMIT
{% endif %}
[gcode_macro M203]
description: Sets maximum velocity.
Usage: M203 [X<velocity>] [Y<velocity>]
gcode:
{% if 'X' in params or 'Y' in params %}
{% set velocity = (params.X|default(params.Y)|float,
params.Y|default(params.X)|float,500)|min %}
SET_VELOCITY_LIMIT VELOCITY="{velocity}"
{% else %}
SET_VELOCITY_LIMIT
{% endif %}
[gcode_macro m600]
description: Pauses the current print.
Usage: M600 [B<beeps>] [E<pos>] [L<pos>] [R<temp>] [U<pos>] [X<pos>] [Y<pos>]
[Z<pos>]
gcode:
PAUSE P=2{% for k in params|select("in", "BEXYZ") %}{
' '~k~'="'~params[k]~'"'}{% endfor %}
################ Buzzer configuration ##################
[output_pin beeper]
pin: PA2
pwm: true
shutdown_value:0
value:0.0
[gcode_macro m300]
description: Emits and audible beep.
Usage: M300 [P<duration>] [S<frequency>]
gcode:
{% set settings = printer.configfile.settings %}
{% if "output_pin beeper" in printer %}
{% set P = (params.P|default(100)|int, 0)|max %}
{% set S = (params.S|default(1000)|int, 10000)|min %}
SET_PIN PIN=beeper VALUE={
settings["output_pin beeper"].scale|default(1.0) * 0.5
}{% if settings["output_pin beeper"].pwm %} CYCLE_TIME={
1.0 / S }{% endif %}
G4 P{P}
SET_PIN PIN=beeper VALUE=0
{% else %}
{action_respond_info(
"M300 is disabled. To enable create an [output_pin beeper] config.")}
{% endif %}
[gcode_arcs]
[exclude_object]
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [bed_mesh 11]
#*# version = 1
#*# points =
#*# -0.026250, -0.001250, 0.011250, 0.018750, 0.030000, 0.017500, 0.021250, 0.010000, 0.003750, 0.001250, -0.013750
#*# -0.037500, -0.015000, -0.016250, -0.001250, 0.013750, 0.013750, 0.022500, 0.018750, 0.008750, 0.006250, 0.002500
#*# -0.060000, -0.050000, -0.050000, -0.035000, -0.022500, -0.017500, -0.003750, -0.015000, -0.038750, -0.035000, -0.041250
#*# -0.030000, -0.025000, -0.027500, -0.017500, -0.003750, -0.010000, -0.011250, -0.033750, -0.053750, -0.070000, -0.081250
#*# -0.023750, -0.020000, -0.027500, -0.013750, 0.007500, -0.001250, -0.005000, -0.023750, -0.056250, -0.067500, -0.082500
#*# -0.037500, -0.036250, -0.035000, -0.018750, -0.003750, 0.000000, -0.011250, -0.040000, -0.058750, -0.063750, -0.081250
#*# -0.050000, -0.032500, -0.037500, -0.013750, -0.001250, 0.002500, 0.003750, -0.012500, -0.033750, -0.042500, -0.048750
#*# -0.042500, -0.023750, -0.022500, 0.000000, 0.008750, 0.005000, 0.003750, -0.011250, -0.031250, -0.037500, -0.051250
#*# -0.041250, -0.021250, -0.008750, 0.010000, 0.021250, 0.020000, 0.022500, 0.016250, 0.000000, -0.005000, -0.012500
#*# -0.043750, -0.017500, -0.017500, 0.005000, 0.011250, 0.006250, 0.013750, 0.001250, -0.006250, -0.016250, -0.018750
#*# -0.040000, -0.005000, 0.001250, 0.020000, 0.030000, 0.026250, 0.028750, 0.020000, 0.012500, 0.006250, -0.002500
#*# tension = 0.2
#*# min_x = 10.0
#*# algo = bicubic
#*# y_count = 11
#*# mesh_y_pps = 2
#*# min_y = 21.0
#*# x_count = 11
#*# max_y = 219.9
#*# mesh_x_pps = 2
#*# max_x = 200.0