CANファームウェアのビルド
ビルドの開始
klipperサービスがインストールされたホストPCを使用する必要があります ネットワーク経由でSSH接続- そして、デバイスをホストPCに接続します
- 注意:通常のホストPCを使用してください。例えば、Raspberry PiやFLY Piなど。改造されたホストPCは問題が多すぎるため、ここでは多くのサポートを提供できません
ROOTユーザーを使用しないでください
- 请确保上位机可以正常联网
- 固件编译前需要使用SSH通过网络登录上位机
- 请不要使用串口工具登录上位机
Klipper固件编译和配置页面操作说明
请确保键盘输入法为半角模式,即英文模式
- 键盘上键
↑,下键↓,用于上下移动光标来选中菜单项 - 确认键
Enter或 空格键Space,用于勾选菜单或进入子菜单 - 退出键
ESC,用于返回上一级菜单 Q键,用于退出Klipper固件配置页面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に入り、Raspberry Pi RP2040を選択してEnterキーを押します。

-
Bootloader offsetを選択し、16KiB bootloaderを選びます。

-
Communication interfaceを選択し、CAN busを選びます。

-
GPIOピンをマイクロコントローラ起動時に設定する、入力:gpio24

-
Qキーを押してSave configurationが表示されたら、次にYキーを押します -
設定が保存され、コマンドラインのインターフェースに戻るはずです
-
make -j4を入力してビルドを開始、時間がかかります
-
以下の内容が出力されたらビルド成功です
Linking out/klipper.elf
Creating hex file out/klipper.bin
デバイスの検索
-
上位機が正常にネットワークに接続されていることを確認してください
-
下位機と上位機のデータ線がデータ転送機能を持つことを確認してください
-
SSH接続で上位機に接続後、
lsusbを入力してEnterキーを押すと、以下の3つの状況が発生する可能性があります- 認識されたUSBデバイスが表示されます
lsコマンドがない場合、このコマンドを実行してインストールできますsudo apt-get install usbutils- エラーは表示されず、他の情報もありません(システムの問題で、システムの交換が必要です)
-
lsusbを入力しても何も反応がない場合、これはシステムの問題で私たちはどうすることもできません。正常に動作するシステムに交換する必要があります -
以下の画像で囲まれた情報が表示された場合、次のステップに進むことができます

-
1d50:606fは今回使用するデバイスです。後の指示は気にしないでください。システムの問題が原因で、表示されないか、完全に表示されない可能性があります -
2つの
1d50:606fがある場合、なぜ2つあるのかを確認し、そのうち1つを除外してからシステムを再起動する必要があります -
2つの
1d50:606fがあると、後続の書き込みとファームウェア接続に影響を与えます。例えば、FLY MINI PADの場合は、他のCANブリッジデバイスを使用せず、内蔵UTOCのみを使用することをお勧めします -
1d50:606fがない場合は、データ線が正しく接続されているか、ファームウェアが正しく書き込まれているかを確認してください注意事項1d50:606fがある場合にのみ次のステップに進むことができます
ファームウェアの書き込み
- ファームウェアを書き込む前に、XT30データケーブルを使用してツールボードをUTOCまたはブリッジファームウェアを書き込んだメインボードに接続します。以下は参考接続図です

- CAN HとCAN Lが断電状態でマルチメーターで測定した抵抗値が
60Ω前後であることを確認してください。もし120Ωなら、120Ωのジャンパーを接続する必要があります。もし40Ω前後ならジャンパーを取り外す必要があります
- IDの検索とファームウェアの更新は、プリント中に行わないことをお勧めします
- 同じマザーボードまたはツールボードのKatapultのCANファームウェアとKlipperのCANファームウェアはIDが完全に一致します
- ホストマシンのCANネットワークが設定されていることを確認してください
lsusb後、1d50:606fが表示された場合にのみ、以下のコマンドを使用してCAN IDを検索できます- ツールボードのCAN速度はホストマシンと一致させる必要があります。そうしないとIDを見つけることができず、焼き付けもできません
-
以下のコマンドを実行してCANBus UUIDをクエリします:
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0-
入力後、以下のような状況が発生します:
- 第一種:ブリッジファームウェアを刷ったマザーボードで、IDが1つ表示され、
Application: Klipperと示される
- 第二種:ブリッジファームウェアを刷ったマザーボードにファームウェアが必要なツールボードを組み合わせ、2つのIDが表示される

- 第三種:UTOCを使ってファームウェアが必要なツールボードを組み合わせる
- 注意:UTOCにはIDが表示されません

- 第四種:IDが表示されない場合、通常はKlipperによって占有されているか、ホストマシンのCAN0速度が正しくないか、配線に異常がある場合です
- 第一種:ブリッジファームウェアを刷ったマザーボードで、IDが1つ表示され、
-
通常、ファームウェアを焼き付ける必要があるツールボードがCANBOOT状態にある場合、
Application: CanBootと表示され、対応するファームウェアのLEDが点滅します。このとき、Klipperファームウェアを焼き付ける必要があります。そうしないと接続できません!!! -
注意:KlipperファームウェアでIDを設定ファイルに記入した場合、IDは表示されずKlipperによって占有されます。IDを遮断し、完全に電源を切って再起動する必要があります。
手記- UUIDが見つからない場合、以下のドキュメントを参照してください
- CAN問題集
-
-
ファームウェアの焼き付け
-
以下のコマンドの
241696050c56をUUID検索で見つけたUUIDに置き換えてください。-uの後には空白がありますpython3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56 -
以下の図のように、
CAN Flash Successと表示されれば焼き付け成功です
-
-
ファームウェアを更新する場合は、ファームウェアをコンパイルしてから焼き付けコマンドを再実行するだけで更新できますが、IDが見つかるか、Klipperが接続されていることを確認してください
python3 ~/klipper/lib/canboot/flash_can.py -u <MCU ID>
ファームウェアが起動したかどうかの確認
- ファームウェアが正常に起動するとLEDが点灯します
