最近仮想環境ばっかり使っていたので出番がなかった OkaConsole Quad ですが、久しぶりに実機触る機会があったので使おうと思ったらまさかのつまづき。
mac で使うつもりだったのですが、FTDI のドライバを使おうと思ったら plist に追記した時点で改竄されたドライバとして認識されてしまい、全然使えず。仕方がないので別の OS から使うことにしました。といっても USB デバイスとしては認識できているので、ドライバに OkaConsole Quad の情報を登録してやりさえすればいけるのはすでにわかっていました。なので今回は仮想環境(UTM)の USB 接続として OkaConsole Quad を指定し、あとは仮想 OS のなかでいじってやればOKと踏んでいざ着手。
方法は簡単。ftdi_sio モジュール組み込み後に生えてくる /sys/bus/usb-serial/drivers/ftdi_sio/new_id に OkaConsole Quad のベンダ ID / プロダクト ID を登録してやるだけです。
$ lsusb | grep -i oka
Bus 003 Device 002: ID 0403:9a99 Future Technology Devices International, Ltd OkaConsole Quad ← ID 0403:9a99 がベンダ ID とプロダクト ID
$ sudo modprobe ftdi_sio
echo 0403 9a99 | sudo tee -a /sys/bus/usb-serial/drivers/ftdi_sio/new_id
これだけで、/dev/ttyUSB[0-3] が生えてきます。
$ sudo dmesg | tail -n 20 [ 84.737194] usbcore: registered new interface driver ftdi_sio [ 84.737208] usbserial: USB Serial support registered for FTDI USB Serial Device [ 100.370723] usb 3-3: new high-speed USB device number 2 using xhci_hcd [ 100.505583] usb 3-3: New USB device found, idVendor=0403, idProduct=9a99, bcdDevice= 8.00 [ 100.505593] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 100.505594] usb 3-3: Product: OkaConsole Quad [ 100.505596] usb 3-3: Manufacturer: Okada [ 100.505597] usb 3-3: SerialNumber: CNS40016 [ 100.506414] ftdi_sio 3-3:1.0: FTDI USB Serial Device converter detected [ 100.506431] usb 3-3: Detected FT4232H [ 100.507127] usb 3-3: FTDI USB Serial Device converter now attached to ttyUSB0 [ 100.507326] ftdi_sio 3-3:1.1: FTDI USB Serial Device converter detected [ 100.507343] usb 3-3: Detected FT4232H [ 100.508137] usb 3-3: FTDI USB Serial Device converter now attached to ttyUSB1 [ 100.508351] ftdi_sio 3-3:1.2: FTDI USB Serial Device converter detected [ 100.508360] usb 3-3: Detected FT4232H [ 100.509241] usb 3-3: FTDI USB Serial Device converter now attached to ttyUSB2 [ 100.509609] ftdi_sio 3-3:1.3: FTDI USB Serial Device converter detected [ 100.509619] usb 3-3: Detected FT4232H [ 100.510333] usb 3-3: FTDI USB Serial Device converter now attached to ttyUSB3 $ ls -l /dev/ttyUSB* crw-rw---- 1 root dialout 188, 0 Dec 29 07:23 /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 1 Dec 29 07:23 /dev/ttyUSB1 crw-rw---- 1 root dialout 188, 2 Dec 29 07:23 /dev/ttyUSB2 crw-rw---- 1 root dialout 188, 3 Dec 29 07:23 /dev/ttyUSB3
生えてきた /dev/ttyUSB[0-3] のパーミッションは 660 となっているので、権限をどうにかするか、dialout グループに所属させると良いですね。
$ sudo usermod -aG dialout `echo $USER`
コメント