Install Broadcom 43xx Wireless Driver and Ndiswrapper in Feisty

This page will show you how to install both ndiswrapper and drivers for Broadcom 43xx wireless cards.  This procedure was taken from
Ubuntu Guide so many thanks to the people over there.  This procedure was intended for use on Ubuntu Feisty.

The problem with Broadcom wireless cards is:

1.  They are extremely popular.
2.  They have no native Linux drivers.

This is a problem, but there is a solution.  Ubuntu has a utility called ndiswrapper.  This utility allows you to use Windows drivers (.inf files more specifically) to enable these wireless chipsets.  This is not a difficult procedure, actually it is very simple to install.  

If you are just installing the drivers for a Broadcom 43xx card skip to the Broadcom section.

Install Broadcom 43xx Wireless Drivers

Since you are here I am going to assume you have a Broadcom 43xx wireless card that you want to enable under Linux.  This procedure will install the ndiswrapper for you if you don't have it installed.

Please use this procedure ONLY if have a Broadcom 43xx chipset.

Lets check to see if you have a Broadcom chipset on your machine type the following in a terminal:

lspci | grep Broadcom

If there is a Broadcom device present your output could look something like the following:

0000:02:02.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller

If you do get something like that then we can proceed.  If you get no output STOP now.

First thing is that we need to get the Broadcom Windows .inf files.  To get them click here.  Download the file to wherever you keep downloaded files.

Next we need to un-pack the files, to do this open a terminal wherever you downloaded the drivers and type this:
tar -xvzf bcm4318*.tar.gz

Next you will need to execute the scripts, to do this type the following:
sudo ./ndiswrapper_setup

You can remove the files that were decompressed from the tar archive as they are no longer needed.

Reboot the machine and your wireless card should work.

Get your Wireless Connection WEP, WPA, and WPA2 Ready

Note:  In Ubuntu Feisty Network Manager is installed already all you need to do is get the Ndiswrapper installed and configured.

Now that you have your wireless connection up and running you can enable wireless encryption.  With the procedure above you have no wireless encryption at all.  The following procedure was gotten from Debian Admin to enable wireless networks for WPA in Ubuntu Edgy.  Thanks to the folks over there for creating this procedure.

To get your wireless connection encryption capable do the following:

Update the source list
sudo apt-get update

Install wpa supplicant
sudo apt-get install wpasupplicant

Install Network Manager (this will allow you to see all available wireless networks)
sudo apt-get install network-manager-gnome network-manager

You will need to edit your interfaces file to do so do the following:
sudo gedit /etc/network/interfaces

Comment out everything other than “lo” entries by using a '#' in front of the line and save the file.

Create a file called /etc/default/wpasupplicant, add entry ENABLED=0 and save the file
sudo gedit /etc/default/wpasupplicant (this will create the file when you hit save)

sudo touch /etc/default/wpasupplicant

Reboot your system.  Upon logging back in you will be able to click on the network manager and see the available wireless networks.

Install Ndiswrapper

Everything in
red is to be typed in a terminal. If you came here to just install the drivers for your Broadcom 43xx card refer to the previous section.

Find out if you have acx module loaded. Because acx module interferes with windows driver, we need to remove it if it is found.

lsmod | grep acx

Remove the acx module if found. It could also be acx_pci or similar. Please Note: New kernel updates will auto load the acx module again. So repeat the following two commands every time the kernel is updated.

sudo rmmod acx
sudo nano /etc/modprobe.d/blacklist

Add a new list at the end of the file like this:

# drivers wireless ACX
blacklist acx

Install ndiswrapper and drivers (due to a bug in Edgy, you need to specify ndiswrapper-utils-1.8)

sudo apt-get install ndiswrapper-utils-1.8
sudo ndiswrapper -i /location/your_driver.inf (use this if you are installing the driver manually)
sudo ndiswrapper -l
sudo modprobe ndiswrapper

Set ndiswrapper to load on startup

sudo ndiswrapper -m
gksudo gedit /etc/modules

Add the following module to the list


Save the file and exit.

You now have ndiswrapper installed.  If your purpose was to just install ndiswrapper you can stop here.  To get the Broadcom 43xx card working continue to the next section on Broadcom 43xx wireless installation.

I hope this procedure helps.