11acなLinux Wifi
LinuxなWifi環境に、802.11acなPLANEXのGW-450DとELECOMのWDC-433SU2MBKを動かす為のメモを追加。
| 製品名 | VID:PID | コントローラ | ドライバ | 使用可否 |
|---|---|---|---|---|
| GW-US54GXS | 2019:5303 | zd1211b | zd1211rw | ○ |
| GW-USMicroN | 2019:ed14 | RT3070 | - | × |
| GW-USWExtreme | 2019:ed17 | RTL8188CUS | rtl8192cu | ○ |
| GW-US300MiniS | 2019:ab24 | RT2870 | rt2800usb | ○ |
| WLI-UC-GN | 0411:015d | RT3070 | rt2800usb | ○ |
| WLI-UC-GNM | 0411:01a2 | RT8070 | rt2800usb | ○ |
| WLI-UC-GNM2 | 0411:01ee | RT3070 | rt2800usb | ○ |
| WDC-433SU2M | 7392:b711 | MT7610U | mt7650u | △ |
| GW-450D | 2019:ab31 | MT7610U | mt7650u | △ |
ちなみにGW-450D KATANAもUSBデバイス情報は全く同じなのでGW-450Dのアンテナ強化版という事になるらしい。逆にWDC-433SU2MBKと同じ5GHz専用の超小型版であるGW-450Sの方は"RTL8811AU"というのは意外だった。こちらはPLANEX GW-450S 手裏剣を Ubuntu 14.04 で使用するが参考になりそうだ。
取り敢えずUbuntuでELECOMのWi-FiアダプタWDC-433SU2Mを使うを参考にトライしてみたが、GW-450Dを認識して"ra0"インタフェースはできるものの一向にリンクアップする気配が無い。Elecom WDC-433SU2Mで802.11acな通信を実現したのかわからないけどとりあえず動いたによると、大変残念な事にMediaTek提供のMT7610U USBドライバはx86-64非対応という事らしい。
しかし、x86_64 Linux上でELECOM WDC-433SU2Mを用いて802.11acな通信を実現するによると、有志によるx86-64対応のforkが公開されているという事なので、https://bitbucket.org/sanrath/mediatek_mt7610u_sta_driver_linux-64bit.gitから入手し、下記の修正を適用してUbuntu 14.04.2 LTS (Trusty Tahr)のdesktop(AMD64)で動作させる事ができた。
diff --git a/Makefile b/Makefilebuild手順は以下の通り。
index 25d87aa..72eab8e 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ endif
# rt8592(for rt85592), mt7650e, mt7630e, mt7610e, mt7650u, mt7630u, mt7610u
ifeq ($(CHIPSET),)
-CHIPSET = mt7610u
+CHIPSET = mt7650u mt7630u mt7610u
endif
MODULE = $(word 1, $(CHIPSET))
@@ -195,8 +195,10 @@ CROSS_COMPILE = mips-wrs-linux-gnu-
endif
ifeq ($(PLATFORM),PC)
+# Linux 3.x
+LINUX_SRC = /usr/src/linux-headers-$(shell uname -r)
# Linux 2.6
-LINUX_SRC = /lib/modules/$(shell uname -r)/build
+# LINUX_SRC = /lib/modules/$(shell uname -r)/build
# Linux 2.4 Change to your local setting
#LINUX_SRC = /usr/src/linux-2.4
LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/
diff --git a/common/rtusb_dev_id.c b/common/rtusb_dev_id.c
index 061362a..2fcab21 100644
--- a/common/rtusb_dev_id.c
+++ b/common/rtusb_dev_id.c
@@ -38,6 +38,8 @@ USB_DEVICE_ID rtusb_dev_id[] = {
#ifdef MT76x0
{USB_DEVICE(0x148F,0x7610)}, /* MT7610U */
{USB_DEVICE(0x13B1,0x003E)}, /* MT7610U */
+ {USB_DEVICE(0x7392,0xb711)}, /* ELECOM WDC-433SU2M */
+ {USB_DEVICE(0x2019,0xAB31)}, /* PLANEX GW-450D/KATANA */
{USB_DEVICE_AND_INTERFACE_INFO(0x0E8D, 0x7630, 0xff, 0x2, 0xff)}, /* MT7630U */
{USB_DEVICE_AND_INTERFACE_INFO(0x0E8D, 0x7650, 0xff, 0x2, 0xff)}, /* MT7650U */
#endif
diff --git a/conf/RT2870STA.dat b/conf/RT2870STA.dat
index 0240bd5..172df59 100644
--- a/conf/RT2870STA.dat
+++ b/conf/RT2870STA.dat
@@ -1,12 +1,12 @@
#The word of "Default" must not be removed
Default
-CountryRegion=5
-CountryRegionABand=7
-CountryCode=
+CountryRegion=1
+CountryRegionABand=1
+CountryCode=JP
ChannelGeography=1
-SSID=11n-AP
+SSID=
NetworkType=Infra
-WirelessMode=8
+WirelessMode=14
EfuseBufferMode=0
Channel=0
BeaconPeriod=100
yano@T60:~$ git clone https://bitbucket.org/sanrath/mediatek_mt7610u_sta_driver_linux-64bit.gitPLANEXのGW-450Dを差してみたところ、
yano@T60:~$ cd ~/mediatek_mt7610u_sta_driver_linux-64bit
yano@T60:~/mediatek_mt7610u_sta_driver_linux-64bit$ ~~ 上記差分の適用 ~~
yano@T60:~/mediatek_mt7610u_sta_driver_linux-64bit$ make
yano@T60:~/mediatek_mt7610u_sta_driver_linux-64bit$ sudo make install
yano@T60:~$ lsmod | grep mt7650u_sta…という事でmt7650u_staドライバがロードされて"ra0"インタフェースができていれば良い。リンク速度は"433.5 Mb/s"と11acなりに動いてるらしい事はわかったので、試しに"WirelessMode=9"で11g/nにしてやり直したところ、
mt7650u_sta 145174 0
yano@T60:~$ iwconfig ra0
ra0 Ralink STA ESSID:"1F11a-TESTWIFI" Nickname:"MT7610U_STA"
Mode:Managed Frequency=5.22 GHz Access Point: 00:22:CF:E3:26:39
Bit Rate=433.5 Mb/s
RTS thr:off Fragment thr:off
Link Quality=100/100 Signal level:-56 dBm Noise level:-92 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
yano@T60:~$
yano@T60:~$ iwconfig ra0…という事でリンク速度は"135 Mb/s"となったものの、どちらのモードでもiperfで70~90Mbps程度のスループットとなった。
ra0 Ralink STA ESSID:"1F11b-TESTWIFI" Nickname:"MT7610U_STA"
Mode:Managed Frequency=2.457 GHz Access Point: 00:22:CF:E3:26:36
Bit Rate=135 Mb/s
RTS thr:off Fragment thr:off
Link Quality=100/100 Signal level:-32 dBm Noise level:-68 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
yano@T60:~$