lkubuntu

A listing of random software, tips, tweaks, hacks, and tutorials I made for Ubuntu

How to fix Broadcom 43xx

Some people have problems with having their system recognizing their Broadcom 43xx cards. Here is a summary of many blog posts I have read to fix the problem.

NOTE: You need to be connected to the internet.

Check if your system recognizes the card
Type in a Terminal window:

lspci -nn | grep 02[80]0 | grep "Broadcom Corporation"

You should see a section with the text “Broadcom Corporation”. Remember the card number (should be something like: BCM43XX).

If you don’t see the text “Broadcom Corporation” (without quotes), your system does not recognize your Network card, and there is very little you can do about it.

Install the firmware/driver packages
BEFORE YOU CONTINUE:
Type in a Terminal window:

sudo apt-get purge bcmwl*
sudo apt-get install bcmwl*

Then reboot, and see if it works.
If it doesn’t work, read below.
If your card number is any of these:

BCM4306/3
BCM4311
BCM4318
BCM4321
BCM4322

Type in a Terminal window:

sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
sudo apt-get install b43-fwcutter firmware-b43-installer bcmwl*

Then reboot

If your card number is: BCM4312, then type in a Terminal window:

sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
sudo apt-get install b43-fwcutter firmware-b43-lpphy-installer bcmwl*

Then reboot

If your card number is any of these:

BCM4301
BCM4303
BCM4306/2
BCM4306

Type in a Terminal window:

sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
sudo apt-get install b43-fwcutter firmware-b43legacy-installer bcmwl*

Then reboot

Edit: Credit to j bech in the comments, if it doesn’t work after a reboot, run this:

echo "b43" | sudo tee -a /etc/modules

If you had any problems with this post, feel free to leave a comment!

59 responses to “How to fix Broadcom 43xx

  1. Pēteris Krišjānis (@pecisk) September 9, 2011 at 8:59 am

    I suggest to provide a patch for jockey (if you are Ubuntu guy), because that application is exactly meant for that – to provide custom detection and hookups of hardware.

    • Anonymous Meerkat September 9, 2011 at 3:14 pm

      Yeah, someday I’m going to learn how jockey works. I’m going to make a patch once Jockey is fixed (It can’t load).

  2. Andy Bleaden (@andybleaden) September 9, 2011 at 9:31 am

    Great post.

    Thanks

    I also recommend purging out any older versions especially after a recent upgrade whether with the B43 fwcutter or the bcmwl-kernel-source

  3. Pingback: Links 9/9/2011: Bodhi Linux 1.2.0, VortexBox 1.10 | Techrights

  4. Forensic Penguin2 September 9, 2011 at 1:10 pm

    I’ll keep this handy. Handy tool to check which controller you have using cli.

  5. Pingback: Linux Haber » Broadcom 43xx Driver Probleminin Çözüm Yolu

  6. sabri unal (@unalsabri) September 9, 2011 at 10:11 pm

    hi, ı translated your post for turkish users, and posted it ubuntu turkey forums…

    thans

    http://www.linuxhaber.com/broadcom-43xx-driver-probleminin-cozum-yolu/

  7. Buf Kaiser September 11, 2011 at 10:52 am

    I have BCM4313 in my Dell 14R notebook.
    Using Natty Narwhal, at first I can operate the wifi using driver and instructions directly from Broadcom website. But after several system updates, the driver stopped working and even not listed in this article.

    How am I supposed to use BCM4313 in Ubuntu again?
    (FYI, right now I’m using openSuSE 11.4 which detects BCM4313 just alright)

  8. fabioamd87 September 12, 2011 at 9:14 am

    my 4312 remain hard-blocked on phy0 in rfkill, I followed your previously post but without results, can you help me?

    • Anonymous Meerkat September 12, 2011 at 2:29 pm

      Is it a laptop? If so, there IS a wireless switch somewhere. Make sure that it is set to ON. If you can’t find the wireless switch, tell me the make and model, and I’ll show you.
      If it is set to ON, try my previous post about unblocking RF-KILL. If it still doesn’t work, try my previous post about unblocking RF-KILL, but don’t reboot.

  9. luciano November 15, 2012 at 10:19 pm

    Congratulations !!!!!!

  10. verzweifelt December 5, 2012 at 2:20 pm

    Broadcom 4312 or 4313 works after runing the following commands:

    sudo modprobe -r b43 ssb wl
    sudo apt-get remove bcmwl-kernel-source
    sudo apt-get install build-essential dkms linux-headers-generic
    sudo apt-get install bcmwl-kernel-source

    Thanks to jawz101
    http://ubuntuforums.org/showpost.php?p=12314678&postcount=3

    A question: What are these “build-essential” and “dkms”

    • Anonymous Meerkat December 5, 2012 at 4:59 pm

      Glad to know it works! Build-essential is a metapackage that depends on many development tools (mostly compilers), and dkms is a tool by DELL that enables 3rd party kernel modules to get integrated inside the kernel (so that you can modprobe them later)

  11. verzweifelt December 5, 2012 at 2:22 pm

    It seems to work now, but there are still error messages:

    ERROR: Module b43 does not exist in /proc/modules
    ERROR: Module b43legacy does not exist in /proc/modules
    ERROR: Module ssb does not exist in /proc/modules
    ERROR: Module bcm43xx does not exist in /proc/modules
    ERROR: Module brcm80211 does not exist in /proc/modules
    ERROR: Module brcmfmac does not exist in /proc/modules
    ERROR: Module brcmsmac does not exist in /proc/modules
    ERROR: Module bcma does not exist in /proc/modules

    Is this relevant?

    • Anonymous Meerkat December 5, 2012 at 5:02 pm

      Yeah, they are, but where did you find these messages?

      • verzweifelt December 5, 2012 at 6:40 pm

        I find them after running the last command “sudo apt-get install bcmwl-kernel-source”.
        Wlan seems to work now. It detects wireless networks, but I don’t know if it is able to connect to at last one network because there isn’t one of my networks here. I have to try tomorrow.

      • Andrew March 11, 2013 at 9:25 am

        I have the same error messages. Struggling to figure out a worthwhile solution to this.

      • Anonymous Meerkat March 11, 2013 at 6:23 pm

        Hmm, I haven’t had this issue, but I’m just wondering if you’d have the same issue if you did this:

        sudo apt-get purge bcmwl-kernel-source
        sudo apt-get install bcmwl-kernel-source

        Then redo the guide, and reboot.

  12. Pingback: <° Linux | Solucionar problema con Wifi (Broadcom 43xx) en ubuntu después de la actualizacion

  13. Lemuel G. Abarte February 11, 2013 at 9:11 am

    I followe the procedure and the result came out okay including the WIFI switch. Thanks.

  14. Pingback: WiFi Horizon, Best news updates, offers and business opportunities

  15. Pingback: hp laptop wireless driver linux | Lost Ferry

  16. Pingback: BCM4312 wireless card not able to connect to WPA2 wifi networks on Lubuntu Raring [duplicate] | Ubuntu Info - James n Sheri.comUbuntu Info – James n Sheri.com

  17. j bech May 16, 2013 at 6:46 am

    Worked for me thanks (Bcm 4312). However , every time I rebooted , I needed to type “sudo modprobe b43” in a terminal to make it work. To load the driver automatically , type this in the /etc/modules file – “b43” and save it.

  18. MaxVLC May 18, 2013 at 9:29 am

    Hi,. I have the same problem, i tried everything you say here, and isn’t working my wifi. I’ve Ubuntu 13.04, Lenovo B590, and the wireless card is:
    02:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller [14e4:4727] (rev 01)
    Any sugestion?
    Thanks.

    • j bech May 18, 2013 at 9:46 am

      if sudo modprobe b43 works for you when you reboot , than type the following –
      sudo su
      echo b43 >> /etc/modules
      exit
      I hope it works out :)

  19. 2skboy May 22, 2013 at 3:06 am

    my wifi card can be detected right now
    unfotunately, it can’t detect any wifi in my office…
    any sugestion please?

  20. 2skboy May 23, 2013 at 3:53 am

    my sistem can detect wifi using another distro (OpenSUSE)

    • j bech May 23, 2013 at 7:08 am

      No its not a card fault, but an operating system issue. I’m on a windows box using wubi dual boot linux system.On windows, I know how to choose the network settings from the start menu.I suggest you google around for your operating system network settings . Can’t help more than that .

  21. Pingback: I still cannot fix my wifi | Ubuntu InfoUbuntu Info

  22. Pingback: I still cannot fix my wifi | WyldePlayground.netWyldePlayground.net -

  23. Pingback: I still cannot fix my wifi | James n Sheri.comJames n Sheri.com

  24. Natalia September 24, 2013 at 5:51 pm

    Hi!
    I still cannot make it work on Ubuntu 12 with Broadcom 4312.
    After typing the command sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
    sudo apt-get install b43-fwcutter firmware-b43-lpphy-installer bcmwl*

    it asks me whether I would like to continue. When I say Yes, it answers: Abort.

  25. Vasya February 17, 2014 at 1:50 pm

    Thanks
    You job, man

    !!!!

  26. Thomas May 7, 2014 at 6:36 am

    Thanks! Lenovo B590 and Ubuntu upgrade to 14.04 LTS
    Now it works again.

  27. Steve May 19, 2014 at 3:02 pm

    No error message no connection on lubuntu 14.04. Your method did not work.

  28. Steve May 19, 2014 at 3:03 pm

    You need more information. Latitude D610, Broadcom BCM4306 rev02

    • Anonymous Meerkat May 20, 2014 at 5:53 pm

      Okay, so, to make sure, you ran all of these, right?

      sudo apt-get purge bcmwl*
      sudo apt-get install bcmwl*
      sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
      sudo apt-get install b43-fwcutter firmware-b43legacy-installer bcmwl*
      echo "b43" | sudo tee -a /etc/modules
      

      Then rebooted?

      • Steve May 26, 2014 at 3:11 pm

        Thank you! I really didn’t expect a reply, much less a TIMELY and to the point one. Okay, we’re go for try #2:
        ackrobbins@jackrobbins-Latitude-D610:~$ sudo apt-get purge bcmwl*
        [sudo] password for jackrobbins:
        Reading package lists… Done
        Building dependency tree
        Reading state information… Done
        Note, selecting ‘bcmwl-kernel-source’ for regex ‘bcmwl*’
        Note, selecting ‘bcmwl-modaliases’ for regex ‘bcmwl*’
        Package ‘bcmwl-modaliases’ is not installed, so not removed
        The following packages will be REMOVED:
        bcmwl-kernel-source*
        0 upgraded, 0 newly installed, 1 to remove and 89 not upgraded.
        After this operation, 0 B of additional disk space will be used.
        Do you want to continue? [Y/n] y
        (Reading database … 113870 files and directories currently installed.)
        Removing bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Purging configuration files for bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        update-initramfs: deferring update (trigger activated)
        Processing triggers for initramfs-tools (0.103ubuntu4) …
        update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
        jackrobbins@jackrobbins-Latitude-D610:~$ sudo apt-get install bcmwl*
        Reading package lists… Done
        Building dependency tree
        Reading state information… Done
        Note, selecting ‘bcmwl-kernel-source’ for regex ‘bcmwl*’
        Note, selecting ‘bcmwl-modaliases’ for regex ‘bcmwl*’
        The following NEW packages will be installed:
        bcmwl-kernel-source
        0 upgraded, 1 newly installed, 0 to remove and 89 not upgraded.
        Need to get 0 B/1,104 kB of archives.
        After this operation, 4,944 kB of additional disk space will be used.
        Selecting previously unselected package bcmwl-kernel-source.
        (Reading database … 113870 files and directories currently installed.)
        Preparing to unpack …/bcmwl-kernel-source_6.30.223.141+bdcom-0ubuntu2_i386.deb …
        Unpacking bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Setting up bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Loading new bcmwl-6.30.223.141+bdcom DKMS files…
        First Installation: checking all kernels…
        Building only for 3.13.0-24-generic
        Building for architecture i686
        Building initial module for 3.13.0-24-generic
        Done.

        wl:
        Running module version sanity check.
        – Original module
        – No original module exists within this kernel
        – Installation
        – Installing to /lib/modules/3.13.0-24-generic/updates/dkms/

        depmod………….

        DKMS: install completed.
        Segmentation fault
        update-initramfs: deferring update (trigger activated)
        Processing triggers for initramfs-tools (0.103ubuntu4) …
        update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
        jackrobbins@jackrobbins-Latitude-D610:~$ sudo apt-get purge b43-fwcutter firmware-b43-installer firmware-b43-lpphy-installer firmware-b43legacy-installer bcmwl*
        Reading package lists… Done
        Building dependency tree
        Reading state information… Done
        Package ‘firmware-b43-lpphy-installer’ is not installed, so not removed
        Note, selecting ‘bcmwl-kernel-source’ for regex ‘bcmwl*’
        Note, selecting ‘bcmwl-modaliases’ for regex ‘bcmwl*’
        Package ‘bcmwl-modaliases’ is not installed, so not removed
        Package ‘firmware-b43-installer’ is not installed, so not removed
        The following packages will be REMOVED:
        b43-fwcutter* bcmwl-kernel-source* firmware-b43legacy-installer*
        0 upgraded, 0 newly installed, 3 to remove and 89 not upgraded.
        After this operation, 4,944 kB disk space will be freed.
        Do you want to continue? [Y/n] y
        (Reading database … 113937 files and directories currently installed.)
        Removing b43-fwcutter (1:018-2) …
        Purging configuration files for b43-fwcutter (1:018-2) …
        Removing bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Removing all DKMS Modules
        Done.
        update-initramfs: deferring update (trigger activated)
        Purging configuration files for bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        update-initramfs: deferring update (trigger activated)
        Removing firmware-b43legacy-installer (1:018-2) …
        Purging configuration files for firmware-b43legacy-installer (1:018-2) …
        Deleting old extracted firmware…
        Processing triggers for initramfs-tools (0.103ubuntu4) …
        update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
        jackrobbins@jackrobbins-Latitude-D610:~$ sudo apt-get install b43-fwcutter firmware-b43legacy-installer bcmwl*
        Reading package lists… Done
        Building dependency tree
        Reading state information… Done
        Note, selecting ‘bcmwl-kernel-source’ for regex ‘bcmwl*’
        Note, selecting ‘bcmwl-modaliases’ for regex ‘bcmwl*’
        The following NEW packages will be installed:
        b43-fwcutter bcmwl-kernel-source firmware-b43legacy-installer
        0 upgraded, 3 newly installed, 0 to remove and 89 not upgraded.
        Need to get 0 B/1,133 kB of archives.
        After this operation, 5,089 kB of additional disk space will be used.
        Preconfiguring packages …
        Selecting previously unselected package b43-fwcutter.
        (Reading database … 113869 files and directories currently installed.)
        Preparing to unpack …/b43-fwcutter_1%3a018-2_i386.deb …
        Unpacking b43-fwcutter (1:018-2) …
        Selecting previously unselected package bcmwl-kernel-source.
        Preparing to unpack …/bcmwl-kernel-source_6.30.223.141+bdcom-0ubuntu2_i386.deb …
        Unpacking bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Selecting previously unselected package firmware-b43legacy-installer.
        Preparing to unpack …/firmware-b43legacy-installer_1%3a018-2_all.deb …
        Unpacking firmware-b43legacy-installer (1:018-2) …
        Processing triggers for man-db (2.6.7.1-1) …
        Setting up b43-fwcutter (1:018-2) …
        Setting up bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
        Loading new bcmwl-6.30.223.141+bdcom DKMS files…
        First Installation: checking all kernels…
        Building only for 3.13.0-24-generic
        Building for architecture i686
        Building initial module for 3.13.0-24-generic
        Done.

        wl:
        Running module version sanity check.
        – Original module
        – No original module exists within this kernel
        – Installation
        – Installing to /lib/modules/3.13.0-24-generic/updates/dkms/

        depmod….

        DKMS: install completed.

        and it seems to be stalled there with no progress for the past fifteen minutes. No prompt, just a cursor showing a process still executing…..or not.

        I’ll restart the process and see what happens
        If you have any pointers I’d appreciate it.

        • Anonymous Meerkat May 26, 2014 at 3:18 pm

          This is interesting:

          DKMS: install completed.
          Segmentation fault

          Try updating your system like such:

          sudo apt-get update
          sudo apt-get dist-upgrade

          And then rebooting (into the latest kernel). Just in case… that might fix the issue (idk though).

          • Steve May 26, 2014 at 3:31 pm

            Thanks. I’m going to go a step beyond that. I’ll do a fresh install of Lubuntu 14.04, do full updates and start from scratch. This is a new installation and I won’t lose anything. The wireless card worked under Win XP and Linux Mint under a similar installation process but I had Wine weirdness with Linux Mint which never happens with Lubuntu. I’ll keep you posted.

            • Anonymous Meerkat May 26, 2014 at 3:44 pm

              Alrighty, let’s hope that works! =D

              • Steve May 26, 2014 at 7:11 pm

                How was I to know that dist-upgrade would redownload the whole freakin’ installation and reinstall it over what upgrade manager said was a fully upgraded installation. Why is dist-upgrade really dist-totally-reinstall-the-whole-shootin’-match? LOLOL! This will take awhile……

                • Steve May 26, 2014 at 7:36 pm

                  Same result with a bonafide virgin system. Here’s the relevant lines:

                  jackrobbins@jackrobbins-Latitude-D610:~$ sudo apt-get install b43-fwcutter firmware-b43legacy-installer bcmwl*
                  Reading package lists… Done
                  Building dependency tree
                  Reading state information… Done
                  Note, selecting ‘bcmwl-kernel-source’ for regex ‘bcmwl*’
                  Note, selecting ‘bcmwl-modaliases’ for regex ‘bcmwl*’
                  The following NEW packages will be installed:
                  b43-fwcutter bcmwl-kernel-source firmware-b43legacy-installer
                  0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
                  Need to get 28.8 kB/1,133 kB of archives.
                  After this operation, 5,089 kB of additional disk space will be used.
                  Get:1 http://us.archive.ubuntu.com/ubuntu/ trusty/main b43-fwcutter i386 1:018-2 [25.4 kB]
                  Get:2 http://us.archive.ubuntu.com/ubuntu/ trusty/multiverse firmware-b43legacy-installer all 1:018-2 [3,494 B]
                  Fetched 28.8 kB in 0s (37.4 kB/s)
                  Preconfiguring packages …
                  Selecting previously unselected package b43-fwcutter.
                  (Reading database … 137507 files and directories currently installed.)
                  Preparing to unpack …/b43-fwcutter_1%3a018-2_i386.deb …
                  Unpacking b43-fwcutter (1:018-2) …
                  Selecting previously unselected package bcmwl-kernel-source.
                  Preparing to unpack …/bcmwl-kernel-source_6.30.223.141+bdcom-0ubuntu2_i386.deb …
                  Unpacking bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
                  Selecting previously unselected package firmware-b43legacy-installer.
                  Preparing to unpack …/firmware-b43legacy-installer_1%3a018-2_all.deb …
                  Unpacking firmware-b43legacy-installer (1:018-2) …
                  Processing triggers for man-db (2.6.7.1-1) …
                  Setting up b43-fwcutter (1:018-2) …
                  Setting up bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) …
                  Loading new bcmwl-6.30.223.141+bdcom DKMS files…
                  First Installation: checking all kernels…
                  Building only for 3.13.0-27-generic
                  Building for architecture i686
                  Building initial module for 3.13.0-27-generic
                  Done.

                  wl:
                  Running module version sanity check.
                  – Original module
                  – No original module exists within this kernel
                  – Installation
                  – Installing to /lib/modules/3.13.0-27-generic/updates/dkms/

                  depmod….

                  DKMS: install completed.

                  And that’s the invisible block cursor sitting there staring at me with no prompt at all. This is a true mystery!

  29. Pingback: Ubuntu:WiFi problem after Ubuntu 12.10 update – Ubuntu Linux Questions

Leave a comment