前回に続いて Raspberry Pi 2 で使えた USB WiFi 2016版です。
少なくとも手元で動作チェックをして動いたものだけをここに記載しています。
オススメできるのは手軽さから自動でドライバを認識するタイプですね。
自分でドライバを入手・ビルドするタイプはなかなかうまくいかないことが多かったです。
なおここで使用している Raspbian は 2016/09版を使用しています。
自動認識できたもの
- GW-USNANO2A (プラネックス)
- WN-G300UA (IO DATA)
GW-USNANO2A は有名ですね。発熱も一番少ないと思っていますし、小型ですし、今も入手可能なので確実にオススメできます。他にも良さそうなものが無いかと探したところ WN-G300UA を発見しました。
これらは装着するだけで動くのでお手軽です。
ドライバを手動でインストール
以下の製品も動作の確認ができました。
注意点として前記事で紹介していたドライバのソースコードとは別のものを使用しています。
- WN-AC433UA (IO DATA)
- WDC-433DU2H (ELECOM)
WN-AC433UA のほうがソースコード改変なく使えるので、より楽かと思われます。
導入方法
カーネルのヘッダ類が必要になるので以下のようにして取得しました。
1 |
$ sudo apt-get install raspberrypi-kernel-headers |
WiFi のドライバソースを取得します。
前回のソースコードとは違い、 https://github.com/diederikdehaas/rtl8812AU.git のほうを使用しました。
1 2 3 |
$ git clone https://github.com/diederikdehaas/rtl8812AU.git $ sudo apt-get install bc dkms $ cd rtl8812AU |
このあとは Readme.md にも書かれているとおりに DKMS の設定をしていきます
1 2 3 4 5 6 7 8 9 10 |
$ sudo su # DRV_NAME=rtl8812AU # DRV_VERSION=4.3.14 # mkdir /usr/src/${DRV_NAME}-${DRV_VERSION} # git archive driver-${DRV_VERSION} | tar -x -C /usr/src/${DRV_NAME}-${DRV_VERSION} # cd /usr/src/${DRV_NAME}-${DRV_VERSION} # vi Makefile # dkms add -m ${DRV_NAME} -v ${DRV_VERSION} # dkms build -m ${DRV_NAME} -v ${DRV_VERSION} # dkms install -m ${DRV_NAME} -v ${DRV_VERSION} |
途中の vi Makefile での編集は以下の部分を変更します。
1 2 |
CONFIG_PLATFORM_I386_PC = n CONFIG_PLATFORM_ARM_RPI = y |
dkms build でエラーとなってしまう場合には、 rtl8812AU のリポジトリで make を実行してみて成功するか確認してみるのもありだとおもいます。
WiFi の設定は wpa_passphrase を使って行います。
以下のようにコマンドを実行して設定ファイルに追記します。
1 |
$ sudo wpa_passphrase SSID key >> /etc/wpa_supplicant/wpa_supplicant.conf |
もし ステルスSSID を使っているようならば、上記の wpa_supplicant.conf を開いて、psk の後にでも以下のようにして scan_ssid=1 を追記します。
1 2 3 4 5 |
network={ ssid="secret-ssid" psk="yyyy" key_mgmt=WPA-PSK scan_ssid=1 |
この設定が終わった後は、 reboot を行います。
ネットワークのサービスの再起動でも動くように記載があるようでしたが、自分の場合にはうまくいきませんでした。USB WiFi を装着後再起動したらうまくいきました。
また、 iwconfig コマンドによる設定も試みましたが、これもうまく動作しなかったのでこのような方法になっています。
WDC-433DU2H の場合の特殊処理
1 |
/usr/src/${DRV_NAME}-${DRV_VERSION} |
この場所にソースコードが展開されていますが、ここのコードを変更する必要があります。
os_dep/linux/usb_intf.c というソースコードを開いて、WDC-433DU2H のためのIDを追記します。
まとめ
今回動作確認ができた製品たちです。発売日がいずれも数年前のものなので、生産終了が心配です。。
コメント
[…] https://blog.techlab-xe.net/archives/5028blog.techlab-xe.net […]