Why does Ubuntu 12.10 wifi keep disconnecting? [duplicate]

I am using Ubuntu 12.10 on a Macbook Pro with Broadcom BCM4331 wireless network card. I have installed the b43 driver in order to be able to use the wireless card. However, the wireless connection gets disconnected every few minutes (just randomly, sometimes after half an hour, sometimes after 10 or 15 minutes...).

I can see this in the network manager icon. And it reconnects automatically. This happens more when I am connected to WPA 2 and WPA2 enterprise, but also sometimes when I am connected to unsecured wireless networks too.

Please find the output of a number of command below. If you need more information please let me know. I appreciate any help in advance.

sudo ifconfig -a

lo        Link encap:Lokale Schleife  
      inet Adresse:127.0.0.1  Maske:255.0.0.0
      inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
      UP LOOPBACK RUNNING  MTU:16436  Metrik:1
      RX packets:712 errors:0 dropped:0 overruns:0 frame:0
      TX packets:712 errors:0 dropped:0 overruns:0 carrier:0
      Kollisionen:0 Sendewarteschlangenlänge:0 
      RX-Bytes:56910 (56.9 KB)  TX-Bytes:56910 (56.9 KB)

wlan0     Link encap:Ethernet  Hardware Adresse 14:10:9f:db:d6:7b  
      inet Adresse:192.168.2.103  Bcast:192.168.2.255  Maske:255.255.255.0
      inet6-Adresse: fe80::1610:9fff:fedb:d67b/64 Gültigkeitsbereich:Verbindung
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
      RX packets:411 errors:0 dropped:0 overruns:0 frame:0
      TX packets:468 errors:0 dropped:0 overruns:0 carrier:0
      Kollisionen:0 Sendewarteschlangenlänge:1000 
      RX-Bytes:119863 (119.8 KB)  TX-Bytes:81782 (81.7 KB)


lspci | grep Broadcom

03:00.0 Ethernet controller: Broadcom Corporation Device 16a3 (rev 10)
03:00.1 SD Host controller: Broadcom Corporation NetXtreme BCM57765 Memory Card Reader (rev 10)
04:00.0 Network controller: Broadcom Corporation BCM4331 802.11a/b/g/n (rev 02)

modprobe -l | grep b43

updates/cw-3.6/b43legacy.ko
updates/cw-3.6/b43.ko

modprobe -l | grep bcm

kernel/drivers/usb/host/bcma-hcd.ko
kernel/drivers/input/mouse/bcm5974.ko
kernel/drivers/media/dvb/frontends/bcm3510.ko
kernel/drivers/staging/bcm/bcm_wimax.ko
kernel/net/can/can-bcm.ko
updates/cw-3.6/bcma.ko
updates/cw-3.6/bcm203x.ko

cat /etc/network/interfaces
auto lo iface lo inet loopback

By the way, I don't know of this is odd or not, but, in the system log (/var/log/syslog) every few minutes I see authentication by wpa_supplicant like this:

NetworkManager[970]: <info> (wlan0): supplicant interface state: completed -> disconnected  
NetworkManager[970]: <info> (wlan0): supplicant interface state: disconnected -> scanning  
wpa_supplicant[1368]: wlan0: SME: Trying to authenticate with 20:2b:c1:50:0e:76 (SSID='foo' freq=2442 MHz)
[ 365.771706] wlan0: authenticate with 20:2b:c1:50:0e:76  
NetworkManager[970]: <info> (wlan0): supplicant interface state: scanning -> authenticating  

Solution 1:

I resolved my issue by installing Ubuntu 13.04 (daily build, 20. March). Now, I am writing this answer on Ubuntu 13.04. The wireless issue is solved completely. Other hardware is working perfectly fine.