CANファームウェア接続注意事項
配線説明
以下の3つの手順を順番に実行してください:
手順1:ディップスイッチの設定
- まず電源を切る:すべての電源を抜いてください。
- ディップスイッチを探す:ツールボードを裏返します。裏面のディップスイッチ群を見つけてください。
- 正しく設定する:CANモードを使用するには、すべてのスイッチを下記の例の位置に設定してください。
Loading...
重要なお知らせ:ディップスイッチを変更した後は、対応するファームウェアを必ず再書き込みしてください(本ガイドでは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Ω: 余分な抵抗がある可能性があります。中間ノードを確認してください。
一言でまとめると:まず電源を切る。ディップスイッチを正しく設定する。ケーブルを正しく差し込む。両端の120Ωジャンパーピンキャップを差し込む。最後に抵抗が約60Ωかどうかを測定する。
チェックリスト:
- すべての作業を電源オフで行った
- ディップスイッチがすべて下(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:ファームウェア更新の実行
以下のコマンドでファームウェアを書き込みます(241696050c56 を実際のCAN UUIDに置き換えてください):
python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56
手順4:結果の確認
CAN Flash Successというメッセージが表示される → 書き込み成功- 他のエラーメッセージが表示される → 書き込み失敗。UUIDと接続を確認してください
注意:
-uの後には必ずスペースが必要です。その後ろにツールボードのCAN UUIDを入力します
手順5:サービスの再起動
sudo systemctl start klipper
更新完了!