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

USBブリッジCANファームウェアの焼き込み

開始コンパイル

  • klipperサービスがインストールされている上位機が必要です ネットワーク経由でSSHに接続
  • デバイスと上位機を接続します
  • 注意:普通の上位機を使用してください。例えば、ラズベリーパイ、FLYパイなどです。もし魔改上位機(例えばWiFiスティック、Redmiなど)を使用すると、このような上位機は問題が多すぎて、技術サポートを提供できません
注意事項
  • ROOTユーザーを使用しないでください
  • ユーザー切り替えコマンド
 su fly
ヒント
  • 请确保上位机可以正常联网
  • 固件编译前需要使用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 to CAN bus bridge (USB on PA11/PA12)を選択してEnterキーを押します

  • USB to CAN bus bridge (USB on PA11/PA12)を選択した場合、デフォルトのこのパラメータを変更する必要はありませんCAN bus interface (CAN bus (on PB8/PB9))--->

  • 強調しておきますが、下図を確認してからコンパイルを行ってください。

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

  • 今は設定を保存し、ターミナルに戻った状態のはずです

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

  • 最後に以下の内容が出力されればコンパイル成功です

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

焼き込みモードへの移行確認

  • 上位機が正常にネットワークに接続できること、および下位機が上位機に接続するデータケーブルがデータ伝送機能を有していることを確認してください。
  • SSH 接続で上位機に接続した後、lsusbと入力してエンターキーを押します。下の画像で囲まれた情報が表示されれば、次のステップに進めます。
    • 何の情報もフィードバックされない場合は、上位機のシステムの問題です。こちらではどうすることもできません。正常なシステムに変更するか、上位機を交換する必要があります。
    • lsusbコマンドがないというメッセージが表示された場合は、このコマンドをインストールできます
      sudo apt-get install usbutils
  • 1d50:6177は今回使用するデバイスに属します。OpenMoko, Inc. stm32f407xxのサフィックスはある程度の参考価値がありますが、判断基準とはなりません。
    • 一部の上位機はシステムの問題で、表示が不完全または表示されない場合があります。
    • lsusbコマンドを入力してデバイスが表示されるが、1d50:6177がない場合は、データケーブルを交換して、マザーボードを上位機の他の USB ポートに接続してみてください。
  • もしあなたが以前に上記のステップを実行し、Klipper ファームウェアの書き込みに成功し、マザーボードが正常に動作しており、Klipper ファームウェアを更新するだけの場合は、このページの右側のメニューバーの「ファームウェア更新」セクションを直接参照してください。
注意事項

1d50:6177デバイスが検索されてから、次のステップに進めることができます

ファームウェアの焼き込み

ヒント

Katapultファームウェアを使用すると、後で直接SSH経由でファームウェアを更新でき、DFUモードに入る必要がなくなります。

フラッシュプラグインのインストール

ヒント

フラッシュプラグインのインストールには、上位機がインターネットに接続されている必要があります。 既にインストールされている場合は、再度インストールする必要はありません。

  • pip install pyserialをインストールします

    pip install pyserial
  • -bash: pip: command not foundというメッセージが表示された場合は、以下のコマンドを実行してください

    sudo apt-get install pip
  • 以下のようなエラーが表示された場合は、以下のコマンドを実行してください

    pip install pyserial --break-system-packages

ファームウェアのフラッシュを開始

  • 下のコマンドを使用してデバイスのシリアルポートアドレスを検索します

    ls /dev/serial/by-id/*
  • 以下は参考例です

  • ファームウェアのフラッシュには下記のコードを使用してください。ファームウェアが既にコンパイルされていることを確認してください。=の後にスペースはありません。

  • ファームウェアのフラッシュには、klipperディレクトリ内で作業する必要があります。

    make flash FLASH_DEVICE=
  • 以下は参考例です

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

ファームウェアの更新方法

  • USBファームウェアの更新には、最新のファームウェアをコンパイルした後、以下のコマンドを入力して更新します。=の後にスペースはありません。

    make flash FLASH_DEVICE=
  • USBブリッジCANファームウェアの更新には、最新のファームウェアをコンパイルした後、以下のコマンドを入力してKatapultにリセットします。

  • USBブリッジCAN用のklipperファームウェア以外にこのコマンドを実行するとエラーが発生します。

    ~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <MCU ID>
  • Katapultにリセット後、下記のコマンドを実行してファームウェアを更新します。

    make flash FLASH_DEVICE=<あなたのデバイスのシリアルポートアドレス>

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

  • メインボードの電源を切って、再び電源を入れた後、迅速にメインボードのリセットボタンを2回押します。
  • または、WINDOWSを使用してファームウェアをクリアし、BLを再インストールします。