メインコンテンツまでスキップ

USB ファームウェアのコンパイル

コンパイル開始

  • klipperサービスがインストールされた上位機を使用する必要があります ネットワーク経由でSSHに接続
  • そしてデバイスを上位機に接続してください
  • 注意:一般的な上位機を使用してください。例えば、ラズベリーパイやFLY派などです。改造された上位機(例:WiFiスティック、レッドミーなど)は問題が多いので、技術サポートを提供できません
手記
  • 下記のコマンドを入力してROOTユーザーから通常のユーザーに切り替えることができます
  • ROOTユーザーを使用しないでください
  • flyユーザーの場合、su flyと直接入力できます。flyユーザー以外の場合、<あなたの上位機のユーザーネーム>をあなたの上位機のユーザーネームに置き換えてください!
su <あなたの上位機のユーザーネーム>
ヒント
  • 请确保上位机可以正常联网
  • 固件编译前需要使用SSH通过网络登录上位机
  • 请不要使用串口工具登录上位机

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

ヒント

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

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

如果配置页面选项比较少,请先勾选[ ] Enable extra low-level configuration options,用于显示部分隐藏选项

以下はファームウェアをコンパイルする方法です:

  • SSHに接続した後、次のコマンドを入力し、Enterを押します:

    cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig
  • そのうちrm -rf ~/klipper/.config && rm -rf ~/klipper/outは以前のコンパイルデータとファームウェアを削除し、make menuconfigはファームウェアをコンパイルします。実行後、以下のインターフェースが表示されるはずです。

  • Enable extra low-level configuration optionsを選択し、Enterを押します

  • メニューMicro-controller Architectureに入り、STMicroelectronics STM32を選択してEnterを押します

  • メニューProcessor modelに入り、STM32F072を選択してEnterを押します

  • Bootloader offsetを選択し、8KiB bootloaderを選択します

  • Communication interfaceを選択し、**USB (on PA11/PA12)**を選択してEnterを押します

  • 以下の図と照らし合わせて、一致していることを確認してください。一致したら次へ進んでください。

  • Q キーを押して、Save configuration が表示されたら、その後に Y キーを押します

  • これで設定が保存され、コマンドラインに戻ります

  • make -j4 を入力してコンパイルを開始します。時間がかかります

  • 最後に以下のような出力が出ればコンパイル成功です

    Linking out/klipper.elf
    Creating hex file out/klipper.bin

フラッシュモードに入る

注意 ::

2024年9月1日以降に出荷されたD7はKatapultファームウェアが既に焼込まれています

  • 主基板を上位機にTypeCケーブルで接続し、resetボタンをダブルクリックします。この時、主基板にはLEDが点滅します。
警告 ::
  • LEDが点滅しない場合、katapultファームウェアの再焼込みが必要です: katapultファームウェアの焼込み
  • LEDが点滅しない場合、katapultファームウェアの焼込み後、再度次の手順を実行してください

焼込みモードに入ったか確認

  • 上位機が正常にネットワーク接続でき、下位機と接続されているデータ線がデータ転送機能を持っていることを確認してください。
  • SSHで上位機に接続し、lsusb と入力してエンターキーを押します。もし下の画像で囲まれた情報が表示されたら、次の手順に進んでください。
    • 何も情報が返ってこない場合、これは上位機のシステムの問題です。解決できませんので、正常なシステムに変更するか、上位機を交換してください。
    • lsusb コマンドがない場合、以下のコマンドでインストールできます
      sudo apt-get install usbutils
  • 赤枠内のIDは参考値ですが、固定ではありません。可変ですOpenMoko, Inc. stm32f072xx の後ろの XX は可変を意味します。
    • 部分的な上位機ではシステムの問題により、完全に表示されない場合があります。

ファームウェアの焼込み

::: tip

  • プラグインのフラッシュ中にインターネットに接続する必要があります。上位機が正常にインターネットに接続されていることを確認してください。
  • もしすでにインストール済みの場合、再度インストールする必要はありません。 :::

フラッシュ開始

::: warning 警告

  • 非fly上位機 は、以下のコードを実行して、ファームウェアフラッシュの依存パッケージをインストールすることをお勧めします!それ以外の場合、ファームウェアをフラッシュできません!
      cd && git clone https://github.com/Arksine/katapult.git
  • 国内ではこのコマンドを使用してインストールできます。
  cd && git clone https://gitee.com/MrCakeFuck/katapult.git

:::

  • 下記のコマンドを使用してデバイスIDを検索し、下図のようなIDが表示されることを確認してください。(図中のIDは例示であり、各ボードのIDは異なります)

    ls /dev/serial/by-id/*
  • ファームウェアをフラッシュするには、下記のコードを使用してください。ファームウェアが正常にコンパイルされていることを確認し、<あなたのボードID>を前ステップで取得したIDに置き換えてください。

    ~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<あなたのボードID>

fastシステムではこのコマンドを使用してフラッシュします。<あなたのボードID>を前ステップで取得したIDに置き換えてください。

python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<あなたのボードID>

  • 参考画像

  • フラッシュ完了時の参考

ファームウェアの更新

  • ボードIDを検索するために以下のコマンドを使用し、下図のようなIDが表示されることを確認してください。(図中のIDは例示であり、各ボードのIDは異なります)

    ls /dev/serial/by-id/*

::: tip 注意 下図中の/dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00がボードのIDです。 :::

  • USBファームウェアを更新するには、最新のファームウェアをコンパイルした後、以下のコマンドを使用して更新します。<あなたのボードID>を前ステップで取得したIDに置き換えてください。

    cd ~/klipper/ && make flash FLASH_DEVICE=<あなたのボードID>

ファームウェアの誤刷解決方法

  • ボードを電源から切り、再度電源を入れ直し、リセットボタンを素早くダブルクリックすることで、再びフラッシュモードに入ることができます。
  • または、Window/上位機を使用してkatapultファームウェアを再びフラッシュできます。katapultファームウェアのフラッシュ