===== Config file ===== [bed_mesh] speed = 100 horizontal_move_z = 5 mesh_min = 5,5 mesh_max = 230,230 probe_count = 6,6 fade_start = 1 fade_end = 10 fade_target = 0 [safe_z_home] home_xy_position = 117.5,117.5 z_hop = 10 [force_move] enable_force_move = True [gcode_macro TARE_PROBE] gcode = M104 S0 SET_PIN PIN=probe_tare VALUE=0 G4 P250 SET_PIN PIN=probe_tare VALUE=1 G4 P250 {action_respond_info("Probe tared")} [gcode_macro RUN_ABL] gcode = M190 S60 G28 M104 S0 BED_MESH_CALIBRATE SAVE_CONFIG M140 S0 M104 S0 [gcode_macro START_PRINT] gcode = {% set toolTemp = params.HOTEND_TEMP|int %} {% set bedTemp = params.BED_TEMP|int %} SET_GCODE_OFFSET Z=0 {% if toolTemp >= 221 %} SET_GCODE_OFFSET Z=0.03 {% endif %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 M82 M220 S100 M221 S100 SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=1000 ACCEL_TO_DECEL=500 SQUARE_CORNER_VELOCITY=5 G28 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp -15} TEMPERATURE_WAIT SENSOR=extruder MINIMUM=140 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 G28 Z SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp -70} G90 G0 Z20 G0 X0 Y0 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp - 10} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={toolTemp - 1} G92 E0 G1 Z2.0 F3000 G1 X0 Y20 Z0.28 G1 X0 Y200.0 Z0.28 E15 G1 X0 Y200.0 Z0.28 G1 X0.5 Y20 Z0.28 E30 G92 E0 G1 Z2.0 F3000 [gcode_macro END_PRINT] gcode = M106 S255 G91 G1 E-0.5 F2700 G1 E-0.5 Z0.2 F2400 G1 X5 Y5 F5000 G1 Z10 G90 G1 X0 Y225 TURN_OFF_HEATERS G91 G4 S30 G1 E-0.5 F2700 G4 S30 G1 E-0.5 F2700 G90 M84 X Y E M82 TEMPERATURE_WAIT SENSOR=heater_bed MAXIMUM=50 TEMPERATURE_WAIT SENSOR=extruder MAXIMUM=50 M106 S0 [gcode_macro TIMELAPSE_TAKE_FRAME] gcode = {action_call_remote_method("timelapse_newframe")} [gcode_macro TIMELAPSE_RENDER] gcode = {action_call_remote_method("timelapse_render")} [gcode_macro LOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E-0.5 F500 M82 [gcode_macro UNLOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E5 F300 G1 E380 F1000 M82 [gcode_macro Hotend_Cleaning] gcode = M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E380 F1000 M82 [gcode_macro M204] rename_existing = M204.1 gcode = {% if params.S is defined %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} ACCEL_TO_DECEL={s/2} {% endif %} [gcode_macro M900] gcode = {% if params.K is defined %} {% set K = params.K|float %} SET_PRESSURE_ADVANCE ADVANCE={K} {% endif %} [virtual_sdcard] path = ~/printer_data/gcodes on_error_gcode = CANCEL_PRINT [pause_resume] [display_status] [gcode_macro CANCEL_PRINT] description = Cancel the actual running print rename_existing = CANCEL_PRINT_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set allow_park = False if not macro_found else False if client.park_at_cancel is not defined else True if client.park_at_cancel|lower == 'true' else False %} {% set retract = 5.0 if not macro_found else client.cancel_retract|default(5.0)|abs %} {% set park_x = "" if not macro_found else "" if client.park_at_cancel_x is not defined else "X=" + client.park_at_cancel_x|string if client.park_at_cancel_x is not none %} {% set park_y = "" if not macro_found else "" if client.park_at_cancel_y is not defined else "Y=" + client.park_at_cancel_y|string if client.park_at_cancel_y is not none %} {% set custom_park = True if (park_x|length > 0 or park_y|length > 0) else False %} {% if (custom_park or not printer.pause_resume.is_paused) and allow_park %} _TOOLHEAD_PARK_PAUSE_CANCEL {park_x} {park_y} {% endif %} _CLIENT_RETRACT LENGTH={retract} TURN_OFF_HEATERS M106 S0 SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" CANCEL_PRINT_BASE [gcode_macro PAUSE] description = Pause the actual running print rename_existing = PAUSE_BASE gcode = PAUSE_BASE _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description = Resume the actual running print rename_existing = RESUME_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = velocity if not macro_found else client.speed_move|default(velocity) %} _CLIENT_EXTRUDE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} [gcode_macro SET_PAUSE_NEXT_LAYER] description = Enable a pause if the next layer is reached gcode = SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable':True, 'call':params.MACRO|default("PAUSE")}}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% if params.LAYER is defined %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': True, 'layer':params.LAYER|int, 'call':params.MACRO|default("PAUSE")}}" {% else %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer':0, 'call':"PAUSE"}}" {% endif %} [gcode_macro SET_PRINT_STATS_INFO] rename_existing = SET_PRINT_STATS_INFO_BASE description = Overwrite, to get pause_next_layer and pause_at_layer feature variable_pause_next_layer = {'enable':False, 'call':"PAUSE"} variable_pause_at_layer = {'enable':False, 'layer':0, 'call':"PAUSE"} gcode = {% if pause_next_layer.enable %} {action_respond_info("%s, forced by pause_next_layer" % pause_next_layer.call)} {pause_next_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" {% elif pause_at_layer.enable and params.CURRENT_LAYER is defined and params.CURRENT_LAYER|int == pause_at_layer.layer %} {action_respond_info("%s, forced by pause_at_layer [%d]" % (pause_at_layer.call, pause_at_layer.layer))} {pause_at_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" {% endif %} SET_PRINT_STATS_INFO_BASE {rawparams} [gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL] description = Helper: park toolhead used in PAUSE and CANCEL_PRINT gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set use_custom = False if not macro_found else False if client.use_custom_pos is not defined else True if client.use_custom_pos|lower == 'true' else False %} {% set custom_park_x = 0.0 if not macro_found else client.custom_park_x|default(0.0) %} {% set custom_park_y = 0.0 if not macro_found else client.custom_park_y|default(0.0) %} {% set park_dz = 2.0 if not macro_found else client.custom_park_dz|default(2.0)|abs %} {% set sp_hop = 900 if not macro_found else client.speed_hop|default(15) * 60 %} {% set sp_move = velocity * 60 if not macro_found else client.speed_move|default(velocity) * 60 %} {% set origin = printer.gcode_move.homing_origin %} {% set act = printer.gcode_move.gcode_position %} {% set max = printer.toolhead.axis_maximum %} {% set cone = printer.toolhead.cone_start_z|default(max.z) %} {% set round_bed = True if printer.configfile.settings.printer.kinematics is in ['delta','polar','rotary_delta','winch'] else False %} {% set z_min = params.Z_MIN|default(0)|float %} {% set z_park = [[(act.z + park_dz), z_min]|max, (max.z - origin.z)]|min %} {% set x_park = params.X if params.X is defined else custom_park_x if use_custom else 0.0 if round_bed else (max.x - 5.0) %} {% set y_park = params.Y if params.Y is defined else custom_park_y if use_custom else (max.y - 5.0) if round_bed and z_park < cone else 0.0 if round_bed else (max.y - 5.0) %} _CLIENT_RETRACT {% if "xyz" in printer.toolhead.homed_axes %} G90 G1 Z{z_park} F{sp_hop} G1 X{x_park} Y{y_park} F{sp_move} {% if not printer.gcode_move.absolute_coordinates %} G91 {% endif %} {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro _CLIENT_EXTRUDE] description = Extrudes, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set use_fw_retract = False if not macro_found else False if client.use_fw_retract is not defined else True if client.use_fw_retract|lower == 'true' and printer.firmware_retraction is defined else False %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.unretract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_unretract|default(35) %} {% set absolute_extrude = printer.gcode_move.absolute_extrude %} {% if printer.extruder.can_extrude %} {% if use_fw_retract %} {% if length < 0 %} G10 {% else %} G11 {% endif %} {% else %} M83 G1 E{length} F{(speed|float|abs) * 60} {% if absolute_extrude %} M82 {% endif %} {% endif %} {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} [gcode_macro _CLIENT_RETRACT] description = Retracts, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.retract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_retract|default(35) %} _CLIENT_EXTRUDE LENGTH=-{length|float|abs} SPEED={speed|float|abs} [stepper_x] step_pin = PB8 dir_pin = !PB7 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC4 position_min = -5 position_endstop = -5 position_max = 235 homing_speed = 50 [stepper_y] step_pin = PB6 dir_pin = PB5 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC5 position_min = -2 position_endstop = -2 position_max = 235 homing_speed = 50 [stepper_z] step_pin = PB4 dir_pin = !PB3 enable_pin = !PC3 rotation_distance = 8 microsteps = 16 endstop_pin = probe:z_virtual_endstop position_min = -1.5 position_max = 250 homing_speed = 4 second_homing_speed = 1 homing_retract_dist = 2.0 [extruder] max_extrude_only_distance = 1000.0 step_pin = PC2 dir_pin = !PB9 enable_pin = !PC3 microsteps = 16 rotation_distance = 33.68 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PB14 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB1 control = pid pid_kp = 14.32 pid_ki = 0.81 pid_kd = 63.12 min_temp = 0 max_temp = 275 [heater_bed] heater_pin = PB13 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB0 control = pid pid_kp = 79.49 pid_ki = 1.17 pid_kd = 1349.52 min_temp = 0 max_temp = 120 [fan] pin = PB15 kick_start_time = 0.5 [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [probe] pin = PA4 x_offset = 0.0 y_offset = 0.0 z_offset = -0.25 speed = 1 lift_speed = 5 samples_tolerance = 0.05 samples_tolerance_retries = 2 samples = 5 activate_gcode = TARE_PROBE [output_pin probe_tare] pin = !PA5 value = 1 [output_pin probe_enable] pin = PB2 [filament_switch_sensor filament_sensor] pause_on_runout = true switch_pin = ^!PA7 [output_pin LED_pin] pin = PA6 [printer] kinematics = cartesian max_velocity = 350 max_accel = 500 max_accel_to_decel = 500 square_corner_velocity = 5 max_z_velocity = 5 max_z_accel = 100 [gcode_arcs] ======================= Args: ['/home/biqu/klipper/klippy/klippy.py', '/home/biqu/printer_data/config/printer.cfg', '-I', '/home/biqu/printer_data/comms/klippy.serial', '-l', '/home/biqu/printer_data/logs/klippy.log', '-a', '/home/biqu/printer_data/comms/klippy.sock'] Git version: 'v0.11.0-122-ge6ef48cd' CPU: 4 core ? Python: '3.9.2 (default, Feb 28 2021, 17:03:44) \n[GCC 10.2.1 20210110]' webhooks client 281472793791648: {'program': 'Moonraker', 'version': 'v0.8.0-23-g18f5ff4'} =============== Log rollover at Fri Mar 3 13:13:08 2023 =============== mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/biqu/klipper/klippy/mcu.py", line 798, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/biqu/klipper/klippy/serialhdl.py", line 182, in connect_uart self._error("Unable to connect") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/biqu/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/biqu/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/klippy.py", line 263, in return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/mcu.py", line 803, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/biqu/klipper/klippy/../.config(3238): Thu Mar 2 22:26:05 2023 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8007000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 # CONFIG_STM32_FLASH_START_2000 is not set # CONFIG_STM32_FLASH_START_5000 is not set CONFIG_STM32_FLASH_START_7000=y # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_CANBUS_FREQUENCY=500000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_GPIO_BITBANGING=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/biqu/klipper/klippy/../out/klipper.dict(7502): Thu Mar 2 22:26:48 2023 Last MCU build version: v0.11.0-122-ge6ef48cd Last MCU build tools: gcc: (15:8-2019-q3-1+b1) 8.3.1 20190703 (release) [gcc-8-branch revision 273027] binutils: (2.35.2-2+14+b2) 2.35.2 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/biqu/klipper/klippy/../out/klipper.elf(1023060): Thu Mar 2 22:27:03 2023 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed webhooks client 281472793791648: Disconnected Restarting printer Start printer at Fri Mar 3 13:32:19 2023 (1677846739.7 1239.9) ===== Config file ===== [bed_mesh] speed = 100 horizontal_move_z = 5 mesh_min = 5,5 mesh_max = 230,230 probe_count = 6,6 fade_start = 1 fade_end = 10 fade_target = 0 [safe_z_home] home_xy_position = 117.5,117.5 z_hop = 10 [force_move] enable_force_move = True [gcode_macro TARE_PROBE] gcode = M104 S0 SET_PIN PIN=probe_tare VALUE=0 G4 P250 SET_PIN PIN=probe_tare VALUE=1 G4 P250 {action_respond_info("Probe tared")} [gcode_macro RUN_ABL] gcode = M190 S60 G28 M104 S0 BED_MESH_CALIBRATE SAVE_CONFIG M140 S0 M104 S0 [gcode_macro START_PRINT] gcode = {% set toolTemp = params.HOTEND_TEMP|int %} {% set bedTemp = params.BED_TEMP|int %} SET_GCODE_OFFSET Z=0 {% if toolTemp >= 221 %} SET_GCODE_OFFSET Z=0.03 {% endif %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 M82 M220 S100 M221 S100 SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=1000 ACCEL_TO_DECEL=500 SQUARE_CORNER_VELOCITY=5 G28 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp -15} TEMPERATURE_WAIT SENSOR=extruder MINIMUM=140 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 G28 Z SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp -70} G90 G0 Z20 G0 X0 Y0 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp - 10} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={toolTemp - 1} G92 E0 G1 Z2.0 F3000 G1 X0 Y20 Z0.28 G1 X0 Y200.0 Z0.28 E15 G1 X0 Y200.0 Z0.28 G1 X0.5 Y20 Z0.28 E30 G92 E0 G1 Z2.0 F3000 [gcode_macro END_PRINT] gcode = M106 S255 G91 G1 E-0.5 F2700 G1 E-0.5 Z0.2 F2400 G1 X5 Y5 F5000 G1 Z10 G90 G1 X0 Y225 TURN_OFF_HEATERS G91 G4 S30 G1 E-0.5 F2700 G4 S30 G1 E-0.5 F2700 G90 M84 X Y E M82 TEMPERATURE_WAIT SENSOR=heater_bed MAXIMUM=50 TEMPERATURE_WAIT SENSOR=extruder MAXIMUM=50 M106 S0 [gcode_macro TIMELAPSE_TAKE_FRAME] gcode = {action_call_remote_method("timelapse_newframe")} [gcode_macro TIMELAPSE_RENDER] gcode = {action_call_remote_method("timelapse_render")} [gcode_macro LOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E-0.5 F500 M82 [gcode_macro UNLOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E5 F300 G1 E380 F1000 M82 [gcode_macro Hotend_Cleaning] gcode = M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E380 F1000 M82 [gcode_macro M204] rename_existing = M204.1 gcode = {% if params.S is defined %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} ACCEL_TO_DECEL={s/2} {% endif %} [gcode_macro M900] gcode = {% if params.K is defined %} {% set K = params.K|float %} SET_PRESSURE_ADVANCE ADVANCE={K} {% endif %} [virtual_sdcard] path = ~/printer_data/gcodes on_error_gcode = CANCEL_PRINT [pause_resume] [display_status] [gcode_macro CANCEL_PRINT] description = Cancel the actual running print rename_existing = CANCEL_PRINT_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set allow_park = False if not macro_found else False if client.park_at_cancel is not defined else True if client.park_at_cancel|lower == 'true' else False %} {% set retract = 5.0 if not macro_found else client.cancel_retract|default(5.0)|abs %} {% set park_x = "" if not macro_found else "" if client.park_at_cancel_x is not defined else "X=" + client.park_at_cancel_x|string if client.park_at_cancel_x is not none %} {% set park_y = "" if not macro_found else "" if client.park_at_cancel_y is not defined else "Y=" + client.park_at_cancel_y|string if client.park_at_cancel_y is not none %} {% set custom_park = True if (park_x|length > 0 or park_y|length > 0) else False %} {% if (custom_park or not printer.pause_resume.is_paused) and allow_park %} _TOOLHEAD_PARK_PAUSE_CANCEL {park_x} {park_y} {% endif %} _CLIENT_RETRACT LENGTH={retract} TURN_OFF_HEATERS M106 S0 SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" CANCEL_PRINT_BASE [gcode_macro PAUSE] description = Pause the actual running print rename_existing = PAUSE_BASE gcode = PAUSE_BASE _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description = Resume the actual running print rename_existing = RESUME_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = velocity if not macro_found else client.speed_move|default(velocity) %} _CLIENT_EXTRUDE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} [gcode_macro SET_PAUSE_NEXT_LAYER] description = Enable a pause if the next layer is reached gcode = SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable':True, 'call':params.MACRO|default("PAUSE")}}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% if params.LAYER is defined %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': True, 'layer':params.LAYER|int, 'call':params.MACRO|default("PAUSE")}}" {% else %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer':0, 'call':"PAUSE"}}" {% endif %} [gcode_macro SET_PRINT_STATS_INFO] rename_existing = SET_PRINT_STATS_INFO_BASE description = Overwrite, to get pause_next_layer and pause_at_layer feature variable_pause_next_layer = {'enable':False, 'call':"PAUSE"} variable_pause_at_layer = {'enable':False, 'layer':0, 'call':"PAUSE"} gcode = {% if pause_next_layer.enable %} {action_respond_info("%s, forced by pause_next_layer" % pause_next_layer.call)} {pause_next_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" {% elif pause_at_layer.enable and params.CURRENT_LAYER is defined and params.CURRENT_LAYER|int == pause_at_layer.layer %} {action_respond_info("%s, forced by pause_at_layer [%d]" % (pause_at_layer.call, pause_at_layer.layer))} {pause_at_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" {% endif %} SET_PRINT_STATS_INFO_BASE {rawparams} [gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL] description = Helper: park toolhead used in PAUSE and CANCEL_PRINT gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set use_custom = False if not macro_found else False if client.use_custom_pos is not defined else True if client.use_custom_pos|lower == 'true' else False %} {% set custom_park_x = 0.0 if not macro_found else client.custom_park_x|default(0.0) %} {% set custom_park_y = 0.0 if not macro_found else client.custom_park_y|default(0.0) %} {% set park_dz = 2.0 if not macro_found else client.custom_park_dz|default(2.0)|abs %} {% set sp_hop = 900 if not macro_found else client.speed_hop|default(15) * 60 %} {% set sp_move = velocity * 60 if not macro_found else client.speed_move|default(velocity) * 60 %} {% set origin = printer.gcode_move.homing_origin %} {% set act = printer.gcode_move.gcode_position %} {% set max = printer.toolhead.axis_maximum %} {% set cone = printer.toolhead.cone_start_z|default(max.z) %} {% set round_bed = True if printer.configfile.settings.printer.kinematics is in ['delta','polar','rotary_delta','winch'] else False %} {% set z_min = params.Z_MIN|default(0)|float %} {% set z_park = [[(act.z + park_dz), z_min]|max, (max.z - origin.z)]|min %} {% set x_park = params.X if params.X is defined else custom_park_x if use_custom else 0.0 if round_bed else (max.x - 5.0) %} {% set y_park = params.Y if params.Y is defined else custom_park_y if use_custom else (max.y - 5.0) if round_bed and z_park < cone else 0.0 if round_bed else (max.y - 5.0) %} _CLIENT_RETRACT {% if "xyz" in printer.toolhead.homed_axes %} G90 G1 Z{z_park} F{sp_hop} G1 X{x_park} Y{y_park} F{sp_move} {% if not printer.gcode_move.absolute_coordinates %} G91 {% endif %} {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro _CLIENT_EXTRUDE] description = Extrudes, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set use_fw_retract = False if not macro_found else False if client.use_fw_retract is not defined else True if client.use_fw_retract|lower == 'true' and printer.firmware_retraction is defined else False %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.unretract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_unretract|default(35) %} {% set absolute_extrude = printer.gcode_move.absolute_extrude %} {% if printer.extruder.can_extrude %} {% if use_fw_retract %} {% if length < 0 %} G10 {% else %} G11 {% endif %} {% else %} M83 G1 E{length} F{(speed|float|abs) * 60} {% if absolute_extrude %} M82 {% endif %} {% endif %} {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} [gcode_macro _CLIENT_RETRACT] description = Retracts, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.retract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_retract|default(35) %} _CLIENT_EXTRUDE LENGTH=-{length|float|abs} SPEED={speed|float|abs} [stepper_x] step_pin = PB8 dir_pin = !PB7 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC4 position_min = -5 position_endstop = -5 position_max = 235 homing_speed = 50 [stepper_y] step_pin = PB6 dir_pin = PB5 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC5 position_min = -2 position_endstop = -2 position_max = 235 homing_speed = 50 [stepper_z] step_pin = PB4 dir_pin = !PB3 enable_pin = !PC3 rotation_distance = 8 microsteps = 16 endstop_pin = probe:z_virtual_endstop position_min = -1.5 position_max = 250 homing_speed = 4 second_homing_speed = 1 homing_retract_dist = 2.0 [extruder] max_extrude_only_distance = 1000.0 step_pin = PC2 dir_pin = !PB9 enable_pin = !PC3 microsteps = 16 rotation_distance = 33.68 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PB14 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB1 control = pid pid_kp = 14.32 pid_ki = 0.81 pid_kd = 63.12 min_temp = 0 max_temp = 275 [heater_bed] heater_pin = PB13 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB0 control = pid pid_kp = 79.49 pid_ki = 1.17 pid_kd = 1349.52 min_temp = 0 max_temp = 120 [fan] pin = PB15 kick_start_time = 0.5 [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [probe] pin = PA4 x_offset = 0.0 y_offset = 0.0 z_offset = -0.25 speed = 1 lift_speed = 5 samples_tolerance = 0.05 samples_tolerance_retries = 2 samples = 5 activate_gcode = TARE_PROBE [output_pin probe_tare] pin = !PA5 value = 1 [output_pin probe_enable] pin = PB2 [filament_switch_sensor filament_sensor] pause_on_runout = true switch_pin = ^!PA7 [output_pin LED_pin] pin = PA6 [printer] kinematics = cartesian max_velocity = 350 max_accel = 500 max_accel_to_decel = 500 square_corner_velocity = 5 max_z_velocity = 5 max_z_accel = 100 [gcode_arcs] ======================= Extruder max_extrude_ratio=0.266081 mcu 'mcu': Starting serial connect webhooks client 281472800438400: New connection webhooks client 281472800438400: Client info {'program': 'Moonraker', 'version': 'v0.8.0-23-g18f5ff4'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/biqu/klipper/klippy/mcu.py", line 798, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/biqu/klipper/klippy/serialhdl.py", line 182, in connect_uart self._error("Unable to connect") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/biqu/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/biqu/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/klippy.py", line 263, in return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/mcu.py", line 803, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/biqu/klipper/klippy/../.config(3243): Fri Mar 3 13:18:22 2023 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8007000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 # CONFIG_STM32_FLASH_START_2000 is not set # CONFIG_STM32_FLASH_START_5000 is not set CONFIG_STM32_FLASH_START_7000=y # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_CANBUS_FREQUENCY=500000 CONFIG_INITIAL_PINS="!PA14" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_GPIO_BITBANGING=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/biqu/klipper/klippy/../out/klipper.dict(7525): Fri Mar 3 13:20:00 2023 Last MCU build version: v0.11.0-122-ge6ef48cd Last MCU build tools: gcc: (15:8-2019-q3-1+b1) 8.3.1 20190703 (release) [gcc-8-branch revision 273027] binutils: (2.35.2-2+14+b2) 2.35.2 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 INITIAL_PINS=!PA14 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/biqu/klipper/klippy/../out/klipper.elf(1023180): Fri Mar 3 13:20:15 2023 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 281472800438400: Disconnected Restarting printer Start printer at Fri Mar 3 13:37:27 2023 (1677847047.8 1547.9) ===== Config file ===== [bed_mesh] speed = 100 horizontal_move_z = 5 mesh_min = 5,5 mesh_max = 230,230 probe_count = 6,6 fade_start = 1 fade_end = 10 fade_target = 0 [safe_z_home] home_xy_position = 117.5,117.5 z_hop = 10 [force_move] enable_force_move = True [gcode_macro TARE_PROBE] gcode = M104 S0 SET_PIN PIN=probe_tare VALUE=0 G4 P250 SET_PIN PIN=probe_tare VALUE=1 G4 P250 {action_respond_info("Probe tared")} [gcode_macro RUN_ABL] gcode = M190 S60 G28 M104 S0 BED_MESH_CALIBRATE SAVE_CONFIG M140 S0 M104 S0 [gcode_macro START_PRINT] gcode = {% set toolTemp = params.HOTEND_TEMP|int %} {% set bedTemp = params.BED_TEMP|int %} SET_GCODE_OFFSET Z=0 {% if toolTemp >= 221 %} SET_GCODE_OFFSET Z=0.03 {% endif %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 M82 M220 S100 M221 S100 SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=1000 ACCEL_TO_DECEL=500 SQUARE_CORNER_VELOCITY=5 G28 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp -15} TEMPERATURE_WAIT SENSOR=extruder MINIMUM=140 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 G28 Z SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp -70} G90 G0 Z20 G0 X0 Y0 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp - 10} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={toolTemp - 1} G92 E0 G1 Z2.0 F3000 G1 X0 Y20 Z0.28 G1 X0 Y200.0 Z0.28 E15 G1 X0 Y200.0 Z0.28 G1 X0.5 Y20 Z0.28 E30 G92 E0 G1 Z2.0 F3000 [gcode_macro END_PRINT] gcode = M106 S255 G91 G1 E-0.5 F2700 G1 E-0.5 Z0.2 F2400 G1 X5 Y5 F5000 G1 Z10 G90 G1 X0 Y225 TURN_OFF_HEATERS G91 G4 S30 G1 E-0.5 F2700 G4 S30 G1 E-0.5 F2700 G90 M84 X Y E M82 TEMPERATURE_WAIT SENSOR=heater_bed MAXIMUM=50 TEMPERATURE_WAIT SENSOR=extruder MAXIMUM=50 M106 S0 [gcode_macro TIMELAPSE_TAKE_FRAME] gcode = {action_call_remote_method("timelapse_newframe")} [gcode_macro TIMELAPSE_RENDER] gcode = {action_call_remote_method("timelapse_render")} [gcode_macro LOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E-0.5 F500 M82 [gcode_macro UNLOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E5 F300 G1 E380 F1000 M82 [gcode_macro Hotend_Cleaning] gcode = M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E380 F1000 M82 [gcode_macro M204] rename_existing = M204.1 gcode = {% if params.S is defined %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} ACCEL_TO_DECEL={s/2} {% endif %} [gcode_macro M900] gcode = {% if params.K is defined %} {% set K = params.K|float %} SET_PRESSURE_ADVANCE ADVANCE={K} {% endif %} [virtual_sdcard] path = ~/printer_data/gcodes on_error_gcode = CANCEL_PRINT [pause_resume] [display_status] [gcode_macro CANCEL_PRINT] description = Cancel the actual running print rename_existing = CANCEL_PRINT_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set allow_park = False if not macro_found else False if client.park_at_cancel is not defined else True if client.park_at_cancel|lower == 'true' else False %} {% set retract = 5.0 if not macro_found else client.cancel_retract|default(5.0)|abs %} {% set park_x = "" if not macro_found else "" if client.park_at_cancel_x is not defined else "X=" + client.park_at_cancel_x|string if client.park_at_cancel_x is not none %} {% set park_y = "" if not macro_found else "" if client.park_at_cancel_y is not defined else "Y=" + client.park_at_cancel_y|string if client.park_at_cancel_y is not none %} {% set custom_park = True if (park_x|length > 0 or park_y|length > 0) else False %} {% if (custom_park or not printer.pause_resume.is_paused) and allow_park %} _TOOLHEAD_PARK_PAUSE_CANCEL {park_x} {park_y} {% endif %} _CLIENT_RETRACT LENGTH={retract} TURN_OFF_HEATERS M106 S0 SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" CANCEL_PRINT_BASE [gcode_macro PAUSE] description = Pause the actual running print rename_existing = PAUSE_BASE gcode = PAUSE_BASE _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description = Resume the actual running print rename_existing = RESUME_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = velocity if not macro_found else client.speed_move|default(velocity) %} _CLIENT_EXTRUDE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} [gcode_macro SET_PAUSE_NEXT_LAYER] description = Enable a pause if the next layer is reached gcode = SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable':True, 'call':params.MACRO|default("PAUSE")}}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% if params.LAYER is defined %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': True, 'layer':params.LAYER|int, 'call':params.MACRO|default("PAUSE")}}" {% else %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer':0, 'call':"PAUSE"}}" {% endif %} [gcode_macro SET_PRINT_STATS_INFO] rename_existing = SET_PRINT_STATS_INFO_BASE description = Overwrite, to get pause_next_layer and pause_at_layer feature variable_pause_next_layer = {'enable':False, 'call':"PAUSE"} variable_pause_at_layer = {'enable':False, 'layer':0, 'call':"PAUSE"} gcode = {% if pause_next_layer.enable %} {action_respond_info("%s, forced by pause_next_layer" % pause_next_layer.call)} {pause_next_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" {% elif pause_at_layer.enable and params.CURRENT_LAYER is defined and params.CURRENT_LAYER|int == pause_at_layer.layer %} {action_respond_info("%s, forced by pause_at_layer [%d]" % (pause_at_layer.call, pause_at_layer.layer))} {pause_at_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" {% endif %} SET_PRINT_STATS_INFO_BASE {rawparams} [gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL] description = Helper: park toolhead used in PAUSE and CANCEL_PRINT gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set use_custom = False if not macro_found else False if client.use_custom_pos is not defined else True if client.use_custom_pos|lower == 'true' else False %} {% set custom_park_x = 0.0 if not macro_found else client.custom_park_x|default(0.0) %} {% set custom_park_y = 0.0 if not macro_found else client.custom_park_y|default(0.0) %} {% set park_dz = 2.0 if not macro_found else client.custom_park_dz|default(2.0)|abs %} {% set sp_hop = 900 if not macro_found else client.speed_hop|default(15) * 60 %} {% set sp_move = velocity * 60 if not macro_found else client.speed_move|default(velocity) * 60 %} {% set origin = printer.gcode_move.homing_origin %} {% set act = printer.gcode_move.gcode_position %} {% set max = printer.toolhead.axis_maximum %} {% set cone = printer.toolhead.cone_start_z|default(max.z) %} {% set round_bed = True if printer.configfile.settings.printer.kinematics is in ['delta','polar','rotary_delta','winch'] else False %} {% set z_min = params.Z_MIN|default(0)|float %} {% set z_park = [[(act.z + park_dz), z_min]|max, (max.z - origin.z)]|min %} {% set x_park = params.X if params.X is defined else custom_park_x if use_custom else 0.0 if round_bed else (max.x - 5.0) %} {% set y_park = params.Y if params.Y is defined else custom_park_y if use_custom else (max.y - 5.0) if round_bed and z_park < cone else 0.0 if round_bed else (max.y - 5.0) %} _CLIENT_RETRACT {% if "xyz" in printer.toolhead.homed_axes %} G90 G1 Z{z_park} F{sp_hop} G1 X{x_park} Y{y_park} F{sp_move} {% if not printer.gcode_move.absolute_coordinates %} G91 {% endif %} {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro _CLIENT_EXTRUDE] description = Extrudes, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set use_fw_retract = False if not macro_found else False if client.use_fw_retract is not defined else True if client.use_fw_retract|lower == 'true' and printer.firmware_retraction is defined else False %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.unretract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_unretract|default(35) %} {% set absolute_extrude = printer.gcode_move.absolute_extrude %} {% if printer.extruder.can_extrude %} {% if use_fw_retract %} {% if length < 0 %} G10 {% else %} G11 {% endif %} {% else %} M83 G1 E{length} F{(speed|float|abs) * 60} {% if absolute_extrude %} M82 {% endif %} {% endif %} {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} [gcode_macro _CLIENT_RETRACT] description = Retracts, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.retract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_retract|default(35) %} _CLIENT_EXTRUDE LENGTH=-{length|float|abs} SPEED={speed|float|abs} [stepper_x] step_pin = PB8 dir_pin = !PB7 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC4 position_min = -5 position_endstop = -5 position_max = 235 homing_speed = 50 [stepper_y] step_pin = PB6 dir_pin = PB5 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC5 position_min = -2 position_endstop = -2 position_max = 235 homing_speed = 50 [stepper_z] step_pin = PB4 dir_pin = !PB3 enable_pin = !PC3 rotation_distance = 8 microsteps = 16 endstop_pin = probe:z_virtual_endstop position_min = -1.5 position_max = 250 homing_speed = 4 second_homing_speed = 1 homing_retract_dist = 2.0 [extruder] max_extrude_only_distance = 1000.0 step_pin = PC2 dir_pin = !PB9 enable_pin = !PC3 microsteps = 16 rotation_distance = 33.68 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PB14 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB1 control = pid pid_kp = 14.32 pid_ki = 0.81 pid_kd = 63.12 min_temp = 0 max_temp = 275 [heater_bed] heater_pin = PB13 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB0 control = pid pid_kp = 79.49 pid_ki = 1.17 pid_kd = 1349.52 min_temp = 0 max_temp = 120 [fan] pin = PB15 kick_start_time = 0.5 [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [probe] pin = PA4 x_offset = 0.0 y_offset = 0.0 z_offset = -0.25 speed = 1 lift_speed = 5 samples_tolerance = 0.05 samples_tolerance_retries = 2 samples = 5 activate_gcode = TARE_PROBE [output_pin probe_tare] pin = !PA5 value = 1 [output_pin probe_enable] pin = PB2 [filament_switch_sensor filament_sensor] pause_on_runout = true switch_pin = ^!PA7 [output_pin LED_pin] pin = PA6 [printer] kinematics = cartesian max_velocity = 350 max_accel = 500 max_accel_to_decel = 500 square_corner_velocity = 5 max_z_velocity = 5 max_z_accel = 100 [gcode_arcs] ======================= Extruder max_extrude_ratio=0.266081 mcu 'mcu': Starting serial connect webhooks client 281472800766224: New connection webhooks client 281472800766224: Client info {'program': 'Moonraker', 'version': 'v0.8.0-23-g18f5ff4'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/biqu/klipper/klippy/mcu.py", line 798, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/biqu/klipper/klippy/serialhdl.py", line 182, in connect_uart self._error("Unable to connect") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/biqu/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/biqu/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/klippy.py", line 263, in return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/mcu.py", line 803, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/biqu/klipper/klippy/../.config(3243): Fri Mar 3 13:18:22 2023 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8007000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 # CONFIG_STM32_FLASH_START_2000 is not set # CONFIG_STM32_FLASH_START_5000 is not set CONFIG_STM32_FLASH_START_7000=y # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_CANBUS_FREQUENCY=500000 CONFIG_INITIAL_PINS="!PA14" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_GPIO_BITBANGING=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/biqu/klipper/klippy/../out/klipper.dict(7525): Fri Mar 3 13:20:00 2023 Last MCU build version: v0.11.0-122-ge6ef48cd Last MCU build tools: gcc: (15:8-2019-q3-1+b1) 8.3.1 20190703 (release) [gcc-8-branch revision 273027] binutils: (2.35.2-2+14+b2) 2.35.2 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 INITIAL_PINS=!PA14 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/biqu/klipper/klippy/../out/klipper.elf(1023180): Fri Mar 3 13:20:15 2023 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 281472800766224: Disconnected Restarting printer Start printer at Fri Mar 3 13:48:14 2023 (1677847694.2 2194.4) ===== Config file ===== [bed_mesh] speed = 100 horizontal_move_z = 5 mesh_min = 5,5 mesh_max = 230,230 probe_count = 6,6 fade_start = 1 fade_end = 10 fade_target = 0 [safe_z_home] home_xy_position = 117.5,117.5 z_hop = 10 [force_move] enable_force_move = True [gcode_macro TARE_PROBE] gcode = M104 S0 SET_PIN PIN=probe_tare VALUE=0 G4 P250 SET_PIN PIN=probe_tare VALUE=1 G4 P250 {action_respond_info("Probe tared")} [gcode_macro RUN_ABL] gcode = M190 S60 G28 M104 S0 BED_MESH_CALIBRATE SAVE_CONFIG M140 S0 M104 S0 [gcode_macro START_PRINT] gcode = {% set toolTemp = params.HOTEND_TEMP|int %} {% set bedTemp = params.BED_TEMP|int %} SET_GCODE_OFFSET Z=0 {% if toolTemp >= 221 %} SET_GCODE_OFFSET Z=0.03 {% endif %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 M82 M220 S100 M221 S100 SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=1000 ACCEL_TO_DECEL=500 SQUARE_CORNER_VELOCITY=5 G28 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp -15} TEMPERATURE_WAIT SENSOR=extruder MINIMUM=140 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 G28 Z SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp -70} G90 G0 Z20 G0 X0 Y0 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp - 10} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={toolTemp - 1} G92 E0 G1 Z2.0 F3000 G1 X0 Y20 Z0.28 G1 X0 Y200.0 Z0.28 E15 G1 X0 Y200.0 Z0.28 G1 X0.5 Y20 Z0.28 E30 G92 E0 G1 Z2.0 F3000 [gcode_macro END_PRINT] gcode = M106 S255 G91 G1 E-0.5 F2700 G1 E-0.5 Z0.2 F2400 G1 X5 Y5 F5000 G1 Z10 G90 G1 X0 Y225 TURN_OFF_HEATERS G91 G4 S30 G1 E-0.5 F2700 G4 S30 G1 E-0.5 F2700 G90 M84 X Y E M82 TEMPERATURE_WAIT SENSOR=heater_bed MAXIMUM=50 TEMPERATURE_WAIT SENSOR=extruder MAXIMUM=50 M106 S0 [gcode_macro TIMELAPSE_TAKE_FRAME] gcode = {action_call_remote_method("timelapse_newframe")} [gcode_macro TIMELAPSE_RENDER] gcode = {action_call_remote_method("timelapse_render")} [gcode_macro LOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E-0.5 F500 M82 [gcode_macro UNLOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E5 F300 G1 E380 F1000 M82 [gcode_macro Hotend_Cleaning] gcode = M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E380 F1000 M82 [gcode_macro M204] rename_existing = M204.1 gcode = {% if params.S is defined %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} ACCEL_TO_DECEL={s/2} {% endif %} [gcode_macro M900] gcode = {% if params.K is defined %} {% set K = params.K|float %} SET_PRESSURE_ADVANCE ADVANCE={K} {% endif %} [virtual_sdcard] path = ~/printer_data/gcodes on_error_gcode = CANCEL_PRINT [pause_resume] [display_status] [gcode_macro CANCEL_PRINT] description = Cancel the actual running print rename_existing = CANCEL_PRINT_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set allow_park = False if not macro_found else False if client.park_at_cancel is not defined else True if client.park_at_cancel|lower == 'true' else False %} {% set retract = 5.0 if not macro_found else client.cancel_retract|default(5.0)|abs %} {% set park_x = "" if not macro_found else "" if client.park_at_cancel_x is not defined else "X=" + client.park_at_cancel_x|string if client.park_at_cancel_x is not none %} {% set park_y = "" if not macro_found else "" if client.park_at_cancel_y is not defined else "Y=" + client.park_at_cancel_y|string if client.park_at_cancel_y is not none %} {% set custom_park = True if (park_x|length > 0 or park_y|length > 0) else False %} {% if (custom_park or not printer.pause_resume.is_paused) and allow_park %} _TOOLHEAD_PARK_PAUSE_CANCEL {park_x} {park_y} {% endif %} _CLIENT_RETRACT LENGTH={retract} TURN_OFF_HEATERS M106 S0 SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" CANCEL_PRINT_BASE [gcode_macro PAUSE] description = Pause the actual running print rename_existing = PAUSE_BASE gcode = PAUSE_BASE _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description = Resume the actual running print rename_existing = RESUME_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = velocity if not macro_found else client.speed_move|default(velocity) %} _CLIENT_EXTRUDE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} [gcode_macro SET_PAUSE_NEXT_LAYER] description = Enable a pause if the next layer is reached gcode = SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable':True, 'call':params.MACRO|default("PAUSE")}}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% if params.LAYER is defined %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': True, 'layer':params.LAYER|int, 'call':params.MACRO|default("PAUSE")}}" {% else %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer':0, 'call':"PAUSE"}}" {% endif %} [gcode_macro SET_PRINT_STATS_INFO] rename_existing = SET_PRINT_STATS_INFO_BASE description = Overwrite, to get pause_next_layer and pause_at_layer feature variable_pause_next_layer = {'enable':False, 'call':"PAUSE"} variable_pause_at_layer = {'enable':False, 'layer':0, 'call':"PAUSE"} gcode = {% if pause_next_layer.enable %} {action_respond_info("%s, forced by pause_next_layer" % pause_next_layer.call)} {pause_next_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" {% elif pause_at_layer.enable and params.CURRENT_LAYER is defined and params.CURRENT_LAYER|int == pause_at_layer.layer %} {action_respond_info("%s, forced by pause_at_layer [%d]" % (pause_at_layer.call, pause_at_layer.layer))} {pause_at_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" {% endif %} SET_PRINT_STATS_INFO_BASE {rawparams} [gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL] description = Helper: park toolhead used in PAUSE and CANCEL_PRINT gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set use_custom = False if not macro_found else False if client.use_custom_pos is not defined else True if client.use_custom_pos|lower == 'true' else False %} {% set custom_park_x = 0.0 if not macro_found else client.custom_park_x|default(0.0) %} {% set custom_park_y = 0.0 if not macro_found else client.custom_park_y|default(0.0) %} {% set park_dz = 2.0 if not macro_found else client.custom_park_dz|default(2.0)|abs %} {% set sp_hop = 900 if not macro_found else client.speed_hop|default(15) * 60 %} {% set sp_move = velocity * 60 if not macro_found else client.speed_move|default(velocity) * 60 %} {% set origin = printer.gcode_move.homing_origin %} {% set act = printer.gcode_move.gcode_position %} {% set max = printer.toolhead.axis_maximum %} {% set cone = printer.toolhead.cone_start_z|default(max.z) %} {% set round_bed = True if printer.configfile.settings.printer.kinematics is in ['delta','polar','rotary_delta','winch'] else False %} {% set z_min = params.Z_MIN|default(0)|float %} {% set z_park = [[(act.z + park_dz), z_min]|max, (max.z - origin.z)]|min %} {% set x_park = params.X if params.X is defined else custom_park_x if use_custom else 0.0 if round_bed else (max.x - 5.0) %} {% set y_park = params.Y if params.Y is defined else custom_park_y if use_custom else (max.y - 5.0) if round_bed and z_park < cone else 0.0 if round_bed else (max.y - 5.0) %} _CLIENT_RETRACT {% if "xyz" in printer.toolhead.homed_axes %} G90 G1 Z{z_park} F{sp_hop} G1 X{x_park} Y{y_park} F{sp_move} {% if not printer.gcode_move.absolute_coordinates %} G91 {% endif %} {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro _CLIENT_EXTRUDE] description = Extrudes, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set use_fw_retract = False if not macro_found else False if client.use_fw_retract is not defined else True if client.use_fw_retract|lower == 'true' and printer.firmware_retraction is defined else False %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.unretract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_unretract|default(35) %} {% set absolute_extrude = printer.gcode_move.absolute_extrude %} {% if printer.extruder.can_extrude %} {% if use_fw_retract %} {% if length < 0 %} G10 {% else %} G11 {% endif %} {% else %} M83 G1 E{length} F{(speed|float|abs) * 60} {% if absolute_extrude %} M82 {% endif %} {% endif %} {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} [gcode_macro _CLIENT_RETRACT] description = Retracts, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.retract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_retract|default(35) %} _CLIENT_EXTRUDE LENGTH=-{length|float|abs} SPEED={speed|float|abs} [stepper_x] step_pin = PB8 dir_pin = !PB7 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC4 position_min = -5 position_endstop = -5 position_max = 235 homing_speed = 50 [stepper_y] step_pin = PB6 dir_pin = PB5 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC5 position_min = -2 position_endstop = -2 position_max = 235 homing_speed = 50 [stepper_z] step_pin = PB4 dir_pin = !PB3 enable_pin = !PC3 rotation_distance = 8 microsteps = 16 endstop_pin = probe:z_virtual_endstop position_min = -1.5 position_max = 250 homing_speed = 4 second_homing_speed = 1 homing_retract_dist = 2.0 [extruder] max_extrude_only_distance = 1000.0 step_pin = PC2 dir_pin = !PB9 enable_pin = !PC3 microsteps = 16 rotation_distance = 33.68 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PB14 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB1 control = pid pid_kp = 14.32 pid_ki = 0.81 pid_kd = 63.12 min_temp = 0 max_temp = 275 [heater_bed] heater_pin = PB13 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB0 control = pid pid_kp = 79.49 pid_ki = 1.17 pid_kd = 1349.52 min_temp = 0 max_temp = 120 [fan] pin = PB15 kick_start_time = 0.5 [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [probe] pin = PA4 x_offset = 0.0 y_offset = 0.0 z_offset = -0.25 speed = 1 lift_speed = 5 samples_tolerance = 0.05 samples_tolerance_retries = 2 samples = 5 activate_gcode = TARE_PROBE [output_pin probe_tare] pin = !PA5 value = 1 [output_pin probe_enable] pin = PB2 [filament_switch_sensor filament_sensor] pause_on_runout = true switch_pin = ^!PA7 [output_pin LED_pin] pin = PA6 [printer] kinematics = cartesian max_velocity = 350 max_accel = 500 max_accel_to_decel = 500 square_corner_velocity = 5 max_z_velocity = 5 max_z_accel = 100 [gcode_arcs] ======================= Extruder max_extrude_ratio=0.266081 mcu 'mcu': Starting serial connect webhooks client 281472794487392: New connection webhooks client 281472794487392: Client info {'program': 'Moonraker', 'version': 'v0.8.0-23-g18f5ff4'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/biqu/klipper/klippy/mcu.py", line 798, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/biqu/klipper/klippy/serialhdl.py", line 182, in connect_uart self._error("Unable to connect") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/biqu/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/biqu/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/klippy.py", line 263, in return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/mcu.py", line 803, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/biqu/klipper/klippy/../.config(3181): Fri Mar 3 13:45:55 2023 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_SERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8007000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 # CONFIG_STM32_FLASH_START_2000 is not set # CONFIG_STM32_FLASH_START_5000 is not set CONFIG_STM32_FLASH_START_7000=y # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 # CONFIG_STM32_USB_PA11_PA12 is not set CONFIG_STM32_SERIAL_USART1=y # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_SERIAL_BAUD=250000 CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_CANBUS_FREQUENCY=500000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_GPIO_BITBANGING=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/biqu/klipper/klippy/../out/klipper.dict(7546): Fri Mar 3 13:46:35 2023 Last MCU build version: v0.11.0-122-ge6ef48cd Last MCU build tools: gcc: (15:8-2019-q3-1+b1) 8.3.1 20190703 (release) [gcc-8-branch revision 273027] binutils: (2.35.2-2+14+b2) 2.35.2 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RECEIVE_WINDOW=192 RESERVE_PINS_serial=PA10,PA9 SERIAL_BAUD=250000 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/biqu/klipper/klippy/../out/klipper.elf(997156): Fri Mar 3 13:46:49 2023 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 281472794487392: Disconnected Restarting printer Start printer at Fri Mar 3 13:51:12 2023 (1677847872.7 2372.9) ===== Config file ===== [bed_mesh] speed = 100 horizontal_move_z = 5 mesh_min = 5,5 mesh_max = 230,230 probe_count = 6,6 fade_start = 1 fade_end = 10 fade_target = 0 [safe_z_home] home_xy_position = 117.5,117.5 z_hop = 10 [force_move] enable_force_move = True [gcode_macro TARE_PROBE] gcode = M104 S0 SET_PIN PIN=probe_tare VALUE=0 G4 P250 SET_PIN PIN=probe_tare VALUE=1 G4 P250 {action_respond_info("Probe tared")} [gcode_macro RUN_ABL] gcode = M190 S60 G28 M104 S0 BED_MESH_CALIBRATE SAVE_CONFIG M140 S0 M104 S0 [gcode_macro START_PRINT] gcode = {% set toolTemp = params.HOTEND_TEMP|int %} {% set bedTemp = params.BED_TEMP|int %} SET_GCODE_OFFSET Z=0 {% if toolTemp >= 221 %} SET_GCODE_OFFSET Z=0.03 {% endif %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={bedTemp} SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 M82 M220 S100 M221 S100 SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=1000 ACCEL_TO_DECEL=500 SQUARE_CORNER_VELOCITY=5 G28 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp -15} TEMPERATURE_WAIT SENSOR=extruder MINIMUM=140 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 G28 Z SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp -70} G90 G0 Z20 G0 X0 Y0 TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={bedTemp - 10} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={toolTemp} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={toolTemp - 1} G92 E0 G1 Z2.0 F3000 G1 X0 Y20 Z0.28 G1 X0 Y200.0 Z0.28 E15 G1 X0 Y200.0 Z0.28 G1 X0.5 Y20 Z0.28 E30 G92 E0 G1 Z2.0 F3000 [gcode_macro END_PRINT] gcode = M106 S255 G91 G1 E-0.5 F2700 G1 E-0.5 Z0.2 F2400 G1 X5 Y5 F5000 G1 Z10 G90 G1 X0 Y225 TURN_OFF_HEATERS G91 G4 S30 G1 E-0.5 F2700 G4 S30 G1 E-0.5 F2700 G90 M84 X Y E M82 TEMPERATURE_WAIT SENSOR=heater_bed MAXIMUM=50 TEMPERATURE_WAIT SENSOR=extruder MAXIMUM=50 M106 S0 [gcode_macro TIMELAPSE_TAKE_FRAME] gcode = {action_call_remote_method("timelapse_newframe")} [gcode_macro TIMELAPSE_RENDER] gcode = {action_call_remote_method("timelapse_render")} [gcode_macro LOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E-0.5 F500 M82 [gcode_macro UNLOAD_FILAMENT] gcode = {% set act_z = printer.toolhead.position.z|float %} {% if act_z < 30.0 %} G0 Z30 {% endif %} M83 G1 E5 F300 G1 E380 F1000 M82 [gcode_macro Hotend_Cleaning] gcode = M83 G1 E280 F1000 G1 E30 F300 G1 E50 F150 G1 E380 F1000 M82 [gcode_macro M204] rename_existing = M204.1 gcode = {% if params.S is defined %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} ACCEL_TO_DECEL={s/2} {% endif %} [gcode_macro M900] gcode = {% if params.K is defined %} {% set K = params.K|float %} SET_PRESSURE_ADVANCE ADVANCE={K} {% endif %} [virtual_sdcard] path = ~/printer_data/gcodes on_error_gcode = CANCEL_PRINT [pause_resume] [display_status] [gcode_macro CANCEL_PRINT] description = Cancel the actual running print rename_existing = CANCEL_PRINT_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set allow_park = False if not macro_found else False if client.park_at_cancel is not defined else True if client.park_at_cancel|lower == 'true' else False %} {% set retract = 5.0 if not macro_found else client.cancel_retract|default(5.0)|abs %} {% set park_x = "" if not macro_found else "" if client.park_at_cancel_x is not defined else "X=" + client.park_at_cancel_x|string if client.park_at_cancel_x is not none %} {% set park_y = "" if not macro_found else "" if client.park_at_cancel_y is not defined else "Y=" + client.park_at_cancel_y|string if client.park_at_cancel_y is not none %} {% set custom_park = True if (park_x|length > 0 or park_y|length > 0) else False %} {% if (custom_park or not printer.pause_resume.is_paused) and allow_park %} _TOOLHEAD_PARK_PAUSE_CANCEL {park_x} {park_y} {% endif %} _CLIENT_RETRACT LENGTH={retract} TURN_OFF_HEATERS M106 S0 SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" CANCEL_PRINT_BASE [gcode_macro PAUSE] description = Pause the actual running print rename_existing = PAUSE_BASE gcode = PAUSE_BASE _TOOLHEAD_PARK_PAUSE_CANCEL {rawparams} [gcode_macro RESUME] description = Resume the actual running print rename_existing = RESUME_BASE gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set sp_move = velocity if not macro_found else client.speed_move|default(velocity) %} _CLIENT_EXTRUDE RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)} [gcode_macro SET_PAUSE_NEXT_LAYER] description = Enable a pause if the next layer is reached gcode = SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable':True, 'call':params.MACRO|default("PAUSE")}}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% if params.LAYER is defined %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': True, 'layer':params.LAYER|int, 'call':params.MACRO|default("PAUSE")}}" {% else %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer':0, 'call':"PAUSE"}}" {% endif %} [gcode_macro SET_PRINT_STATS_INFO] rename_existing = SET_PRINT_STATS_INFO_BASE description = Overwrite, to get pause_next_layer and pause_at_layer feature variable_pause_next_layer = {'enable':False, 'call':"PAUSE"} variable_pause_at_layer = {'enable':False, 'layer':0, 'call':"PAUSE"} gcode = {% if pause_next_layer.enable %} {action_respond_info("%s, forced by pause_next_layer" % pause_next_layer.call)} {pause_next_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{'enable': False, 'call':"PAUSE"}}" {% elif pause_at_layer.enable and params.CURRENT_LAYER is defined and params.CURRENT_LAYER|int == pause_at_layer.layer %} {action_respond_info("%s, forced by pause_at_layer [%d]" % (pause_at_layer.call, pause_at_layer.layer))} {pause_at_layer.call} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{'enable': False, 'layer': 0, 'call':"PAUSE"}}" {% endif %} SET_PRINT_STATS_INFO_BASE {rawparams} [gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL] description = Helper: park toolhead used in PAUSE and CANCEL_PRINT gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set velocity = printer.configfile.settings.pause_resume.recover_velocity %} {% set use_custom = False if not macro_found else False if client.use_custom_pos is not defined else True if client.use_custom_pos|lower == 'true' else False %} {% set custom_park_x = 0.0 if not macro_found else client.custom_park_x|default(0.0) %} {% set custom_park_y = 0.0 if not macro_found else client.custom_park_y|default(0.0) %} {% set park_dz = 2.0 if not macro_found else client.custom_park_dz|default(2.0)|abs %} {% set sp_hop = 900 if not macro_found else client.speed_hop|default(15) * 60 %} {% set sp_move = velocity * 60 if not macro_found else client.speed_move|default(velocity) * 60 %} {% set origin = printer.gcode_move.homing_origin %} {% set act = printer.gcode_move.gcode_position %} {% set max = printer.toolhead.axis_maximum %} {% set cone = printer.toolhead.cone_start_z|default(max.z) %} {% set round_bed = True if printer.configfile.settings.printer.kinematics is in ['delta','polar','rotary_delta','winch'] else False %} {% set z_min = params.Z_MIN|default(0)|float %} {% set z_park = [[(act.z + park_dz), z_min]|max, (max.z - origin.z)]|min %} {% set x_park = params.X if params.X is defined else custom_park_x if use_custom else 0.0 if round_bed else (max.x - 5.0) %} {% set y_park = params.Y if params.Y is defined else custom_park_y if use_custom else (max.y - 5.0) if round_bed and z_park < cone else 0.0 if round_bed else (max.y - 5.0) %} _CLIENT_RETRACT {% if "xyz" in printer.toolhead.homed_axes %} G90 G1 Z{z_park} F{sp_hop} G1 X{x_park} Y{y_park} F{sp_move} {% if not printer.gcode_move.absolute_coordinates %} G91 {% endif %} {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro _CLIENT_EXTRUDE] description = Extrudes, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set use_fw_retract = False if not macro_found else False if client.use_fw_retract is not defined else True if client.use_fw_retract|lower == 'true' and printer.firmware_retraction is defined else False %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.unretract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_unretract|default(35) %} {% set absolute_extrude = printer.gcode_move.absolute_extrude %} {% if printer.extruder.can_extrude %} {% if use_fw_retract %} {% if length < 0 %} G10 {% else %} G11 {% endif %} {% else %} M83 G1 E{length} F{(speed|float|abs) * 60} {% if absolute_extrude %} M82 {% endif %} {% endif %} {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} [gcode_macro _CLIENT_RETRACT] description = Retracts, if the extruder is hot enough gcode = {% set macro_found = True if printer['gcode_macro _CLIENT_VARIABLE'] is defined else False %} {% set client = printer['gcode_macro _CLIENT_VARIABLE'] %} {% set length = (params.LENGTH|float) if params.LENGTH is defined else 1.0 if not macro_found else client.retract|default(1.0) %} {% set speed = params.SPEED if params.SPEED is defined else 35 if not macro_found else client.speed_retract|default(35) %} _CLIENT_EXTRUDE LENGTH=-{length|float|abs} SPEED={speed|float|abs} [stepper_x] step_pin = PB8 dir_pin = !PB7 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC4 position_min = -5 position_endstop = -5 position_max = 235 homing_speed = 50 [stepper_y] step_pin = PB6 dir_pin = PB5 enable_pin = !PC3 rotation_distance = 40 microsteps = 16 endstop_pin = PC5 position_min = -2 position_endstop = -2 position_max = 235 homing_speed = 50 [stepper_z] step_pin = PB4 dir_pin = !PB3 enable_pin = !PC3 rotation_distance = 8 microsteps = 16 endstop_pin = probe:z_virtual_endstop position_min = -1.5 position_max = 250 homing_speed = 4 second_homing_speed = 1 homing_retract_dist = 2.0 [extruder] max_extrude_only_distance = 1000.0 step_pin = PC2 dir_pin = !PB9 enable_pin = !PC3 microsteps = 16 rotation_distance = 33.68 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PB14 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB1 control = pid pid_kp = 14.32 pid_ki = 0.81 pid_kd = 63.12 min_temp = 0 max_temp = 275 [heater_bed] heater_pin = PB13 sensor_type = EPCOS 100K B57560G104F sensor_pin = PB0 control = pid pid_kp = 79.49 pid_ki = 1.17 pid_kd = 1349.52 min_temp = 0 max_temp = 120 [fan] pin = PB15 kick_start_time = 0.5 [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [probe] pin = PA4 x_offset = 0.0 y_offset = 0.0 z_offset = -0.25 speed = 1 lift_speed = 5 samples_tolerance = 0.05 samples_tolerance_retries = 2 samples = 5 activate_gcode = TARE_PROBE [output_pin probe_tare] pin = !PA5 value = 1 [output_pin probe_enable] pin = PB2 [filament_switch_sensor filament_sensor] pause_on_runout = true switch_pin = ^!PA7 [output_pin LED_pin] pin = PA6 [printer] kinematics = cartesian max_velocity = 350 max_accel = 500 max_accel_to_decel = 500 square_corner_velocity = 5 max_z_velocity = 5 max_z_accel = 100 [gcode_arcs] ======================= Extruder max_extrude_ratio=0.266081 mcu 'mcu': Starting serial connect webhooks client 281472776291328: New connection webhooks client 281472776291328: Client info {'program': 'Moonraker', 'version': 'v0.8.0-23-g18f5ff4'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/biqu/klipper/klippy/mcu.py", line 798, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/biqu/klipper/klippy/serialhdl.py", line 182, in connect_uart self._error("Unable to connect") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/biqu/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/biqu/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/klippy.py", line 263, in return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/biqu/klipper/klippy/mcu.py", line 803, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/biqu/klipper/klippy/../.config(3181): Fri Mar 3 13:45:55 2023 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_SERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8007000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 # CONFIG_STM32_FLASH_START_2000 is not set # CONFIG_STM32_FLASH_START_5000 is not set CONFIG_STM32_FLASH_START_7000=y # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 # CONFIG_STM32_USB_PA11_PA12 is not set CONFIG_STM32_SERIAL_USART1=y # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_SERIAL_BAUD=250000 CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_CANBUS_FREQUENCY=500000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_GPIO_BITBANGING=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/biqu/klipper/klippy/../out/klipper.dict(7546): Fri Mar 3 13:46:35 2023 Last MCU build version: v0.11.0-122-ge6ef48cd Last MCU build tools: gcc: (15:8-2019-q3-1+b1) 8.3.1 20190703 (release) [gcc-8-branch revision 273027] binutils: (2.35.2-2+14+b2) 2.35.2 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RECEIVE_WINDOW=192 RESERVE_PINS_serial=PA10,PA9 SERIAL_BAUD=250000 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/biqu/klipper/klippy/../out/klipper.elf(997156): Fri Mar 3 13:46:49 2023 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/biqu/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/biqu/klipper/klippy/serialhdl.py", line 261, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/biqu/klipper/klippy/serialhdl.py", line 318, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/biqu/klipper/klippy/serialhdl.py", line 253, in raw_send_wait_ack self._error("Serial connection closed") File "/home/biqu/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed