Get wireless working on N1Phicomm 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):
1 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
:
123 [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
:
12 allow-hotplug wlan0iface wlan0 inet dhcp
The wirelress finally appears:
1234 [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
1234567 # ifconfigwlan0: 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
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):
1 | 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
:
1 2 3 | [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
:
1 2 | allow-hotplug wlan0 iface wlan0 inet dhcp |
The wirelress finally appears:
1 2 3 4 | [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 |
1 2 3 4 5 6 7 | # 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 |