# This file contains common pin mappings for the BigTreeTech OctoPus V1. # To use this config, the firmware should be compiled for the STM32F446 with a "32KiB bootloader" # Enable "extra low-level configuration options" and select the "12MHz crystal" as clock reference # after running "make", copy the generated "klipper/out/klipper.bin" file to a # file named "firmware.bin" on an SD card and then restart the OctoPus with that SD card. # See docs/Config_Reference.md for a description of parameters. ## Voron Design VORON2 250/300/350mm BigTreeTech OctoPus V1 TMC2209 UART config ## *** THINGS TO CHANGE/CHECK: *** ## MCU paths [mcu] section ## Thermistor types [extruder] and [heater_bed] sections - See 'sensor types' list at end of file ## Z Endstop Switch location [safe_z_home] section ## Homing end position [gcode_macro G32] section ## Z Endstop Switch offset for Z0 [stepper_z] section ## Probe points [quad_gantry_level] section ## Min & Max gantry corner postions [quad_gantry_level] section ## PID tune [extruder] and [heater_bed] sections ## Fine tune E steps [extruder] section [mcu] ## [X in MOTOR0] - B Motor ## [Y in MOTOR1] - A Motor ## [E in MOTOR6] - Extruder ## Obtain definition by "ls -l /dev/serial/by-id/" then unplug to verify ##-------------------------------------------------------------------- serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_1E0030000E5053424E363620-if00 #restart_method: command ##-------------------------------------------------------------------- [printer] kinematics: corexy max_velocity: 300 max_accel: 3000 # Max 4000 max_accel_to_decel: 1500 # default half of max_accel max_z_velocity: 25 # Max 15 for 12V TMC Drivers, can increase for 24V max_z_accel: 350 square_corner_velocity: 5.0 ##################################################################### # fluidd ##################################################################### [include fluidd.cfg] ##################################################################### # Macros ##################################################################### [include macros.cfg] ##################################################################### # X/Y Stepper Settings ##################################################################### ## X Stepper on MOTOR0(B Motor) [stepper_x] step_pin: PF13 dir_pin: !PF12 enable_pin: !PF14 rotation_distance: 40 microsteps: 16 full_steps_per_rotation: 400 # 1.8 deg stepper: 200, 0.9 deg stepper endstop_pin: PG6 position_min: 0 position_endstop: 300 position_max: 300 homing_speed: 25 # Max 100 homing_retract_dist: 5 homing_positive_dir: true [tmc2209 stepper_x] uart_pin: PC4 interpolate: True run_current: 0.8 hold_current: 0.7 sense_resistor: 0.110 stealthchop_threshold: 0 ## Y Stepper on MOTOR1 (A Motor) [stepper_y] step_pin: PG0 dir_pin: !PG1 enable_pin: !PF15 rotation_distance: 40 microsteps: 16 full_steps_per_rotation: 400 # 200: 1.8 deg stepper, 400: 0.9 deg stepper endstop_pin: PG9 position_min: 0 position_endstop: 305 position_max: 305 homing_speed: 25 #Max 100 homing_retract_dist: 5 homing_positive_dir: true [tmc2209 stepper_y] uart_pin: PD11 interpolate: True run_current: 0.8 hold_current: 0.7 sense_resistor: 0.110 stealthchop_threshold: 0 ##################################################################### # Z Stepper Settings ##################################################################### ## Z0 Stepper - Front Left on MOTOR2_1 [stepper_z] step_pin: PF11 dir_pin: PG3 enable_pin: !PG5 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 endstop_pin: PG10 ## 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 position_max: 290 position_min: -5 homing_speed: 8 second_homing_speed: 3 homing_retract_dist: 3 [tmc2209 stepper_z] uart_pin: PC6 interpolate: true run_current: 0.8 hold_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z1 Stepper - Rear Left on MOTOR3 [stepper_z1] step_pin: PG4 dir_pin: !PC1 enable_pin: !PA0 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z1] uart_pin: PC7 interpolate: true run_current: 0.8 hold_current: 0.8 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z2 Stepper - Rear Right on MOTOR4 [stepper_z2] step_pin: PF9 dir_pin: PF10 enable_pin: !PG2 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z2] uart_pin: PF2 interpolate: true run_current: 0.8 hold_current: 0.80 sense_resistor: 0.110 stealthchop_threshold: 0 ## Z3 Stepper - Front Right on MOTOR5 [stepper_z3] step_pin: PC13 dir_pin: !PF0 enable_pin: !PF1 rotation_distance: 40 gear_ratio: 80:16 microsteps: 16 [tmc2209 stepper_z3] uart_pin: PE4 interpolate: true run_current: 0.8 hold_current: 0.80 sense_resistor: 0.110 stealthchop_threshold: 0 ##################################################################### # Extruder ##################################################################### # E0 on MOTOR6 [extruder] step_pin: PE2 dir_pin: !PE3 enable_pin: !PD4 ## 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 # 1.8 deg stepper: 200, 0.9 deg stepper nozzle_diameter: 0.400 filament_diameter: 1.75 heater_pin: PA2 ## Validate the following thermistor type to make sure it is correct sensor_type: ATC Semitec 104GT-2 sensor_pin: PF4 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 MOTOR6 [tmc2209 extruder] uart_pin: PE1 interpolate: false run_current: 0.5 hold_current: 0.4 sense_resistor: 0.110 stealthchop_threshold: 0 ##################################################################### # Bed Heater ##################################################################### [heater_bed] ## SSR Pin - BED_OUT heater_pin: PA1 sensor_type: NTC 100K beta 3950 sensor_pin: PF3 ## Adjust Max Power so your heater doesn't warp your bed max_power: 0.8 # 0.4W per cm2, 360W for 300 build 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 pin: ~PB7 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: PA8 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: PE5 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: PD12 kick_start_time: 0.5 heater: heater_bed heater_temp: 45.0 #[heater_fan exhaust_fan] ## Exhaust fan - CNC_FAN3 #pin: PD13 #max_power: 1.0 #shutdown_speed: 0.0 #kick_start_time: 5.0 #heater: heater_bed #heater_temp: 60 #fan_speed: 1.0 ##################################################################### # LED Control ##################################################################### #[output_pin caselight] # Chamber Lighting - HE1 Connector (Optional) #pin: PA3 #pwm:true #shutdown_value: 0 #value:1 #cycle_time: 0.01 ##################################################################### # Homing and Gantry Adjustment Routines ##################################################################### ##################################################################### # Enclosure Temp Sensor Section ##################################################################### [thermistor chamber_temp] temperature1: 25 resistance1: 10000 beta: 3950 [temperature_sensor enclosure_temp] sensor_type: chamber_temp sensor_pin: PF5 min_temp: 0 max_temp: 100 gcode_id: C [idle_timeout] timeout: 1800 [safe_z_home] ## XY Location of the Z Endstop Switch home_xy_position: 208, 305 speed:100 z_hop:10 [bed_mesh] speed: 300 horizontal_move_z: 10 mesh_min: 40,40 mesh_max: 260,260 fade_start: 0.6 fade_end: 10 probe_count: 5,5 algorithm: bicubic relative_reference_index: 12 [quad_gantry_level] ## Use QUAD_GANTRY_LEVEL to level a gantry. gantry_corners: -60,-10 360,370 points: 50,25 50,225 250,225 250,25 speed: 100 horizontal_move_z: 10 retries: 5 retry_tolerance: 0.0075 max_adjust: 10 ######################################## # EXP1 / EXP2 (display) pins ######################################## [board_pins] aliases: # EXP1 header EXP1_1=PE8, EXP1_2=PE7, EXP1_3=PE9, EXP1_4=PE10, EXP1_5=PE12, EXP1_6=PE13, # Slot in the socket on this side EXP1_7=PE14, EXP1_8=PE15, EXP1_9=, EXP1_10=<5V>, # EXP2 header EXP2_1=PA6, EXP2_2=PA5, EXP2_3=PB1, EXP2_4=PA4, EXP2_5=PB2, EXP2_6=PA7, # Slot in the socket on this side EXP2_7=PC15, EXP2_8=, EXP2_9=, EXP2_10=<5V> ##################################################################### # Displays ##################################################################### [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=0.50 GREEN=0.00 BLUE=0.00 INDEX=1 TRANSMIT=0 SET_LED LED=btt_mini12864 RED=0.13 GREEN=0.16 BLUE=1.00 INDEX=2 TRANSMIT=0 SET_LED LED=btt_mini12864 RED=0.13 GREEN=0.16 BLUE=1.00 INDEX=3 #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [heater_bed] #*# control = pid #*# pid_kp = 37.870 #*# pid_ki = 1.244 #*# pid_kd = 288.283 #*# #*# [extruder] #*# control = pid #*# pid_kp = 27.483 #*# pid_ki = 1.762 #*# pid_kd = 107.182 #*# #*# [bed_mesh default] #*# version = 1 #*# points = #*# 0.085000, 0.102500, 0.075000, 0.080000, 0.060000 #*# 0.057500, 0.062500, 0.020000, 0.032500, 0.035000 #*# 0.027500, 0.035000, 0.000000, 0.000000, -0.007500 #*# 0.020000, 0.032500, -0.005000, 0.017500, 0.020000 #*# 0.072500, 0.085000, 0.045000, 0.057500, 0.057500 #*# tension = 0.2 #*# min_x = 40.0 #*# algo = bicubic #*# y_count = 5 #*# mesh_y_pps = 2 #*# min_y = 40.0 #*# x_count = 5 #*# max_y = 260.0 #*# mesh_x_pps = 2 #*# max_x = 260.0 #*# #*# [stepper_z] #*# position_endstop = 0.642