Sunday, February 23, 2014


I couldnot make the Wi-fi connection work at all. I first ascertained the make and model of my wifi card using the follwoing commands :-

# lspci -nn lists the hardware

02:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller [14e4:4727] (rev 01)

# sudo lshw -C network

       description: Wireless interface
       product: BCM4313 802.11b/g/n Wireless LAN Controller
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: eth1
       version: 01
       serial: c0:18:85:98:9f:a5
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical 

       configuration: broadcast=yes driver=wl0 driverversion= 

       latency=0 multicast=yes wireless=IEEE 802.11
       resources: irq:16 memory:a2500000-a2503fff

So I looked up on the net and found that there were different options- some felt that the default open source driver brcmsmac would work best , while there were others who felt that enabling the broadcom driver would be the best option.

I first checked which of the above two drivers were in use on my laptop :-
# sudo nm-tool

     - Device: eth1 -----------------------------------------------------------------
       Type:               802.11 WiFi
       Driver:            wl
       State:              disconnected
       Default:           no
       HW Address:   C0:18:85:98:9F:A5


     Wireless Properties
      WEP Encryption:  yes
      WPA Encryption:  yes
      WPA2 Encryption: yes

The driver is the broadcom driver, so I tried out the other one :-
 # sudo modprobe -r b43 bcma
 # sudo modprobe -r brcmsmac bcma
 # sudo modprobe -r wl

 # sudo modprobe brcmsmac

The first three commands essentially removed all the drivers, and ruled out any possible misconfigurations, the last command loaded the default driver.
Wi-fi started working!
However, the change was only temporary and on successive reboots it again reloaded the wl driver, which caused the problem. I decided to keep the wl driver, just in case I needed it later. So I did the following workaround for a permt solution ;-
I modified the /etc/rc.local file to add the following lines above exit 0

# modprobe -r wl
# modprobe brcmsmac

I still have some issues with the poor signal strength. So maybe an update will be posted later!

No comments:

Post a Comment