2012年10月12日金曜日

[.tested] Planex BT-Micro3H2X Bluetooth+無線LANコンポアダプタ [AX3][A6]



Planex BT-Micro3H2Xは、Bluetooth3.0+HSおよび、Wifi 802.11b/g/nに対応したコンポタイプのアダプタです。Openblocks AX3およびA6での動作検証を行いました。


OBDN技術ブログによる動作検証は、該当するデバイスの動作を保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。


<検証環境>
OpenBlocks AX3/4 Debian 6.0 kernel: 3.0.6
OpenBlocks A6 Debian 6.0 kernel: 2.6.31.8

1. 対応ドライバと事前準備
本デバイスは、BluetoothにCSR8510、WifiにRealtek8192CUを使用しています。2つのデバイスは、1つの複合デバイスとしてではなく、内部にHubを介して接続されていますので、それぞれにドライバを組み込みます。(内部Hubは接続階数にカウントされます)

本作業解説に入る前に、先に結果だけを書きます。
Wifi部の8192CUは、以下の手順による動作を確認しました。
( AX3のカーネル3.0.6およびcompat-wirelessに含まれる8192cu.koでは動作しません。)
Bluetooth部のCSR8510は、デバイスの認識を確認しましたが、bluezによる一連の操作での検証では、うまく動作していません。

・Wifi部のドライバ導入方法
Realtek社のWebページより、ドライバのソースコードパッケージを入手し、ビルドして検証を行いました。

Software: Drivers & Utilities / RTL8192CU

RTL8192CUの、Linux Kernel 2.6.18~2.6.38 and Kernel 3.0.8 の項目にあるリンクからドライバパッケージをダウンロードします。
ダウンロードしたファイルは以下の手順で解凍してください。

# unzip RTL819xC_USB_linux_v3.4.4_4749.20120806.zip

このパッケージは、ターゲットが対応する機器ならば、作成されたディレクトリへ移動し、
install.shによりインストールが行えるのですが、Openblocksは対応機器にありませんので、
以下の手順によりドライバパッケージのコンパイルおよびインストールを行います。

# cd RTL8188C_8192C_USB_linux_v3.4.4_4749.20120806/
# cd driver
# tar xvzf rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
# cd rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730

Makefileを編集します。
同じバージョンのドライバパッケージを使用する場合は、以下のdiff出力をpatch適用して下さい。
アップデートにより内容が変更されている場合は、参考にして書き換えてください。

# diff -u Makefile.orig Makefile
--- Makefile.orig       2012-10-10 13:02:18.721606504 +0900
+++ Makefile    2012-10-10 13:02:31.901614134 +0900
@@ -36,7 +36,8 @@
 CONFIG_RTL8192CU_REDEFINE_1X1 =n
 CONFIG_WAKE_ON_WLAN                            =       n

-CONFIG_PLATFORM_I386_PC = y
+CONFIG_PLATFORM_I386_PC = n
+CONFIG_PLATFORM_OBS_ARM = y
 CONFIG_PLATFORM_TI_AM3517 = n
 CONFIG_PLATFORM_ANDROID_X86 = n
 CONFIG_PLATFORM_ARM_S3C2K4 = n
@@ -254,6 +255,17 @@
 CROSS_COMPILE ?=
 KVER  := $(shell uname -r)
 KSRC := /lib/modules/$(KVER)/build
+MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
+INSTALL_PREFIX :=
+endif
+
+ifeq ($(CONFIG_PLATFORM_OBS_ARM), y)
+EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
+SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
+ARCH ?= arm
+CROSS_COMPILE ?=
+KVER  := $(shell uname -r)
+KSRC := /lib/modules/$(KVER)/build
 MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
 INSTALL_PREFIX :=
 endif


変更後、make および installを行います。

# make install

ドライバは、
/lib/modules/2.6.31/kernel/drivers/net/wireless/
の下にコピーされ、depmod -aされます。
不要になり、削除する場合は、8192cu.koを削除し、depmod -aして下さい。
なお、ダウンロードしたパッケージは標準状態では非常に多くのデバッグメッセージを出しますので、
気になる場合は、include/autocong.hの一連のデバッグ関係のdefineをコメントアウトしてください。

デバイスをUSBポートに差し込めば認識します。
dmesgは以下の通りです。

usb 1-1: new high speed USB device number 2 using ehci_marvell
usb 1-1: New USB device found, idVendor=05e3, idProduct=0608
usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
usb 1-1: Product: USB2.0 Hub
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
usb 1-1.2: new high speed USB device number 3 using ehci_marvell
usb 1-1.2: New USB device found, idVendor=2019, idProduct=1201
usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.2: Product: BT-Micro3H2X Wireless LAN
usb 1-1.2: Manufacturer: Realtek
usb 1-1.2: SerialNumber: 00e04c000001
usb 1-1.4: new full speed USB device number 4 using ehci_marvell
usbcore: registered new interface driver rtl8192cu


デバイスは、

/dev/wlan0

となります。

・Bluetooth部のドライバ導入方法
bluetoothドライバは、AX3、A6ともに、カーネルパッケージにドライバが含まれており、AX3、A6ともに出荷状態で有効になっています。

dmesgでは以下の様に表示されます。

usb 1-1: new high speed USB device number 2 using ehci_marvell
usb 1-1: New USB device found, idVendor=05e3, idProduct=0608
usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
usb 1-1: Product: USB2.0 Hub
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
usb 1-1.2: new high speed USB device number 3 using ehci_marvell
usb 1-1.2: New USB device found, idVendor=2019, idProduct=1201
usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.2: Product: BT-Micro3H2X Wireless LAN


usb 1-1.4: New USB device found, idVendor=0a12, idProduct=0001
usb 1-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0
usb 1-1.4: Product: CSR BS8510
Bluetooth: Generic Bluetooth USB driver ver 0.6
usbcore: registered new interface driver btusb


2. wpasupplicantパッケージの導入およびインタフェースの設定

以下の記事を参照して下さい。

[.tested] Logitec LAN-W150N/U2WH(BK) 無線LANアダプタ [AX3]

上記のドライバにより、AX3、A6においてクライアントモードでの動作を確認しました。

3. hostapdによるAP設定

以下の記事を参照してください。

[.tested] Planex GW-USFang300 無線LANアダプタ [AX3][A6] 

reaktekのドライバパッケージに付属したhostapdによりAP構築し、接続を確認しました。

4. Bluetoothでの接続検証

以下の記事と同様の操作により接続検証を行いましたが、ペアリングの段階でほぼ失敗します。

【.tested】Logitec製 Bluetoothアダプタ (LBT-UAN03C1BK) [AX3]

これはドライバによる問題であるのか、bluezによる問題であるのかの切り分けが出来ていません。
本インタフェースは、gnomeによるパネルでのペアリングは出来ますので、simple-agentを使用しなければリトライによりペアリングは完了すると思れます。
また、ペアリングの段階で不安定であるため、マウス、キーボードでのテストはまだ行っていません。

0 件のコメント:

コメントを投稿