Back to Raspberry Pi Taiwan

【教學/基礎】啟用 Pi 3B+ 的 WiFi

Last Updated on 2022 年 8 月 19 日 by 小編

Pi 3B+ 預設 WiFi 沒有啟用

安裝 Raspbian 2018-03-13 的映像檔 WiFi 預設沒有顯示

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

ifconfig

如果從指令列 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.

 

啟用 Pi 3B+ 的 WiFi 方法

可以從 sudo raspi-config 選單中設定 WiFi 的國碼即可,步驟如下。

4 Localisation Options > I4 Change Wi-fi Country > TW Taiwan

stretch_raspi_config_localisation

stretch_raspi_config_localisation

stretch_raspi_config_localisation_change_wifi_country

stretch_raspi_config_localisation_change_wifi_country_tw
 

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

再次執行 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

 

使用 RFKill 子系統檢查 RF 狀態

如果設定完國碼還看不到 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 的參數可以參考這篇
 

啟用 Pi 3B+ 的 WiFi 參考資料

* New Pi3B+ Wireless issues
* Wifi on Raspberry Pi 3
* wpa_supplicant.conf

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Back to Raspberry Pi Taiwan