Basic Information:
Printer Model: Longer LK5 Pro
MCU / Printerboard: Manta M8P V2.0
Host / SBC: CB1
Stepper Drivers:
TMC5160 - Motors 1-4
TMC2209 - Motors 5-8
klippy.log (3.7 MB)
printer.cfg
# This file contains common pin mappings for the BIGTREETECH Manta M8P V2.0
# To use this config, the firmware should be compiled for the
# STM32H723 with a "128KiB bootloader" "25 MHz crystal"
# and "USB (on PA11/PA12)", "CAN bus (on PD0/PD1)" or Serial (on USART1 PA10/PA9).
# See docs/Config_Reference.md for a description of parameters.
[include mainsail.cfg]
# Motor1
[stepper_x]
step_pin: PE6
dir_pin: PE5
enable_pin: !PC14
microsteps: 16
rotation_distance: 40
microsteps: 256
full_steps_per_rotation: 200
endstop_pin: ^PF4
position_endstop: 0
position_max: 305
homing_speed: 50
# Motor2
[stepper_y]
step_pin: PE2
dir_pin: !PE1
enable_pin: !PE4
microsteps: 16
rotation_distance: 40
microsteps: 256
full_steps_per_rotation: 200
endstop_pin: ^PF3
position_endstop: 0
position_max: 315
homing_speed: 50
# Motor3
[stepper_z]
step_pin: PB8
dir_pin: PB7
enable_pin: !PE0
microsteps: 16
rotation_distance: 8
microsteps: 256
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
#position_endstop: 0
position_max: 300
position_min: -5.0
homing_speed: 8
second_homing_speed: 3
homing_retract_dist: 3
# Motor4
[stepper_z1]
step_pin: PB4
dir_pin: PB3
enable_pin: !PB6
microsteps: 16
rotation_distance: 8
microsteps: 256
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
#position_endstop: 0
#position_max: 300
#position_min: -5.0
#homing_speed: 8
#second_homing_speed: 3
#homing_retract_dist: 3
# Motor5
[extruder]
step_pin: PG13
dir_pin: !PG12
enable_pin: !PG15
microsteps: 16
rotation_distance: 26.161838
#full_steps_per_rotation:
gear_ratio: 5.65:1
# See the "stepper" section for a description of the above
# parameters. If none of the above parameters are specified then no
# stepper will be associated with the nozzle hotend (though a
# SYNC_EXTRUDER_MOTION command may associate one at run-time).
nozzle_diameter: 0.4
# Diameter of the nozzle orifice (in mm). This parameter must be
# provided.
filament_diameter: 1.75
# The nominal diameter of the raw filament (in mm) as it enters the
# extruder. This parameter must be provided.
#max_extrude_cross_section:
# Maximum area (in mm^2) of an extrusion cross section (eg,
# extrusion width multiplied by layer height). This setting prevents
# excessive amounts of extrusion during relatively small XY moves.
# If a move requests an extrusion rate that would exceed this value
# it will cause an error to be returned. The default is: 4.0 *
# nozzle_diameter^2
#instantaneous_corner_velocity: 1.000
# The maximum instantaneous velocity change (in mm/s) of the
# extruder during the junction of two moves. The default is 1mm/s.
max_extrude_only_distance: 120.0
# Maximum length (in mm of raw filament) that a retraction or
# extrude-only move may have. If a retraction or extrude-only move
# requests a distance greater than this value it will cause an error
# to be returned. The default is 50mm.
#max_extrude_only_velocity:
#max_extrude_only_accel:
# Maximum velocity (in mm/s) and acceleration (in mm/s^2) of the
# extruder motor for retractions and extrude-only moves. These
# settings do not have any impact on normal printing moves. If not
# specified then they are calculated to match the limit an XY
# printing move with a cross section of 4.0*nozzle_diameter^2 would
# have.
#pressure_advance: 0.0
# The amount of raw filament to push into the extruder during
# extruder acceleration. An equal amount of filament is retracted
# during deceleration. It is measured in millimeters per
# millimeter/second. The default is 0, which disables pressure
# advance.
#pressure_advance_smooth_time: 0.040
# A time range (in seconds) to use when calculating the average
# extruder velocity for pressure advance. A larger value results in
# smoother extruder movements. This parameter may not exceed 200ms.
# This setting only applies if pressure_advance is non-zero. The
# default is 0.040 (40 milliseconds).
#
# The remaining variables describe the extruder heater.
heater_pin: PA0 # HE0
# PWM output pin controlling the heater. This parameter must be
# provided.
#max_power: 1.0
# The maximum power (expressed as a value from 0.0 to 1.0) that the
# heater_pin may be set to. The value 1.0 allows the pin to be set
# fully enabled for extended periods, while a value of 0.5 would
# allow the pin to be enabled for no more than half the time. This
# setting may be used to limit the total power output (over extended
# periods) to the heater. The default is 1.0.
sensor_type : Dyze500
# Type of sensor - common thermistors are "EPCOS 100K B57560G104F",
# "ATC Semitec 104GT-2", "ATC Semitec 104NT-4-R025H42G", "Generic
# 3950","Honeywell 100K 135-104LAG-J01", "NTC 100K MGB18-104F39050L32",
# "SliceEngineering 450", and "TDK NTCG104LH104JT1". See the
# "Temperature sensors" section for other sensors. This parameter
# must be provided.
sensor_pin: PB0 # T0
# Analog input pin connected to the sensor. This parameter must be
# provided.
#pullup_resistor: 4700
# The resistance (in ohms) of the pullup attached to the thermistor.
# This parameter is only valid when the sensor is a thermistor. The
# default is 4700 ohms.
#smooth_time: 1.0
# A time value (in seconds) over which temperature measurements will
# be smoothed to reduce the impact of measurement noise. The default
# is 1 seconds.
control: pid
# Control algorithm (either pid or watermark). This parameter must
# be provided.
pid_Kp: 13.931 # 270 DEGREES
pid_Ki: 0.356 # 270 DEGREES
pid_Kd: 136.350 # 270 DEGREES
# The proportional (pid_Kp), integral (pid_Ki), and derivative
# (pid_Kd) settings for the PID feedback control system. Klipper
# evaluates the PID settings with the following general formula:
# heater_pwm = (Kp*error + Ki*integral(error) - Kd*derivative(error)) / 255
# Where "error" is "requested_temperature - measured_temperature"
# and "heater_pwm" is the requested heating rate with 0.0 being full
# off and 1.0 being full on. Consider using the PID_CALIBRATE
# command to obtain these parameters. The pid_Kp, pid_Ki, and pid_Kd
# parameters must be provided for PID heaters.
#max_delta: 2.0
# On 'watermark' controlled heaters this is the number of degrees in
# Celsius above the target temperature before disabling the heater
# as well as the number of degrees below the target before
# re-enabling the heater. The default is 2 degrees Celsius.
#pwm_cycle_time: 0.100
# Time in seconds for each software PWM cycle of the heater. It is
# not recommended to set this unless there is an electrical
# requirement to switch the heater faster than 10 times a second.
# The default is 0.100 seconds.
min_extrude_temp: 0
# The minimum temperature (in Celsius) at which extruder move
# commands may be issued. The default is 170 Celsius.
min_temp: 0
max_temp: 480
# The maximum range of valid temperatures (in Celsius) that the
# heater must remain within. This controls a safety feature
# implemented in the micro-controller code - should the measured
# temperature ever fall outside this range then the micro-controller
# will go into a shutdown state. This check can help detect some
# heater and sensor hardware failures. Set this range just wide
# enough so that reasonable temperatures do not result in an error.
# These parameters must be provided.
[thermistor Dyze500]
#based on https://docs.dyzedesign.com/general-support/temperature-sensors.html#_500%C2%B0c-thermistor
temperature1: 25
resistance1: 4500000
temperature2: 260
resistance2: 2240
temperature3: 460
resistance3: 125.4
# End-Stop 5
[filament_motion_sensor Orthus]
detection_length: 1.5
# The minimum length of filament pulled through the sensor to trigger a state change on the switch_pin (see table below)
extruder: extruder
# The name of the extruder section this sensor is associated with (the same name used in your config file).
# This parameter must be provided.
switch_pin: PF0
pause_on_runout: True
#runout_gcode: YourRunoutGcode
#insert_gcode: YourInsertGcode
#event_delay:
#pause_delay:
[heater_bed]
heater_pin: PF5
sensor_pin: PB1 # TB
sensor_type: Generic 3950
min_temp: 0
max_temp: 110
control: pid
pid_Kp:54.940 # 85 DEGREES
pid_Ki:0.647 # 85 DEGREES
pid_Kd:1166.105 # 85 DEGREES
#[fan_generic soc-fan]
#pin: gpio26 #CB1
#pin: host:gpio79 #CM4
# Fan0
[fan]
pin: PF7
## Fan1
#[heater_fan fan1]
#pin: PF9
## Fan2
#[heater_fan fan2]
#pin: PF6
## Fan3
#[heater_fan fan3]
#pin: PF8
## Fan4
#[heater_fan fan4]
#pin: PA4
## Fan5
#[heater_fan fan5]
#pin: PA6
#tachometer_pin: PC2
## Fan6
#[heater_fan fan6]
#pin: PA2
#tachometer_pin: PC1
[temperature_sensor Heater]
sensor_pin: PC5 # THB1
sensor_type: Generic 3950
min_temp: 10
max_temp: 110
[temperature_sensor CB1]
sensor_type: temperature_host
min_temp: 10
max_temp: 100
[temperature_sensor MCU]
sensor_type: temperature_mcu
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_490031001851313433343333-if00
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_z_velocity: 5
max_z_accel: 100
#[mcu rpi]
#serial: /tmp/klipper_host_mcu
#[adxl345]
#cs_pin: rpi:None
#[resonance_tester]
#accel_chip: adxl345
#probe_points:
# 100, 100, 20 # an example
########################################
# TMC5160 configuration
########################################
#Motor1
[tmc5160 stepper_x]
cs_pin: PC13
spi_software_mosi_pin: PG6
spi_software_miso_pin: PG7
spi_software_sclk_pin: PG8
diag1_pin: PF4
run_current: 0.8
stealthchop_threshold: 999999
#Motor2
[tmc5160 stepper_y]
cs_pin: PE3
spi_software_mosi_pin: PG6
spi_software_miso_pin: PG7
spi_software_sclk_pin: PG8
diag1_pin: PF3
run_current: 0.8
stealthchop_threshold: 999999
#Motor3
[tmc5160 stepper_z]
cs_pin: PB9
spi_software_mosi_pin: PG6
spi_software_miso_pin: PG7
spi_software_sclk_pin: PG8
diag1_pin: PF2
run_current: 0.8
stealthchop_threshold: 999999
#Motor4
[tmc5160 stepper_z1]
cs_pin: PB5
spi_software_mosi_pin: PG6
spi_software_miso_pin: PG7
spi_software_sclk_pin: PG8
diag1_pin: PF1
run_current: 0.8
stealthchop_threshold: 999999
########################################
# TMC2209 configuration
########################################
#Motor5
[tmc2209 extruder]
uart_pin: PG14
run_current: 0.800
stealthchop_threshold: 999999
## Motor6
#[tmc2209 extruder1]
#uart_pin: PG10
#run_current: 0.800
#stealthchop_threshold: 999999
## Motor7
#[tmc2209 extruder2]
#uart_pin: PD5
#run_current: 0.800
#stealthchop_threshold: 999999
## Motor8
#[tmc2209 extruder3]
#uart_pin: PC6
#run_current: 0.800
#stealthchop_threshold: 999999
#[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>
# See the sample-lcd.cfg file for definitions of common LCD displays.
[probe]
pin: !PF2
x_offset: 0.0
y_offset: 0.0
z_offset: 1
speed: 5.0
[safe_z_home]
home_xy_position: 165, 179
# A X, Y coordinate (e.g. 100, 100) where the Z homing should be
# performed. This parameter must be provided.
#speed: 50.0
# Speed at which the toolhead is moved to the safe Z home
# coordinate. The default is 50 mm/s
z_hop: 10
# Distance (in mm) to lift the Z axis prior to homing. This is
# applied to any homing command, even if it doesn't home the Z axis.
# If the Z axis is already homed and the current Z position is less
# than z_hop, then this will lift the head to a height of z_hop. If
# the Z axis is not already homed the head is lifted by z_hop.
# The default is to not implement Z hop.
[bed_screws]
screw1: 45, 59
screw1_name: front left screw
screw2: 285, 59
screw2_name: front right screw
screw3: 285, 300
screw3_name: rear right screw
screw4: 45, 300
screw4_name: rear left screw
[screws_tilt_adjust]
screw1: 45, 59
screw1_name: front left screw
screw2: 285, 59
screw2_name: front right screw
screw3: 285, 300
screw3_name: rear right screw
screw4: 45, 300
screw4_name: rear left screw
horizontal_move_z: 10.
speed: 200
screw_thread: CW-M3
[z_tilt]
z_positions: -16, 179
349, 179
# A list of X, Y coordinates (one per line; subsequent lines
# indented) describing the location of each bed "pivot point". The
# "pivot point" is the point where the bed attaches to the given Z
# stepper. It is described using nozzle coordinates (the X, Y position
# of the nozzle if it could move directly above the point). The
# first entry corresponds to stepper_z, the second to stepper_z1,
# the third to stepper_z2, etc. This parameter must be provided.
points: 45, 179
285, 179
# A list of X, Y coordinates (one per line; subsequent lines
# indented) that should be probed during a Z_TILT_ADJUST command.
# Specify coordinates of the nozzle and be sure the probe is above
# the bed at the given nozzle coordinates. This parameter must be
# provided.
speed: 200
# The speed (in mm/s) of non-probing moves during the calibration.
# The default is 50.
horizontal_move_z: 5
# The height (in mm) that the head should be commanded to move to
# just prior to starting a probe operation. The default is 5.
retries: 20
# Number of times to retry if the probed points aren't within
# tolerance.
retry_tolerance: 0.02
# If retries are enabled then retry if largest and smallest probed
# points differ more than retry_tolerance. Note the smallest unit of
# change here would be a single step. However if you are probing
# more points than steppers then you will likely have a fixed
# minimum value for the range of probed points which you can learn
# by observing command output.
#[bed_mesh]
#speed: 50
#horizontal_move_z: 10
#mesh_min:20,50
#mesh_max:170,200
#probe_count: 3,3
#[adxl345]
#cs_pin: PA15
#spi_bus: spi3a
#[bltouch]
#sensor_pin: PD13
#control_pin: PD12
#[hall_filament_width_sensor]
#adc1: PC0
#adc2: PF10
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [heater_bed]
#*# control = pid
#*# pid_kp = 54.940
#*# pid_ki = 0.647
#*# pid_kd = 1166.105
#*#
#*# [extruder]
Issue:
z motor plugged into motor 3a port
z1 motor plugged into motor 4 port.
When homing both motors seem to be going in the correct direction.
When I try doing the z_tilt the left side probes fine, the right side moves X to the position commanded but goes up instead of down to probe. I hit the emergency stop after it did this twice. I’m really not sure why it’s doing this. I have tried looking it up in past conversations but I did not find anything like this.
…