#################################################################################### # Machine type: NEPTUNE 4 PRO # Current configuration version: V1.6 # Date:2024-6-24 #################################################################################### # 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: -8.5 position_endstop:-8 position_max: 235.1 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: -0.5 position_endstop: 0 position_max:235.1 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: 270.1 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.0 #31.4 #Bondtech 5mm Drive Gears STOCK 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: 310 heater_pin: PA7 sensor_type:NTC 100K MGB18-104F39050L32 sensor_pin: PA1 max_power: 1 # STOCK # control :pid # pid_kp : 26.213 # pid_ki : 1.304 # pid_kd : 131.721 # 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.020 # STOCK + [SUNLU PLA+ V2] # pressure_advance: 0.0475 # 3DFillies PETG # pressure_advance: 0.021 # [3DFillies PLA Mate, SUNLU PLA] # pressure_advance_smooth_time: 0.01 pressure_advance_smooth_time: 0.04 # STOCK instantaneous_corner_velocity: 2.5 max_extrude_only_distance: 300 max_extrude_only_velocity:60 max_extrude_only_accel:5000 max_extrude_cross_section: 9999999 min_extrude_temp:100 [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 # STOCK # control : pid # pid_kp : 75.397 # pid_ki : 0.823 # pid_kd : 1727.531 # 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 pwm_cycle_time: 0.016 min_temp: 0 max_temp: 120 [verify_heater heater_bed] max_error: 600 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="{position.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 M118 ;Filament detection is triggered,please check. 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 [printer] kinematics:cartesian max_velocity: 500 max_accel: 4800 # max_accel: 5000 # STOCK # max_accel_to_decel: 2500 max_accel_to_decel: 20000 # STOCK # max_z_velocity: 20 max_z_velocity: 10 # STOCK max_z_accel: 100 square_corner_velocity: 9.0 # STOCK # [input_shaper] # shaper_freq_x: 66.66 # shaper_freq_y: 42.05 # shaper_type_x: mzv # shaper_type_y: ei # #damping_ratio_x: 0.1 # #damping_ratio_y: 0.1 [input_shaper] shaper_freq_x: 96.2 shaper_freq_y: 40.2 shaper_type_x: mzv shaper_type_y: mzv #################################################################### # 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=15,21 mesh_max=210,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: 0.0 speed: 10.0 samples: 5 # samples: 2 # STOCK 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:15,21 mesh_max:210,211 probe_count:11,11 # probe_count:6,6 # STOCK algorithm:bicubic bicubic_tension:0.2 mesh_pps: 2, 2 fade_start:5.0 fade_end:30.0 ##################################################################### # LED Control ##################################################################### # LED Control 1.0 [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 # LED Control 2.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.2 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.7 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 [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 # 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 pwm_cycle_time: 0.016 min_temp: 0 max_temp: 120 [verify_heater heater_bed1] max_error: 600 check_gain_time:120 hysteresis: 10 heating_gain: 2 [gcode_macro M104] rename_existing: M99104 gcode: {% if 'S' in params %} {% if (params.S|float) > 300 %} M118 ;The nozzle setting temperature is out of limit and has been automatically adjusted to Limit the temperature. M118 ;热端设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 300)|min %} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={TARGET|int} {% endif %} [gcode_macro M109] rename_existing: M99109 gcode: {% if 'S' in params %} {% if (params.S|float) > 300 %} M118 ;The nozzle setting temperature is out of limit and has been automatically adjusted to Limit the temperature. M118 ;热端设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 300)|min %} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={TARGET|int} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={TARGET - 4} MAXIMUM={TARGET + 35} {% endif %} [gcode_macro M191] gcode: {% if 'S' in params %} {% if (params.S|float) > 110 %} M118 ;The hot bed setting temperature is out of limit and has been automatically adjusted to Limit the temperature. M118 ;热床设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 110)|min %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={TARGET|int} SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={TARGET|int} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={TARGET - 2} MAXIMUM={TARGET + 35} {% endif %} [gcode_macro M190] rename_existing: M99190 gcode: {% if 'S' in params %} {% if (params.S|float) > 110 %} M118 ;The hot bed setting temperature is out of limit and has been automatically adjusted to Limit the temperature. M118 ;热床设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 110)|min %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={TARGET|int} SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={TARGET|int} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={TARGET - 2} MAXIMUM={TARGET + 35} {% endif %} [gcode_macro M140] rename_existing: M99140 gcode: {% if 'S' in params %} {% if (params.S|float) > 110 %} ;M118 The hot bed setting temperature is out of limit and has been automatically adjusted to Limit the temperature. ;M118 热床设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 110)|min %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={TARGET|int} SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={TARGET|int} {% endif %} [gcode_macro M141] gcode: {% if 'S' in params %} {% if (params.S|float) > 110 %} M118 ;The hot bed setting temperature is out of limit and has been automatically adjusted to Limit the temperature. M118 ;热床设置温度超限,已经自动调整至限制温度。 {% endif %} {% set TARGET = (params.S|float, 110)|min %} SET_HEATER_TEMPERATURE HEATER=heater_bed1 TARGET={TARGET|int} {% endif %} #################################################################### ## G-code macro definition ##################################################################### [gcode_macro m600] description: Pauses the current print. gcode: M400 PAUSE M400 [gcode_macro M106] rename_existing: M99106 gcode: {% if 'S' in params %} {% set s = (params.S|float, 255)|min %} {% if (printer.toolhead.fan_mode) == 0 %} MKS_M106 S={(204, s)|min} {% endif %} {% if (printer.toolhead.fan_mode) == 1 %} MKS_M106 S={(153, s)|min} {% endif %} {% if (printer.toolhead.fan_mode) == 2 %} MKS_M106 S={s} {% endif %} {% endif %} [gcode_macro M205] description: Sets square corner velocity. Usage: M205 [X] [Y] 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] [Y] 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 %} ################ 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] [S] 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] resolution: 0.1 [exclude_object] #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [bed_mesh 11] #*# version = 1 #*# points = #*# -0.028750, -0.022500, 0.006250, 0.032500, 0.038750, 0.042500, 0.041250, 0.051250, 0.043750, 0.040000, 0.035000 #*# 0.002500, 0.012500, 0.025000, 0.038750, 0.043750, 0.047500, 0.040000, 0.043750, 0.028750, 0.031250, 0.028750 #*# -0.003750, -0.008750, 0.007500, 0.021250, 0.030000, 0.038750, 0.028750, 0.020000, 0.006250, -0.002500, 0.003750 #*# 0.021250, 0.015000, 0.020000, 0.032500, 0.025000, 0.028750, 0.012500, 0.002500, -0.035000, -0.046250, -0.040000 #*# 0.012500, -0.005000, -0.005000, 0.028750, 0.031250, 0.036250, 0.016250, 0.016250, -0.016250, -0.031250, -0.025000 #*# 0.015000, 0.005000, 0.013750, 0.036250, 0.037500, 0.041250, 0.017500, 0.006250, -0.016250, -0.033750, -0.028750 #*# 0.032500, 0.027500, 0.023750, 0.051250, 0.045000, 0.053750, 0.028750, 0.015000, -0.010000, -0.021250, -0.006250 #*# 0.031250, 0.027500, 0.040000, 0.048750, 0.051250, 0.048750, 0.038750, 0.026250, 0.003750, 0.000000, 0.005000 #*# 0.025000, 0.036250, 0.051250, 0.067500, 0.072500, 0.076250, 0.063750, 0.065000, 0.053750, 0.047500, 0.048750 #*# 0.037500, 0.038750, 0.052500, 0.068750, 0.063750, 0.068750, 0.051250, 0.057500, 0.041250, 0.041250, 0.032500 #*# 0.041250, 0.050000, 0.058750, 0.077500, 0.083750, 0.078750, 0.062500, 0.061250, 0.056250, 0.046250, 0.040000 #*# tension = 0.2 #*# min_x = 15.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 = 210.0