Linux,Unix,BSD

[ROCK5B] 연결된 USB serial 장치를 찾을 수 없음

채윤아빠 2023. 11. 29. 09:19
728x90
반응형

문제점 및 증상

새로 Armbian을 설치한 ROCK5B에 USB serial 장치를 연결하여 시리얼 통신을 해보려고 했는데, 다음과 같이 "lsusb" 명령에서 장치가 정상적으로 연결된 것으로 보이지만, "/dev/ttyUSB0" 장치를 이용하여 통신을 하려고 하면, 해당 장치를 찾을 수 없다는 오류가 나왔고, 실제로 "/dev" 폴더 아래에 "ttyUSB0" 장치가 없었습니다.

hbesthee@rock-5b:~# lsusb
Bus 006 Device 003: ID 0781:5583 SanDisk Corp. Ultra Fit
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 008: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 001 Device 006: ID 0bda:c820 Realtek Semiconductor Corp. 802.11ac NIC
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

원인 분석

USB serial 장치를 재연결하고, 시스템 로그를 확인해 봤더니 다음과 같이 'brltty'에 의하여 USB serial 장치가 강제로 해제되는 로그를 확인할 수 있었습니다.

hbesthee@rock-5b:~# sudo dmesg | tail -15
[171206.251405] Bluetooth: hci0: RTL: fw version 0x826ca99e
[171206.293468] rtl8821cu 1-1.1:1.2 wlx60fb0062749e: renamed from wlan0
[171207.507213] IPv6: ADDRCONF(NETDEV_CHANGE): wlx60fb0062749e: link becomes ready
[171208.825056] r8125: enP4p65s0: link up
[171209.096555] usb 1-1.2: new full-speed USB device number 7 using ehci-platform
[171209.317205] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
[171209.317212] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[171209.317217] usb 1-1.2: Product: FT232R USB UART
[171209.317221] usb 1-1.2: Manufacturer: FTDI
[171209.317225] usb 1-1.2: SerialNumber: AB0LK3DL
[171209.322535] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
[171209.322648] usb 1-1.2: Detected FT232RL
[171209.324821] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
[171212.230207] r8125: enP4p65s0: link down
[171214.058351] usb 1-1.2: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1
[171214.059715] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[171214.059783] ftdi_sio 1-1.2:1.0: device disconnected

'brltty' 서비스가 활성화되어 있는 경우에는 위와 같이 USB Serial을 자동으로 연결을 해제합니다. 이 서비스는 시각장애인을 위한 서비스인듯 한데, Armbian을 새로 설치한 장치의 목적이 Edge단에 들어가는 것이라, 해당 서비스를 이용하지 않아도 되었습니다.


해결 방안

다음과 같이 불필요한 'brltty' 서비스를 중지하고, 사용하지 않도록 한 이후에 USB serial 장치가 정상적으로 동작하였습니다.

hbesthee@rock-5b:~# sudo systemctl stop brltty.service
hbesthee@rock-5b:~# sudo systemctl disable brltty.service
Synchronizing state of brltty.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable brltty
Removed "/etc/systemd/system/sysinit.target.wants/brltty.service".

시스템 로그를 확인해 보면 다음과 같이 정상적으로 USB serial 장치가 연결되는 것을 확인할 수 있었습니다.

[172018.057005] usb 1-1.2: new full-speed USB device number 8 using ehci-platform
[172018.277462] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
[172018.277470] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[172018.277475] usb 1-1.2: Product: FT232R USB UART
[172018.277480] usb 1-1.2: Manufacturer: FTDI
[172018.277484] usb 1-1.2: SerialNumber: AB0LK3DL
[172018.283350] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
[172018.283471] usb 1-1.2: Detected FT232RL
[172018.284816] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0

hbesthee@rock-5b:~# ls /dev/ttyU*
/dev/ttyUSB0

Armbian에서 USB 시리얼단 연결은 "/dev/ttyUSB0" 장치를 이용하면 됩니다.

Edge단에서 사용할 ROCK5B에 Armbian을 새로 설치한 경우에는 꼭 필요하지 않은 이상 'brltty' 서비스를 중지하고 사용하지 않도록 설정하는 것을 권장합니다.


참고자료