Get wireless working on N1

Phicomm N1 uses BCM4345/6. The driver for that chip should come with kernel and needs no extra steps. It’s the firmware that is missing.

Hence the firmware should be installed first (from non-free repo):

apt install firmware-brcm80211

But that only contains brcm/brcmfmac43455-sdio.bin. For the chip to work, it also needs a file named brcm/brcmfmac43455-sdio.txt:

[Sun Jan 13 00:00:00 2019] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[Sun Jan 13 00:00:00 2019] usbcore: registered new interface driver brcmfmac
[Sun Jan 13 00:00:00 2019] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.txt failed with error -2

From a question on askubuntu, this file could be obtained from khadas’s GitHub.

After putting the file into /lib/firmware/brcm/brcmfmac43455-sdio.txt, and enable the wlan0 by adding configs to /etc/network/interfaces.d/wlan0:

allow-hotplug wlan0
iface wlan0 inet dhcp

The wirelress finally appears:

[Sun Jan 13 00:00:00 2019] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[Sun Jan 13 00:00:00 2019] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.clm_blob failed with error -2
[Sun Jan 13 00:00:00 2019] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[Sun Jan 13 00:00:00 2019] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Mar  1 2015 07:29:38 version 7.45.18 (r538002) FWID 01-00000000
# ifconfig
wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:11:22:33:44:55  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Leave a Reply

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