はじめに

EPIA ( EPIA, EPIA-V, EPIA-M )のFIR ( Fast IrDA )モジュールコネクタに接続する IrDA ユニットを作成します。PC に IrDA ポートを付けてみるを参考にしています。

部品

  • 赤外線トランシーバ(送受信)・モジュール
      秋月電子通商で2個入り700円。IrDA Ver1.0 対応なので、SIR ( 115kbps までの速度の IrDA )になってしまいます。
  • 接続ケーブル
      PC ショップ等で販売されている「ケース内配線用 USB ケーブル」を利用しました。4芯ケーブルで赤、黒、緑、白のケーブル色のものです。それぞれのケーブルにピン・コネクタが付いています。2本セット( ケーブル長 80cm )で500円くらいです。

usb-cable-s

結線

ケース内配線用 USB ケーブルの一端のピン・コネクタをすべて外し、赤外線トランシーバに下図のように結線(ハンダ付け)します。10 と 11 はパワーダウン機能制御 ON ( パワーダウンしない )の場合の結線です。

irda-wired

irda-mod1
irda-mod-r1

EPIA との接続

ケース内配線用 USB ケーブルのピン・コネクタと EPIA の FIR ( Fast IrDA )モジュールコネクタに接続するんですが、EPIA と EPIA-M では接続のしかたが違うようです。下図は EPIA の FIR ( Fast IrDA )モジュールコネクタですが、1ピンに赤、2ピンに白、4ピンに黒、5ピンに緑のケーブルのコネクタを接続します。

fir-j5

EPIA-M の場合は、1ピン・4ピン・5ピンは同様に接続しますが、白のケーブルを3ピンに接続します。

fir-j5-m

IrDA の動作確認

IrDA の動作を確認してみます。root になって、コマンド・ラインで irdadump を実行します。irdadump は赤外線の届く範囲の IrDA を列挙します。以下の例は、EPIA で irdadump を実行し、IBM ThinkPad X30 ( これにも Debian を入れている ) を列挙しているようすです。

02:51:20.561955 xid:cmd ac15bd0d > ffffffff S=6 s=0 (14)
02:51:20.651950 xid:cmd ac15bd0d > ffffffff S=6 s=1 (14)
02:51:20.741962 xid:cmd ac15bd0d > ffffffff S=6 s=2 (14)
02:51:20.831946 xid:cmd ac15bd0d > ffffffff S=6 s=3 (14)
02:51:20.911167 xid:rsp ac15bd0d < 616e16ee S=6 s=3 x30 hint=0400 [ Computer ] (19)
02:51:20.921953 xid:cmd ac15bd0d > ffffffff S=6 s=4 (14)
02:51:21.011946 xid:cmd ac15bd0d > ffffffff S=6 s=5 (14)
02:51:21.101954 xid:cmd ac15bd0d > ffffffff S=6 s=* epia hint=0400 [ Computer ] (20)
02:51:23.561956 xid:cmd ac15bd0d > ffffffff S=6 s=0 (14)
02:51:23.651954 xid:cmd ac15bd0d > ffffffff S=6 s=1 (14)
02:51:23.741953 xid:cmd ac15bd0d > ffffffff S=6 s=2 (14)
02:51:23.821214 xid:rsp ac15bd0d < 616e16ee S=6 s=2 x30 hint=0400 [ Computer ] (19)
02:51:23.831953 xid:cmd ac15bd0d > ffffffff S=6 s=3 (14)
02:51:23.921953 xid:cmd ac15bd0d > ffffffff S=6 s=4 (14)
02:51:24.011947 xid:cmd ac15bd0d > ffffffff S=6 s=5 (14)
02:51:24.101962 xid:cmd ac15bd0d > ffffffff S=6 s=* epia hint=0400 [ Computer ] (20)
02:51:26.561956 xid:cmd ac15bd0d > ffffffff S=6 s=0 (14)
02:51:26.651960 xid:cmd ac15bd0d > ffffffff S=6 s=1 (14)
02:51:26.741955 xid:cmd ac15bd0d > ffffffff S=6 s=2 (14)
02:51:26.831975 xid:cmd ac15bd0d > ffffffff S=6 s=3 (14)
02:51:26.921955 xid:cmd ac15bd0d > ffffffff S=6 s=4 (14)
02:51:27.011958 xid:cmd ac15bd0d > ffffffff S=6 s=5 (14)
02:51:27.091183 xid:rsp ac15bd0d < 616e16ee S=6 s=5 x30 hint=0400 [ Computer ] (19)
02:51:27.101948 xid:cmd ac15bd0d > ffffffff S=6 s=* epia hint=0400 [ Computer ] (20) 

24 packets received by filter

次に cat /proc/net/irda/discovery を実行してみます。以下の daddr: にある 0x616e16ee が X30 の IrDA デバイスアドレスです。

IrLMP: Discovery log:

nickname: x30, hint: 0x0400, saddr: 0xac15bd0d, daddr: 0x616e16ee

X30 へ epia から irdaping してみます。

epia:~#irdaping 0x616e16ee
IrDA ping (0x616e16ee): 32 bytes
32 bytes from 0x616e16ee: irda_seq=0 time=104.96 ms.
32 bytes from 0x616e16ee: irda_seq=1 time=104.61 ms.
32 bytes from 0x616e16ee: irda_seq=3 time=104.62 ms.
32 bytes from 0x616e16ee: irda_seq=4 time=104.72 ms.
32 bytes from 0x616e16ee: irda_seq=6 time=104.65 ms.
32 bytes from 0x616e16ee: irda_seq=7 time=104.75 ms.

9 packets received by filter

以上で、IrDA が動作していることがわかります。


参考文献