34
36

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Raspberry Pi 3の内蔵WiFiを無効にしてUSB WiFiアダプタを利用する

Last updated at Posted at 2017-04-30

Raspberry Pi 3 Model Bの内蔵WiFiは、個体差があるかもしれませんが割と貧弱なものなので、代わりにいつも外付けのUSB WiFiアダプタ(ELECOM WDC-150SU2MBK)を使っています。
(以前、内蔵WiFiが貧弱なことに気付かないでルーターが壊れてしまったかと思い、ルーターを買い換えてしまいました😭)

今回の記事では、Raspberry Pi 3の内蔵WiFiを無効にする方法と、USB WiFiアダプタを利用してアクセスポイントに接続する方法を紹介します。

(2017/05/10 修正) ifconfig コマンドの代わりに ip コマンドを利用するようにしました。

内蔵WiFiを無効にしてUSB WiFiアダプタを利用する理由

  • 内蔵WiFiはアクセスポイントから少し距離が離れただけで不安定になったりする
  • 内蔵WiFiを無効にしないままUSB WiFiアダプタを利用しようとすると、内蔵WiFiとUSB WiFiアダプタが同時に同一のアクセスポイントに接続する動作をしてしまう
    • Zeroconfを用いたSSH接続(例: ssh pi@raspberrypi.local)などする場合に、内蔵WiFi経由で繋がる可能性もあり、USB WiFiアダプタ経由で繋がるか怪しくなる
    • 内蔵WiFiを利用している分、無駄な電流(実測値0.02A前後)が流れることになる
無効化設定なし(内蔵WiFi + USB WiFiアダプタ) 無効化設定あり(USB WiFiアダプタのみ)
P4300985.jpg P4300981.jpg

動作環境

  • Raspberry Pi 3 Model B
  • USB WiFiアダプタ: ELECOM WDC-150SU2MBK
    • Raspbian上で追加のドライバが不要
    • 安価(700〜800円程度)
    • チャンネル 2.4GHz : 1~13ch
    • 内蔵WiFiよりもちゃんと電波が飛び、安定している印象です

内蔵WiFiを無効にする

ELECOM WDC-150SU2MBKをRaspberry Piに挿入していない状態から始めていきます。

まず、有線LANでSSH接続をします(Raspberry PiとMac or Windows PCを有線で直接繋いでさくっとSSH接続するなどを参照)

内蔵WiFiを無効にする前に、 ip link show を確認してみます

Raspbian
pi@raspberrypi:~ $ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether b8:27:eb:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DORMANT group default qlen 1000
    link/ether b8:27:eb:xx:xx:xx brd ff:ff:ff:ff:ff:ff

wlan0 があるはずです(ない場合は、お持ちのボードが実はRaspberry Pi 2 Model Bなどだったりするかもしれません。2であっても同様の設定でWDC-150SU2MBKを利用できます)

以下のコマンドをRaspbian上で実行し、 /etc/modprobe.d/raspi-blacklist.conf に内蔵WiFiを無効にする設定を追記します

cat << EOF | sudo tee -a /etc/modprobe.d/raspi-blacklist.conf
#wifi
blacklist brcmfmac
blacklist brcmutil
EOF

ここで ip link show してもまだ wlan0 が出てきますので、再起動をします

Raspbian
pi@raspberrypi:~ $ sudo reboot

再度、有線LANでSSH接続し、 ip link showwlan0 がないことを確認してみましょう

Raspbian
pi@raspberrypi:~ $ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether b8:27:eb:xx:xx:xx brd ff:ff:ff:ff:ff:ff

WDC-150SU2MBKをRaspberry Piに挿入

いったんシャットダウンをします

Raspbian
pi@raspberrypi:~ $ sudo halt

WDC-150SU2MBKをRaspberry Piに挿入し、再度電源を投入します。
有線LANでSSH接続し、 ip link show を確認します

Raspbian
pi@raspberrypi:~ $ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether b8:27:eb:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
    link/ether bc:5c:4c:xx:xx:xx brd ff:ff:ff:ff:ff:ff

wlan0 がまた出てきましたが、link/etherの右に書いてあるMACアドレスが先ほどのものと異なっているはずです。
MACアドレスの先頭6桁はベンダー識別子となっており、 b8:27:eb がRaspberry Pi Foundationの識別子、 bc:5c:4c がELECOMの識別子となっています(https://mac.uic.jp/ で確認できます)

b8:27:eb bc:5c:4c
b827eb.png bc5c4c.png

SSIDとパスフレーズを設定する

内蔵WiFiもですが、WDC-150SU2MBKは2.4GHz帯のみ利用できます。
ルーターのデフォルトの設定では、2.4GHz帯のSSIDにはgやGといった文字が含まれていることが多いです。

(ssid), (passphrase) を置き換えて以下のコマンドをRaspbian上で実行します

sudo sh -c 'wpa_passphrase (ssid) (passphrase) | grep -v "#psk=" >> /etc/wpa_supplicant/wpa_supplicant.conf'

パスフレーズがない場合は、Life with IT - Raspberry Pi 3でパスフレーズなしのWi-Fiアクセスポイントに接続する設定(Raspbian Jessie Lite)を見て設定してください(自己責任でお願いします)

WiFi経由の接続に切り替える

再起動をし、有線LANのケーブルを抜きます

Raspbian
pi@raspberrypi:~ $ sudo reboot

PCとRaspberry Piが同じネットワークに繋がっていて、適切に設定されていればZeroconfを用いるかRaspberry Piに割り当てられたIPアドレスを調べるなどしてSSH接続ができるはずです

macOS
$ ssh pi@raspberrypi.local

参考サイト

Raspberry Pi 公式フォーラム - How to disable the Pi3's WLAN & Bluetooth ?

34
36
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34
36

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?