우리는 Apacer의 EFC-D10 모듈과 CP2105 듀얼 USB-UART 브리지 컨트롤러를 사용하여 산업용 PC에서 Canbus가 작동하도록 노력하고 있습니다. 우리는 CP2105용 드라이버가 포함된 Linux 커널 4.19.129를 사용하고 있습니다. dmesg에서:
[ 2.347510] usb 1-3: Product: CP2105 Dual USB to UART Bridge Controller
[ 2.349828] usb 1-3: Manufacturer: Silicon Labs
[ 2.351386] usb 1-3: SerialNumber: 00A1240E
[...]
[ 5.262243] usbcore: registered new interface driver cp210x
[ 5.263581] usbserial: USB Serial support registered for cp210x
[ 5.271657] cp210x 1-3:1.0: cp210x converter detected
[ 5.302067] usb 1-3: cp210x converter now attached to ttyUSB0
[ 5.303403] cp210x 1-3:1.1: cp210x converter detected
[ 5.307509] usb 1-3: cp210x converter now attached to ttyUSB1
여태까지는 그런대로 잘됐다. 그런 다음 slcand를 직접 호출하면 작동하는 것 같습니다.
slcand -o -c -f -s4 /dev/ttyUSB0 can0
ip link set can0 up
Journalctl에서:
slcand[1266]: starting on TTY device /dev/ttyUSB0
slcand[1267]: attached TTY /dev/ttyUSB0 to netdevice slcan0
kernel: can0: renamed from slcan0
slcand[1267]: netdevice slcan0 renamed to can0
systemd-networkd[140]: can0: Link UP
systemd-networkd[140]: can0: Gained carrier
candump를 사용하여 cansend를 통해 전송된 로컬 트래픽을 볼 수 있지만 외부 트래픽은 볼 수 없습니다. 우리는 직렬 전송 속도(-S 옵션 사용)와 slcand에서 제어할 수 있는 모든 것을 설정하려고 시도했지만 아무런 차이가 없었습니다. 우리는 slcan을 시작하기 위해 동일한 명령을 사용하여 일반 USB-Can 어댑터를 사용하여 테스트했으며 작동합니다. 우리는 사용자 설명서를 읽었습니다.
이것은 확실히 하드웨어 문제일 수 있지만, 카드마다 SLCAN 프로토콜을 지원하는 방식이 다르다는 것을 읽었습니다. slcand는 이 카드를 지원하지 않나요?
따라서 실제 질문은 Linux에서 Apacer EFC-D10 모듈을 사용해 본 경험이 있는 사람이 있습니까?입니다. (제작진에게 연락했지만 아무런 피드백도 받지 못했습니다.)