Total: - (Today: - Yesterday: - )
このページはLOGITEC LAN-WN11/U2WM (Ralink RT3070L)をubuntu 11.04でのXLinkKai用として使えるようにセットアップしたときのメモを元に作成しました。試したPSPゲームはMONSTER HUNTER PORTABLE 3rdです。LAN-WN11/U2WMはウォークマン用として販売されているアダプタですが、XLinkKai用として問題なく使えました。赤いから3倍速い!!かもしれません(笑)。
1.XLinkKai環境作成時の情報
$ uname -a
Linux ubuntu 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 i686 i686 i386 GNU/Linux
- LAN-WN11/U2WMをPCに取り付けて、VenderIDとProductIDを確認します
$ lsusb
Bus 001 Device 002: ID 0789:0164 Logitec Corp. LAN-W150/U2M Wireless LAN Adapter
2.事前準備 - ubuntuに含まれるrt2870staドライバは使わないようにする -
ubuntu 11.04はLAN-WN11/U2WMを認識すると自動的にrt2870staドライバをロードしていました。しかし、ubuntu 11.04に含まれるrt2870staドライバはXLinkKai用としては使えません。ubuntu 11.04がこれらのドライバをロードしないよう設定します。
- rt2870staドライバを未使用状態にするためインタフェース"wlan0"をダウンします
$ sudo ifconfig wlan0 down
$ lsmod | grep rt2
rt2870sta 410104 0
rt2800usb 17907 0
rt2800lib 43824 1 rt2800usb
crc_ccitt 12595 2 rt2870sta,rt2800lib
rt2x00usb 19693 1 rt2800usb
rt2x00lib 39075 3 rt2800usb,rt2800lib,rt2x00usb
mac80211 257001 3 rt2800lib,rt2x00usb,rt2x00lib
$ sudo modprobe -r rt2870sta
$ sudo modprobe -r rt2800usb
$ lsmod | grep rt2
- 次から自動でロードされないようにblacklistに追加しておきます
$ sudo vi /etc/modprobe.d/blacklist.conf
56
57 blacklist rt2870sta <= この行を追加しました
58 blacklist rt2800usb <= この行を追加しました
- 不要なエントリを削除します、この例では以下の10〜11行目の2行を削除しました
$ sudo vi /etc/udev/rules.d/70-persistent-net.rules
10 # USB device 0x0789:0x0164 (usb)
11 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:01:8e:??:??:??", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
- 念を入れるなら、この段階でubuntuを再起動してrt2870staドライバがロードされないことを確認しておくのも良いかもしれません
3.Ralink RT3070ドライバのビルドとubuntuへのインストール
Kai用として機能するRT3070STAドライバのソースコードを入手して、Kai用に修正していきます。
この例ではviを使ってますが、nanoやgeditなど自分が操作しやすいエディタを使いましょう。
$ cd ~/Downloads
$ tar xvf 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO.tar.bz2
$ cd 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/
- LAN-WN11/U2WMのVID:PIDを追加します
$ vi common/rtusb_dev_id.c
106 {USB_DEVICE(0x0789,0x0166)}, /* Edimax */
107 {USB_DEVICE(0x0789,0x0164)}, /* LOGITEC LAN-WN11/U2WM */ <= この行を追加しました
108 #endif /* RT3070 */
$ vi os/linux/usb_main_dev.c
39 MODULE_DESCRIPTION("RT2870 Wireless Lan Linux Driver");
40 MODULE_LICENSE("GPL"); <= この行を追加します
41 #ifdef CONFIG_STA_SUPPORT
$ vi os/linux/config.mk
10 # Support XLINK mode
11 HAS_XLINK=y <= "n" を "y"に変更します
12
13 # Support Wpa_Supplicant
14 HAS_WPA_SUPPLICANT=y <= "n" を "y"に変更します
15
16 # Support Native WpaSupplicant for Network Maganger
17 HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y <= "n" を "y"に変更します
...
218 CHIPSET_DAT = 3070 <= "2870" を "3070"に変更します
- ファイルパス情報を修正します
- RT2870のままでも良いのですが、LAN-WN11/U2WMを殻割して中を確認したところチップはRT3070Lだったので、意地でもRT3070にしてみました
$ vi include/os/rt_linux.h
130 #define STA_PROFILE_PATH "/etc/Wireless/RT3070STA/RT3070STA.dat" <= "2870"を"3070"に変更
131 #define STA_DRIVER_VERSION "2.5.0.1"
- ファイル名を変更して、インタフェースの初期値を設定します、RT2870 => RT3070
$ mv RT2870STA.dat RT3070STA.dat
$ vi RT3070STA.dat
7 SSID=PSP_AULJM05800_L_MHP3Q000 <= MHP3rdの集会浴場01の場合"PSP_AULJM05800_L_MHP3Q000"
8 NetworkType=Adhoc <= "Infra" を "Adhoc"に変更します
...
10 Channel=1 <= PSPチャンネル設定(1, 6, 11のいずれか)と一致させます
...
73 PSP_XLINK_MODE=1 <= "0" を "1"に変更します
- Makefile.cleanを修正します
- ubuntu、debianのとき行を追加します(/bin/sh => /bin/dashのため)
- fedora、openSUSE、slackwareでは行追加は不要です(/bin/sh => /bin/bashのため)
$ vi os/linux/Makefile.clean
1 SHELL=/bin/bash <= この行を追加します
...
$ vi Makefile
386 else
387 #cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko /tftpboot <= この行をコメントにします
388 ifeq ($(OSABL),YES)
$ make clean && make
...
Building modules, stage 2.
MODPOST 1 modules
LD [M] /home/$USER/Downloads/2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/os/linux/rt3070sta.ko
...
$ sudo make install
...
install -d /lib/modules/2.6.38-8-generic/kernel/drivers/net/wireless/
install -m 644 -c rt3070sta.ko /lib/modules/2.6.38-8-generic/kernel/drivers/net/wireless/
/sbin/depmod -a 2.6.38-8-generic
...
4.RT3070ドライバを使う
RT3070ドライバをロードして、アダプタを使えるようにします。
- RT3070ドライバをロードします、ついでにモジュール情報も確認しておきます
$ sudo modprobe rt3070sta
$ lsmod | grep rt3070
rt3070sta 584223 1
$ modinfo rt3070sta | head -5
filename: /lib/modules/2.6.38-8-generic/kernel/drivers/net/wireless/rt3070sta.ko
version: 2.5.0.1
license: GPL
description: RT2870 Wireless Lan Linux Driver
...
$ sudo ifconfig ra0 up
$ ifconfig ra0
ra0 Link encap:Ethernet HWaddr 00:01:8e:??:??:??
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:4459 errors:0 dropped:0 overruns:0 frame:0
TX packets:65 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1089605 (1.0 MB) TX bytes:6500 (6.5 KB)
$ iwconfig ra0
ra0 Ralink STA ESSID:"PSP_AULJM05800_L_MHP3Q000" Nickname:"RT2870STA"
Mode:Ad-Hoc Frequency=2.412 GHz Cell: AA:26:31:??:??:??
Bit Rate:1 Mb/s
RTS thr:off Fragment thr:off
Link Quality=10/100 Signal level:0 dBm Noise level:0 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
- ESSIDやMODEが設定されない場合にはRT3070ドライバをアンロードして、もう一度ロードしてみる
$ sudo ifconfig ra0 down
$ sudo modprobe -r rt3070sta
$ sudo modprobe rt3070sta
- ESSIDやMODEが設定されない場合には手動で設定してみる
$ sudo iwconfig ra0 channel 1
$ sudo iwconfig ra0 essid PSP_AULJM05800_L_MHP3Q000
$ sudo iwconfig ra0 mode Ad-hoc
- ここまで設定できたら、Kaiを起動してKaiConfigのNetwork Adapter="ra0"を選択して、設定保存しておきます
5.PSPと無線接続する
PSPとの無線接続操作にはGUIツールが便利ですが、個々の環境によって動作が不安定な場合(PSPとつながらない)もあります。各自の環境に合わせて動作するツールを使ってください。
5.1.PSPとの接続にNetworkManagerを使用する場合
ubuntu標準のネットワーク設定ツールを使った接続方法です。
- NetworkManagerでPSPのSSIDが表示されたら、PSPへの接続を試みます
- NetworkManager「接続を編集する」を選んで「無線」タブを表示し「Auto_PSP_AULJM05800_L_MHP3Q000」を編集します
- 「IPv4セッティング」タブを表示、方式「ローカルへのリンク専用」を選んで設定を保存します
- NetworkManagerから「接続を確立しました」と通知されればOK
5.2.PSPとの接続にRutilTを使用する場合
RutiltはWindowsでXLinkKaiしたことのあるユーザーなら親しみやすい画面構成です。
$ sudo apt-get install rutilt
- NetworkManager側の無線LANを無効化します
$ /usr/bin/dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:false
- Rutiltを起動して、Site Surveyタブを表示、Scanします
- 一覧にPSPのSSIDが表示されたら、そのSSIDを選んで接続しましょう
以上でubuntu 11.04へのLAN-WN11/U2WMのセットアップ例は終わり。
コメント
- 新規作成 -- kar (2011-05-05 10:03:31)
- Makefile.cleanファイル修正内容を追加 -- kar (2011-05-13 21:04:08)
最終更新:2011年05月14日 00:06