diff --git a/Firmware/M8P/Trident_M8P_config.cfg b/Firmware/M8P/Trident_M8P_config.cfg new file mode 100644 index 0000000..ceb95df --- /dev/null +++ b/Firmware/M8P/Trident_M8P_config.cfg @@ -0,0 +1,517 @@ +# This file contains common pin mappings for the BIGTREETECH Manta M8P +# To use this config, the firmware should be compiled for the +# STM32G0B1 with a "8KiB bootloader" and USB communication. + +# See docs/Config_Reference.md for a description of parameters. + +[mcu] +## [X in MOTOR1] - B Motor +## [Y in MOTOR2] - A Motor +## [E in MOTOR8] - Extruder +## Obtain definition by "ls -l /dev/serial/by-id/" then unplug to verify +##-------------------------------------------------------------------- +serial: /dev/serial/by-id/YOU_DIDNT_CHANGE_ME_YET +#restart_method: command +##-------------------------------------------------------------------- + +[printer] +kinematics: corexy +max_velocity: 300 +max_accel: 3000 #Max 4000 +max_z_velocity: 15 #Max 15 for 12V TMC Drivers, can increase for 24V +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: PE2 +dir_pin: PB4 +enable_pin: !PC11 +microsteps: 16 +rotation_distance: 40 +full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper +endstop_pin: ^PF3 +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 #Max 100 +homing_retract_dist: 5 +homing_positive_dir: true + +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 stepper_x] +uart_pin: PC10 +interpolate: True +run_current: 0.8 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +## Y Stepper on Motor2 (A Motor) +[stepper_y] +step_pin: PF12 +dir_pin: PF11 +enable_pin: !PB3 +microsteps: 16 +rotation_distance: 40 +full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper +endstop_pin: ^PF4 +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 #Max 100 +homing_retract_dist: 5 +homing_positive_dir: true + +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 stepper_y] +uart_pin: PF13 +interpolate: True +run_current: 0.8 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +##################################################################### +# Z Stepper Settings +##################################################################### + +## Z0 Stepper - Front Left on MOTOR3_A +[stepper_z] +step_pin: PD7 +dir_pin: PD6 +enable_pin: !PF10 +# Rotation Distance for TR8x8 = 8, TR8x4 = 4, TR8x2 = 2 +# rotation_distance: 8 +microsteps: 32 +endstop_pin: ^PF5 +## Z-position of nozzle (in mm) to z-endstop trigger point relative to print surface (Z0) +## (+) value = endstop above Z0, (-) value = endstop below +## Increasing position_endstop brings nozzle closer to the bed +## After you run Z_ENDSTOP_CALIBRATE, position_endstop will be stored at the very end of your config +position_endstop: -0.5 +## All builds use same Max Z +position_max: 250 +position_min: -2.5 +homing_speed: 8.0 # Leadscrews are slower than 2.4, 10 is a recommended max. +second_homing_speed: 3 +homing_retract_dist: 3 + +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 stepper_z] +uart_pin: PF9 +interpolate: true +run_current: 0.8 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +## Z1 Stepper - Rear on Motor5 +[stepper_z1] +step_pin: PC9 +dir_pin: PC8 +enable_pin: !PD1 +# Rotation Distance for TR8x8 = 8, TR8x4 = 4, TR8x2 = 2 +# rotation_distance: 8 +microsteps: 32 + +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 stepper_z1] +uart_pin: PD0 +interpolate: true +run_current: 0.6 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +## Z2 Stepper - Front Right on Motor6 +[stepper_z2] +step_pin: PA10 +dir_pin: !PD15 +enable_pin: !PA15 +# Rotation Distance for TR8x8 = 8, TR8x4 = 4, TR8x2 = 2 +# rotation_distance: 8 +microsteps: 32 + +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 stepper_z2] +uart_pin: PF8 +interpolate: true +run_current: 0.6 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +##################################################################### +# Extruder +##################################################################### + +# E0 on Motor8 +[extruder] +step_pin: PD10 +dir_pin: PD8 +enable_pin: !PD9 +## Update value below when you perform extruder calibration +## If you ask for 100mm of filament, but in reality it is 98mm: +## rotation_distance = * / 100 +## 22.6789511 is a good starting point +rotation_distance: 22.6789511 #Bondtech 5mm Drive Gears +## Update Gear Ratio depending on your Extruder Type +## Use 50:17 for Afterburner/Clockwork (BMG Gear Ratio) +## Use 80:20 for M4, M3.1 +gear_ratio: 50:17 #BMG Gear Ratio +microsteps: 16 +full_steps_per_rotation: 200 #200 for 1.8 degree, 400 for 0.9 degree +nozzle_diameter: 0.400 +filament_diameter: 1.75 +heater_pin: PE3 +## Check what thermistor type you have. See https://www.klipper3d.org/Config_Reference.html#common-thermistors for common thermistor types. +## Use "Generic 3950" for NTC 100k 3950 thermistors +#sensor_type: +sensor_pin: PA1 +min_temp: 10 +max_temp: 270 +max_power: 1.0 +min_extrude_temp: 170 +control = pid +pid_kp = 26.213 +pid_ki = 1.304 +pid_kd = 131.721 +## Try to keep pressure_advance below 1.0 +#pressure_advance: 0.05 +## Default is 0.040, leave stock +#pressure_advance_smooth_time: 0.040 + +## E0 on Motor7 +## Make sure to update below for your relevant driver (2208 or 2209) +[tmc2209 extruder] +uart_pin: PC7 +interpolate: false +run_current: 0.5 +sense_resistor: 0.110 +stealthchop_threshold: 0 + +#[filament_switch_sensor material_0] +#switch_pin: PC1 + +#[filament_switch_sensor material_1] +#switch_pin: PC2 + +##################################################################### +# Bed Heater +##################################################################### + +[heater_bed] +## SSR Pin - HE1 +heater_pin: PB5 + +## Check what thermistor type you have. See https://www.klipper3d.org/Config_Reference.html#common-thermistors for common thermistor types. +## Use "Generic 3950" for Keenovo heaters +#sensor_type: + +sensor_pin: PA0 +## Adjust Max Power according to 0.4w per square cm. Calculator available at https://tools.takuya.wtf/ +max_power: 0.6 +min_temp: 0 +max_temp: 120 +control: pid +pid_kp: 58.437 +pid_ki: 2.347 +pid_kd: 363.769 + +##################################################################### +# Probe +##################################################################### + +[probe] +## Inductive Probe +## This probe is not used for Z height, only Quad Gantry Leveling +## NPN and PNP proximity switch types can be set by jumper +pin: PC0 #M4-STOP +x_offset: 0 +y_offset: 25.0 +z_offset: 0 +speed: 10.0 +samples: 3 +samples_result: median +sample_retract_dist: 3.0 +samples_tolerance: 0.006 +samples_tolerance_retries: 3 + +##################################################################### +# Fan Control +##################################################################### + +[fan] +## Print Cooling Fan - CNC_FAN0 +pin: PE6 +kick_start_time: 0.5 +## Depending on your fan, you may need to increase this value +## if your fan will not start. Can change cycle_time (increase) +## if your fan is not able to slow down effectively +off_below: 0.10 + +[heater_fan hotend_fan] +## Hotend Fan - CNC_FAN1 +pin: PE0 +max_power: 1.0 +kick_start_time: 0.5 +heater: extruder +heater_temp: 50.0 +## If you are experiencing back flow, you can reduce fan_speed +#fan_speed: 1.0 + +[heater_fan controller_fan] +## Controller fan - CNC_FAN2 +pin: PC12 +kick_start_time: 0.5 +heater: heater_bed +heater_temp: 45.0 + +#[heater_fan exhaust_fan] +## Exhaust fan - CNC_FAN3 +#pin: PE5 +#max_power: 1.0 +#shutdown_speed: 0.0 +#kick_start_time: 5.0 +#heater: heater_bed +#heater_temp: 60 +#fan_speed: 1.0 + +#[heater_fan fan4] +#pin: PE4 +#tachometer_pin: PC13 + +#[heater_fan fan5] +#pin: PB8 +#tachometer_pin: PC14 + +#[heater_fan fan6] +#pin: PB9 +#tachometer_pin: PC15 + +##################################################################### +# LED Control +##################################################################### + +#[output_pin caselight] +# Chamber Lighting - HE2 Connector (Optional) +#pin: PB6 +#pwm:true +#shutdown_value: 0 +#value:1 +#cycle_time: 0.01 + +##################################################################### +# Homing and Gantry Adjustment Routines +##################################################################### + +[idle_timeout] +timeout: 1800 + +[safe_z_home] +## XY Location of the Z Endstop Switch +## Update -10,-10 to the XY coordinates of your endstop pin +## (such as 157,305) after going through Z Endstop Pin +## Location Definition step. +home_xy_position:170,170 +speed:100 +z_hop:10 + +[z_tilt] +## Use Z_TILT_ADJUST to level the bed . +## z_positions: Location of toolhead + +##-------------------------------------------------------------------- +## Uncomment below for 250mm build +#z_positions: +# -50, 18 +# 125, 298 +# 300, 18 +#points: +# 30, 5 +# 125, 195 +# 220, 5 + +## Uncomment below for 300mm build +#z_positions: +# -50, 18 +# 150, 348 +# 350, 18 +#points: +# 30, 5 +# 150, 245 +# 270, 5 + +## Uncomment below for 350mm build +#z_positions: +# -50, 18 +# 175, 398 +# 400, 18 +#points: +# 30, 5 +# 175, 295 +# 320, 5 + + +##-------------------------------------------------------------------- + +speed: 200 +horizontal_move_z: 10 +retries: 5 +retry_tolerance: 0.0075 + +######################################## +# EXP1 / EXP2 (display) pins +######################################## + +[board_pins] +aliases: + # EXP1 header + EXP1_1=PE9, EXP1_2=PE10, + EXP1_3=PE11, EXP1_4=PE12, + EXP1_5=PE13, EXP1_6=PE14, # Slot in the socket on this side + EXP1_7=PE15, EXP1_8=PB10, + EXP1_9=, EXP1_10=<5V>, + + # EXP2 header + EXP2_1=PB14, EXP2_2=PB13, + EXP2_3=PF7, EXP2_4=PB12, + EXP2_5=PE7, EXP2_6=PB11, # Slot in the socket on this side + EXP2_7=PE8, EXP2_8=, + EXP2_9=, EXP2_10=PC5 + +# See the sample-lcd.cfg file for definitions of common LCD displays. + +##################################################################### +# Displays +##################################################################### + +## Uncomment the display that you have +#-------------------------------------------------------------------- + +#[display] +## RepRapDiscount 128x64 Full Graphic Smart Controller +#lcd_type: st7920 +#cs_pin: EXP1_4 +#sclk_pin: EXP1_5 +#sid_pin: EXP1_3 +#menu_timeout: 40 +#encoder_pins: ^EXP2_5, ^EXP2_3 +#click_pin: ^!EXP1_2 + +#[output_pin beeper] +#pin: EXP1_1 + +#-------------------------------------------------------------------- + +[display] +# mini12864 LCD Display +lcd_type: uc1701 +cs_pin: EXP1_3 +a0_pin: EXP1_4 +rst_pin: EXP1_5 +encoder_pins: ^EXP2_5, ^EXP2_3 +click_pin: ^!EXP1_2 +contrast: 63 +spi_software_miso_pin: EXP2_1 +spi_software_mosi_pin: EXP2_6 +spi_software_sclk_pin: EXP2_2 + +[neopixel btt_mini12864] +# To control Neopixel RGB in mini12864 display +pin: EXP1_6 +chain_count: 3 +initial_RED: 0.1 +initial_GREEN: 0.5 +initial_BLUE: 0.0 +color_order: RGB + +## Set RGB values on boot up for each Neopixel. +## Index 1 = display, Index 2 and 3 = Knob +[delayed_gcode setdisplayneopixel] +initial_duration: 1 +gcode: + SET_LED LED=btt_mini12864 RED=1 GREEN=1 BLUE=1 INDEX=1 TRANSMIT=0 + SET_LED LED=btt_mini12864 RED=1 GREEN=0 BLUE=0 INDEX=2 TRANSMIT=0 + SET_LED LED=btt_mini12864 RED=1 GREEN=0 BLUE=0 INDEX=3 + +#-------------------------------------------------------------------- + + +##################################################################### +# 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: + 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 + +