MCU 连接指南
本指南用于排查和解决 MCU 无法与 Klipper 正常连接的问题。
准备工作与注意事项
- 不推荐的上位机设备:避免使用红米手机、WiFi棒子、机顶盒等设备。它们通常采用定制或修改过的系统,可能导致无法正确识别 MCU。
- 确认下位机数量:请提前确认您使用的下位机(如工具板)数量,多个下位机可能影响连接。
- 简化接线:建议暂时移除主板和工具板上除数据线外的所有接线,仅保留必要的数据连接以排除干扰。
- 推荐操作界面:推荐使用 Fluidd 界面,它能更直观地显示 MCU 连接状态。
第一步:备份并重置配置
1. 访问上位机界面
在浏览器中输入上位机的 IP 地址(例如:192.168.101.179)进行访问。

2. 定位配置文件
进入 WEB 界面,在左侧边栏中找到配置选项:
Fluidd 用户:点击 ![]() | Mainsail 用户:点击 ![]() |
3. 备份配置文件
右键点击 printer.cfg 文件,选择 Duplicate 进行复制,并将副本重命名为:
printer_Backup.cfg
Fluidd 操作示例: ![]() | Mainsail 操作示例: ![]() |
4. 重置配置文件
重新打开 printer.cfg,清空所有内容,并粘贴以下基础配置:
[mcu]
serial: /tmp/klipper_host_mcu
[printer]
kinematics: none
max_velocity: 200
max_accel: 1000
5. 保存并重启
- 点击右上角的 SAVE & RESTART,Klipper 将保存配置并重启服务。
- 如出现报错,请暂时忽略。
- 随后,请将所有设备(包括上位机和所有下位机)完全断电。
- 重要:必须确保彻底断电,否则无法进行后续步骤。
第二步:检测设备并确认固件类型
前提条件
- 主设备顺序:第一个
MCU必须是主板,不能是工具板。 - 固件类型:确认您的 FLY 主板固件为 USB 固件 或 USB 桥接 CAN 固件,本指南不适用于其他类型。
- 连接方式:请先 连接 SSH,此操作需通过网络进行。
操作步骤
-
执行设备检测
- 成功连接 SSH 后,执行以下命令:
lsusb - 系统将列出所有已识别的 USB 设备。
- 成功连接 SSH 后,执行以下命令:
-
处理命令异常
- 若提示
lsusb命令不存在,请先安装:sudo apt-get install usbutils - 若执行后无任何设备显示,建议更换上位机。
- 若提示
-
识别设备信息 根据下方图示,在
lsusb的输出结果中识别您的设备:

-
验证固件类型
- 请根据您刷入的固件,在
lsusb结果中核对以下关键信息:- USB 固件:应显示
1d50:614e - USB 桥接 CAN 固件:应显示
1d50:606f - USB Katapult 固件:应显示
1d50:6177 - RS232 适配器 (搭配 UTOR或者使用D8与D8PRO主板):应显示
1a86:7523(搭配 G2T 则无需此步骤)
- USB 固件:应显示
- 请根据您刷入的固件,在
第三步:搜索设备 ID
重要说明
- USB ID 搜索:仅适用于 USB 固件,无法用于 CAN 或 RS232。
- CAN ID 搜索:仅适用于 CAN 总线设备,无法用于 USB 或 RS232。
- RS232 ID 搜索:仅适用于 RS232 固件,无法用于 USB 或 CAN。
- RS232 专用性:RS232 固件通常仅用于工具板,不适用于主 MCU。
根据固件类型选择方法
USB 固件设备 执行以下命令搜索 USB 设备 ID:
ls /dev/serial/by-id/*
USB 桥接 CAN 设备 根据您的系统类型,选择对应的命令搜索 CAN ID:
- Fly_Armbian 或普通上位机
- Fly_FAST 系统
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python ~/klipper/scripts/canbus_query.py can0
RS232 固件设备 执行以下命令搜索 RS232 设备路径:
ls /dev/serial/by-path/*
结果解读与处理
USB ID 搜索结果
执行命令后,终端将显示类似下方的设备 ID(此为示例):
- ✅ 可直接使用:如果 ID 在
usb-字段后标注为Klipper - ⚠️ 需刷写固件:如果 ID 在
usb-字段后标注为katapult

CAN ID 搜索结果
执行命令后,请根据实际情况判断:
- ✅ 可直接使用:如果显示的 ID 在末尾
Application:字段中标注为Klipper。 - ⚠️ 需刷写固件:如果显示的 ID 在末尾
Application:字段中标注为CANBOOT或Katapult。 - ❌ 未找到设备:如果显示
Total 0 uuids found,可能原因包括:- CAN 网络配置错误
- CAN 速率不匹配(请确保上位机、主板、工具板速率一致)
- 该 ID 已被占用(需在配置中屏蔽,然后关机、断电并重启)

RS232 ID 搜索结果
执行命令后,终端将显示 RS232 设备路径(此为示例):
/dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
RS232 设备在配置时必须指定波特率和重启方法:
[mcu toolboard]
serial: <这里替换为查询到的RS232设备路径>
baud: 250000
restart_method: command
第四步:配置主 MCU 的 ID
在开始配置前,请确保工具板与上位机或主板的连接已断开,以避免设备识别冲突。
重新打开 printer.cfg 文件,找到 [mcu] 部分中的 serial: /tmp/klipper_host_mcu 配置行。
根据您的连接方式,参照下方对应的方法进行配置:
- USB 连接配置
- CAN 连接配置
将 serial: 后面的 /tmp/klipper_host_mcu 替换为搜索到的 USB ID。
配置示例:
# 搜索到的 USB ID 为:
# /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
# 修改配置为:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
将 serial: /tmp/klipper_host_mcu 配置项替换为 canbus_uuid:,并填入搜索到的 CAN ID。
配置示例:
# 搜索到的 CAN ID 为:
# 688e89f0e401
# 修改配置为:
[mcu]
canbus_uuid: 688e89f0e401
保存配置并重启 Klipper 服务。
第五步:验证主 MCU 连接
完成主 MCU 配置后,需要验证连接是否成功:
- 打开 Fluidd 界面,点击左侧菜单中的
System - 查看 MCU 信息:在
Mcu Information下方找到Micro-Controller信息 - 核对主控型号:确认显示的型号与您的主板实际主控型号一致
- 如果您的主控是 STM32H723,那么
Micro-Controller必须显示为 H723 相关型号 - 如果显示不正确或无法识别,请检查前面的配置步骤

第六步:添加工具板 MCU
主 MCU 验证成功后,即可添加工具板:
- 重新连接工具板:将工具板的数据线重新连接到上位机或主板上
- 编辑配置文件:在
printer.cfg文件的最下方添加工具板配置 - 配置工具板 ID:根据工具板的固件类型,在新增的配置段中添加对应的 ID
配置中的 mcu1、mcu2 等名称仅用于临时区分不同设备,您可以完全自定义这些名称,只需确保在配置文件中保持唯一性即可。
配置格式:
[mcu mcu1]
# 在此处添加工具板的 ID 配置
配置示例:
- USB 工具板
- CAN 工具板
- RS232 工具板
[mcu mcu1]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00
[mcu mcu1]
canbus_uuid: 688e89f0e402
[mcu mcu1]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command
注意事项:
- 每个 MCU 必须使用唯一的 ID,请确保工具板 ID 与主 MCU 及其他设备均不相同
- MCU 名称可完全自定义(例如
toolboard、extruder_mcu等),只需在配置中保持唯一性 - 请务必使用通过前述步骤验证有效的工具板 ID
- RS232 设备必须配置
baud: 250000和restart_method: command参数 - 配置多个工具板时,请为每个设备设置不同的名称以便区分
完成配置后,保存并重启 Klipper 服务。
第七步:验证所有 MCU 连接
添加工具板并重启 Klipper 后,需要重新验证所有 MCU 的连接状态:
- 打开 Fluidd 界面,点击左侧菜单中的
System - 查看 MCU 信息:在
Mcu Information下方确认所有 MCU 都已正确识别 - 核对每个 MCU 状态:确保主 MCU 和工具板都显示为连接状态
- 主 MCU 和所有工具板都应该在列表中显示
- 每个 MCU 的连接状态应该为"已连接"
- 如果某个 MCU 未显示或连接失败,请检查其配置和物理连接

第八步:检查固件版本
完成所有 MCU 连接后,需要验证固件版本兼容性:
- 打开 Fluidd 界面,点击左侧菜单中的
System - 查看版本信息:在
Mcu Information下方找到Version字段 - 核对版本一致性:确认所有 MCU 的固件版本与上位机 Klipper 版本匹配
- 自定义编译固件:除预配置的定制设备外,所有自行编译的固件必须与上位机 Klipper 版本保持一致
- Fly-FAST 系统:FAST 系统的固件版本与系统版本保持一致,编译出来的Klipper固件与系统版本一致
- 版本不匹配的后果:不同版本的固件可能导致功能异常、通信失败或系统不稳定
验证要点:
- 主 MCU 和所有工具板的
Version信息都应显示且版本一致 - 如果版本不匹配,需要重新刷写相应固件
第九步:恢复并更新配置文件
确认所有 MCU 连接正常后,需要恢复原始配置文件并更新 MCU 配置:
-
删除当前配置文件
- 在配置文件管理界面,找到并删除当前的
printer.cfg文件
- 在配置文件管理界面,找到并删除当前的
-
恢复备份配置
- 将之前备份的
printer_Backup.cfg文件重命名为printer.cfg
- 将之前备份的
-
更新 MCU 配置
- 打开恢复后的
printer.cfg文件 - 找到原有的
[mcu]配置段,根据前面步骤获取的 ID 进行更新:
USB 连接配置:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
# 替换为实际搜索到的主 MCU USB IDCAN 连接配置:
[mcu]
canbus_uuid: 688e89f0e401
# 替换为实际搜索到的主 MCU CAN UUID - 打开恢复后的
-
更新工具板配置(如适用)
- 在配置文件中找到工具板对应的
[mcu]段 - 根据连接方式更新为实际搜索到的工具板 ID:
USB 工具板:
[mcu toolboard]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00CAN 工具板:
[mcu toolboard]
canbus_uuid: 688e89f0e402RS232 工具板:
[mcu toolboard]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command - 在配置文件中找到工具板对应的
-
保存并重启
- 完成所有 MCU 配置更新后,点击 SAVE & RESTART 保存并重启 Klipper
- 重新进入
System页面,确认所有 MCU 连接状态正常
- 确保使用本次连接测试中实际搜索到的正确 ID
- 如果配置多个工具板,请逐一更新每个
[mcu]段的 ID - RS232 工具板必须包含
baud: 250000和restart_method: command参数 - 恢复配置后,原有的打印机参数(如步进电机、限位开关等设置)将保持不变
至此,MCU 连接故障排查与配置恢复全部完成。



