シリアルUSBアダプターをLinuxで使うには
準備
弊社製シリアルUSBアダプターシリーズはWindows OS以外での動作保証をしておりませんが、適切なドライバーを使うことで、Linuxでも使用できます。 Linuxで使用するときはusbserial.ko、ftdi_sio.koという2つのドライバー(正式にはカーネルモジュールと言います)が必要となります。このドライバーはUbuntu Linuxなどでは標準でインストールされています。例えばUbuntu Linux 10.04では「/lib/modules/2.6.32-21-generic/kernel/drivers/usb/serial」にインストールされています。
次にシリアルUSBアダプターHSを取り付け、下記コマンドでドライバーをセットしてください。modprobeコマンドでftdi_sioドライバーを取り付けると、自動的にusbserial.koドライバーも取り付けられます。
<rootユーザーの場合>
1 |
# modprobe ftdi_sio vendor=0x165C product=0007 |
<Ubuntu Linuxなど、sudoコマンドが必要な場合>
1 |
$ sudo modprobe ftdi_sio vendor=0x165C product=0007 |
テスト
上記コマンドを実行後、dmesgコマンドで確認をします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
----- $ dmesg ... [18188.873370] USB Serial support registered for FTDI USB Serial Device [18188.874223] ftdi_sio 2-1:1.0: FTDI USB Serial Device converter detected [18188.875151] usb 2-1: Detected FT232RL [18188.875154] usb 2-1: Number of endpoints 2 [18188.875156] usb 2-1: Endpoint 1 MaxPacketSize 64 [18188.875159] usb 2-1: Endpoint 2 MaxPacketSize 64 [18188.875161] usb 2-1: Setting MaxPacketSize 64 [18188.892767] usb 2-1: <span style="color: #ff0000;">FTDI USB Serial Device converter now attached to ttyUSB0</span> [18188.892794] usbcore: registered new interface driver ftdi_sio [18188.892796] ftdi_sio: v1.5.0:USB FTDI Serial Converters Driver ----- |
上記出力例のように「FTDI USB Serial Device converter now attached to ttyUSB0」というような表示が出ましたら、シリアルUSBアダプターHSはデバイス「/dev/ttyUSB0」として使用することが可能です。最近のLinuxではデバイスファイルは自動的に作成されますが、自動作成されなかった場合は次のようにデバイスファイルを作成する必要があります。 # mknod /dev/ttyUSB0 c 188 0 デバイスファイルに対してechoコマンドを使って適当な文字列を出力すると、シリアルUSBアダプターHSから文字列が出力されます。
1 |
$ echo "Hello World!" > /dev/ttyUSB0 |
標準状態でのパリティやボーレートの変更はsttyコマンドなどを使用してください。なおC言語でのプログラムではプログラム内でボーレートなどを設定してください。
その他
その他のドライバーを使用する場合
システムにドライバーがない場合やチップメーカーのFTDI社純正ドライバーを使用する場合は、FTDI社からドライバーをダウンロードしてインストールするか、カーネルをアップデートする必要があります。ドライバーは下記URLよりダウンロードしてください。FTDI社のドライバーにつきましては上記ドライバーと使い方が違います。また弊社では未検証ですので注意してご利用ください。
http://www.ftdichip.com/Drivers/D2XX.htm
その他のドライバーにつきましては、下記のようなものがあります。こちらも弊社では未検証です。
FTDI Linux USB full speed char driver http://sourceforge.jp/projects/sfnet_ftdifullspddrv/
FTDI USB Serial Converter Driver http://sourceforge.jp/projects/sfnet_ftdi-usb-sio/
その他のシリアルUSB変換器を使う場合
近藤科学株式会社のシリアル変換アダプターを使うには、生産者ID(VID)と製品ID(PID)番号が必要です。modporobeコマンドのオプションを下記リストを参考にして、適宜入れ替えて使用してください。
1 2 3 4 5 6 7 8 9 |
VID:165C (近藤科学USB製品共通) ------------------------------------------------------------- PID = デバイス名 (日本語でのデバイス名) ------------------------------------------------------------- 0001 = ICS USB ADAPTER (ICS USB アダプター) 0002 = SERIAL USB ADAPTER (シリアルUSBアダプター) 0006 = ICS USB ADAPTER HS (ICS USB アダプター High Speed) 0007 = SERIAL USB ADAPTER HS(シリアルUSBアダプター High Speed) 0008 = DUAl USB ADAPTER HS (Dual USB アダプター HS) |
その他の情報
KCB-3WLに付属のSDKにはシリアル通信でRCB-4やRCB-3を動かすライブラリとサンプルプログラムがあります。LinuxでRCB-4などを動かすシリアル通信プログラムをやってみたい人は、参考にしてみてはいかがでしょうか。
Dual USBアダプターHSの詳細をみる シリアルUSBアダプターHSの詳細をみる