基本硬件信息
- 上位机:Raspberry Pi 5
- 下位机主板:BIGTREETECH OCTOPUS Pro
- 工具头主板:EBB36 V1.2
这里使用 USB 连接上位机和下位机主板,然后再通过 CAN 总线连接下位机主板和工具头主板。
此方案中不使用单独的 USB 转 CAN 桥硬件。
Raspberry Pi 5
使用 Raspberry Pi Imager 写入树莓派镜像。
选择 Raspberry Pi 5 并选择 Raspberry Pi OS Lite 操作系统。
Choose OS > Raspberry Pi OS (other) > Raspberry Pi OS Lite (64bit)
编辑系统设置,设置用户名和密码以及 WiFi 和 SSH 登录。
将系统镜像写入 TF 卡。
插入树莓派后启动,并为其分配静态内网 IP 和静态内网域名。
将软件源更改为国内软件源。
redstone1024@raspberrypi:~ $ sudo vi /etc/apt/sources.list
deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ bookworm-security main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib non-free non-free-firmware
# Uncomment deb-src lines below then 'apt-get update' to enable 'apt-get source'
#deb-src https://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib non-free non-free-firmware
#deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security/ bookworm-security main contrib non-free non-free-firmware
#deb-src https://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib non-free non-free-firmware
redstone1024@raspberrypi:~ $ sudo vi /etc/apt/sources.list.d/raspi.list
deb https://mirrors.tuna.tsinghua.edu.cn/raspberrypi bookworm main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src https://mirrors.tuna.tsinghua.edu.cn/raspberrypi bookworm main
下载并安装 KIAUH 。
使用 SSH 连接树莓派。
更新软件源并安装 Git 和 Vim 。
redstone1024@raspberrypi:~ $ sudo apt-get update
redstone1024@raspberrypi:~ $ sudo apt-get upgrade
redstone1024@raspberrypi:~ $ sudo apt-get install git vim
下载 KIAUH 储存库。
redstone1024@raspberrypi:~ $ cd ~ && git clone https://github.com/dw-0/kiauh.git
运行安装脚本安装 KIAUH 。
redstone1024@raspberrypi:~ $ ./kiauh/kiauh.sh
安装 Klipper 和基本附属工具。
在运行完上面的命令后,进入 KIAUH 的主菜单。
╔═══════════════════════════════════════════════════════╗
║ ~~~~~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~~~~~ ║
║ Klipper Installation And Update Helper ║
║ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ║
╚═══════════════════════════════════════════════════════╝
╔═══════════════════════════════════════════════════════╗
║ ~~~~~~~~~~~~~~~~~~~ [ Main Menu ] ~~~~~~~~~~~~~~~~~~~ ║
╟──────────────────┬────────────────────────────────────╢
║ 0) [Log-Upload] │ Klipper: Not installed ║
║ │ Owner: - ║
║ 1) [Install] │ Repo: - ║
║ 2) [Update] ├────────────────────────────────────╢
║ 3) [Remove] │ Moonraker: Not installed ║
║ 4) [Advanced] │ Owner: - ║
║ 5) [Backup] │ Repo: - ║
║ ├────────────────────────────────────╢
║ S) [Settings] │ Mainsail: Not installed ║
║ │ Fluidd: Not installed ║
║ Community: │ Client-Config: - ║
║ E) [Extensions] │ ║
║ │ KlipperScreen: Not installed ║
║ │ Crowsnest: Not installed ║
╟──────────────────┼────────────────────────────────────╢
║ v6.0.0-alpha.7 │ Changelog: https://git.io/JnmlX ║
╟──────────────────┴────────────────────────────────────╢
║ Q) Quit ║
╚═══════════════════════════════════════════════════════╝
右边显示的就是被 KIAUH 所管理的软件包,其中。
-
基本配置(如果您只需要基本的 3D 打印控制):
- Klipper: 提供高效的打印控制。
- Moonraker: 作为 Klipper 的 API 服务器。
- Mainsail 或 Fluidd: 选择一个作为 Web 界面来控制和监控打印机。
-
增强配置(如果您需要更多功能,如远程访问和监控):
- Klipper + Moonraker + Mainsail/Fluidd: 基本控制和监控。
- KlipperScreen: 如果您有触摸屏并希望在打印机上直接控制。
- Telegram Bot: 通过 Telegram 进行远程控制。
- Crowsnest: 如果您需要管理摄像头。
- Obico: 用于 AI 监控和故障检测。
-
移动访问(如果您希望通过手机进行控制):
- Mobileraker 或 OctoApp: 选择一个用于移动设备的应用程序。
-
耗材管理(如果您需要管理打印耗材):
- Spoolman: 用于管理线材和其他耗材。
这里我们选择基本配置并以 Fluidd 作为打印机管理的 Web GUI 。
即安装 Klipper 、Moonraker 和 Fluidd ,所有选项保持缺省。
修改 Fluidd 端口。
redstone1024@raspberrypi:~ $ sudo vim /etc/nginx/sites-available/fluidd
server {
listen 80;
# uncomment the next line to activate IPv6
# listen [::]:80;
...
redstone1024@raspberrypi:~ $ sudo systemctl restart nginx
BIGTREETECH OCTOPUS Pro
此处参照 BIGTREETECH-OCTOPUS-Pro 和 Voron Octopus(Pro) Klipper Firmware 。
刷写微控器最好断开微控器与工具(如加热片等)的连接,防止安装过程中意外启动工具。
编译 Klipper 固件。
通过 SSH 登录 Raspberry Pi 5 ,进入微控器编译配置页面。
redstone1024@raspberrypi:~ $ cd ~/klipper/
redstone1024@raspberrypi:~/klipper $ make clean
redstone1024@raspberrypi:~/klipper $ make menuconfig
这里使用的微控器是 STM32F446 根据文档做如下配置,通讯接口请核对 PIN 图。
注意 CAN 总线波特率要与其他部分相同。
[*] 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 to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PD0/PD1)) --->
USB ids --->
(1000000) CAN bus speed
() GPIO pins to set at micro-controller startup
编译微控器固件。
redstone1024@raspberrypi:~/klipper $ make
安装 Klipper 固件。
将编译好的固件下载到本地。
redstone1024@raspberrypi:~/klipper $ sudo apt-get install lrzsz
redstone1024@raspberrypi:~/klipper $ sz out/klipper.bin
复制 klipper.bin
到格式化为 FAT32 的 TF 卡根目录并命名为 firmware.bin
。
关闭打印机电源后将 TF 卡插入 BIGTREETECH OCTOPUS Pro ,然后接通电源。
等待几分钟后,关闭打印机电源,将 TF 卡移除。
此时 TF 卡中的文件应该被自动重命名为 FIRMWARE.CUR
表示固件安装成功。
EBB36
此处参照 EBB 。
刷写微控器最好断开微控器与工具(如加热片等)的连接,防止安装过程中意外启动工具。
编译 Klipper 固件。
通过 SSH 登录 Raspberry Pi 5 ,进入微控器编译配置页面。
redstone1024@raspberrypi:~ $ cd ~/klipper/
redstone1024@raspberrypi:~/klipper $ make clean
redstone1024@raspberrypi:~/klipper $ make menuconfig
这里使用的微控器是 STM32G0B1 根据文档做如下配置。
注意 CAN 总线波特率要与其他部分相同。
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32G0B1) --->
Bootloader offset (No bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (CAN bus (on PB0/PB1)) --->
(1000000) CAN bus speed
() GPIO pins to set at micro-controller startup
编译微控器固件。
redstone1024@raspberrypi:~/klipper $ make
安装 Klipper 固件。
将编译好的固件下载到本地。
redstone1024@raspberrypi:~/klipper $ sudo apt-get install lrzsz
redstone1024@raspberrypi:~/klipper $ sz out/klipper.bin
打开 STM32CubeProgrammer 加载编译好的固件。
连接 EBB36 上的 USB 供电跳线。
使用 USB 连接电脑和 EBB36 ,将 STM32CubeProgrammer 右上角的连接方式调整为 USB 。
在 EBB36 上按住 Boot 按钮,然后单击一下 RST 按钮进入 DFU 模式。
在 STM32CubeProgrammer 的 USB 配置菜单点击 No DFU device 旁边的刷新,找到 EBB36 。
点击 Connect 连接 EBB36 ,然后点击 Download 开始安装固件。
安装完成后点击 Disconnet 断开连接,并移除 USB 连接线,移除 USB 供电跳线。
配置 CAN 总线
通过 SSH 登录 Raspberry Pi 5 。
添加 CAN 总线接口配置,注意波特率和上面编译的固件相同。
redstone1024@raspberrypi:~ $ sudo vim /etc/network/interfaces.d/can0
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 128
重启上位机生效。
redstone1024@raspberrypi:~ $ sudo reboot
先移除 EBB36 并通过命令查看当前 CAN 总线设备。
redstone1024@raspberrypi:~ $ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
Found canbus_uuid=d66341632983, Application: Klipper
Total 1 uuids found
此时得到的 d66341632983
即下位机主板的 UUID 。
关闭打印机电源,接入 EBB36 ,打开打印机电源,查看当前 CAN 总线设备。
redstone1024@raspberrypi:~ $ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
Found canbus_uuid=d66341632983, Application: Klipper
Found canbus_uuid=06a28d0da533, Application: Klipper
Total 2 uuids found
此时得到的 06a28d0da533
即 EBB36 的 UUID 。
登录 http://voron/#/configure
编辑 printer.cfg
文件。
...
[mcu]
canbus_uuid: d66341632983
[mcu toolhead]
canbus_uuid: 06a28d0da533
...
修改完成后点击 RESTART 重启打印机。
进入 http://voron/#/system
即可看到两个微控器的状态。
打印机配置
此处参照 Voron Software Configuration 。
此处参照 Tap Klipper Instructions 。