CANファームウェア接続の注意点
配線説明
以下の3ステップを順番に実行してください:
ステップ1: DIPスイッチの設定
- 電源を切る: すべての電源を抜いてください。
- DIPスイッチを探す: ツールボードを裏返し、背面のDIPスイッチ群を見つけてください。
- 正しく設定する: CANモードを使用するには、すべてのスイッチを以下の例の位置に設定してください。
Loading...
重要: DIPスイッチを変更した後は、対応するファームウェア(このガイドではCANファームウェア)を再書き込みする必要があります。
ステップ2: 配線接続
- 電源を切ったまま: 配線中は絶対に通電しないでください。
- ケーブルを準備する:
XT30(2+2)-F4芯データケーブルを使用します。色の定義は以下の通りです:- 赤 (VCC): 12V-24V電源のプラス極に接続
- 黒 (GND): 電源のマイナス極に接続
- 黄 (CAN-H): CAN拡張ポートのHに接続
- 白/緑 (CAN-L): CAN拡張ポートのLに接続
- デバイスを接続する:
- ケーブルの
XT30(2+2)-Fコネクタをツールボードに差し込みます。 - ケーブルの端子をUTOCモジュール、または「USBブリッジCAN」ファームウェアが書き込まれたマザーボードに接続します。
- 最後に、USBケーブルでUTOCモジュールまたはマザーボードを上位機(FLY派やRaspberry Piなど)に接続します。
- ケーブルの
ステップ3: 終端抵抗の設定と確認
信号を安定させるために、終端抵抗を正しく接続する必要があります。以下の表に従って設定し、電源を切った状態で測定してください:
| デバイス | 操作説明 |
|---|---|
| ツールボード | 120Ω と表示されたジャンパーピンを見つけて差し込んでください。 |
| マザーボード | マザーボードに接続する場合、同様にその120Ωジャンパーピンを差し込んでください。 |
| UTOCモジュール | 抵抗内蔵*。 |
確認方法:
- 完全に電源を切った状態を維持してください。
- マルチメーターを使用して、ツールボードのCANポートの CAN-H と CAN-L 間の抵抗を測定してください。
- 結果の判断:
- 約60Ω: 正常です。両端の抵抗が正しく接続されています。
- 約140Ω: CAN-H と CAN-L が逆に接続されている可能性があります。
- 約120Ω:
120Ω抵抗が取り付けられていないか、断線しています。 - 約40Ω: 余分な抵抗がある可能性があります。中間ノードを確認してください。
一言でまとめると: まず電源を切る。DIPスイッチを正しく設定する。配線を正しく接続する。両端の120Ωジャンパーピンを差し込む。最後に抵抗値が約60Ωであることを測定する。
チェックリスト:
- 全工程で電源を切った状態で操作
- DIPスイッチがすべて下(CANモード)に設定されている
- ツールボードの
120Ωジャンパーピンが差し込まれている - マザーボード(該当する場合)の
120Ωジャンパーピンが差し込まれている - CANデータケーブルがしっかり接続されている
- 抵抗値が約60Ωであることを測定
CANネットワークの設定とトラブルシューティング
ステップ1: 上位機がCANデバイスを認識しているか確認する
- 上位機にログインし、以下のコマンドを入力します:
lsusb
- 結果を確認します:
1d50:606fが表示される → デバイス認識成功lsコマンドが見つからない と表示される →sudo apt-get install usbutilsを実行- 何も反応がない → システムの問題の可能性があります。システムの変更をお勧めします
- 複数の
1d50:606fが表示される → デバイスは1つだけ残すことをお勧めします(例:UTOCを使用する場合は、USBブリッジCANファームウェアが書き込まれた他のデバイスを外す)
⚠️ 重要:
1d50:606fが表示されて初めてCAN IDの検索に進むことができます
ステップ2: CANネットワークの設定
システムの種類に応じて設定方法を選択:
既に設定済み、またはFlyOS-FASTシステムを使用している場合は、この手順は不要です!
- 通常のLinuxシステム
- Raspberry Piシステム
通常の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システムではこの操作は不要です!
Raspberry Piシステムの設定方法
-
ネットワーク設定を作成します(BitRateは500000に変更可能):
sudo tee /etc/systemd/network/99-can.network > /dev/null <<'EOF'[Match]Name=can*[CAN]BitRate=1000000RestartSec=100msEOF -
接続設定を作成します(TxQueueLengthは変更しないことを推奨):
sudo tee /etc/systemd/network/99-can.link > /dev/null <<'EOF'[Match]OriginalName=can*[Link]TxQueueLength=1024EOF
- システムを再起動して反映:
sudo reboot
ステップ3: CAN IDの検索
CANの状態を確認:
ip -details link show can0
- 下図の丸で囲んだ部分が上位機のCANレートとキャッシュです
- 上部の
1024は現在のCAN0キャッシュ - 下部の
1000000は現在のCAN0レート
デバイスの検索:
- Fly-Armbianおよび通常の上位機用検索コマンド
- Fly-FAST用検索コマンド
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python ~/klipper/scripts/canbus_query.py can0
正常であれば、Found canbus_uuid=xxxx... と表示されます。
よくあるエラーとその解決方法
| エラーメッセージ | 原因 | 解決方法 |
|---|---|---|
OSError: [Errno 19] No such device | CANデバイスが見つからない | 1. USB接続を確認 2. ファームウェアが正しいか確認 3. lsusb を実行して検証 |
can.CanError: Failed to transmit: [Errno 100] Network is down | CANネットワークが設定されていない | 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を占有している場合:
- Klipperの該当設定をコメントアウトする
- 1分間完全に電源を切る
- 再度通電して検索する
-
終端抵抗の測定値:
- 約60Ω: 正常
- 約120Ω: 片方のみに抵抗がある
- 約40Ω: 3か所に抵抗がある
- 約140Ω: 配線が逆の可能性
クイックトラブルシューティング手順
- まずデバイスを確認:
lsusb→1d50:606fが表示される? - 次に設定を確認:
ip -details link show can0→ レートは正しい? - 最後にハードウェア: 電源を切って抵抗を測定 → 約60Ω?
すべて確認しても解決しない場合: データケーブルまたはデバイスを交換してみてください。またはテクニカルサポートに連絡してください。
ツールボードファームウェア更新手順
ステップ1: 準備
- ガイドに従って新しいファームウェアファイルをコンパイルする
- 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
更新完了!