RTL8188CUS on Linux

Facebooktwittergoogle_plustumblrmail
近所の電気屋で 299NTD
Realtek の RTL8188CUS は、とても小さい USB-Wifi アダプタ。
  • idVendor = 0x0bda
  • idProduct = 0x8176
自宅の Ubuntu 12.04 (Precise) では差せば動作するが、 会社の Ubuntu 11.04 (Natty) ではそうはいかなかったので、 ここではそのセットアップ方法を説明。
Realtek から最新の Linux ドライバソースをダウンロードしてくる (→このへん) 。ページ内で 8188 なんかで検索すると見つかる。現時点での最新版は RTL819xC_USB_linux_v3.4.4_4749.20120806.zip 。
このソースコードの中には、実は Android 用の make ファイルも入っている。 rootfs から作る環境がある人向けだけれども、こういうのが入っていると買って良かったと思う。丁度 BeagleBoard-xM に Wifi が無くて困ってた所だし。だけれども今時間が無いから、まだ試していない、残念。

$ unzip RTL819xC_USB_linux_v3.4.4_4749.20120806.zip
$ cd RTL8188C_8192C_USB_linux_v3.4.4_4749.20120806/driver
$ tar xvf rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
$ cd rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730
$ make

これで 8192cu.ko が作れた。これをインストールする。
$ sudo cp 8192cu.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless
$ sudo depmod -a

ここまでやると、試験的に動作させる事ができる。以下の様に :
$ sudo modprobe 8192cu

で動いたのなら、次回以降、起動後に挿したらすぐ認識させたい。まずは udev の設定をする。ここでは仮に 99-wireless.rules というファイルを作ってそこへ設定を書く。
$ vim /etc/udev/rules.d/99-wireless.rules

99-wireless.rules の内容は以下の様に :
ACTION=="add",SUBSYSTEM=="usb",ATTR{idVendor}=="0bda",ATTR{idProduct}=="8176",RUN+="/sbin/modprobe -qba 8192cu.ko"

次に modprobe された時の挙動を設定する。ここでは仮に wireless.conf というファイルを作って、そこに設定を書く。
$ sudo vim /etc/modprobe.d/wireless.conf

wireless.conf の内容は以下の様に :
install 8192cu /sbin/modprobe --ignore-install 8192cu $CMDLINE_OPS; /bin/echo "0bda 8176" > /sys/bus/usb/drivers/rtl8192cu/new_id

最後に、リブートすれば自動認識するようになっているはず。

References

2012-Nov-26 追記

会社のマシンを Ubuntu 12.10 (Quantal Quetzal) に更新したんですが、 Adhoc モードでは繋がるのに Access Point へは繋がらなかったり、なんか変な状態に。仕方が無いのでやっぱり自分でドライバを make してインストールしました。

Ubuntu 12.10 ではもともとの状態で RTL8188CUS を認識してくれるので、 /etc/udev/rules.d の編集の所はやらないで OK 。その代わり、元から入っている RTL8192CU 用ドライバをロードしないようにする為、 /etc/modprobe.d/blacklist.conf を編集しました (http://www.r-statistics.com/2011/11/edimax-ew-7811un-usb-wireless-connecting-to-a-network-on-ubuntu-11-10/) 。

$ sudo vi /etc/modprobe.d/blacklist.conf

##
## 2012-Nov-26 KOKUBU,Yusuke
## for RTC8192 USB WIFI driver
##
blacklist rtl8192cu
Facebooktwittergoogle_plustumblrmail
Yusuke Dada K.
Yusuke Dada K.
台湾の現地企業で主に組み込みソフトウエアの研究開発をしている日本人です。我人是個日本人,負責軟體的研究開發。在臺灣的科技公司工作。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です