本章概述:在完成第一部分树莓派上位机环境(Klipper + Moonraker + Fluidd + KlipperScreen)的部署后,本章将重点讲解下位机(八爪鱼主板)固件的编译、刷写以及上下位机握手通信。本文将结合 BigTreeTech Octopus Pro 主板官方手册,为您梳理硬件跳线选择(驱动/电源/传感器)、晶振配置避坑,并提供标准 USB 直连模式与绝境求生:UART 串口救援模式的软硬件配置全方案。
📥 本地资源下载:
🔌 一、 硬件跳线与电路安全配置(上电前必读)
八爪鱼 Octopus Pro 主板具备强大的可定制性,但在上电前,必须保证主板上的各项跳线帽设置正确,否则极易发生冒烟或烧片事故。

1. TMC2209 驱动 UART 模式跳线
要使用 Klipper 动态控制 TMC2209 驱动电流并启用其高阶特性,必须将驱动配置为 UART 工作模式:
- 跳线方式:在每个驱动插槽下方的排针上,使用跳线帽横向短接最左侧排针(如下图所示)。
- 驱动插拔注意:请务必在彻底断电状态下插拔驱动,并注意驱动的朝向(通常 TMC2209 的静音蓝/黑色散热片朝向主板内侧,请核对
DIR和GND引脚对齐)。
2. 电机供电跳线选择 (Motor Power Jumpers)
Octopus Pro 支持高达 60V 的独立驱动供电。每一路驱动均可单独选择电压:
- 主板供电电压(24V):将跳线帽插在右边两个引脚上(默认设置)。
- 独立电机供电电压(最高 60V):将跳线帽插在左边两个引脚上。
⚠️ 安全警告:切勿在通电状态下插拔供电跳线帽!若选择使用独立高压电机供电,请务必核对驱动型号(如高压版 TMC5160)是否能够承受该电压,普通 TMC2209 在 48V/60V 下会瞬间烧毁。
3. Type-C 接口为 MCU 供电跳线
在靠近 Type-C 接口处有一个 5V 供电选择跳线:
- 插上跳线帽:允许直接通过树莓派的 USB Type-C 接口为八爪鱼主板的 STM32 主控芯片提供 5V 电源。此模式非常适合在没有开启 24V 开关电源的情况下连接电脑烧写固件。
- 拔掉跳线帽:主板 MCU 必须依赖外部 24V 供电才能工作。日常打印建议保持拔掉或使用外接开关电源,防止树莓派 5V 负载过高。
4. NPN 与 PNP 型接近开关(限位/Probe)选择
若您使用电感式接近开关(如 Fotek PL-05N 或 Omron)作为 Z 轴调平传感器,主板的 Probe 接口支持跳线调节输入极性:
- NPN 型传感器:必须插上接近开关旁边的跳线帽(启用内部上拉电阻)。
- PNP 型传感器:不需要插该跳线帽。
💻 二、 标准模式:USB 直连方式(推荐首选)
USB 直连通信是目前最成熟、传输带宽最高且最易于排查故障的通信方式。
1. Klipper 固件编译 (USB 模式)
通过 SSH 远程登录树莓派终端,依次执行以下命令进入 Klipper 固件配置菜单:
cd ~/klipper
make menuconfig
在蓝色的图形界面中,根据您的八爪鱼主板芯片型号进行勾选:
选项 A:若您的芯片是 STM32F446 (如 2023 年版主流配置)
[*] Enable extra low-level configuration options(必须勾选,以开启高级底层配置)- Micro-controller Architecture ➡️
STMicroelectronics STM32 - Processor model ➡️
STM32F446 - Bootloader offset ➡️
32KiB bootloader(八爪鱼主板硬性强制要求,选错会导致主板无法运行且覆盖引导程序) - Clock Reference ➡️
12 MHz crystal(主板搭载 12MHz 晶振,选错会导致 MCU 连接超时) - Communication interface ➡️
USB (on PA11/PA12)
配置效果图如下:

选项 B:若您的芯片是 STM32F429
[*] Enable extra low-level configuration options(必须勾选,以开启高级底层配置)- Micro-controller Architecture ➡️
STMicroelectronics STM32 - Processor model ➡️
STM32F429 - Bootloader offset ➡️
32KiB bootloader - Clock Reference ➡️
8 MHz crystal(注意:F429 版本主板使用的是 8MHz 晶振,选错会导致 MCU 无法工作) - Communication interface ➡️
USB (on PA11/PA12)
配置效果图如下:

警告注意:不同型号的芯片晶振是不一样的,晶振设置错误会导致 klipper 无法正常工作。
配置完成后,按下 Q 键,再按 Y 键保存退出。在终端中输入以下命令开始编译:
make clean
make -j4
编译成功后,系统会在 ~/klipper/out/ 目录下自动生成名为 klipper.bin 的固件文件。
2. 固件刷写(SD 卡卡刷)
对于八爪鱼主板,最稳妥的刷机方式是使用板载 MicroSD 卡槽进行“卡刷”:
- 通过 WinSCP、MobaXterm 或 SFTP 工具连接树莓派,将
~/klipper/out/klipper.bin文件下载到电脑。 - 准备一张任意闲置的小容量 MicroSD 卡,用电脑将其格式化为 FAT32 格式。
- 将下载好的
klipper.bin放入内存卡根目录,并强行重命名为firmware.bin(必须全小写,不能有其他后缀)。 - 将 3D 打印机彻底断电,把内存卡插入八爪鱼主板自带的 MicroSD 卡槽中。
- 用 USB 数据线连接树莓派与八爪鱼主板的 Type-C 接口,重新给打印机通电。
- 等待 15~20 秒,主板会自动引导并写入固件。
- 验证刷机结果:断电拔出内存卡插回电脑,若卡内的文件名自动变为了大写的
FIRMWARE.CUR,说明固件刷写成功!若仍为firmware.bin,请检查卡格式是否为 FAT32,或卡片是否损坏。
3. 获取 USB Serial ID 并配置 printer.cfg
- 在树莓派 SSH 终端中输入以下命令,查询八爪鱼主板在 Linux 系统中的专属硬件 ID:
ls /dev/serial/by-id/*
- 终端会返回类似如下的设备路径:
/dev/serial/by-id/usb-Klipper_stm32f446xx_360032000B51393036363933-if00
- 复制这段完整路径,打开 Fluidd 网页控制台的
printer.cfg,找到[mcu]节点并进行修改。参考您本地备份的历史配置如下:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_360032000B51393036363933-if00
restart_method: command
- 点击右上角 Save & Restart,此时上下位机即可通过 USB 顺利完成通信握手。
🛠️ 三、 绝境求生:主板 USB 损坏时的 UART 串口通信与“卡刷”方案
在实际搭建或使用中,若遭遇强电击穿导致八爪鱼主板的 USB 芯片损坏,或 Type-C 物理接口脱落,常规的 USB 连接将失效。此时,可以改用树莓派 GPIO 硬件串口(UART)直接连接八爪鱼主板的 TFT/UART 接口进行应急救砖与日常打印。
1. 物理引脚飞线连接
请准备三根杜邦线,按照以下针脚图将树莓派排针与主板 TFT 接口相连(注意交叉接线):
[ 树莓派 GPIO 排针 ] [ 八爪鱼主板 TFT 接口 ]
TXD (Pin 8 / GPIO14) -------------------> RX2 (PD6)
RXD (Pin 10 / GPIO15) -------------------> TX2 (PD5)
GND (Pin 6 / Ground) -------------------> GND
注意:连线时请切断主板和树莓派的电源,严禁带电热插拔杜邦线。

2. 开启树莓派硬件串口
树莓派系统默认将硬件串口分配给了蓝牙设备,需要在底层配置文件中释放并启用硬件 UART:
- 在 SSH 终端中编辑系统配置文件:
sudo nano /boot/firmware/config.txt
# (注:旧版本系统路径可能为 /boot/config.txt)
- 在文件末尾添加以下两行,启用硬件 UART 并将蓝牙功能映射到低速串口(miniuart):
enable_uart=1
dtoverlay=miniuart-bt
- 按
Ctrl + O保存,按Ctrl + X退出,并执行sudo reboot重启树莓派。
3. Klipper 固件编译 (UART 串口模式)
再次进入固件配置菜单:
cd ~/klipper
make menuconfig
按照以下参数进行修改:
[*] Enable extra low-level configuration options- Micro-controller Architecture ➡️
STMicroelectronics STM32 - Processor model ➡️
STM32F446 - Bootloader offset ➡️
32KiB bootloader - Clock Reference ➡️
12 MHz crystal - Communication interface ➡️ 选择串口通信接口,绝对不要选 USB。根据您的物理接线选择:
- 若接在主板 TFT 接口:选择
Serial (on USART2 PD6/PD5) - 若接在主板排针专属 Raspberry Pi 接口:选择
Serial (on USART1 PA10/PA9)
- 若接在主板 TFT 接口:选择
按 Q 保存并退出,再次运行 make clean && make -j4 生成串口专用固件。
4. 强行卡刷与串口 printer.cfg 配置
- 同样将生成的
klipper.bin重命名为firmware.bin,放入 MicroSD 卡插入八爪鱼主板卡槽。 - 重新通电,确保文件名被主板自动修改为大写的
FIRMWARE.CUR。 - 打开 Fluidd 控制台的
printer.cfg,将[mcu]节点下的路径改为树莓派硬件串口设备:
[mcu]
# 3B/4B/5 代树莓派通常使用的映射硬件串口设备为 /dev/ttyAMA0
serial: /dev/ttyAMA0
restart_method: command
- 保存并重启 Klipper,此时下位机即可通过主板的 USART2 物理串口完成与树莓派的完美复活握手!
💡 四、 核心引脚配置参考 (Voron 2.4 经典引脚定义)
为方便硬件连接与软件配置核对,您可以参考下方的八爪鱼主板 Pin 脚定义图。如果需要查看更高清的矢量图,可在文章开头或点击这里直接 📥 下载 BIGTREETECH Octopus Pro - 完整版引脚图 (PDF) 。

以下为您提取了八爪鱼主板对应 Voron 2.4 的常用驱动引脚配置,方便您在编写 printer.cfg 时核对:
| 模块名称 | 步进电机插槽 | 驱动 Step Pin | 驱动 Dir Pin | 驱动 Enable Pin | TMC2209 UART Pin |
|---|---|---|---|---|---|
| X轴 (B电机) | MOTOR 0 | PF13 | !PF12 | !PF14 | PC4 |
| Y轴 (A电机) | MOTOR 1 | PG0 | !PG1 | !PF15 | PD11 |
| Z0 轴 (左前) | MOTOR 2_1 | PF11 | PG3 | !PG5 | PC6 |
| Z1 轴 (左后) | MOTOR 3 | PG4 | PC1 | !PA2 | PC7 |
| Z2 轴 (右后) | MOTOR 4 | PF9 | !PF10 | !PG2 | PF2 |
| Z3 轴 (右前) | MOTOR 5 | PC13 | PF0 | !PF1 | PE4 |
| 挤出机 (E0) | MOTOR 6 | PE2 | PE3 | !PD4 | PE1 |
🔎 五、 上下位机握手验证与版本对齐排坑
在完成上述配置后,若网页端抛出警告或错误,请参照下表排查:
| 现象 / 诊断报错 | 故障原因分析 | 标准解决方案 |
|---|---|---|
mcu 'mcu': Timeout on connect | 上下位机物理链路不通,或 serial 路径填写错误 | 检查 USB 线缆是否损坏;若为串口模式,确认 TX/RX 杜邦线是否接反;确认 ls /dev/serial/by-id/* 输出的 ID 与配置文件一致。 |
MCU 'mcu' has deprecated code | 上位机(树莓派 Klipper 软件)版本升级后,与下位机(MCU 固件)版本不对齐 | 重新在树莓派中执行 make menuconfig 编译最新固件,并重新刷入八爪鱼主板。 |
Permission denied: '/dev/ttyAMA0' | 树莓派当前登录用户(如 pi)缺少 tty 或 dialout 串口操作权限 | 执行 sudo usermod -a -G tty,dialout pi,并**务必重启树莓派(sudo reboot)**让权限生效。 |
(第三部分:Voron 2.4 必趣八爪鱼 (Octopus) 主板固件编译、刷写与上下位机通信配置完成。第四部分我们将进入 Klipper 机械/传感器校验、PID整定与首层校准避坑指南实战。)
本文引用与技术讨论规范
作者:陈亚明(Tony Chen)|微型电磁执行器数字化研发专家
原始出处:ansv.net
本文链接:https://ansv.net/knowledge-base/voron-24-engineering-tuning/03-octopus-mcu-configuration/
版权声明:除另有说明外,本文原创文字、公式与原创图示采用 CC BY-NC-ND 4.0(署名—非商业性使用—禁止演绎)协议授权。欢迎在署名、注明原文链接且仅作非商业用途的前提下转载;不得改编、删改或拆分原文内容。
除非另有明确说明,文中涉及的第三方商标、专利附图、产品图片及其他第三方素材,均不在本 CC 协议授权范围内,相关权利归其各自权利人所有。
如有技术交流,欢迎联系:hi@ansv.net。
💬 探讨与反馈
123456@qq.com),无需登录即可秒显您的专属 QQ 头像。