USB 固件编译
连接上位机
核心连接限制
Fly-D8主板只能通过Type-C USB接口与上位机进行Klipper通信。
Loading...
下面介绍如何编译固件:
-
连接到SSH后输入下面的命令并按
Enter键回车:cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig -
其中
rm -rf ~/klipper/.config && rm -rf ~/klipper/out是删除之前编译数据与固件,make menuconfig是编译固件,执行后应该出现下方界面Loading... -
选择
Enable extra low-level configuration options,按Enter键回车Loading... -
进入菜单
Micro-controller Architecture,然后选择STMicroelectronics STM32,按Enter键回车Loading... -
进入菜单
Processor model,选择STM32H723回车Loading... -
选择
Bootloader offset,选择:128KiB bootloaderLoading... -
选择
Clock Reference (8 MHz crystal),选择:25 MHz crystalLoading... -
Communication interface,选择:USB (on PA11/PA12)Loading...
- 按
Q键,出现 Save configuration,这时再按Y键Loading... - 现在应该保存了配置并且退出到了命令行界面
- 输入下方指令开始编译,时间有点长
make -j4
Loading...
- 最后输出下面的内容则编译成功
- 因Klipper版本问题只需要出现
out/klipper.bin则代表成功Linking out/klipper.elf
Creating bin file out/klipper.bin
进入烧录模式
- 使用Type-C数据线将主板连接至上位机后,双击RST按钮,此时主板上会有LED灯闪烁。
Loading...
烧录固件
开始烧录
- 非Fly官方上位机需要安装Katapult
- 安装Katapult
获取主板ID
执行以下命令搜索设备ID,正常情况应显示类似下图的ID(注意:每张主板的ID都不同):
ls /dev/serial/by-id/*
搜索出来的ID中包含了
usb-katapult_stm32xxxxxxxx,则代表可以下一步
Loading...
烧录固件
⚠️ 准备工作
- 请确保已编译好固件文件
- 将下方命令中的
<你的主板ID>替换为上一步查询到的实际ID
- 普通上位机请使用下方代码
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d <你的主板ID> - FLY上位机请使用下方代码
python3 ~/katapult/scripts/flashtool.py -d <你的主板ID>
烧录过程参考:
Loading...
烧录成功参考:
Loading...
固件更新
- USB固件更新
- 桥接CAN固件更新
USB固件更新步骤
- 查询主板ID
ls /dev/serial/by-id/*
识别要点
下图中的 /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 即为主板ID
Loading...
- 更新固件
cd ~/klipper/ && make flash FLASH_DEVICE=<你的主板ID>
注意
- 请将
<你的主板ID>替换为实际查询到的ID
Loading...
桥接CAN固件更新步骤
- 重置进入烧录模式
重要提示
<你的主板ID> 为 printer.cfg 配置文件中主板的 CANBUS UUID
- 普通上位机请使用下方代码
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <你的主板ID> - FLY上位机请使用下方代码
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <你的主板ID>
示例说明
下图中的 f95cee90e1f9 为主板的 CANBUS UUID(仅作示例)
Loading...
- 查询新的设备ID
ls /dev/serial/by-id/*
识别要点
- 这只是参考!
- 下图中的
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00即为新识别的主板ID
Loading...
- 烧录新固件
cd ~/klipper/ && make flash FLASH_DEVICE=<你的主板ID>
Loading...
刷错固件的解决方法
方法一:快速进入烧录模式
- 主板断电
- 重新上电后,快速双击RESET按钮
- 重新进入烧录模式
方法二:重新烧录Katapult固件
点击查看Katapult固件烧录指南Loading...