免责声明: This is an independent resource site. 与 Voron 项目或其开发团队无关联。

Voron CANBus 设置指南 — 简化您的工具头接线

固件 电子 CANBus

CANBus (Controller Area Network) is the gold standard for Voron toolhead wiring in 2025. Instead of running 10+ individual wires from the main controller board to the toolhead — heater cartridge, thermistor, fans, stepper motor, endstop, probe, LEDs — you run just 四根线: 24V power, ground, CAN_H, and CAN_L. The result is a cleaner build, easier maintenance, and dramatically reduced wire drag on the toolhead. 最后更新时间:2025 年 5 月。

本指南涵盖了在 Voron 上设置 CANBus 所需的一切:所需组件(U2C 适配器、EBB 工具头板、电缆)、完整接线图、适配器和工具头板的 Klipper 固件配置、UUID 发现、通过 CAN 闪烁、与 Mainsail/Fluidd 集成以及对最常见问题进行故障排除。

先决条件: You should have Klipper installed on your SBC and a basic understanding of Klipper's firmware configuration. If you're new to Klipper, start with our Klipper setup guide.

为什么选择 CAN 总线?Voron的优势

传统的 Voron 接线采用粗“脐带”电缆从主板到工具头。在 V2.4 上,当工具头在整个构建体积上移动时,该电缆必须弯曲。电缆产生的阻力会影响打印质量——尤其是在高速和加​​速时。排除故障也很麻烦:如果电缆链内的一根电线断裂,您就必须重新运行整个电缆束。

CANBus solves this by putting a 工具头上的辅助 MCU. This toolhead board handles all the local I/O — reading the thermistor, controlling the hotend heater, running the part cooling fan, driving the extruder stepper, and processing the probe signal — and communicates with the main SBC over just two data wires (CAN_H and CAN_L). The mainboard only needs to provide 24V power.

好处是实实在在的:

您需要的组件

CANBus 设置包含三个主要组件:

1.U2C适配器(USB转CAN)

U2C(USB 至 CAN)适配器通过 USB 连接到 SBC,并将 SBC 的 USB 总线桥接到 CAN 总线网络。它处理 CAN 协议转换,因此 Klipper 可以通过 CAN 与工具头板进行通信。

2. EBB工具头板(CAN工具头MCU)

这是位于工具头上并控制所有本地组件的 MCU。它通过 CAN 接收命令并发回传感器数据。

3. CAN 电缆

带屏蔽的简单 4 线电缆。标准电线颜色和信号:

使用 20-22 AWG 电线连接电源 (24V/GND),使用 22-24 AWG 双绞线连接 CAN_H/CAN_L。您可以在 AliExpress 上购买预制 CAN 电缆(查找“Voron CAN 电缆 4 针”),也可以使用硅胶线和屏蔽双绞线自行制作。带连接器的预制电缆每 150 万条售价约为 5-8 美元。

接线图

以下是 Voron CANBus 设置的完整接线拓扑:

电源路径:
PSU (24V) -> Mainboard (power input) -> U2C adapter (24V input) -> CAN cable (red/black) -> EBB toolhead board (24V input)

数据路径:
SBC (USB) -> U2C adapter (USB) -> U2C (CAN_H/CAN_L screw terminals) -> CAN cable (white/green) -> EBB toolhead board (CAN_H/CAN_L)

详细连接:

小型计算机公司 U2C适配器 CAN电缆 EBB 工具头
USB端口 USB-C(数据+电源)
24V 输入(+) 红色(24V) 24V 输入(+)
接地(-) 黑色(接地) 接地(-)
CAN_H端子 白色 (CAN_H) CAN_H引脚
CAN_L端子 绿色 (CAN_L) CAN_L引脚

终端电阻: CANBus requires a 120 ohm resistor at 两端 of the bus. The U2C adapter has a jumper to enable its built-in 120 ohm termination. The EBB36/EBB42 also has a jumper for termination. Enable termination on both — the U2C is one end of the bus, the EBB board is the other end. If you add more CAN devices between them, do not enable termination on those devices.

Klipper CAN 总线配置

第 1 步:在 U2C 上的 Klipper 固件中启用 CAN

首先,您需要使用已启用 CAN 总线支持的 Klipper 固件刷新 U2C 适配器。

  1. cd ~/klipper
  2. 制作菜单配置
  3. 设置:微控制器 = STM32G0B1(适用于 BTT U2C V2.1)或 STM32F072(适用于 Mellow U2C)
  4. Set: Communication interface = USB 转 CAN 总线桥
  5. Set: CAN bus interface = CAN 总线(在 PB0/PB1 上) (this varies by board — check your board's Klipper config)
  6. 将 CAN 总线速度保留为默认值(1000000 = 1 Mbps)
  7. make to build the firmware
  8. Flash via DFU or SD card (varies by U2C version — BTT U2C V2.1 uses DFU: hold BOOT button, plug in USB, dfu-util -a 0 -D out/klipper.bin --dfuse-address 0x08000000:leave)

第 2 步:刷新 EBB 工具头板

EBB 板还需要为 CAN 构建的 Klipper 固件。

  1. cd ~/klipper && make menuconfig
  2. Set: Microcontroller = STM32G0B1 (for EBB36/42 V1.2) or STM32F072 (for older versions)
  3. Set: Communication interface = CAN 总线(在 PB0/PB1 上) for EBB36/42
  4. Set: CAN bus speed = 1000000 (1 Mbps — must match the U2C setting)
  5. 制作
  6. 通过DFU刷新EBB板(与U2C相同的过程:BOOT按钮+ USB + dfu-util)

替代方案:在初始 DFU 刷新后通过 CAN 进行刷新。 Once the EBB board has been initially flashed via DFU (with CAN interface enabled), subsequent firmware updates can be sent over the CAN bus itself. This is convenient once the board is installed in your printer.

步骤 3:UUID 发现

每个 CAN 设备都有一个唯一的 UUID。您需要先找到它,然后才能在 Klipper 中对其进行配置。

运行发现脚本:

〜/klipper/scripts/flash_can.py -q

这会查询 CAN 总线并列出所有连接的设备。输出看起来像:

找到canbus_uuid=abcdef123456,应用程序:Klipper

复制此 UUID — 您将需要它来用于 Printer.cfg。如果脚本没有返回任何内容,请检查:

步骤 4:为 CAN 配置 Printer.cfg

Add the following to your printer.cfg:

[mcu canbus]
serial: canbus_uuid:abcdef123456
canbus_interface: can0

Replace abcdef123456 with the UUID from Step 3. The canbus_interface: can0 tells Klipper which CAN interface to use (default is can0 if you only have one U2C adapter).

If you have multiple CAN devices (e.g., a second toolhead or an accelerometer on CAN), add additional [mcu] sections with their respective UUIDs:

[mcu ebb36]
serial: canbus_uuid:abcdef123456
canbus_interface: can0

[mcu adxl345_can]
serial: canbus_uuid:7890def45678
canbus_interface: can0

After updating printer.cfg, run RESTART in the Klipper console. If the connection is successful, you'll see the EBB board appear in the Mainsail dashboard with its MCU temperature and status.

第 5 步:通过 CAN 刷新固件

一旦 EBB 板位于 CAN 总线上,您无需物理访问即可刷新固件更新:

python3 ~/klipper/scripts/flash_can.py -u abcdef123456

This sends the out/klipper.bin file (from make) to the device over CAN. The device receives it, writes it to flash, and reboots with the new firmware. No DFU jumpers needed.

与 Mainsail / Fluidd 集成

在 Klipper 中配置 CANBus 后,Mainsail 和 Fluidd 会自动检测附加 MCU。您将在仪表板中看到 EBB 板与主控制器板并列。工具头板的传感器(MCU 温度、电压)显示为附加数据点。

对于EBB36/42,您还可以监控该板的独特功能:

常见问题和故障排除

成本比较:中国直接与美国/欧盟

在 Voron 上使用 CANBus 的最佳理由之一是从中国采购时成本大幅降低。这是您需要支付的费用:

成分 中国直达(速卖通) 美国/欧盟零售商 储蓄
BTT U2C V2.1 $12-15 $35-45 ~65%
BTT EBB36 V1.2 $22-28 $50-65 ~55%
飞翔SHT36 V2 $20-26 $45-60 ~55%
预制 CAN 电缆 1.5m $5-8 $12-20 ~55%
CANBus 全面升级 $40-50 $100-130 ~55-60%

对于完全相同的硬件,这可以节省 50-80 美元。美国零售商销售的 BTT 和 Mellow 组件实际上是同一工厂生产的相同组件 - 中国直销价格才是真实价格。

CANBus 与传统接线:哪种适合您?

CANBus 是现代选择,但传统布线仍然完全有效。以下是如何决定:

For complete beginners, we recommend starting with a traditional wired build and upgrading to CANBus when you're comfortable with Klipper. The initial wiring is more complex and adds another layer of troubleshooting if something goes wrong. See our Klipper setup guide for traditional wiring instructions.

以中国直接价格购买 CANBus 组件

通过我们的采购网络以工厂直销价格获取 U2C 适配器、EBB36/42 板、FLY-SHT36 和预制 CAN 电缆。大多数订单会在 48 小时内从经过验证的供应商处发货。

Browse CANBus Parts

需要 CANBus 设置帮助吗?

我们的小程序提供来自经验丰富的 Voron 构建者的一对一支持,他们已经完成了数十次 CANBus 转换。获取有关 UUID 发现、接线和固件配置的帮助。

Contact Us / 联系我们