Steppers 坚持使用 Klipper 但与 Marlin 合作

3D打印 创造者-3 固件 快船
2021-05-14 03:13:21

我用 Noctuas & Buck 转换器替换了我的 ender 3v2 的风扇。在更换过程中,我犯了一个错误并烧毁了主板(将其中一个风扇短路)。我更换了主板,完成了接线。新主板是带有亚马逊TMC 2225 驱动程序Creality Ender 3 V2 V4.2.7Silent Motherboard 32 位主板与旧板完全相同,但版本不同4.2.2

打印机可以正常工作,并且使用 marlin 自动归位运行(默认情况下所有选项)。二进制文件名称:Ender-3 V2_32bit_4.2.7_BLTouch_Marlin_2.0.1_V1.1.1_TMC2225

Klipper 版本:FIRMWARE_VERSION:v0.9.1-160-g8a6619d1 FIRMWARE_NAME:Klipper 当打印机运行由 Octoprint 控制的 Klipper 时,步进器不会旋转。当我发送“自动归位”命令时,我可以听到电机通电时发出的轻柔“砰砰”声,它们像婴儿一样旋转(感觉更像是一次振动而不是旋转,就像它们在“尝试”但是没有实际移动的力量)并停留在那里,直到自动归位超时。

我尝试STEPPER_BUZZ STEPPER=stepper_x在 Y 轴上运行和相同,但看起来没有任何事情发生。

我或多或少肯定这是一个软件问题,因为打印机在 Marlin 上工作得很好,但在更换主板之前,我用 Klipper 从来没有遇到过这个问题。

我已经把我的自定义配置放在一边printer.cfg,而是使用我在这里找到的“默认”配置(复制/粘贴在下面)

# This file contains pin mappings for the stock 2020 Creality Ender 3
# V2. To use this config, during "make menuconfig" select the
# STM32F103 with a "28KiB bootloader" and serial (on USART1 PA10/PA9)
# communication.

# If you prefer a direct serial connection, in "make menuconfig"
# select "Enable extra low-level configuration options" and select
# serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC
# cable used for the LCD module as follows:
# 3: Tx, 4: Rx, 9: GND, 10: VCC

# Flash this firmware by copying "out/klipper.bin" to a SD card and
# turning on the printer with the card inserted. The firmware
# filename must end in ".bin" and must not match the last filename
# that was flashed.

# See docs/Config_Reference.md for a description of parameters.

[stepper_x]
step_pin: PC2
dir_pin: PB9
enable_pin: !PC3
microsteps: 16
rotation_distance: 40
endstop_pin: ^PA5
position_endstop: 0
position_max: 235
homing_speed: 50

[stepper_y]
step_pin: PB8
dir_pin: PB7
enable_pin: !PC3
microsteps: 16
rotation_distance: 40
endstop_pin: ^PA6
position_endstop: 0
position_max: 235
homing_speed: 50

[stepper_z]
step_pin: PB6
dir_pin: !PB5
enable_pin: !PC3
microsteps: 16
rotation_distance: 8
endstop_pin: ^PA7
position_endstop: 0.0
position_max: 250

[extruder]
max_extrude_only_distance: 100.0
step_pin: PB4
dir_pin: PB3
enable_pin: !PC3
microsteps: 16
rotation_distance: 34.406
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PA1
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC5
control: pid
# tuned for stock hardware with 200 degree Celsius target
pid_Kp: 21.527
pid_Ki: 1.063
pid_Kd: 108.982
min_temp: 0
max_temp: 250

[heater_bed]
heater_pin: PA2
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC4
control: pid
# tuned for stock hardware with 50 degree Celsius target
pid_Kp: 54.027
pid_Ki: 0.770
pid_Kd: 948.182
min_temp: 0
max_temp: 130

[fan]
pin: PA0

[mcu]
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
restart_method: command

[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_z_velocity: 5
max_z_accel: 100

什么可能导致步进器被 Klipper 卡住,但与 Marlin 一起工作?

我尝试过但没有成功(根据互联网的建议):

  • 解开皮带
  • !enable_pin: !PC3配置中删除
  • 重新构建并刷新固件,而不是重复使用我保留的旧垃圾箱
1个回答

Creality 板上的引脚分配方案似乎在版本V4.2.24.2.8. 例如,PB9&PC2step_pin之间倒置dir_pin

使用以下 Klipper 配置(可在此处找到)允许电机再次完成其工作。

[stepper_x]
step_pin: PB9
dir_pin: PC2
enable_pin: !PC3
step_distance: .0125
endstop_pin: ^PA5
position_endstop: 0
position_max: 235
homing_speed: 50

[stepper_y]
step_pin: PB7
dir_pin: PB8
enable_pin: !PC3
step_distance: .0125
endstop_pin: ^PA6
position_endstop: 0
position_max: 235
homing_speed: 50

[stepper_z]
step_pin: PB5
dir_pin: !PB6
enable_pin: !PC3
step_distance: .0025
endstop_pin: ^PA7
position_endstop: 0.0
position_max: 250

[extruder]
max_extrude_only_distance: 100.0
step_pin: PB3
dir_pin: PB4
enable_pin: !PC3
step_distance: 0.010752
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PA1
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC5
control: pid
# tuned for stock hardware with 200 degree Celsius target
pid_Kp: 21.527
pid_Ki: 1.063
pid_Kd: 108.982
min_temp: 0
max_temp: 250

[heater_bed]
heater_pin: PA2
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC4
control: pid
# tuned for stock hardware with 50 degree Celsius target
pid_Kp: 54.027
pid_Ki: 0.770
pid_Kd: 948.182
min_temp: 0
max_temp: 130

[fan]
pin: PA0

[mcu]
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0

[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_z_velocity: 5
max_z_accel: 100

[display]
lcd_type: st7920
cs_pin: PB12
sclk_pin: PB13
sid_pin: PB15
encoder_pins: ^PB14, ^PB10
click_pin: ^!PB2 
```