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 デバイスが表示された後でなければ、次のステップに進めません。
ファームウェアの書き込み
ファームウェア書き込み開始
- Fly公式以外のホストマシンにはKatapultのインストールが必要です
- Katapultをインストール
基板IDの取得
以下のコマンドを実行してデバイスIDを検索します。正常な場合は下図のようなIDが表示されます (注意: 各基板のIDは異なります):
ls /dev/serial/by-id/*
検索されたIDに
usb-katapult_stm32xxxxxxxxが含まれていれば、次のステップに進めます
ファームウェアの書き込み
- ファームウェアファイルのコンパイルが完了していることを確認してください
- 以下のコマンド中の
<あなたの基板ID>を、前のステップで確認した実際のIDに置き換えてください
- 通常のホストマシンは以下のコードを使用してください
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d <あなたの基板ID> - FLYホストマシンは以下のコードを使用してください
python3 ~/katapult/scripts/flashtool.py -d <あなたの基板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 です
- 通常のホストマシンは以下のコードを使用してください
~/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 です (例示のみ)
- 新しいデバイス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ボタンを素早く2回クリックします
- 書き込みモードに再度入ります