ファームウェアコンパイル説明
システムの安定動作を確保するため、以下のファームウェア使用原則を必ず守ってください:
- ファームウェアコンパイルの一致性:Klipperファームウェアは、現在使用しているホストコンピュータでコンパイルする必要があります。他人がコンパイルしたものやバージョンが一致しないファームウェアを使用すると、予期しないシステム障害が発生する可能性があります。
- ハードウェアプラットフォームの規範:標準的なホストコンピュータのハードウェアを使用することを強く推奨します。非公式に改造されたデバイス(一部のセットトップボックス、WiFiスティック、特定モデルのRedmiデバイスなど)の使用は避けてください。これらのデバイスには互換性と安定性のリスクが存在する可能性があります。
- 仮想化環境の制限:仮想マシン上でホストコンピュータシステムを実行することは推奨しません。パフォーマンスとリアルタイム性への干渉が生じ、プリント品質に影響を与える可能性があります。
ファームウェアタイプの説明
-
Katapult/HIDモード- 機能:この2つのモードは機能が同じで、どちらも接触なし書き込み(メモリカードの抜き差し不要で、ホストコンピュータから直接ファームウェアを更新)を実現できます。
- 説明:
HIDは FLY オンボードホストコンピュータが使用する Bootloader で、その本質はKatapultと同じです。 - 重要な注意:
Katapultを使用する際、誤ったファームウェアを書き込んでマザーボードが応答しなくなった場合は、マザーボード上のリセットボタンを見つけて素早く2回押すと、Katapultモードに再び入り、再度書き込みができます。
-
Bootloaderモード- 機能:従来のメモリカードを使用した書き込み方法です。
- 利点:この方法はフォールトトレランスに優れており、誤って書き込んでもメモリカードを再書き込みして再度試すことができ、マザーボードが「文鎮化」する心配はありません。
ファームウェアコンパイルガイド
- コンパイルの成功率を最大限に高めるため、SSHクライアントとして
MobaXtermを推奨します。ユーザーからの報告によると、一部のSSHツールは原因不明のコンパイルエラーを引き起こす可能性があります。 - 重要な設定項目:コンパイル設定画面で、必ず
Enable extra low-level configuration optionsオプションにチェックを入れてください。チェックしないと、一部の詳細設定が表示されません。
起動ピン設定 (GPIO pins to set at micro-controller startup)
- このオプションは、マイクロコントローラ起動時に特定のGPIOピンの電圧レベルを強制的に設定するために使用します。
- 英語入力モードに切り替える必要があります。切り替えないとファームウェアをコンパイルできません。
-
設定構文:
- ピン名の前に
!を付けると、起動時にそのピンを低レベルにします。!を付けない場合は高レベルにします。 - STM32シリーズ:ピン番号は大文字形式で記述する必要があります。実際のマザーボードのドキュメントに従って入力してください。
- RP2040シリーズ:ピン番号は小文字形式で記述する必要があります。実際のマザーボードのドキュメントに従って入力してください。
- ピン名の前に
-
複数ピン設定:複数のピンを設定する場合は、英語のカンマ
,で区切ります。- 例:
!<pin_a>,!<pin_b>,<pin_c>は、起動時に最初の2つのピンを低レベルに、3番目のピンを高レベルに設定することを意味します。
- 例:
設定した GPIO pins to set at micro-controller startup は、Klipper が起動時に接続する前にのみ有効です。Klipper が接続を完了して正常に動作した後は、この設定がピンの他の操作に影響を与えることはありません。安全に使用できます。
グローバル GPIO 起動状態
GPIO state at micro-controller startup は FLYOS-Klipper によって提供される拡張機能であり、標準の Klipper バージョンにはこのオプションがない場合があります。マザーボードまたはツールボードのドキュメントに明確な要求がない限り、デフォルトの Not set を維持してください。
このオプションは、マイクロコントローラ起動段階で、大部分の物理GPIOに統一した初期状態を設定するために使用します。上記の GPIO pins to set at micro-controller startup とは作用が異なります:
| 設定項目 | 作用範囲 |
|---|---|
GPIO pins to set at micro-controller startup | 入力ボックスに明示的に記入したピンのみ設定します。! を使用して個別に低レベルを指定できます |
GPIO state at micro-controller startup | その他の利用可能な物理GPIOに対して、同じ起動状態を一括設定します |
以下のピンはグローバル状態によって上書きされません:
GPIO pins to set at micro-controller startupに入力されたピン。- ファームウェアがUART、USB、CAN、USB-to-CANなどの現在の通信機能用に予約しているピン。
選択可能な状態
| オプション | 起動段階の動作 | 使用上の推奨 |
|---|---|---|
Not set | その他のGPIOの起動状態を一括変更しない | デフォルトおよび推奨オプション |
Input pull-up | その他のGPIOをプルアップ入力に設定 | ハードウェア設計が明確に要求する場合のみ使用 |
Input pull-down | その他のGPIOをプルダウン入力に設定 | ハードウェア設計が明確に要求する場合のみ使用 |
Output high | その他のGPIOを高レベル出力に設定 | リスクが高いため、製品ドキュメントに従ってのみ使用 |
Output low | その他のGPIOを低レベル出力に設定 | リスクが高いため、製品ドキュメントに従ってのみ使用 |
Output high または Output low は、Klipperが接続を確立する前に多数のGPIOの電圧レベルを変更します。誤った選択は、ファン、ヒーター、ドライバのイネーブル、その他の周辺機器に予期しない動作を引き起こす可能性があります。対応するFLY製品ドキュメントに明確な指定がない限り、必ず Not set を選択してください。
使用方法
make menuconfigでEnable extra low-level configuration optionsを有効にします。- 必要に応じて、まず
GPIO pins to set at micro-controller startupに個別に制御する例外ピンを入力します。例:!gpio18。複数のピンは英語のカンマで区切ります。 GPIO state at micro-controller startupに移動します:- 通常のファームウェアでは
Not setを選択します。 - 製品ドキュメントがグローバル状態を明確に要求する場合のみ、対応する入力または出力状態を選択します。
- 通常のファームウェアでは
Qキーで終了し、Save configuration が表示されたらYキーで保存し、再コンパイルして製品の書き込みチュートリアルに従ってファームウェアを更新します。- 書き込み完了後、下位機の電源を完全に切り、再度電源を入れます。
Not set は個別の起動ピンを無効にしませんNot set を選択しても、それは「その他のGPIOを一括変更しない」という意味だけです。GPIO pins to set at micro-controller startup に入力した !gpio18、!PA15 などの他のピンは、それぞれの設定に従って引き続き有効になります。
- 誤ったファームウェア書き込みの保護:
Katapult、HID、Bootloaderの3種類のファームウェアには保護メカニズムがあります。特別なDFUモードに入って書き込みを行わない限り、メインファームウェアを誤って書き込んでも、これらは上書きされず、マザーボードが「文鎮化」することはありません。 - 書き込み完了後の必須操作:いずれかのファームウェアの書き込みが完了したら、必ず下位機の電源を一度完全に切って(電源ケーブルを抜いて)から再度電源を入れ、新しいファームウェアが正しく読み込まれ安定して動作することを確認してください。
ファームウェア書き込み説明
- デバイス認識:
Katapultを使用した書き込み時、ホストコンピュータがデバイスを認識できることを確認してください。デバイスが見つからない場合は、マザーボードのリセットボタンを素早く2回押して書き込みモードに再度入ってください。または、マザーボードのBLファームウェアを再書き込みしてください。 - 規範の遵守:公式チュートリアルの書き込み方法を厳守してください。検証されていない他の方法を使用すると、デバイスが破損する可能性があります。
- コンパイルチェック:書き込み前に、ファームウェアにコンパイルエラーがないことを必ず確認してください。誤ったファームウェアファイルは、書き込み失敗やデバイスの正常動作不能を引き起こします。
Katapult ファームウェアの誤書き込みからの復旧
- マザーボード上の物理リセットボタンを見つけて素早く2回押します。
- 通常、FlyマザーボードのLEDインジケータが点滅し始め、
Katapultモードへの進入が成功したことを示します。 - この時点で
Katapultモードに入り、正しい Klipper ファームウェアを再書き込みできます。
Bootloader ファームウェアの誤書き込みからの復旧
- 正しいファームウェアが保存されたTFカードをマザーボードに再挿入します。
- 書き込めない場合は、まず完全に電源を切り、TFカードを挿入してから再度電源を入れます。
- 通電状態を約 5秒 維持すると、自動書き込みが完了します。
Katapult インストールの書き込み依存関係
- Fly公式ではないホストコンピュータを使用している場合は、必ず以下のコマンドを実行してファームウェア書き込み依存パッケージをインストールしてください!
- 下記のリポジトリはいずれか一つで構いません
- githubリポジトリ
cd && git clone https://github.com/Arksine/katapult.git
- 中国地域ミラーリポジトリ
cd && git clone https://cnb.cool/3dmellow/public/katapult