自作 CAN アダプター向けオープンソース USB‑CAN / CAN‑FD ファームウェア比較

本ガイドでは、自作 CAN アダプター向けの代表的なオープンソース USB‑CAN / CAN‑FD ファームウェアを比較します。大きく 3 種類に分類できます:高性能バイナリプロトコルの gs_usb、CDC‑VCP 上で動作する Lawicel SLCAN(ASCII)、独自仕様・エミュレー…

関連製品 USBCAN-I-BC | USB-CAN 変換モジュール

本ガイドでは、自作 CAN アダプター向けの代表的なオープンソース USB‑CAN / CAN‑FD ファームウェアを比較します。大きく 3 種類に分類できます:高性能バイナリプロトコルの gs_usb、CDC‑VCP 上で動作する Lawicel SLCAN(ASCII)、独自仕様・エミュレーション系プロトコルです。

USB‑CAN ファームウェア比較
プロジェクトプロトコルCAN‑FDタイムスタンプシステム / 備考推奨用途
CANnectivitygs_usb対応(ハードウェア FDCAN)ハードウェアZephyr RTOS、Linux 標準 gs_usb、多チャンネル、DFU産業用アダプタ、量産、長期保守
candleLight_fwgs_usb対応ハードウェアBare-Metal STM32、MIT ライセンス、gs_usb 古典的リファレンス低コスト単チャンネルアダプタ、迅速開発
Kosmonova usb‑can‑firmware‑stm32gs_usb限定対応ハードウェアBare-Metal STM32、軽量、開発活度低め学習、gs_usb 簡易カスタマイズ
LekElectronics slcanLawicel SLCAN (CDC‑VCP)非対応(標準 SLCAN)ホスト / ソフトウェアSTM32 HAL、slcand 必須、旧来ツールと互換性良好レガシーソフト、低負荷時デバッグ
CANable original slcan fwLawicel SLCAN非対応ソフトウェアBare-Metal、CANable 純正ファームウェアCANable 向け標準 SLCAN リファレンス
FYSETC UCANSLCAN 派生非対応ソフトウェアKlipper / 3D プリンタ向け最適化Klipper CAN バス搭載プリンタ専用
xjtuecho USBCAN独自プロトコル非対応ソフトウェアサードパーティツールとの互換性低い教育・ラボ用途、商用開発に非推奨
pcan_cantactPEAK PCAN エミュレーション限定対応ハードウェアCANable 上で動作、PCAN‑View 互換PEAK PCAN ハードウェアの直接代替
USBtinLawicel SLCAN非対応ソフトウェア成熟したオープンハードウェア&ファームウェアシンプルなオープン SLCAN リファレンス
umi‑eng adapter独自 USB CAN‑FD対応ハードウェアRust 製ファームウェア、最新アーキテクチャRust ベース実験的 CAN‑FD アダプタ
SuperCAN独自 SuperCAN対応ハードウェア専用新規 CAN‑FD プロトコル研究用途、独自ホストスタック開発

プロトコル概要

gs_usb — オーバーヘッドの小さいバイナリプロトコルで、ハードウェアタイムスタンプと Linux カーネル標準ドライバを備えます。産業用途、CAN‑FD、高負荷バスに適しますが、古いグラフィカルツールの対応は少なめです。

Lawicel SLCAN — CDC‑VCP 上の ASCII プロトコルで、レガシー互換性に優れます。ただしプロトコルオーバーヘッドが大きく、タイムスタンプはホスト側生成です。Linux で SocketCAN に接続するには slcand が必要です。

エミュレーション / 独自仕様 — PCAN エミュレーションや専用プロトコルは特定のホストソフトに適合しますが、閉じたエコシステムとなり、汎用アダプタには向きません。

簡易選定ガイド

  • • 汎用商用 USB‑CAN‑FD アダプタ:CANnectivity
  • • シンプル単チャンネル gs_usb:candleLight_fw
  • • 従来型シリアル CAN ツールとの互換:LekElectronics slcan
  • • PEAK PCAN の直接代替:pcan_cantact
  • • Klipper プリンタ向け CAN バス:FYSETC UCAN

既知の制限事項

標準 Lawicel SLCAN には CAN‑FD の正式定義が存在しません。CAN‑FD に対応する SLCAN はすべて非標準拡張に依存します。ハードウェアタイムスタンプはプロトコルだけでなく、MCU の FDCAN / bxCAN 周辺機器とファームウェア実装に依存します。

プロジェクトリンク

CANnectivity: https://github.com/CANnectivity/cannectivity
candleLight_fw: https://github.com/candle-usb/candleLight_fw
LekElectronics slcan: https://github.com/LekElectronics/slcan
FYSETC UCAN: https://github.com/FYSETC/UCAN
xjtuecho USBCAN: https://github.com/xjtuecho/USBCAN
Kosmonova usb-can-firmware-stm32: https://github.com/Kosmonova/usb-can-firmware-stm32
USBtin: https://github.com/fischl/USBtin
pcan_cantact: https://github.com/moonglow/pcan_cantact
umi-eng adapter: https://github.com/umi-eng/adapter
SuperCAN: https://github.com/jgressmann/supercan

製品ページを見る

発表の詳細をご希望ですか?

ご検討中の製品群やプロジェクトをお知らせいただければ、仕様、サンプル、納期をご返信いたします。

見積りを依頼する