メインコンテンツにスキップ

CANファームウェア接続の注意点

配線説明

以下の3ステップを順番に実行してください:

ステップ1: DIPスイッチの設定

  1. 電源を切る: すべての電源を抜いてください。
  2. DIPスイッチを探す: ツールボードを裏返し、背面のDIPスイッチ群を見つけてください。
  3. 正しく設定する: CANモードを使用するには、すべてのスイッチを以下の例の位置に設定してください。
    Loading...

重要: DIPスイッチを変更した後は、対応するファームウェア(このガイドではCANファームウェア)を再書き込みする必要があります。

ステップ2: 配線接続

  1. 電源を切ったまま: 配線中は絶対に通電しないでください。
  2. ケーブルを準備する: XT30(2+2)-F 4芯データケーブルを使用します。色の定義は以下の通りです:
    • 赤 (VCC): 12V-24V電源のプラス極に接続
    • 黒 (GND): 電源のマイナス極に接続
    • 黄 (CAN-H): CAN拡張ポートのHに接続
    • 白/緑 (CAN-L): CAN拡張ポートのLに接続
  3. デバイスを接続する:
    • ケーブルのXT30(2+2)-Fコネクタをツールボードに差し込みます。
    • ケーブルの端子をUTOCモジュール、または「USBブリッジCAN」ファームウェアが書き込まれたマザーボードに接続します。
    • 最後に、USBケーブルでUTOCモジュールまたはマザーボードを上位機(FLY派やRaspberry Piなど)に接続します。

ステップ3: 終端抵抗の設定と確認

信号を安定させるために、終端抵抗を正しく接続する必要があります。以下の表に従って設定し、電源を切った状態で測定してください:

デバイス操作説明
ツールボード120Ω と表示されたジャンパーピンを見つけて差し込んでください。
マザーボードマザーボードに接続する場合、同様にその120Ωジャンパーピンを差し込んでください。
UTOCモジュール抵抗内蔵*。

確認方法:

  1. 完全に電源を切った状態を維持してください。
  2. マルチメーターを使用して、ツールボードのCANポートの CAN-H と CAN-L 間の抵抗を測定してください。
  3. 結果の判断:
    • 約60Ω: 正常です。両端の抵抗が正しく接続されています。
    • 約140Ω: CAN-H と CAN-L が逆に接続されている可能性があります。
    • 約120Ω: 120Ω抵抗が取り付けられていないか、断線しています。
    • 約40Ω: 余分な抵抗がある可能性があります。中間ノードを確認してください。

一言でまとめると: まず電源を切る。DIPスイッチを正しく設定する。配線を正しく接続する。両端の120Ωジャンパーピンを差し込む。最後に抵抗値が約60Ωであることを測定する。

チェックリスト:

  • 全工程で電源を切った状態で操作
  • DIPスイッチがすべて下(CANモード)に設定されている
  • ツールボードの 120Ω ジャンパーピンが差し込まれている
  • マザーボード(該当する場合)の 120Ω ジャンパーピンが差し込まれている
  • CANデータケーブルがしっかり接続されている
  • 抵抗値が約60Ωであることを測定

CANネットワークの設定とトラブルシューティング

ステップ1: 上位機がCANデバイスを認識しているか確認する

  1. 上位機にログインし、以下のコマンドを入力します:
lsusb
  1. 結果を確認します:
  • 1d50:606f が表示される → デバイス認識成功
  • ls コマンドが見つからない と表示される → sudo apt-get install usbutils を実行
  • 何も反応がない → システムの問題の可能性があります。システムの変更をお勧めします
  • 複数の1d50:606f が表示される → デバイスは1つだけ残すことをお勧めします(例:UTOCを使用する場合は、USBブリッジCANファームウェアが書き込まれた他のデバイスを外す)

⚠️ 重要: 1d50:606f が表示されて初めてCAN IDの検索に進むことができます

ステップ2: CANネットワークの設定

システムの種類に応じて設定方法を選択:

既に設定済み、またはFlyOS-FASTシステムを使用している場合は、この手順は不要です!

通常のLinuxシステムの設定方法

1Mレートの設定(推奨):

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 1000000
pre-up ip link set can0 txqueuelen 1024
EOF

500Kレートの設定:

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 500000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 500000
pre-up ip link set can0 txqueuelen 1024
EOF

注意: FASTシステムではこの操作は不要です!

  1. システムを再起動して反映:
    sudo reboot

ステップ3: CAN IDの検索

CANの状態を確認:

ip -details link show can0
  • 下図の丸で囲んだ部分が上位機のCANレートとキャッシュです
  • 上部の1024は現在のCAN0キャッシュ
  • 下部の1000000は現在のCAN0レート
Loading...

デバイスの検索:

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

正常であれば、Found canbus_uuid=xxxx... と表示されます。

よくあるエラーとその解決方法

エラーメッセージ原因解決方法
OSError: [Errno 19] No such deviceCANデバイスが見つからない1. USB接続を確認
2. ファームウェアが正しいか確認
3. lsusb を実行して検証
can.CanError: Failed to transmit: [Errno 100] Network is downCANネットワークが設定されていない1. 上記の設定手順を実行
2. システムを再起動
can.CanError: Failed to transmit: [Errno 105] No buffer space availableキャッシュ不足1. CANキャッシュが 1024 であるか確認
2. システムを再起動

CAN IDが見つからない場合の確認手順

ステップ1: 基本確認

  • lsusb を実行して 1d50:606f が表示される
  • CANデバイスとツールボードに電源が供給されている
  • データケーブルがしっかり接続されている

ステップ2: 設定確認

  • CANネットワークが正しく設定されている
  • 上位機のCANレートとツールボードのファームウェアが一致している(デフォルトは1M)
  • システムを再起動した

ステップ3: ハードウェア確認

  • CANバスの両端に120Ωの終端抵抗がある
  • 電源を切った状態でCAN-HとCAN-L間の抵抗が約60Ωである
  • 配線に断線がないか確認
  • CAN-HとCAN-Lが逆に接続されていない

ステップ4: 特殊な状況への対処

  • Klipperが既にIDを占有している場合:

    1. Klipperの該当設定をコメントアウトする
    2. 1分間完全に電源を切る
    3. 再度通電して検索する
  • 終端抵抗の測定値:

    • 約60Ω: 正常
    • 約120Ω: 片方のみに抵抗がある
    • 約40Ω: 3か所に抵抗がある
    • 約140Ω: 配線が逆の可能性

クイックトラブルシューティング手順

  1. まずデバイスを確認: lsusb1d50:606f が表示される?
  2. 次に設定を確認: ip -details link show can0 → レートは正しい?
  3. 最後にハードウェア: 電源を切って抵抗を測定 → 約60Ω?

すべて確認しても解決しない場合: データケーブルまたはデバイスを交換してみてください。またはテクニカルサポートに連絡してください。

ツールボードファームウェア更新手順

ステップ1: 準備

  1. ガイドに従って新しいファームウェアファイルをコンパイルする
  2. Klipperサービスを停止する:
    sudo systemctl stop klipper

ステップ2: ツールボードIDの取得

Klipper設定ファイルで該当するツールボードのCAN UUIDを見つけます(例: 241696050c56

ステップ3: ファームウェア更新の実行

バージョン説明

お使いのシステムバージョンに応じて正しいコマンドを選択してください:

  • FlyOS-FAST 1.3.8 以降 または 2026年4月9日以降にKlipperを更新したシステム

    python3 ~/klipper/lib/katapult/flashtool.py -u 241696050c56
  • 旧バージョンのシステム(FAST 1.3.8未満 または 2026年4月9日以前にKlipperを更新していない):

    python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56

注意: -u の後には必ずスペースを1つ入れ、続けてツールボードのCAN UUIDを入力してください。

ステップ4: 結果の確認

  • CAN Flash Success と表示される → 書き込み成功

  • それ以外のエラーメッセージが表示される → 書き込み失敗。UUIDと接続を確認してください。

    Loading...

ステップ5: サービスの再起動

sudo systemctl start klipper

更新完了!

Loading...