wlan0 on rpi3 not fully functional
The wlan0 interface on the rpi3 isn't fully functional. Running iwconfig reports that wlan0 has no wireless extensions. Running iwlist wlan0 scanning reports that wlan0 doesn't support scanning. However, using wpa_supplicant, it is possible to make a connection to a wifi access point. When a connection with wpa_supplicant is made, I see the following in dmesg:
[ 181.034621] brcmfmac: power management disabled [ 181.035994] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 182.322593] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 183.179543] brcmfmac: brcmf_sdio_hdparse: seq 167: sequence number error, expect 166 [ 183.179868] brcmfmac: brcmf_sdio_hdparse: seq 166: sequence number error, expect 168 [ 183.180441] brcmfmac: brcmf_sdio_hdparse: seq 168: sequence number error, expect 167
When the connection is brought down, I see:
[ 279.871716] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code (0x30 0x30)
I did use iw to set the regulatory domain before starting wpa_supplicant, or running iwconfig/iwlist. I'm not sure what else to do to debug this. I'll be happy to provide any other necessary info.
-
In this case, are you using the armhf or arm64 image?
In any case, you should be using wpa_supplicant, not iw. Also, for ease of use, you can use wpa_passphrase, along with an /etc/wpa_supplicant/wpa_supplicant.conf and /etc/network/interfaces.
Let me know if you need help with setting this up.
-
I'm using the arm64 image. The specific image name is devuan_jessie_1.0.0-beta2_arm64_raspi3.img.xz Thanks for your offer of setting up wpa_supplicant, I already have this going so that all I need to do is ifup wlan0, and ifdown wlan0. I'm sure I can set the regulatory domain with wpa_supplicant (I just haven't looked into this), so I don't really need iw. What I would like is a equivalent to iwlist for scanning available networks, and iwconfig to check the status of wlan0. Is there an easier way that you know of other than launching wpa_supplicant -i wlan0 -g wpa followed by wpa_cli -i wlan0 -g wpa, and looking up the necessary commands?
-
Simply create a file called
wpa_supplicant.conf
in/etc/wpa_supplicant/
and put:country=NL
(where NL is your country code).
Also good to add is:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel
Which will allow users in the
wheel
group to control wifi.Then to autostart all of this, you would do it in
/etc/network/interfaces
If I am not mistaken, it's already commented in that file so please check. -
To add your network to the
wpa_supplicant.conf
you would issue:# wpa_passphrase "networkSSID" "networkPassphrase" >> /etc/wpa_supplicant/wpa_supplicant.conf
-
The above should start wpa_supplicant on every boot. So, provided you are in the
wheel
group, you would just have to runwpa_cli
->scan
->scan_results
. -
Thanks for the country= line, and the scan and scan_results commands for wpa_cli, much appreciated. I'll admit I should have found the time to look at the wpa_supplicant docs more in depth. Anyway, this is a good enough substitute for iw, iwconfig, and iwlist. I will go ahead and close this issue. Thanks again.
-
closed