USB ファームウェア書き込み
ホストコンピュータへの接続
Fly-D8メインボードは、Klipper通信のためにType-C USBインターフェースのみを使用してホストコンピュータに接続できます。
以下にファームウェアのコンパイル方法を説明します:
-
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を選択してEnterを押してください。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 -j4Loading... - 最後に以下の内容が出力されれば、コンパイルは成功です。
- Klipperのバージョンによっては、
out/klipper.binが表示されれば成功とみなされます。Linking out/klipper.elf
Creating bin file out/klipper.bin
書き込みモードへの移行
- Type-Cケーブルでメインボードをホストコンピュータに接続した後、RSTボタンをダブルクリックします。この時、メインボード上のLEDが点滅します。
- LEDが点滅しない場合は、katapultファームウェアを再書き込みしてください:katapultファームウェアの書き込み
- LEDが点滅しない場合は、katapultファームウェアの書き込みが完了してから、次のステップを実行してください
- 上位機が正常にネットワークに接続できることを確認し、下位機と接続されているデータケーブルがデータ転送機能を持っていることを確認してください。
- 上位機にSSH接続し、コマンドラインで
lsusbを入力してEnterを押します。もし下の画像で囲まれた情報が表示された場合、次のステップに進むことができます。- 何も情報が返ってこない場合、これは上位機のシステムの問題です。こちらでは対応できませんので、正常なシステムに変更するか、上位機を交換してください。
lsusbコマンドが見つからない場合、以下のコマンドを実行してインストールできます:sudo apt-get install usbutilsLoading...
1d50:6177は今回使用する予定のデバイスです。- 一部の上位機はシステムの問題により、完全に表示されないか、全く表示されないことがあります。
lsusbコマンドを入力するとデバイスが表示されるが、1d50:6177が表示されない場合は、データケーブルを交換して、マザーボードを上位機の他のUSBポートに接続してみてください。
- 上記の手順を以前に実行しており、Klipperファームウェアの書き込みが成功し、マザーボードが正常に動作している場合、Klipperファームウェアを更新するだけであれば、このページの右側メニューにある「ファームウェア更新」セクションをご覧ください。
1d50:6177 デバイスが表示された後でなければ、次のステップに進めません。
ファームウェアの書き込み
ファームウェア書き込みを開始
- 書き込みプラグインのインストールにはインターネット接続が必要です。ホストPCがインターネットに接続されていることを確認してください。
- 既に書き込みプラグインがインストールされている場合は、再インストールの必要はありません。
書き込み依存関係のインストール
Fly公式以外のホストPCを使用している場合は、以下のコマンドを実行してファームウェア書き込み依存パッケージを必ずインストールしてください!
- GitHubリポジトリ
- 国内ミラー
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に置き換えてください。
- 通常のホストPC
- FlyホストPC書き込みチュートリアル
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<あなたのボードID>
python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<あなたのボードID>
書き込みプロセス参考:
書き込み成功参考:
ファームウェア更新
- USBファームウェア更新
- ブリッジCANファームウェア更新
USBファームウェア更新手順
- ボードIDの確認
ls /dev/serial/by-id/*
下図の /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 がボードIDです。
- ファームウェアの更新
cd ~/klipper/ && make flash FLASH_DEVICE=<あなたのボードID>
<あなたのボードID>を実際に確認したIDに置き換えてください。
ブリッジCANファームウェア更新手順
- リセットして書き込みモードに入る
<あなたのボードID> は printer.cfg 設定ファイル内のボードの CANBUS UUID です。
- Fly-Armbian/通常のホストPC
- Fly-FASTシステム
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <あなたのボードID>
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <あなたのボードID>
下図の f95cee90e1f9 はボードの CANBUS UUID です (例示のみ)。
- 新しいデバイスIDの確認
ls /dev/serial/by-id/*
- これは参考です!
- 下図の
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00が新しく認識されたボードIDです。
- 新しいファームウェアの書き込み
cd ~/klipper/ && make flash FLASH_DEVICE=<あなたのボードID>
誤ったファームウェアを書き込んだ場合の解決方法
方法1: 素早く書き込みモードに入る
- ボードの電源を切る
- 電源を入れ直し、RESETボタンを素早くダブルクリック
- 書き込みモードに再び入る