Ubuntu – Replace Broadcom “wl” driver with “b43”

10.04broadcomdriverswireless

I'm using Ubuntu 10.04.4 LTS, and in my laptop there is a Broadcom BCM4312 WLAN card.
lspci output:

04:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g (rev 01)  
    Subsystem: Broadcom Corporation Device 04b5  
    Flags: bus master, fast devsel, latency 0, IRQ 18  
    Memory at f4500000 (64-bit, non-prefetchable) [size=16K]  
    Capabilities: [40] Power Management version 3  
    Capabilities: [58] Vendor Specific Information <?>  
    Capabilities: [e8] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-  
    Capabilities: [d0] Express Endpoint, MSI 00  
    Capabilities: [100] Advanced Error Reporting <?>  
    Capabilities: [13c] Virtual Channel <?>  
    Capabilities: [160] Device Serial Number 81-ac-1d-ff-ff-12-54-92  
    Capabilities: [16c] Power Budgeting <?>  
    Kernel driver in use: wl  
    Kernel modules: wl, ssb  

So as you can see, the current (and default) driver is wl – installed with Jockey.
But I have another Ubuntu based distribution on my laptop (BackTrack linux), which is also 10.04, but it has the b43 driver installed and the overall performance is much better. So I would like to install it on this OS too, but even google didn't help me.

So my question is how to install the latest b43 driver on my Ubuntu?

Best Answer

Type in a terminal:

sudo apt-get install b43-fwcutter

Under the desktop menu System > Administration > Hardware/Additional Drivers, the b43 drivers can be activated for use.

Restart.

Edited:

Install dkms.deb, patch.deb, fakeroot, and bcmwli. Those packages are in Ubuntu installation CD in the following paths:

/pool/main/d/dkms.deb
/pool/main/p/patch.deb
/pool/main/f/fakeroot
/pool/restricted/b/bcmwli 

Enable STA driver in additional driver.

sudo modprobe -r b43 ssb wl
sudo modprobe wl
Related Question