Add initial files.

This commit is contained in:
2026-01-17 17:27:06 -06:00
commit 888a1297de
13 changed files with 3371 additions and 0 deletions

View File

@@ -0,0 +1,492 @@
[include mainsail.cfg]
[mcu]
canbus_uuid: YOU_DIDNT_CHANGE_ME_YET # Insert the CANbus-UUID of your Manta from the firmware flashing steps
[mcu EBBCan]
canbus_uuid: YOU_DIDNT_CHANGE_ME_YET # Insert the CANbus-UUID of your SB2209 RP2040 from the firmware flashing steps
[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_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
[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
[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
##--------------------------------------------------------------------
[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=<GND>, 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=<RST>,
EXP2_9=<GND>, EXP2_10=<NC>
#####################################################################
# Macros
#####################################################################
[gcode_macro G32]
gcode:
BED_MESH_CLEAR
G28
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
#--------------------------------------------------------------------
[gcode_macro PRINT_START]
# Use PRINT_START for the slicer starting script - please customise for your slicer of choice
gcode:
G32 ; home all axes
G1 Z20 F3000 ; move nozzle away from bed
[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
BED_MESH_CLEAR
# 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