As of Ubuntu 9.10 Karmic Koala (& the next Linux Mint of course)
WICD now handles the BCM4306(rev02) with ease out-of-the-box!
Simply type in your encryption method & key & your online.
There should be no need to use the following, manual method.
BCM4306 & Ndiswrapper (ssb fix) on Hardy/Elyssa
The following is a list to get your BCM4306 (rev02) working (with WPA) in Hardy. It includes a fix for the "dreaded" ssb issue.
Working perfect for me.
************************************************** *********************
Prerequisites in router settings...
(This is personal preference...if different, adjust the /network/interfaces to reflect it below)
WPA1 (TKIP)
Hidden ssid
************************************************** ***********************
Many thanks to ubunturules, fireant & weiman01, as this tutorial includes valuable information from their tutorials, in order to get my connection active. I've just combined their processes, with mine, into a simple numerical order, but which leaves out much of the thorough explanation. Credit goes to the above authors, for their contributions. See their tutorials at...
http://ubuntuforums.org/showthread.p...06+wpa&page=75
http://ubuntuforums.org/showthread.p...06+wpa&page=75
Don't forget to use terminal to UNZIP the Windows driver to a new folder in your home folder!
Be sure to have network-manager or Wicd installed. You'll use this only as a monitor of your wireless, not to enter any keys, etc. This will be done manually in the /network/interfaces file.
1) Download the 32 or 64 bit Windows drivers
2)
Code: Select all
lspci | grep Broadcom\ Corporation
Code: Select all
sudo rmmod bcm43xx
Code: Select all
echo 'blacklist bcm43xx' | sudo tee -a /etc/modprobe.d/blacklist
6)
Code: Select all
sudo aptitude install build-essential
Code: Select all
uname -r
8 )
Code: Select all
sudo ln -s /usr/src/linux-2.6.22-14-generic /lib/modules/2.6.22-14-generic/build
Code: Select all
sudo apt-get install ndiswrapper-utils-1.9
Code: Select all
sudo ndiswrapper -i /folder where driver is/bcmwl5.inf
Code: Select all
sudo ndiswrapper -i /folder where driver is/bcmwl564.inf
11)
Code: Select all
ndiswrapper -l
Code: Select all
sudo ndiswrapper -m
Code: Select all
sudo modprobe ndiswrapper
Code: Select all
echo 'ndiswrapper' | sudo tee -a /etc/modules
Code: Select all
sudo gedit /etc/udev/rules.d/70-persistent-net.rules
# PCI device 0x14e4:0x4306 (bcm43xx)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:04:c2:65:3b:b4", NAME="wlan0")
16)
Code: Select all
echo 'ENABLED=0' | sudo tee -a /etc/default/wpasupplicant
Code: Select all
sudo /etc/init.d/dbus restart
Code: Select all
wpa_passphrase "your_essid" "your_ascii_key"
19)
Code: Select all
sudo gedit /etc/network/interfaces
auto wlan0
iface wlan0 inet dhcp
pre-up sleep 10
wpa-driver wext
wpa-ssid <your_essid>
wpa-ap-scan 2
wpa-proto WPA
wpa-pairwise TKIP
wpa-group TKIP
wpa-key-mgmt WPA-PSK
wpa-psk <your_hex_key>
20)
Code: Select all
sudo /etc/init.d/networking restart
After a reboot, your connection will likely be gone...because of the Hardy "ssb" issue.
************************************************** **********************
To fix the Hardy "ssb"/ndiswrapper module/lost-wireless-at-reboot issue, we'll have to create this small script to run at startup...
21)
Code: Select all
sudo gedit
#!/bin/bash
rmmod b43
rmmod b44
rmmod b43legacy
rmmod ssb
rmmod ndiswrapper
modprobe ndiswrapper
modprobe ssb
modprobe b44
/etc/init.d/networking restart
23) Save the above as filename "wireless.sh", and place it in the "/etc/init.d" folder. (You'll have to be root for this)
24) Execute permissions for the script...
Code: Select all
sudo chmod +x /etc/init.d/wireless.sh
Code: Select all
sudo ln -s /etc/init.d/wireless.sh /etc/rcS.d/S40wireless