常用配置
导入
[include fluidd.cfg]
单片机
[mcu]
serial: /tmp/pseudoserial
#serial: /dev/serial/by-id/<your-mcu-id>
虚拟SD卡: gcode文件路径
[virtual_sdcard]
path: /home/lhgcs/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
打印机
[printer]
kinematics: none
max_velocity: 1000
max_accel: 1000
串口
[mcu host]
serial: /tmp/klipper_host_mcu
静态
/dev/serial/by-path/
动态
/dev/tty
建议使用绑定ID的方式,防止后续接入多个CH340导致Klipper上位机无法调用正确的串口
XYZ轴
[stepper_x]
step_pin: PD7 # 电机脉冲引脚
dir_pin: !PC5 # 方向设置
enable_pin: !PD6 # 使能引脚
microsteps: 16 # 细分
rotation_distance: 40 # 主动轮周长mm
endstop_pin: ^PC2 # 限位开关
position_endstop: 0 # 机械限位最大行程
position_max: 165 # 软限位最大行程
homing_speed: 50 # 复位速度
挤出机
[extruder]
step_pin: PB1
dir_pin: !PB0
enable_pin: !PD6
microsteps: 16
rotation_distance: 34.410 # 步进值
nozzle_diameter: 0.400 #喷嘴直径
filament_diameter: 1.750 #耗材直径
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 200.0
max_extrude_only_accel: 500.0
heater_pin: PD5 # 加热棒引脚
sensor_type: EPCOS 100K B57560G104F #传感器型号
sensor_pin: PA7 # 传感器接口
control: pid
pid_Kp: 21.73
pid_Ki: 1.54
pid_Kd: 76.55
min_temp: 0 # 最小温度
max_temp: 250 # 最大温度
run_current: 0.800 # 运行电流A
hold_current: 0.500 # 保持电流A
stealthchop_threshold: 999999 # 静音阀值
热床
[heater_bed]
heater_pin: PD4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA6
control: pid
pid_Kp: 72.487
pid_Ki: 2.279
pid_Kd: 576.275
min_temp: 0
max_temp: 100
热床网格校准
[bed_mesh]
speed:100 # 校准速度
horizontal_move_z:5 # Z轴运动速度
mesh_min:10,10 # 最小校准点坐标x,y
mesh_max:300,300 # 最大校准点坐标x,y
probe_count: 5,5 # 采样点数(5X5为25点)
mesh_pps:2,2 # 补充采样点数
algorithm: bicubic # 算法模型
bicubic_tension: 0.2 # 算法插值不要动
relative_reference_index: 13 # 第多少个点作为±0.00 (最好将点位设置在热床中间或者较平处)(解决热床校准之后在空中的问题)
温度
[fan]
pin: PB4
打印机
[printer]
kinematics: cartesian # 打印机类型 corexy
max_velocity: 300 # 最大速度
max_accel: 1500 # 最大加速度
max_z_velocity: 5 # Z轴最大速度
max_z_accel: 100 # Z轴最大加速度
显示
[display]
lcd_type: uc1701
cs_pin: PA3
a0_pin: PA1
encoder_pins: ^PD2, ^PD3
click_pin: ^!PC0
温控风扇
[temperature_fan host_fan]
pin: host:gpio3
kick_start_time: 0.500
sensor_type: temperature_host
control: watermark
# 高于以下温度启用风扇
target_temp: 50.0
# 允许的温度范围
min_temp: 0
max_temp: 90
# 调节最大风速以降低噪音
#max_speed: 1.0
#min_speed: 0.3
打完关机、自动开机
sudo shutdown now
sudo poweroff
监听按钮连接的引脚状态
执行关机动作:调用 Moonraker API、使用 shell_cmd 调用系统关机命令两种方式
按钮防抖动和按下两次才执行
# ~/klipper_config/printer.cfg
# 定义物理按钮 【监听引脚状态】
[gcode_button poweroff_button]
# 按钮信号连接引脚
pin: host:gpio
# 按下时执行 gcode 宏命令
#press_gcode:
# 松开时执行 gcode 宏命令
release_gcode:
PowerOff_Host
# 定义 shell_cmd 命令 【执行关机操作】
[gcode_shell_command poweroff_host]
command: sudo shutdown now
# timeout: 2.
# verbose: True
[gcode_macro PowerOff_Host]
gcode:
RUN_SHELL_COMMAND CMD=poweroff_host
测试
测试限位开关
QUERY_ENDSTOPS
移动方向
改dir_pin参数,即增加或删除!
喷头pid矫正
输入PID_CALIBRATE heater=extruder target=220,待喷头温度曲线波动5次之后,输入SAVE_CONFIG保存配置
热床pid矫正
输入PID_CALIBRATE heater=heater_bed target=60,待热床温度曲线波动5次之后,输入SAVE_CONFIG保存配置
gcode_macro.cfg
使用gcode宏,if/for,gcode命令实现逻辑
[gcode_macro SMPLE ]
gcode:
{% set tooltemp = 300.0 %}
{% if tooltemp <= printer.extruder.temperature %}
M118 热端的温度还不够热!
{% else %}
M118 热端温度现在已经足够热了
{% endif %}
[gcode_macro cleaningnozzle ]
gcode:
{% set looptime = 10 %}
{% for counter in range(looptime|int) %}
G0 y+{counter}
{% endfor %}
cfg宏,通过console或者python调用
获取参数
{% set num = params.NUM | default(0) | int %}
gcode.run_script(“M221 S100”)