8/01/2017

Ubuntu에서 USB-Serial을 설정

USB Serial은 전에도 설명했듯이 CDC-ACM을 이용하여 Descriptor을 이용하여 사용한다.
Window도 이 Driver를 제공하지만, Linux도 이 Driver를 제공을 하고 있기에 아래와 같이 
간단히 설명한다. 

대부분 사람들이 Linux를 Virtual Box를 통해서 사용하기 때문에 그 기준으로 설명한다.


  • Virtual Box 설정 
  1. 설정->USB->장치필터 에 USB Serial 등록




  • Ubuntu xxx 설정 및 확인사항 
  1. Ubuntu 에서 lsusb에서 USB Vendor ID와 Product ID 확인 
  2. sudo modprobe usbserial vendor=xxx product=xxxx 로 등록 

현재 usb device 상황 파악

jhlee@jhlee-VirtualBox:~$ lsusb
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 002 Device 003: ID 0451:16b6 Texas Instruments, Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

jhlee@jhlee-VirtualBox:~$ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/12p, 12M
    |__ Port 1: Dev 2, If 0, Class=HID, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 0, Class=comm., Driver=cdc_acm, 12M
    |__ Port 2: Dev 3, If 1, Class=data, Driver=cdc_acm, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/12p, 480M




jhlee@jhlee-VirtualBox:~$ sudo modprobe usbserial vendor=0x0451 product=0x16b6

jhlee@jhlee-VirtualBox:~$ dmesg 
[    6.721716] cdc_acm 2-2:1.0: This device cannot do calls on its own. It is not a modem.
[    6.721805] cdc_acm 2-2:1.0: ttyACM0: USB ACM device
[    6.742603] usbcore: registered new interface driver cdc_acm
[    6.742605] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
.....
[   87.360071] usbcore: registered new interface driver usbserial
[   87.360707] usbcore: registered new interface driver usbserial_generic
[   87.360953] usbserial: USB Serial support registered for generic


  • Ubuntu에서 minicom 설정 (Serial Program)


jhlee@jhlee-VirtualBox:~$ dmesg | grep tty
[    3.809474] console [tty0] enabled
[    6.721805] cdc_acm 2-2:1.0: ttyACM0: USB ACM device

jhlee@jhlee-VirtualBox:~$ sudo minicom -s

            +-----[configuration]------+
            | Filenames and paths      |
            | File transfer protocols  |
            | Serial port setup        |
            | Modem and dialing        |
            | Screen and keyboard      |
            | Save setup as dfl        |
            | Save setup as..          |
            | Exit                     |
            | Exit from Minicom        |
            +--------------------------+
Serial port setup
            | A -    Serial Device      : /dev/ttyACM0
Save setup as dfl 
Exit


참고사항
  http://belitino.tistory.com/140

Minicom 사용법
  https://help.ubuntu.com/community/Minicom

  • Serial Program 관련내용
만약 본인이 직접 프로그래밍을 한다고 하면, 반드시 sudo로 실행을 해야한다.

  http://tldp.org/HOWTO/Serial-Programming-HOWTO/
  https://wiki.kldp.org/wiki.php/Serial-Programming-HOWTO