[教學] 啟用 Pi 3B+的WiFi

當拿到 Pi 3B+ 以後,如果安裝目前最新版(2018-03-13)的映像檔開機後,會發現看不到這次改版最大的 WiFi 裝置。

default_pi3_bplus_no_wifi

如果從指令列 ifconfig 也會發現找不到內建的網卡。
default_pi3_bplus_ifconfig

查詢一下原來這次的 release noteswpa_supplicant.conf 的國碼設定拿掉了。

2018-03-13:
* Raspberry Pi 3 B+ support
  * WiFi is disabled until wireless regulatory domain is set (Pi 3 B+ only)
    - The domain can be done through 'Raspberry Pi Configuration' (rc_gui),
      'raspi-config' or by setting 'country=' to an appropriate ISO 3166
      alpha2 country code in /etc/wpa_supplicant/wpa_supplicant.conf.

可以從 sudo raspi-config 選單中設定 WiFi 的國碼即可,步驟如下。
4 Localisation Options > I4 Change Wi-fi Country > TW Taiwan
stretch_raspi_config_localisation
stretch_raspi_config_localisation_change_wifi_country
stretch_raspi_config_localisation_change_wifi_country_tw

完成後再執行 ifconfig 就可以看到 wlan0 出來了。
set_country_pi3_bplus_ifconfig

可以用 iw dev 查看支援的頻段,有到 5GHz 了。

$ iw dev
phy#0
	Unnamed/non-netdev interface
		wdev 0x2
		addr ba:27:eb:18:80:cb
		type P2P-device
		txpower 31.00 dBm
	Interface wlan0
		ifindex 3
		wdev 0x1
		addr b8:27:eb:18:80:cb
		type managed
		channel 165 (5825 MHz), width: 20 MHz, center1: 5825 MHz
		txpower 31.00 dBm

還有 iw list 查看支援的模式。

$ iw list
	Supported interface modes:
		 * IBSS
		 * managed
		 * AP
		 * P2P-client
		 * P2P-GO
		 * P2P-device

如果設定完國碼還看不到 wlan0 這張網卡的話,可以用 rfkill list 確認無線的啟用狀況,看是被軟體或硬體的設定擋住。

$ sudo rfkill list
0: phy0: Wireless LAN
	Soft blocked: yes
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

如果是 phy0Soft blocked: yes,可以用 rfkill unblock wifi 啟用 WiFi 即可。

$ sudo rfkill unblock wifi
$ sudo rfkill list
0: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

另外,原本在 Jessie 使用的 ifconfig wlan0 up,在 Scretch 也不能用了,會出現這樣的訊息。

$ sudo ifconfig wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill

要改為下面的方式啟用/停用網路裝置。

$ ip link set wlan0 up
$ ip link set wlan0 down

或是啟用/停用內建的 WiFi 裝置。

$ sudo rfkill block 0
$ sudo rfkill unblock 0

更多有關 /etc/wpa_supplicant/wpa_supplicant.conf 的參數可以參考這篇

參考資料:
* New Pi3B+ Wireless issues
* Wifi on Raspberry Pi 3
* wpa_supplicant.conf

Leave a Reply

Your email address will not be published. Required fields are marked *


9 × two =


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>