Aller au contenu principal
prompt
  • 请确保上位机可以正常联网
  • 固件编译前需要使用SSH通过网络登录上位机
  • 请不要使用串口工具登录上位机

编译Katapult固件

开始编译

  • 需要使用安装好klipper服务的上位机 通过网络连接SSH

  • 并且将设备与上位机连接好

  • 注意:请使用普通的上位机,比如树莓派 FLY派等。如果是魔改上位机(例如WiFi棒子、红米等),这类上位机因问题太多,无法为您提供技术支持

note
  • ROOT用户切换到普通用户可以输入下方命令
  • 请不要使用ROOT用户
  • fly用户可直接输入:su fly,非fly用户请将<您的上位机用户名>,替换为您上位机的用户名!
 su <您的上位机用户名>

Katapult固件编译和配置页面操作说明

prompt

请确保键盘输入法为半角模式,即英文模式

  1. 键盘上键,下键,用于上下移动光标来选中菜单项
  2. 确认键Enter 或 空格键Space,用于勾选菜单或进入子菜单
  3. 退出键ESC,用于返回上一级菜单
  4. Q键,用于退出Katapult固件配置页面
  5. Y键,在退出Katapult固件配置页面时,如果有提示,则点击Y键保存配置文

下面介绍如何编译固件:

  • 连接到SSH后输入下面的命令并回车:

    cd ~/katapult && rm -rf ~/katapult/.config && rm -rf ~/katapult/out && make menuconfig
  • 其中 rm -rf ~/Katapult/.config && rm -rf ~/Katapult/out是删除之前编译数据与固件make menuconfig是编译固件,执行后应该出现下方界面

  • 选择Micro-controller Architecture (LPC176x (Smoothieboard))并且回车

  • 进入菜单然后选择Raspberry Pi RP2040回车

  • 选择Build Katapult deployment application (Do not build),选择:Do not build

  • 选择Communication interface,选择:CAN bus

  • 选择(4) CAN RX gpio number,删除4输入1

  • 选择(5) CAN TX gpio number,删除5输入0

  • CAN bus speed默认是1000000,如使用修改为500000

  • 这是1M的

  • 这是5k的

  • 选择Enable Status LED回车,选择Status LED GPIO Pin (NEW)输入:!gpio18

note

请在英文输入法状态下输入!gpio18

  • 请对照上图核对,确保与上图一致,再进进行下一步
  • Q 键,出现 Save configuration,这时再按 Y
  • 现在应该保存了配置并且退出到了命令行界面
  • 输入 make -j4 开始编译,时间有点长
  • 最后输出下面的内容则编译成功
  Linking out/katapult.elf
Creating bin file out/katapult.bin
Creating legacy binary out/canboot.bin
Building out/lib/rp2040/elf2uf2/elf2uf2
Creating uf2 file out/katapult.uf2
Creating legacy uf2 file out/canboot.uf2
Compiling out/src/deployer.o
Compiling out/src/generic/armcm_boot.o
Compiling out/src/generic/armcm_reset.o
Building out/deployer_ctr.o
Compiling out/katapult_payload.o
Preprocessing out/src/generic/armcm_deployer.ld
Linking out/deployer.elf
Creating hex file out/deployer.bin

进入烧录模式

prompt

箭头所指为BOOT按键

  • 主板完全断电情况下,按着BOOT按键然后将带有数据传输的数据线一头接主板一头接你设备
  • 然后输入lsusb
lsusb
  • 出现下面图片里面的代表已经进入boot模式
  • 输入下面的命令进行刷写固件然后回车
make flash FLASH_DEVICE=2e8a:0003 
prompt

输入mellow是不会显示的

  • 如出现图片里面的情况输入mellow输入完成了直接回车

  • 出现图片里面的提示那么恭喜您刷写成功

确认固件是否启动

  • 如果固件正常启动LED会闪烁起来
  • 搜索can id命令,输入后回车
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
  • 如上面命令没有搜索出来id那么可以尝试下面命令
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can1

输入后会出来下面图片里的id,这里的id是参考值,不可使用