跳到主要内容

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 bootloader

    Loading...
  • 选择Clock Reference (8 MHz crystal),选择:25 MHz crystal

    Loading...
  • 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固件更新步骤

  1. 查询主板ID
ls /dev/serial/by-id/*
识别要点

下图中的 /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 即为主板ID

Loading...
  1. 更新固件
cd ~/klipper/ && make flash FLASH_DEVICE=<你的主板ID>
注意
  • 请将 <你的主板ID> 替换为实际查询到的ID
Loading...

刷错固件的解决方法

方法一:快速进入烧录模式

  1. 主板断电
  2. 重新上电后,快速双击RESET按钮
  3. 重新进入烧录模式

方法二:重新烧录Katapult固件

点击查看Katapult固件烧录指南
Loading...