[include mainsail.cfg] [mcu] canbus_uuid: 52a031bd2939 [mcu EBBCan] canbus_uuid: 29e87b131cca [printer] kinematics: corexy max_velocity: 300 max_accel: 10000 max_z_velocity: 30 max_z_accel: 350 square_corner_velocity: 5.0 [temperature_sensor MCU] sensor_type: temperature_mcu [temperature_sensor SoC] sensor_type: temperature_host ##################################################################### # X/Y Stepper Settings ##################################################################### ## X Stepper on Motor1 (B Motor) [stepper_x] step_pin: PE6 dir_pin: PE5 enable_pin: !PC14 microsteps: 16 rotation_distance: 40 full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper endstop_pin: ^EBBCan:gpio24 position_min: 0 ##-------------------------------------------------------------------- ## Uncomment below for 250mm build #position_endstop: 250 #position_max: 250 ## Uncomment for 300mm build position_endstop: 300 position_max: 300 ## Uncomment for 350mm build #position_endstop: 350 #position_max: 350 ##-------------------------------------------------------------------- homing_speed: 25 homing_retract_dist: 5 homing_positive_dir: true [tmc2209 stepper_x] uart_pin: PC13 interpolate: True run_current: 0.9 sense_resistor: 0.110 stealthchop_threshold: 0 ## Y Stepper on Motor2 (A Motor) [stepper_y] step_pin: PE2 dir_pin: PE1 enable_pin: !PE4 microsteps: 16 rotation_distance: 40 endstop_pin: ^PF3 full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper position_min: 0 ##-------------------------------------------------------------------- ## Uncomment for 250mm build #position_endstop: 250 #position_max: 250 ## Uncomment for 300mm build position_endstop: 300 position_max: 300 ## Uncomment for 350mm build #position_endstop: 350 #position_max: 350 ##-------------------------------------------------------------------- homing_speed: 25 homing_retract_dist: 5 homing_positive_dir: true [tmc2209 stepper_y] uart_pin: PE3 interpolate: True run_current: 0.9 sense_resistor: 0.110 stealthchop_threshold: 0 ##################################################################### # Z Stepper Settings ##################################################################### ## Z0 Stepper - Front Left on MOTOR3_A [stepper_z] step_pin: PB8 dir_pin: PB7 enable_pin: !PE0 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 endstop_pin: probe:z_virtual_endstop ##-------------------------------------------------------------------- ## Uncomment below for 250mm build #position_max: 240 ## Uncomment below for 300mm build position_max: 290 ## Uncomment below for 350mm build #position_max: 340 ##-------------------------------------------------------------------- position_min: -5 homing_speed: 8 second_homing_speed: 3 homing_retract_dist: 3 [tmc2209 stepper_z] uart_pin: PB9 interpolate: true run_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z1 Stepper - Rear Left on Motor5 [stepper_z1] step_pin: PB4 dir_pin: !PB3 enable_pin: !PB6 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z1] uart_pin: PB5 interpolate: true run_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z2 Stepper - Rear Right on Motor6 [stepper_z2] step_pin: PG13 dir_pin: PG12 enable_pin: !PG15 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z2] uart_pin: PG14 interpolate: true run_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z3 Stepper - Front Right on Motor7 [stepper_z3] step_pin: PG9 dir_pin: !PD7 enable_pin: !PG11 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z3] uart_pin: PG10 interpolate: true run_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ##################################################################### # Extruder ##################################################################### # E0 on SB2209 [extruder] step_pin: EBBCan:gpio18 dir_pin: EBBCan:gpio19 enable_pin: !EBBCan:gpio17 microsteps: 16 rotation_distance: 22.905740611 gear_ratio: 50:10 nozzle_diameter: 0.400 filament_diameter: 1.750 heater_pin: EBBCan:gpio7 #control: pid min_temp: 0 max_temp: 300 max_extrude_only_distance: 105 max_extrude_cross_section: 2 #pid_kp: 57.369 #pid_ki: 2.533 #pid_kd: 324.854 sensor_type: MAX31865 sensor_pin: EBBCan:gpio9 spi_software_sclk_pin: EBBCan:gpio10 spi_software_mosi_pin: EBBCan:gpio8 spi_software_miso_pin: EBBCan:gpio11 rtd_nominal_r: 100 rtd_reference_r: 430 rtd_num_of_wires: 2 pressure_advance: 0.03 [tmc2209 extruder] uart_pin: EBBCan:gpio20 run_current: 0.65 stealthchop_threshold: 0 ##################################################################### # Bed Heater ##################################################################### [heater_bed] heater_pin: PA1 sensor_type: Generic 3950 sensor_pin: PB1 max_power: 1.0 min_temp: 0 max_temp: 115 #control: pid #pid_kp: 58.437 #pid_ki: 2.347 #pid_kd: 363.769 ##################################################################### # Probe ##################################################################### [probe] pin: ^EBBCan:gpio22 x_offset: 0 y_offset: 0 #z_offset: 0 lift_speed: 30 activate_gcode: {% set PROBE_TEMP = 150 %} {% set MAX_TEMP = PROBE_TEMP + 5 %} {% set ACTUAL_TEMP = printer.extruder.temperature %} {% set TARGET_TEMP = printer.extruder.target %} {% if TARGET_TEMP > PROBE_TEMP %} { action_respond_info('Extruder temperature target of %.1fC is too high, lowering to %.1fC' % (TARGET_TEMP, PROBE_TEMP)) } M109 S{ PROBE_TEMP } {% else %} # Temperature target is already low enough, but nozzle may still be too hot. {% if ACTUAL_TEMP > MAX_TEMP %} { action_respond_info('Extruder temperature %.1fC is still too high, waiting until below %.1fC' % (ACTUAL_TEMP, MAX_TEMP)) } TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={ MAX_TEMP } {% endif %} {% endif %} ##################################################################### # Fan Control ##################################################################### [fan] pin: EBBCan:gpio13 [heater_fan hotend_fan] pin: EBBCan:gpio14 heater: extruder heater_temp: 70.0 [fan_generic nevermore] ## Print Cooling Fan - CNC_FAN0 pin: PF8 kick_start_time: 0.5 off_below: 0.10 [controller_fan controller_fan_1] ## Hotend Fan - CNC_FAN1 pin: PF9 max_power: 1.0 kick_start_time: 0.5 fan_speed: 0.66 [heater_fan controller_fan_2] ## Controller fan - CNC_FAN2 pin: PF6 kick_start_time: 0.5 heater: heater_bed heater_temp: 80 fan_speed: 0.66 [fan_generic exhaust_fan] # Exhaust fan - CNC_FAN0 pin: PF7 max_power: 1.0 shutdown_speed: 0.0 kick_start_time: 0.5 ##################################################################### # LED Control ##################################################################### #[neopixel toolhead_light] #pin: EBBCan:gpio16 #chain_count: 3 #color_order: GRBW [include stealthburner_leds.cfg] [output_pin caselight] #Chamber Lighting - HE3 Connector pin: PA3 pwm:true shutdown_value: 0 cycle_time: 0.01 ##################################################################### # Homing and Gantry Adjustment Routines ##################################################################### [idle_timeout] timeout: 3300 [safe_z_home] ##-------------------------------------------------------------------- ## Uncomment below for 250mm build #home_xy_position: 125,125 ## Uncomment below for 300mm build home_xy_position: 150,150 ## Uncomment below for 350mm build #home_xy_position: 175,175 ##-------------------------------------------------------------------- speed: 100 z_hop: 10 [quad_gantry_level] ## Use QUAD_GANTRY_LEVEL to level a gantry. ## Min & Max gantry corners - measure from nozzle at MIN (0,0) and ## MAX (250, 250), (300,300), or (350,350) depending on your printer size ## to respective belt positions #-------------------------------------------------------------------- ## Gantry Corners for 250mm Build ## Uncomment for 250mm build #gantry_corners: # -60,-10 # 310, 320 ## Probe points #points: # 50,25 # 50,175 # 200,175 # 200,25 ## Gantry Corners for 300mm Build ## Uncomment for 300mm build gantry_corners: -60,-10 360,370 # Probe points points: 50,25 50,225 250,225 250,25 ## Gantry Corners for 350mm Build ## Uncomment for 350mm build #gantry_corners: # -60,-10 # 410,420 ## Probe points #points: # 50,25 # 50,275 # 300,275 # 300,25 #-------------------------------------------------------------------- speed: 100 horizontal_move_z: 10 retries: 10 retry_tolerance: 0.0075 max_adjust: 10 [bed_mesh] mesh_min: 10,10 ##-------------------------------------------------------------------- ## Uncomment below for 250mm build #mesh_max: 240,240 ## Uncomment below for 300mm build mesh_max: 290,290 ## Uncomment below for 350mm build #mesh_max: 340,340 ##-------------------------------------------------------------------- [adxl345] cs_pin: EBBCan:gpio1 spi_software_sclk_pin: EBBCan:gpio2 spi_software_mosi_pin: EBBCan:gpio0 spi_software_miso_pin: EBBCan:gpio3 axes_map: z,-y,x [board_pins] aliases: # EXP1 header EXP1_1=PE7, EXP1_2=PG1, EXP1_3=PG0, EXP1_4=PF15, EXP1_5=PF14, EXP1_6=PF13, # Slot in the socket on this side EXP1_7=PF12, EXP1_8=PF11, EXP1_9=, EXP1_10=<5V>, # EXP2 header EXP2_1=PE13, EXP2_2=PE12, EXP2_3=PE15, EXP2_4=PE11, EXP2_5=PE10, EXP2_6=PE14, # Slot in the socket on this side EXP2_7=PE8, EXP2_8=, EXP2_9=, EXP2_10= ##################################################################### # Macros ##################################################################### # Conditional G28 (home if not already homed) [gcode_macro CG28] gcode: {% if "x" not in printer.toolhead.homed_axes or "y" not in printer.toolhead.homed_axes or "z" not in printer.toolhead.homed_axes %} M117 Homing G28 {% endif %} #[gcode_macro G32] #gcode: # BED_MESH_CLEAR # CG28 ; Home if not homed to get everything turned on # QUAD_GANTRY_LEVEL ; Level # #G28 X Y ; Home the X and Y # G0 X130 Y355 Z2 F9000 ; Move to brush # G0 X75 F750 ; Move across the brush # G0 X130 F750 ; Move across the brush # G28 Z ; Home the Z now that nozzle is clean # G0 X150 Y150 Z20 F6000 ; Return to center of bed [gcode_macro G32] gcode: STATUS_HOMING BED_MESH_CLEAR CG28 STATUS_LEVELING M117 Leveling Gantry QUAD_GANTRY_LEVEL G28 ## Uncomment for for your size printer: #-------------------------------------------------------------------- ## Uncomment for 250mm build #G0 X125 Y125 Z30 F3600 ## Uncomment for 300 build G0 X150 Y150 Z30 F3600 ## Uncomment for 350mm build #G0 X175 Y175 Z30 F3600 #-------------------------------------------------------------------- M117 STATUS_READY [gcode_macro PRINT_START] gcode: {% set BED = params.BED|default(60)|int %} {% set EXTRUDER = params.EXTRUDER|default(210)|int %} SAVE_GCODE_STATE NAME=start SET_PIN pin=caselight value=0.50 STATUS_HEATING M117 Starting warmup M140 S{BED} CG28 G1 Z20 F3000 ; move nozzle away from bed # Heat bed first # Heat nozzle to 140 STATUS_HEATING M104 S140 M190 S{BED} # Home and QGL while nozzle is cold M117 Homing G32 # Now heat nozzle M117 Heating Nozzle STATUS_HEATING M109 S{EXTRUDER} M117 #Clear Status STATUS_PRINTING RESTORE_GCODE_STATE NAME=start [gcode_macro PRINT_END] # Use PRINT_END for the slicer ending script - please customise for your slicer of choice gcode: SAVE_GCODE_STATE NAME=STATE_PRINT_END M400 ; wait for buffer to clear G92 E0 ; zero the extruder G1 E-10.0 F3600 ; retract filament G91 ; relative positioning G0 Z1.00 X20.0 Y20.0 F20000 ; move nozzle to remove stringing TURN_OFF_HEATERS M107 ; turn off fan G1 Z2 F3000 ; move nozzle up 2mm G90 ; absolute positioning G0 X125 Y250 F3600 ; park nozzle at rear SET_PIN pin=caselight value=0.03 BED_MESH_CLEAR STATUS_READY # The purpose of the SAVE_GCODE_STATE/RESTORE_GCODE_STATE # command pair is to restore the printer's coordinate system # and speed settings since the commands above change them. # However, to prevent any accidental, unintentional toolhead # moves when restoring the state, explicitly set MOVE=0. RESTORE_GCODE_STATE NAME=STATE_PRINT_END MOVE=0 [force_move] enable_force_move: true #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [heater_bed] #*# control = pid #*# pid_kp = 63.521 #*# pid_ki = 2.900 #*# pid_kd = 347.777 #*# #*# [extruder] #*# control = pid #*# pid_kp = 16.710 #*# pid_ki = 1.061 #*# pid_kd = 65.795 #*# #*# [probe] #*# z_offset = -1.575