DIY CAN 어댑터를 위한 오픈 소스 USB-CAN / CAN-FD 펌웨어 비교

이 가이드는 DIY CAN 어댑터용 대표적인 오픈 소스 USB‑CAN / CAN‑FD 펌웨어를 비교합니다. 크게 세 그룹으로 나뉩니다: 고성능 바이너리 프로토콜인 gs_usb, CDC‑VCP 위에서 동작하는 Lawicel SLCAN(ASCII), 그리고 독자 사양·…

관련 제품 USBCAN-I-BC | USB-CAN Converter Module

이 가이드는 DIY CAN 어댑터용 대표적인 오픈 소스 USB‑CAN / CAN‑FD 펌웨어를 비교합니다. 크게 세 그룹으로 나뉩니다: 고성능 바이너리 프로토콜인 gs_usb, CDC‑VCP 위에서 동작하는 Lawicel SLCAN(ASCII), 그리고 독자 사양·에뮬레이션 계열 프로토콜입니다.

USB-CAN 펌웨어 비교
프로젝트프로토콜CAN‑FD타임스탬프시스템 / 비고추천 용도
CANnectivitygs_usb지원(하드웨어 FDCAN)하드웨어Zephyr RTOS, 리눅스 표준 gs_usb 드라이버, 멀티 채널, DFU산업용 어댑터, 양산, 장기 유지보수
candleLight_fwgs_usb지원하드웨어베어메탈 STM32, MIT 라이선스, 고전적인 gs_usb 레퍼런스저가형 단일 채널 어댑터, 신속한 개발
Kosmonova usb‑can‑firmware‑stm32gs_usb부분 지원하드웨어베어메탈 STM32, 경량, 개발 활동 낮음학습용, 간단한 gs_usb 커스터마이징
LekElectronics slcanLawicel SLCAN (CDC‑VCP)미지원(표준 SLCAN)호스트 / 소프트웨어STM32 HAL, slcand 필요, 구형 도구와 호환성 우수레거시 소프트웨어, 저부하 디버깅
CANable original slcan fwLawicel SLCAN미지원소프트웨어베어메탈, 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 — 오버헤드가 작은 바이너리 프로토콜로, 하드웨어 타임스탬프와 리눅스 커널 표준 드라이버를 갖추고 있습니다. 산업 용도, CAN‑FD, 고부하 버스에 적합하지만 구형 GUI 도구의 지원은 적은 편입니다.

Lawicel SLCAN — CDC‑VCP 위의 ASCII 프로토콜로 레거시 호환성이 뛰어납니다. 다만 프로토콜 오버헤드가 크고 타임스탬프는 호스트 측 생성이며, 리눅스에서 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

제품 페이지 보기

공지의 세부 내용이 궁금하신가요?

검토 중인 제품군이나 프로젝트를 알려주시면 사양, 샘플, 리드타임을 회신해 드립니다.

견적 요청