Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-l', '/home/pi/printer_data/logs/klippy.log', '-I', '/home/pi/printer_data/comms/klippy.serial', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-268-g0844388d-dirty' Untracked files: klippy/extras/beacon.py, klippy/extras/gcode_shell_command.py, klippy/extras/linear_movement_vibrations.py, klippy/extras/ratos_homing.py Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper.git CPU: 4 core ? Python: '3.9.2 (default, Feb 28 2021, 17:03:44) \n[GCC 10.2.1 20210110]' Start printer at Wed Jul 31 19:25:16 2024 (1722450316.8 3903.8) ===== Config file ===== [mcu] serial = /dev/serial/by-id/usb-Klipper_rp2040_454741505405B32A-if00 restart_method = command [stepper_x] step_pin = gpio11 dir_pin = gpio10 enable_pin = !gpio12 rotation_distance = 40 microsteps = 32 full_steps_per_rotation = 200 endstop_pin = tmc2209_stepper_x:virtual_endstop position_endstop = 120 position_max = 120 homing_speed = 40 homing_retract_dist = 0 homing_positive_dir = true [tmc2209 stepper_x] uart_pin = gpio9 tx_pin = gpio8 uart_address = 0 interpolate = False run_current = 0.5 sense_resistor = 0.110 stealthchop_threshold = 0 diag_pin = ^gpio4 driver_sgthrs = 100 [stepper_y] step_pin = gpio6 dir_pin = gpio5 enable_pin = !gpio7 rotation_distance = 40 microsteps = 32 full_steps_per_rotation = 200 endstop_pin = tmc2209_stepper_y:virtual_endstop position_endstop = 120 position_max = 120 homing_speed = 40 homing_retract_dist = 0 homing_positive_dir = true [tmc2209 stepper_y] uart_pin = gpio9 tx_pin = gpio8 uart_address = 2 interpolate = False run_current = 0.5 sense_resistor = 0.110 stealthchop_threshold = 0 diag_pin = ^gpio3 driver_sgthrs = 90 [stepper_z] step_pin = gpio19 dir_pin = !gpio28 enable_pin = !gpio2 rotation_distance = 8 microsteps = 32 endstop_pin = ^gpio25 position_max = 120 position_min = -1.5 homing_speed = 10 second_homing_speed = 3.0 homing_retract_dist = 3.0 position_endstop = 116.505 [tmc2209 stepper_z] uart_pin = gpio9 tx_pin = gpio8 uart_address = 1 interpolate = False run_current = 0.37 sense_resistor = 0.110 stealthchop_threshold = 0 [extruder] step_pin = gpio14 dir_pin = gpio13 enable_pin = !gpio15 full_steps_per_rotation = 200 rotation_distance = 4.590 microsteps = 16 nozzle_diameter = 0.25 filament_diameter = 1.750 heater_pin = umb:gpio4 sensor_type = ATC Semitec 104GT-2 sensor_pin = umb:gpio29 min_temp = 0 max_temp = 270 min_extrude_temp = 170 max_extrude_only_distance = 500 max_extrude_only_velocity = 120 max_extrude_cross_section = 5 pressure_advance = 0.035 pressure_advance_smooth_time = 0.03 pullup_resistor = 2200 control = pid pid_kp = 39.584 pid_ki = 4.550 pid_kd = 86.091 [tmc2209 extruder] uart_pin = gpio9 tx_pin = gpio8 uart_address = 3 interpolate = False run_current = 0.85 sense_resistor = 0.110 stealthchop_threshold = 0 [heater_bed] heater_pin = gpio21 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = gpio26 smooth_time = 3.0 min_temp = 0 max_temp = 120 control = pid pid_kp = 70.377 pid_ki = 1.156 pid_kd = 1071.497 [fan] pin = umb:gpio2 max_power = 1.0 kick_start_time = 0.5 off_below = 0.13 cycle_time = 0.010 [heater_fan hotend_fan] pin = umb:gpio3 max_power = 1.0 kick_start_time = 0.5 heater = extruder heater_temp = 50.0 [mcu umb] serial = /dev/serial/by-id/usb-Klipper_rp2040_4D4E383131117D2C-if00 restart_method = command [output_pin beeper] pin = umb:gpio5 value = 0 shutdown_value = 0 [gcode_macro M300] description = Custom M300 code to allow beeper to be used in gcode gcode = {% set TIME_MS = params.P|default(100)|float %} SET_PIN PIN=beeper VALUE=1 G4 P{TIME_MS} SET_PIN PIN=beeper VALUE=0 [thermistor CMFB103F3950FANT] temperature1 = 0.0 resistance1 = 32116.0 temperature2 = 40.0 resistance2 = 5309.0 temperature3 = 80.0 resistance3 = 1228.0 [temperature_sensor chamber] sensor_type = CMFB103F3950FANT sensor_pin = umb:gpio28 pullup_resistor = 2200 min_temp = 0 max_temp = 100 gcode_id = chamber_th [controller_fan pi_fan] pin = gpio20 max_power = 1.0 kick_start_time = 0.5 heater = extruder [printer] kinematics = corexy max_velocity = 200 max_accel = 2000 max_z_velocity = 15 max_z_accel = 45 square_corner_velocity = 6.0 [exclude_object] [skew_correction] [firmware_retraction] retract_length = 0.3 retract_speed = 35 [idle_timeout] timeout = 1800 [bed_screws] screw1 = 60,5 screw1_name = front screw screw2 = 5,115 screw2_name = back left screw3 = 115,115 screw3_name = back right [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_PAUSE_NEXT_LAYER ENABLE=0 SET_PAUSE_AT_LAYER ENABLE=0 LAYER=0 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 pause_next_layer = printer['gcode_macro SET_PRINT_STATS_INFO'].pause_next_layer %} {% set ENABLE = params.ENABLE | default(1) | int != 0 %} {% set MACRO = params.MACRO | default(pause_next_layer.call, True) %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_next_layer VALUE="{{ 'enable': ENABLE, 'call': MACRO }}" [gcode_macro SET_PAUSE_AT_LAYER] description = Enable/disable a pause if a given layer number is reached gcode = {% set pause_at_layer = printer['gcode_macro SET_PRINT_STATS_INFO'].pause_at_layer %} {% set ENABLE = params.ENABLE | int != 0 if params.ENABLE is defined else params.LAYER is defined %} {% set LAYER = params.LAYER | default(pause_at_layer.layer) | int %} {% set MACRO = params.MACRO | default(pause_at_layer.call, True) %} SET_GCODE_VARIABLE MACRO=SET_PRINT_STATS_INFO VARIABLE=pause_at_layer VALUE="{{ 'enable': ENABLE, 'layer': LAYER, 'call': MACRO }}" [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_PAUSE_NEXT_LAYER ENABLE=0 {% 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_PAUSE_AT_LAYER ENABLE=0 {% 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} [gcode_macro _HOME_X] gcode = {% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %} {% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %} {% set HOME_CURRENT = 0.7 %} SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT} SAVE_GCODE_STATE NAME=STATE_HOME_X G28 X G91 G1 X-5 F1200 G4 P500 SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y} RESTORE_GCODE_STATE NAME=STATE_HOME_X [gcode_macro _HOME_Y] gcode = {% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %} {% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %} {% set HOME_CURRENT = 0.7 %} SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT} SAVE_GCODE_STATE NAME=STATE_HOME_Y G28 Y G91 G1 Y-60 F1200 G4 P500 SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y} RESTORE_GCODE_STATE NAME=STATE_HOME_Y [homing_override] axes = xyz set_position_z = 0 gcode = {% set home_all = 'X' not in params and 'Y' not in params and 'Z' not in params %} SAVE_GCODE_STATE NAME=STATE_HOME_OVERRIDE {% if home_all or 'Z' in params %} G28 Z {% endif %} {% if home_all or 'Y' in params %} _HOME_Y {% endif %} {% if home_all or 'X' in params %} _HOME_X {% endif %} G90 G0 X60 Y60 F7000 G0 Z20 F5000 RESTORE_GCODE_STATE NAME=STATE_HOME_OVERRIDE [gcode_macro CHOME] description = Homes XYZ axis only if printer is in a non-homed state gcode = {% if "xyz" not in printer.toolhead.homed_axes %} G28 {% endif %} [gcode_macro CENTER] description = Moves the toolhead to the center gcode = CHOME {% set x_center = printer.toolhead.axis_maximum.x|float / 2.0 %} {% set y_center = printer.toolhead.axis_maximum.y|float / 2.0 %} G90 G1 X{x_center} Y{x_center} F7800 [gcode_macro FRONT] description = Moves the toolhead to the front gcode = CHOME {% set x_center = printer.toolhead.axis_maximum.x|float / 2.0 %} G90 G1 X{x_center} Y10 F7800 [filament_switch_sensor switch_sensor] switch_pin = ^gpio16 pause_on_runout = False runout_gcode = PAUSE M117 Filament switch runout insert_gcode = M117 Filament switch inserted [gcode_macro __FILAMENT_PARAMS] variable_extruder_temp = 230 gcode = [gcode_macro LOAD_FILAMENT] description = Loads new filament into toolhead gcode = {% set EXTRUDER_TEMP = params.TEMP|default(230)|int %} CHOME G90 G1 Z20 FRONT LOGO_ORANGE M109 S{EXTRUDER_TEMP} LOGO_PURPLE M300 M83 G1 E100 F300 M400 M300 M118 Load Complete! M104 S0 LOGO_OFF [gcode_macro UNLOAD_FILAMENT] description = Unloads filament from toolhead gcode = {% set EXTRUDER_TEMP = params.TEMP|default(230)|int %} CHOME G90 G1 Z20 FRONT LOGO_ORANGE M109 S{EXTRUDER_TEMP} LOGO_PURPLE M300 M83 G1 E-8 F1800 G4 P200 G1 E-100 F300 M400 M300 M118 Unload Complete! M104 S0 LOGO_OFF [gcode_macro SWAP_FILAMENT] description = Unloads filament, detects filament swap, then loads filament gcode = {% set EXTRUDER_TEMP = params.TEMP|default(230)|int %} CHOME G90 G1 Z20 FRONT SET_GCODE_VARIABLE MACRO=__FILAMENT_PARAMS VARIABLE=extruder_temp VALUE={EXTRUDER_TEMP} {% if printer["filament_switch_sensor runout_sensor"].filament_detected == True %} UNLOAD_FILAMENT TEMP={EXTRUDER_TEMP} LOGO_TEAL UPDATE_DELAYED_GCODE ID=_WAIT_UNLOAD DURATION=1 {% else %} LOGO_YELLOW UPDATE_DELAYED_GCODE ID=_WAIT_LOAD DURATION=1 {% endif %} [delayed_gcode _WAIT_UNLOAD] gcode = {% if printer["filament_switch_sensor runout_sensor"].filament_detected == True %} UPDATE_DELAYED_GCODE ID=_WAIT_UNLOAD DURATION=1 {% else %} M118 Filament removed! LOGO_YELLOW UPDATE_DELAYED_GCODE ID=_WAIT_LOAD DURATION=1 {% endif %} [delayed_gcode _WAIT_LOAD] gcode = {% if printer["filament_switch_sensor runout_sensor"].filament_detected == False %} UPDATE_DELAYED_GCODE ID=_WAIT_LOAD DURATION=1 {% else %} M118 Filament inserted! LOGO_GREEN UPDATE_DELAYED_GCODE ID=_PERFORM_LOAD DURATION=3 {% endif %} [delayed_gcode _PERFORM_LOAD] gcode = {% set EXTRUDER_TEMP = printer["gcode_macro __FILAMENT_PARAMS"].extruder_temp|default(230)|int %} LOAD_FILAMENT TEMP={EXTRUDER_TEMP} [neopixel bed_light] pin = gpio24 chain_count = 1 color_order = GRBW initial_red = 1.0 initial_green = 1.0 initial_blue = 0.0 initial_white = 1.0 [gcode_macro LOGO_RED] gcode = SET_LED LED=bed_light RED=0.95 GREEN=0.05 BLUE=0.05 WHITE=0 [gcode_macro LOGO_GREEN] gcode = SET_LED LED=bed_light RED=0.05 GREEN=0.95 BLUE=0.05 WHITE=0 [gcode_macro LOGO_BLUE] gcode = SET_LED LED=bed_light RED=0.05 GREEN=0.05 BLUE=0.95 WHITE=0 [gcode_macro LOGO_YELLOW] gcode = SET_LED LED=bed_light RED=0.95 GREEN=0.95 BLUE=0.05 WHITE=0 [gcode_macro LOGO_MAGENTA] gcode = SET_LED LED=bed_light RED=0.95 GREEN=0.05 BLUE=0.95 WHITE=0 [gcode_macro LOGO_TEAL] gcode = SET_LED LED=bed_light RED=0.05 GREEN=0.95 BLUE=0.95 WHITE=0 [gcode_macro LOGO_ORANGE] gcode = SET_LED LED=bed_light RED=0.95 GREEN=0.45 BLUE=0.05 WHITE=0 [gcode_macro LOGO_LIME] gcode = SET_LED LED=bed_light RED=0.45 GREEN=0.95 BLUE=0.05 WHITE=0 [gcode_macro LOGO_PURPLE] gcode = SET_LED LED=bed_light RED=0.45 GREEN=0.05 BLUE=0.95 WHITE=0 [gcode_macro LOGO_OFF] gcode = SET_LED LED=bed_light RED=0 GREEN=0 BLUE=0 WHITE=0 [gcode_macro PRINT_START] gcode = {% set target_bed = params.BED|int %} {% set target_extruder = params.EXTRUDER|int %} {% set target_chamber = params.CHAMBER|default("40")|int %} {% set filament_profile = params.FILAMENT_PROFILE|default("none")|string %} LOGO_BLUE G28 G90 {% if target_bed > 90 %} LOGO_MAGENTA M106 S255 M190 S{target_bed} TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={target_chamber} {% else %} LOGO_MAGENTA M190 S{target_bed} G4 P120000 {% endif %} LOGO_ORANGE M107 M109 S{target_extruder} LOGO_RED SKEW_PROFILE LOAD=calilantern_skew_profile [gcode_macro PRINT_END] gcode = SET_SKEW CLEAR=1 M400 G92 E0 G1 E-4.0 F3600 G91 {% set max_x = printer.configfile.config["stepper_x"]["position_max"]|float %} {% set max_y = printer.configfile.config["stepper_y"]["position_max"]|float %} {% set max_z = printer.configfile.config["stepper_z"]["position_max"]|float %} {% if printer.toolhead.position.x < (max_x - 20) %} {% set x_safe = 20.0 %} {% else %} {% set x_safe = -20.0 %} {% endif %} {% if printer.toolhead.position.y < (max_y - 20) %} {% set y_safe = 20.0 %} {% else %} {% set y_safe = -20.0 %} {% endif %} {% if printer.toolhead.position.z < (max_z - 2) %} {% set z_safe = 2.0 %} {% else %} {% set z_safe = max_z - printer.toolhead.position.z %} {% endif %} G0 Z{z_safe} F3600 G0 X{x_safe} Y{y_safe} F20000 LOGO_OFF TURN_OFF_HEATERS M107 G90 G0 X60 Y{max_y} F3600 [gcode_macro TEST_RESPOND] gcode = {% set z_max = printer.toolhead.axis_maximum.z %} RESPOND MSG="Test" [skew_correction calilantern_skew_profile] xy_skew = -0.0002050639919266882 xz_skew = -0.0013011007616427713 yz_skew = -0.0028072406524628233 ======================= Extruder max_extrude_ratio=2.078758 mcu 'mcu': Starting serial connect webhooks client 548222995760: New connection webhooks client 548222995760: Client info {'program': 'Moonraker', 'version': 'v0.9.2-0-gb40751b'} mcu 'mcu': got {'oid': 12, 'next_clock': 153840000, 'value': 31072, '#name': 'analog_in_state', '#sent_time': 3904.887880542, '#receive_time': 3904.910765357} Loaded MCU 'mcu' 113 commands (v0.12.0-263-g0087f04c / gcc: (15:12.2.rel1-1) 12.2.1 20221205 binutils: (2.39-8+rpi1+18) 2.39) MCU 'mcu' config: ADC_MAX=4095 BUS_PINS_i2c0a=gpio0,gpio1 BUS_PINS_i2c0b=gpio4,gpio5 BUS_PINS_i2c0c=gpio8,gpio9 BUS_PINS_i2c0d=gpio12,gpio13 BUS_PINS_i2c0e=gpio16,gpio17 BUS_PINS_i2c0f=gpio20,gpio21 BUS_PINS_i2c0g=gpio24,gpio25 BUS_PINS_i2c0h=gpio28,gpio29 BUS_PINS_i2c1a=gpio2,gpio3 BUS_PINS_i2c1b=gpio6,gpio7 BUS_PINS_i2c1c=gpio10,gpio11 BUS_PINS_i2c1d=gpio14,gpio15 BUS_PINS_i2c1e=gpio18,gpio19 BUS_PINS_i2c1f=gpio22,gpio23 BUS_PINS_i2c1g=gpio26,gpio27 BUS_PINS_spi0a=gpio0,gpio3,gpio2 BUS_PINS_spi0b=gpio4,gpio7,gpio6 BUS_PINS_spi0c=gpio16,gpio19,gpio18 BUS_PINS_spi0d=gpio20,gpio23,gpio22 BUS_PINS_spi1a=gpio8,gpio11,gpio10 BUS_PINS_spi1b=gpio12,gpio15,gpio14 BUS_PINS_spi1c=gpio24,gpio27,gpio26 CLOCK_FREQ=12000000 MCU=rp2040 PWM_MAX=255 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 mcu 'umb': Starting serial connect mcu 'mcu': got {'oid': 12, 'next_clock': 157440000, 'value': 31073, '#name': 'analog_in_state', '#sent_time': 3905.161052653, '#receive_time': 3905.210810264} mcu 'umb': got {'oid': 4, 'next_clock': 159856874, 'value': 31911, '#name': 'analog_in_state', '#sent_time': 3905.430516357, '#receive_time': 3905.430957894} mcu 'mcu': got {'oid': 12, 'next_clock': 161040000, 'value': 31072, '#name': 'analog_in_state', '#sent_time': 3905.161052653, '#receive_time': 3905.510736672} mcu 'umb': got {'oid': 3, 'next_clock': 163336874, 'value': 25186, '#name': 'analog_in_state', '#sent_time': 3905.688245468, '#receive_time': 3905.720899727} mcu 'umb': got {'oid': 4, 'next_clock': 163456874, 'value': 31907, '#name': 'analog_in_state', '#sent_time': 3905.688245468, '#receive_time': 3905.730880135} mcu 'mcu': got {'oid': 12, 'next_clock': 164640000, 'value': 31072, '#name': 'analog_in_state', '#sent_time': 3905.161052653, '#receive_time': 3905.810785246} Loaded MCU 'umb' 113 commands (v0.12.0-268-g0844388d / gcc: (15:12.2.rel1-1) 12.2.1 20221205 binutils: (2.39-8+rpi1+18) 2.39) MCU 'umb' config: ADC_MAX=4095 BUS_PINS_i2c0a=gpio0,gpio1 BUS_PINS_i2c0b=gpio4,gpio5 BUS_PINS_i2c0c=gpio8,gpio9 BUS_PINS_i2c0d=gpio12,gpio13 BUS_PINS_i2c0e=gpio16,gpio17 BUS_PINS_i2c0f=gpio20,gpio21 BUS_PINS_i2c0g=gpio24,gpio25 BUS_PINS_i2c0h=gpio28,gpio29 BUS_PINS_i2c1a=gpio2,gpio3 BUS_PINS_i2c1b=gpio6,gpio7 BUS_PINS_i2c1c=gpio10,gpio11 BUS_PINS_i2c1d=gpio14,gpio15 BUS_PINS_i2c1e=gpio18,gpio19 BUS_PINS_i2c1f=gpio22,gpio23 BUS_PINS_i2c1g=gpio26,gpio27 BUS_PINS_spi0a=gpio0,gpio3,gpio2 BUS_PINS_spi0b=gpio4,gpio7,gpio6 BUS_PINS_spi0c=gpio16,gpio19,gpio18 BUS_PINS_spi0d=gpio20,gpio23,gpio22 BUS_PINS_spi1a=gpio8,gpio11,gpio10 BUS_PINS_spi1b=gpio12,gpio15,gpio14 BUS_PINS_spi1c=gpio24,gpio27,gpio26 CLOCK_FREQ=12000000 MCU=rp2040 PWM_MAX=255 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Configured MCU 'mcu' (1024 moves) Configured MCU 'umb' (1024 moves) Starting heater checks for heater_bed Starting heater checks for extruder Stats 3906.2: gcodein=0 mcu: mcu_awake=0.000 mcu_task_avg=0.000000 mcu_task_stddev=0.000000 bytes_write=2393 bytes_read=5987 bytes_retransmit=9 bytes_invalid=0 send_seq=201 receive_seq=201 retransmit_seq=2 srtt=0.000 rttvar=0.000 rto=0.025 ready_bytes=0 upcoming_bytes=0 freq=12000681 umb: mcu_awake=0.000 mcu_task_avg=0.000000 mcu_task_stddev=0.000000 bytes_write=818 bytes_read=4244 bytes_retransmit=9 bytes_invalid=0 send_seq=102 receive_seq=102 retransmit_seq=2 srtt=0.000 rttvar=0.000 rto=0.025 ready_bytes=0 upcoming_bytes=0 freq=12001580 adj=12000632 heater_bed: target=0 temp=0.0 pwm=0.000 chamber: temp=0.0 sysload=0.34 cputime=1.347 memavail=374128 print_time=14.093 buffer_time=0.249 print_stall=0 extruder: target=0 temp=0.0 pwm=0.000