DIO-8/4RE-UBCの使用方法(Linux)

セットアップ

本製品は、USB-I2C変換にFTDI社のデバイス(FT4222H)を使用しています。
その為、セットアップではFTDI社のドライバをインストールします。

2017/2/1現在の以下のバージョンに基づいて手順を記載しています。
(最新の情報については、FTDI社のサイトを参照してください。)

その他のバージョンについては、適宜読み替えてください。

FTDI社のサイトからドライバをダウンロードして解凍します。

$ cd ~/Downloads
$ wget http://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-x86_64-1.3.6.tgz
$ tar xfvz libftd2xx-x86_64-1.3.6.tgz

(Raspberry Pi 3/2の場合)

$ cd ~/Downloads
$ wget http://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-arm-v7-hf-1.3.6.tgz
$ tar xfvz libftd2xx-arm-v7-hf-1.3.6.tgz

ドライバをインストールします。

$ sudo -s
# cp release/build/libftd2xx.* /usr/local/lib
# chmod 0755 /usr/local/lib/libftd2xx.so.1.3.6
# ln -sf /usr/local/lib/libftd2xx.so.1.3.6 /usr/local/lib/libftd2xx.so
# exit

動作確認

動作確認の為、サンプルをビルドします。

$ cd release/examples
$ make -B
$ cd EEPROM/read

DIO-8/4RE-UBCをパソコンとUSBケーブルで接続してから、プログラムを実行します。
※ 電源が供給されますので、金属などの導電性のある物とボードが触れないように注意してください。

$ sudo ./read

正常であれば以下のようなメッセージが表示されます。

Library version = 0x10306
Opening port 0
FT_Open succeeded.  Handle is 0x16c2b0
FT_GetDeviceInfo succeeded.  Device is type 12.
FT_EE_Read succeeded.

Signature1 = 0
Signature2 = -1
Version = 0
VendorId = 0x0403
ProductId = 0x601C
Manufacturer = FTDI
ManufacturerId =
Description = FT4222
SerialNumber =
MaxPower = 100
PnP = 1
SelfPowered = 0
RemoteWakeup = 1
Returning 0

ライブラリのインストール

FTDI社のサイトからライブラリをダウンロードしてインストールします。 ライブラリ(LibFT4222)を使用することで、USBからI2Cを簡単に制御する事ができます。

$ cd ~/Downloads
$ wget http://www.ftdichip.com/Support/SoftwareExamples/libft4222-linux-1.3.1.120.tgz
$ tar xfvz libft4222-linux-1.3.1.120.tgz
$ sudo ./install4222.sh

動作確認の為、サンプルをビルドして実行します。

$ cd examples
$ cc get-version.c -lft4222 -Wl,-rpath,/usr/local/lib
$ sudo ./a.out

正常であれば以下のようなメッセージが表示されます。

Chip version: 42220300, LibFT4222 version: 01030178

サンプルプログラムの実行

サンプルをビルドして実行します。

$ wget https://github.com/y2cjp/DIO-8-4RE-UBC-ExampleC/blob/master/test1.c
$ cc test1.c -lft4222 -Wl,-rpath,/usr/local/lib
$ sudo ./a.out

以下のようなメッセージが表示されて、デジタル入力値を表示します。
またデジタル入力値と同じ値がデジタル出力に出力されます。

Device 0 is mode-3 FT4222H (single Master/Slave):
0x0403601c    FT4222
Chip version: 42220300, LibFT42222 version: 01030178
--- Loopback Test ---
Data: 00

動作確認が済んだら、Ctrl+Cで終了します。

参考資料