I have to set this up headless because I didn't realize the Zero W had mini HDMI and not micro.
So I flashed both the 2017-04-10 Raspbian light and full from Linux (with dd) and then mounted the FAT partition and dropped in the ssh
file and a wpa_supplicant.conf
file (see below) and booted it. I've tried dozens of other ways of configuring it including changes to /etc/network/interfaces
and so on (including wireless-power off
) but no matter what, whenever I remount the card later to view /var/log/syslog
it always has the same failure pattern:
Apr 10 10:09:45 raspberrypi kernel: [ 8.091048] usbcore: registered new interface driver brcmfmac
Apr 10 10:09:45 raspberrypi kernel: [ 8.512291] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: May 27 2016 00:13:38 version 7.45.41.26 (r640327) FWID 01-df77e4a7
Apr 10 10:09:45 raspberrypi kernel: [ 8.565794] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
Apr 10 10:09:45 raspberrypi kernel: [ 10.473404] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
Apr 10 10:09:45 raspberrypi kernel: [ 10.473440] cfg80211: World regulatory domain updated:
Apr 10 10:09:45 raspberrypi kernel: [ 10.473450] cfg80211: DFS Master region: unset
Apr 10 10:09:45 raspberrypi kernel: [ 10.473460] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473474] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473488] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz, 92000 KHz AUTO), (N/A, 2000 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473499] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473513] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473525] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473536] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473546] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 10.473557] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
Apr 10 10:09:45 raspberrypi kernel: [ 12.357882] random: nonblocking pool is initialized
Apr 10 10:09:45 raspberrypi kernel: [ 15.673973] brcmfmac: brcmf_sdio_kso_control: max tries: rd_val=0x0 err=0
Apr 10 10:09:45 raspberrypi kernel: [ 15.674038] brcmfmac: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Apr 10 10:09:45 raspberrypi kernel: [ 15.674166] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.674348] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.674527] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.674668] brcmfmac: brcmf_sdio_dpc: failed backplane access over SDIO, halting operation
Apr 10 10:09:45 raspberrypi kernel: [ 15.674767] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.674955] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.675116] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Apr 10 10:09:45 raspberrypi kernel: [ 15.675251] brcmfmac: brcmf_sdio_dpc: failed backplane access over SDIO, halting operation
And then later during boot:
Apr 10 10:09:54 raspberrypi dhcpcd[376]: wlan0: if_up: Input/output error
Apr 10 10:09:54 raspberrypi dhcpcd[376]: wlan0: waiting for carrier
Apr 10 10:09:54 raspberrypi wpa_supplicant[373]: Could not set interface wlan0 flags (UP): Input/output error
Apr 10 10:09:54 raspberrypi wpa_supplicant[373]: nl80211: Could not set interface 'wlan0' UP
Apr 10 10:09:54 raspberrypi wpa_supplicant[373]: Could not set interface wlan0 flags (UP): Input/output error
Apr 10 10:09:54 raspberrypi wpa_supplicant[373]: WEXT: Could not set interface 'wlan0' UP
Apr 10 10:09:54 raspberrypi wpa_supplicant[373]: wlan0: Failed to initialize driver interface
Apr 10 10:09:54 raspberrypi systemd[1]: Started /etc/rc.local Compatibility.
Apr 10 10:09:54 raspberrypi systemd[1]: Starting Terminate Plymouth Boot Screen...
Apr 10 10:09:54 raspberrypi systemd[1]: Starting Hold until boot process finishes up...
Apr 10 10:09:54 raspberrypi ifup[347]: /etc/network/if-pre-up.d/wpasupplicant: 120: /etc/network/if-pre-up.d/wpasupplicant: cannot create /dev/stderr: No such device or address
Apr 10 10:09:54 raspberrypi ifup[347]: run-parts: /etc/network/if-pre-up.d/wpasupplicant exited with return code 1
Apr 10 10:09:54 raspberrypi ifup[347]: Failed to bring up wlan0.
(Those timestamps are nonsense because it's never had the time set properly, of course.)
I am using a quality 2A power supply and my wpa_supplicant.conf
(installed via /boot
copying or manually) currently looks like this (I doubt this matters since the driver is failing early):
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="YSN2"
psk="<plaintext not shown>"
key_mgmt=WPA-PSK
}
I tried smaller and larger such files until I noticed the lower-level errors.
I've reflashed multiple times, rebooted many times, etc.
I've tried Philip Ashmore's answer but it just seems to clean up the logs; the root problem appears to be the driver errors about "sdio" and the -110 timeouts.
I've tried the older 2017-03-02-raspbian-jessie-lite
release as well and the logs are the same.
Is my device faulty? Is the latest firmware broken (the OS image I used is 2 months old, so I hope not)?