Cheers!!!
First of all, sorry for my English since I’m using google translator…
I’ve been hitting my head against a wall for a few hours now.
I was adding and modifying some startup macros that I have found and all of a sudden I got the following error message:
Option 'mesh_min' in section 'bed_mesh ' must be specified
Once the underlying issue is corrected, use the "RESTART"
command to reload the config and restart the host software.
Printer is halted
I’ve been checking the [bed_mesh] section (which I haven’t modified for months) and everything seems to be correct.
I have tried to comment out all the lines of the new code that I was inserting that have to do with the leveling of the bed and it does not work.
I have even returned to leave the code as it was when it worked and I still get the same error.
Printer Model: Ender3
MCU / Printerboard: SKR mini E3 V2
Klipper Mainsail in RaspberryPi 4
Thanks in advance
This is the printer.cfg which was working perfectly:
[stepper_x]
step_pin: PB13
dir_pin: !PB12
enable_pin: !PB14
microsteps: 32
rotation_distance: 39.60
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: -12
position_min: -12
position_max: 239
homing_speed: 20
homing_retract_dist: 0
[tmc2209 stepper_x]
uart_pin: PC11
tx_pin: PC10
interpolate: True
uart_address: 0
run_current: 0.750
stealthchop_threshold: 999999
diag_pin: ^PC0
driver_SGTHRS: 47 # 255 is most sensitive value, 0 is least sensitive
[stepper_y]
step_pin: PB10
dir_pin: !PB2
enable_pin: !PB11
microsteps: 32
rotation_distance: 39.60
endstop_pin: tmc2209_stepper_y:virtual_endstop
position_endstop: -6
position_min: -6
position_max: 240
homing_speed: 20
homing_retract_dist: 0
[tmc2209 stepper_y]
uart_pin: PC11
tx_pin: PC10
interpolate: True
uart_address: 2
run_current: 0.750
stealthchop_threshold: 999999
diag_pin: ^PC1
driver_SGTHRS: 50
[stepper_z]
step_pin: PB0
dir_pin: PC5
enable_pin: !PB1
microsteps: 16
rotation_distance: 8
endstop_pin: probe:z_virtual_endstop
position_min: -5
position_max: 270
[tmc2209 stepper_z]
uart_pin: PC11
tx_pin: PC10
uart_address: 1
run_current: 1.200
stealthchop_threshold: 999999
[extruder]
step_pin: PB3
dir_pin: !PB4
enable_pin: !PD2
microsteps: 16
rotation_distance: 8.456
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PC8
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA0
#control: pid
#pid_Kp: 27.796
#pid_Ki: 1.626
#pid_Kd: 118.928
min_temp: 0
max_temp: 320
pressure_advance = 0.067
[tmc2209 extruder]
uart_pin: PC11
tx_pin: PC10
uart_address: 3
run_current: 0.900
stealthchop_threshold: 999999
[firmware_retraction]
retract_length: 0.50
# The length of filament (in mm) to retract when G10 is activated,
# and to unretract when G11 is activated (but see
# unretract_extra_length below). The default is 0 mm.
retract_speed: 60
# The speed of retraction, in mm/s. The default is 20 mm/s.
#unretract_extra_length: 0
# The length (in mm) of *additional* filament to add when
# unretracting.
#unretract_speed: 10
# The speed of unretraction, in mm/s. The default is 10 mm/s.
[input_shaper]
shaper_freq_x: 46.15 # frequency for the X mark of the test model
shaper_freq_y: 46.1 # frequency for the Y mark of the test model
shaper_type: ei
[heater_bed]
heater_pin: PC9
sensor_type: ATC Semitec 104GT-2
sensor_pin: PC3
control: pid
pid_Kp: 71.776
pid_Ki: 1.500
pid_Kd: 858.624
min_temp: 0
max_temp: 130
[heater_fan nozzle_cooling_fan]
pin: PC7
[fan]
pin: PC6
[virtual_sdcard]
path: ~/gcode_files
[display_status]
[pause_resume]
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32f103xe_37FFDB055358353204730643-if00
[mcu rpi]
serial: /tmp/klipper_host_mcu
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 2500
max_accel_to_decel: 2500
max_z_velocity: 5
max_z_accel: 100
square_corner_velocity: 5
[static_digital_output usb_pullup_enable]
pins: !PA14
[board_pins]
aliases:
# EXP1 header
EXP1_1=PB5, EXP1_3=PA9, EXP1_5=PA10, EXP1_7=PB8, EXP1_9=<GND>,
EXP1_2=PA15, EXP1_4=<RST>, EXP1_6=PB9, EXP1_8=PB15, EXP1_10=<5V>
# See the sample-lcd.cfg file for definitions of common LCD displays.
#====================================================================
# BLTOUCH
#====================================================================
[bltouch]
sensor_pin: ^PC2
control_pin: PA1
pin_move_time: 0.675
stow_on_each_sample: True
probe_with_touch_mode: False
pin_up_touch_mode_reports_triggered: False
x_offset: -36.50
y_offset: -22.63
#z_offset: 2
speed: 10
lift_speed: 20
samples: 2
sample_retract_dist:5
samples_tolerance_retries: 3
[safe_z_home]
home_xy_position: 117.5, 117.5
speed: 150
z_hop: 5
z_hop_speed: 20
[bed_mesh]
speed: 120
horizontal_move_z: 5
mesh_min: 5,15
mesh_max: 200,200
probe_count: 4,4
algorithm: bicubic
[screws_tilt_adjust]
screw1: 69, 60.50 # The (X, Y) coordinate of the first bed leveling screw.
screw1_name: DEL-I
screw2: 238, 60.509
screw2_name: DEL-D
screw3: 69, 230
screw3_name: TRAS-I
screw4: 238, 230
screw4_name: TRAS-D
speed: 80
horizontal_move_z: 5
screw_thread: CW-M4
[filament_switch_sensor FIlamentDetect]
pause_on_runout: False
runout_gcode: PAUSE
#insert_gcode:
#event_delay: 3.0
#pause_delay: 0.5
switch_pin: !PC15
######################################## MACROS ##################################################
[gcode_macro START_PRINT]
gcode:
SAVE_GCODE_STATE NAME=start_print_state
G21 ;Valores Metricos
G90 ;Posicion Absoluta
M82 ;Modo Absoluto
G28 ;Home
SET_FILAMENT_SENSOR SENSOR=FIlamentDetect ENABLE=0
M117 Calentando...
M190 S{params.BED_TEMP|default(printer.heater_bed.target, true) } ; Espera a calentamiento de Cama
BED_MESH_PROFILE LOAD=default ; Calibracion Alturas Cama
M109 S{params.EXTRUDER_TEMP|default(printer.extruder.target, true) } ; Espera a calentamiento de Extrusor
G92 E0
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X1 Y20 Z0.3 F5000.0 ; Move to start position
G1 X1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X1.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
G1 X1.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish
RESTORE_GCODE_STATE NAME=start_print_state
[gcode_macro PAUSE]
description: Pause the actual running print
rename_existing: PAUSE_BASE
gcode:
PAUSE_BASE
_TOOLHEAD_PARK_PAUSE_CANCEL
[gcode_macro RESUME]
description: Resume the actual running print
rename_existing: RESUME_BASE
gcode:
##### read extrude from _TOOLHEAD_PARK_PAUSE_CANCEL macro #####
{% set extrude = printer['gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL'].extrude %}
#### get VELOCITY parameter if specified ####
{% if 'VELOCITY' in params|upper %}
{% set get_params = ('VELOCITY=' + params.VELOCITY) %}
{%else %}
{% set get_params = "" %}
{% endif %}
##### end of definitions #####
{% if printer.extruder.can_extrude|lower == 'true' %}
M83
G1 E{extrude} F2100
{% if printer.gcode_move.absolute_extrude |lower == 'true' %} M82 {% endif %}
{% else %}
{action_respond_info("Extruder not hot enough")}
{% endif %}
RESUME_BASE {get_params}
[gcode_macro CANCEL_PRINT]
description: Cancel the actual running print
rename_existing: CANCEL_PRINT_BASE
variable_park: True
gcode:
## Move head and retract only if not already in the pause state and park set to true
{% if printer.pause_resume.is_paused|lower == 'false' and park|lower == 'true'%}
_TOOLHEAD_PARK_PAUSE_CANCEL
{% endif %}
TURN_OFF_HEATERS
CANCEL_PRINT_BASE
[gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL]
description: Helper: park toolhead used in PAUSE and CANCEL_PRINT
variable_extrude: 1.0
gcode:
##### set park positon for x and y #####
# default is your max posion from your printer.cfg
{% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %}
{% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %}
{% set z_park_delta = 2.0 %}
##### calculate save lift position #####
{% set max_z = printer.toolhead.axis_maximum.z|float %}
{% set act_z = printer.toolhead.position.z|float %}
{% if act_z < (max_z - z_park_delta) %}
{% set z_safe = z_park_delta %}
{% else %}
{% set z_safe = max_z - act_z %}
{% endif %}
##### end of definitions #####
{% if printer.extruder.can_extrude|lower == 'true' %}
M83
G1 E-{extrude} F2100
{% if printer.gcode_move.absolute_extrude |lower == 'true' %} M82 {% endif %}
{% else %}
{action_respond_info("Extruder not hot enough")}
{% endif %}
{% if "xyz" in printer.toolhead.homed_axes %}
G91
G1 Z{z_safe} F900
G90
G1 X{x_park} Y{y_park} F6000
{% if printer.gcode_move.absolute_coordinates|lower == 'false' %} G91 {% endif %}
{% else %}
{action_respond_info("Printer not homed")}
{% endif %}
[gcode_macro Encender_Leds]
gcode:
SET_LED LED=my_neopixel RED=1 GREEN=1 BLUE=1 WHITE=0
[gcode_macro Apagar_Leds]
gcode:
SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0
[output_pin mainpower]
pin: !rpi:gpio27
value: 1
shutdown_value: 0
[output_pin reset]
pin: rpi:gpio17
value: 0
shutdown_value: 1
[output_pin pson]
pin: PC13
value: 1
shutdown_value: 0
#[gcode_button prueba]
#pin: ^rpi:gpio22
# The pin on which the button is connected. This parameter must be
# provided.
#analog_range:
# Two comma separated resistances (in Ohms) specifying the minimum
# and maximum resistance range for the button. If analog_range is
# provided then the pin must be an analog capable pin. The default
# is to use digital gpio for the button.
#analog_pullup_resistor:
# The pullup resistance (in Ohms) when analog_range is specified.
# The default is 4700 ohms.
#press_gcode: G28
# A list of G-Code commands to execute when the button is pressed.
# G-Code templates are supported. This parameter must be provided.
#release_gcode:
# A list of G-Code commands to execute when the button is released.
# G-Code templates are supported. The default is to not run any
# commands on a button release.
[gcode_macro POWER_OFF]
gcode:
SET_PIN PIN=mainpower VALUE=0
SET_PIN PIN=reset VALUE=1
[display]
lcd_type: emulated_st7920
display_group: _default_16x4
en_pin: EXP1_7
spi_software_sclk_pin: EXP1_6
spi_software_mosi_pin: EXP1_8
spi_software_miso_pin: PA3
encoder_pins: ^EXP1_5, ^EXP1_3
click_pin: ^!EXP1_2
[menu __main __octoprint]
type: disabled
[menu __main __leds]
type: list
name: Leds
index: 1
[menu __main __leds __Encender]
type: command
name: Encender Leds
gcode:
SET_LED LED=my_neopixel RED=1 GREEN=1 BLUE=1 WHITE=0
[menu __main __leds __Apagar]
type: command
name: Apagar Leds
gcode:
SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0
[neopixel my_neopixel]
pin: PA8
# The pin connected to the neopixel. This parameter must be
# provided.
chain_count: 13
# The number of Neopixel chips that are "daisy chained" to the
# provided pin. The default is 1 (which indicates only a single
# Neopixel is connected to the pin).
color_order: RGB
# Set the pixel order required by the LED hardware (using a string
# containing the letters R, G, B, W with W optional). Alternatively,
# this may be a comma separated list of pixel orders - one for each
# LED in the chain. The default is GRB.
#initial_RED: 0.0
#initial_GREEN: 0.0
#initial_BLUE: 0.0
#initial_WHITE: 0.0
# See the "led" section for information on these parameters.
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [bltouch]
#*# z_offset = 3.105
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 30.309
#*# pid_ki = 1.981
#*# pid_kd = 115.933
#*#
#*# [bed_mesh malla]
#*# version = 1
#*# points =
#*# -0.007500, 0.126250, 0.082500, 0.101250
#*# -0.100000, 0.010000, -0.055000, -0.060000
#*# -0.096250, -0.035000, -0.071250, -0.078750
#*# -0.028750, 0.038750, 0.016250, 0.008750
#*# tension = 0.2
#*# mesh_x_pps = 2
#*# algo = bicubic
#*# min_x = 10.0
#*# min_y = 10.0
#*# y_count = 4
#*# mesh_y_pps = 2
#*# x_count = 4
#*# max_x = 199.99
#*# max_y = 199.99
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# -0.020000, 0.115000, 0.063750, 0.055000
#*# -0.075000, 0.035000, -0.043750, -0.066250
#*# -0.123750, -0.012500, -0.065000, -0.090000
#*# -0.038750, 0.035000, 0.005000, -0.010000
#*# tension = 0.2
#*# min_x = 10.0
#*# algo = bicubic
#*# y_count = 4
#*# mesh_y_pps = 2
#*# min_y = 10.0
#*# x_count = 4
#*# max_y = 199.99
#*# mesh_x_pps = 2
#*# max_x = 199.99
#*#
#*# [bed_mesh ]
#*# version = 1
#*# points =
#*# -0.020000, 0.115000, 0.063750, 0.055000
#*# -0.075000, 0.035000, -0.043750, -0.066250
#*# -0.123750, -0.012500, -0.065000, -0.090000
#*# -0.038750, 0.035000, 0.005000, -0.010000
#*# tension = 0.2
#*# min_x = 10.0
#*# algo = bicubic
#*# y_count = 4
#*# mesh_y_pps = 2
#*# min_y = 10.0
#*# x_count = 4
#*# max_y = 199.99
#*# mesh_x_pps = 2
#*# max_x = 199.99