Help - Search - Members - Calendar
Full Version: Broadcom bcm43xx wireless driver [beta]
InsanelyMac Forum > OSx86 Project > Hardware and Drivers > LAN and Wireless
Pages: 1, 2, 3, 4, 5, 6, 7
mcsmart
Update: 2008-07-27 3:24PM

Since it seems to be sort of difficult for new users to edit kext-files, I've written a small script which automatically adds the PCI IDs of all Broadcom wireless cards, which are AirPort compatible.

And this is where I need your feedback: Please post your Broadcom device IDs in this topic, if you have simply added them to the AppleAirPortBrcm4311.kext. Then I can add them to my script so new users can simply download the script and get their Broadcom wireless card to work.
So please post the PCI ID and maybe a little description (at least if the card is 802.11a, b or g).

Note: Only post the PCI ID if you simply have to add the ID to AppleAirPortBrcm4311.kext in order to get it working!

Supported Chipsets:
  • All Apple AirPort One Cards (4311,4312,4313,4319,431a,432a)
  • 4306, Broadcom BCM4306 802.11 b/g Wireless LAN (confirmed)
  • 4309, Broadcom BCM4309 802.11 b Wireless LAN
  • 4318, Broadcom BCM4318 [AirForce One 54g] 802.11g Wireless LAN (confirmed)
  • 4320, Broadcom BCM4320 b/g (confirmed)
  • 4324, Broadcom BCM4324 802.11 a/b/g Wireless LAN
  • 4325, Broadcom BCM4325 802.11 a/b/g Wireless LAN
  • 2b continued
Cards that are known to work:
  • Belkin F5D7000
  • Buffalo WL12-PCI-G545
  • Linksys PCMCIA Card WPC54G
  • Dynex DX-BNBC
  • Probably tons of other cards, as long as they have a supported chipset...
Usage: unzip, open a Terminal window and type 'sudo ./bcm43xx_enabler.sh'. Reboot

It is recommended to install all AirPort-Updates from SoftwareUpdate before running this script.

Use this script at your own risk!!

Changelog:
  • Version 0.5.1pre
    - added 4307, 4308, 4310, 4322, 4323 - just for testing
  • Version 0.5
    - 4325 confirmed
    - updated to zip file again
  • Version 0.5pre2 (Beta release!)
    - added more chipsets (4314, 4315), I don't know if they even work...
    - gziped, because I don't have zip installed atm
  • Version 0.5pre (Beta release!)
    - initial Leopard support
    - added more chipsets (4321, 4e,432a,432b,432c,432d, ...)
  • Version 0.4
    - Only delete Extensions.kextcache/Extensions.mkext and not Extensions.*
  • Version 0.3
    - Delete the kextcache automatically
    - Fixed a typo that wouldn't allow the majority of users to delete the Airport2.kext
FAQ:
  • "sudo: ./bcm43xxenabler.sh: command can not be found"
    • N00b Attack: You need to be in the directory you have extracted the file to
  • "My card shows up as an AirPort but it says disabled or not configured"
    • This could have many reasons. Try one of the following things:
      • Delete the current network setup (in network preferences) and create a new one. Reboot.
      • If you had no luck, try this.
      • If that does not help, open Terminal and type: sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist. Reboot
      • If that does not help, try to move either the kext of your Wireless NIC or the kext of your wired NIC to a location where it does not get loaded on reboot. Then type (in Terminal):
        • sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
        • sudo rm /System/Library/Extensions.mkext
        • sudo rm /System/Library/Extensions.kextcache
        • Reboot
      • If that does not help either, try this. It says it is supposed to work for a LinkSys WMP54G, but I guess it should work with other AirPort cards too.
    • If none of these things did the trick, your card might have a crappy software power-on/off switch. Get a new one smile.gif
  • I don't have AppleAirPortBrcm4311.kext
    • It should be on your install DVD. If not, you have to use Google a little bit. I will not send you this kext via E-Mail or PN.
drbourbon
4324, Broadcom BCM4309 (Dell 1450)
riws
4320
4309
4306
mcsmart
Thank you guys, please keep on posting pci ids and maybe comments if you have successfully used the bcm43xx_enabler.
riws
I tested this installer. Changed IDs in my Broadcom kext, so OSX doesnt find my card. Restarted and there was no Airport anymore. Then I run this installer and restarted my sackintosh. And it worked! Found my card as Airport and everything was working again thumbsup_anim.gif

Whats the point of AppleAirport2.kext?
nody
Well i got the airport in menu bar but when i open internet connect theres no aiport icon to configure, my id is 8320- 802.11 wireless LAN, any ideas??
mcsmart
It's nice to hear that my little script worked for you wink.gif I do not know exactly what the point of AppleAirport2 is, but it gives me (and lots of other users) an error when the system is booted. For that reason this extension seems to be useless (as long as you have an AirPortOne compatible card).
As far as I know the AirPort2 NIC is used in newer iBooks/PowerBooks...

QUOTE(nody @ May 24 2007, 07:33 PM) *
Well i got the airport in menu bar but when i open internet connect theres no aiport icon to configure, my id is 8320- 802.11 wireless LAN, any ideas??

Go to "System Preferences" -> "Network".
Can you see the AirPort? Is there another network connection? Are the MAC addresses displayed correctly.

I could think of two things:
  • Your wireless card is turned of (hardware switch) OR
  • you have two network adapters and they are switched around now...
nody
I have a network card and that´s how i connect to the net. Could it be, since i had my id to airport2 my device ID?, Also when i use 10.4.8 i had access to my card, and only had my device ID to airport2. Testing @ the time Uphuk 10.4.9
riws
QUOTE(mcsmart @ May 24 2007, 08:44 PM) *
It's nice to hear that my little script worked for you wink.gif I do not know exactly what the point of AppleAirport2 is, but it gives me (and lots of other users) an error when the system is booted. For that reason this extension seems to be useless (as long as you have an AirPortOne compatible card).
As far as I know the AirPort2 NIC is used in newer iBooks/PowerBooks...

The system is working without AppleAirport2 too (I deleted it).
yellowdog22
I can't find IO80211Family.kext. It's not in /System/Library/Extensions. ANy ideas why?
jubjubrsx
just causes my laptop to crash C500 14e4,4311
broadcom 4311 chipset
mcsmart
QUOTE(yellowdog22 @ May 26 2007, 09:21 AM) *
I can't find IO80211Family.kext. It's not in /System/Library/Extensions. ANy ideas why?

Which version of Mac OS X are you using? Did you try it with the JaS install DVD?


QUOTE(jubjubrsx @ May 30 2007, 06:47 AM) *
just causes my laptop to crash C500 14e4,4311
broadcom 4311 chipset

What does dmesg say? Can you give a dump of your syslog? I don't really think that the AirPort-driver is the cause for the crash...
yellowdog22
10.4.9. I don't know what the JaS install DVD is. I'll have a look.
bassvibe
A part for a strange permission issue (whoami doesn't return anything on my setup) the script did the job nicely. Thank you!
errandwolfe
QUOTE(mcsmart @ Jun 8 2007, 04:11 PM) *
Which version of Mac OS X are you using? Did you try it with the JaS install DVD?
What does dmesg say? Can you give a dump of your syslog? I don't really think that the AirPort-driver is the cause for the crash...

I'll answer this as I am in a similair situation....

The results are the same no matter which distribution I use. If I have my BCM4311 mini PCI express card installed OS X crashes at boot. Am currently on my desktop so don't have the exact error message in front of me, but basically it gives a kernel panic when it tries to load the IO80211 kext. I have tried installing the kext from different versions including 10.4.6, .7, .8, and of course .9. It is just very odd as this is the closest one can get on a Hackintosh to having a true airport card. It even has the exact same 14e4,4311 device/vendor ID.
mcsmart
QUOTE(errandwolfe @ Jun 10 2007, 01:49 PM) *
I'll answer this as I am in a similair situation....

The results are the same no matter which distribution I use. If I have my BCM4311 mini PCI express card installed OS X crashes at boot. Am currently on my desktop so don't have the exact error message in front of me, but basically it gives a kernel panic when it tries to load the IO80211 kext. I have tried installing the kext from different versions including 10.4.6, .7, .8, and of course .9. It is just very odd as this is the closest one can get on a Hackintosh to having a true airport card. It even has the exact same 14e4,4311 device/vendor ID.

This is extremely odd... I have never experienced this behavior. Did you try to delete the AppleAirPort2.kext???
Are you using a laptop (internal Broadcom card) or are you trying to install this card in a standard mini PCI-Express slot of your desktop PC's mainboard? Anyway, actually it should not matter at all, I could imagine that this is a PCIe related issue...
wid14
@ mcsmart
These is some threads that discussing the issue (presario C500 series issue). I don't know what happen with this laptop. I think this laptop has been cursed.... Maybe you can help. (2 guys will pay you 25 dollars each if you can)

http://forum.insanelymac.com/index.php?sho...056&hl=C500
http://forum.insanelymac.com/index.php?sho...547&hl=C500
http://forum.insanelymac.com/index.php?sho...153&hl=C500
errandwolfe
OK, I tried deleting the AirPort2.kext and still the same results, kernel crash. I have posted the text of the crash (well as much as I had patience for retyping) below:

panic(cpu 0 caller 0x001A496B): Unresolved kernel trap (CPU 0, Type 14=page fault), registers:
CR0: 0X8001003b, CR2: Ox00000000, CR3: 0x01c43000, CR4: 0x000006e0
EAX: 0x00000000, EBX: 0x00000000, ECX: 0x1ba02000, EDX: 0x00000000
CR2: 0x00000000, EBP: 0x1d3fbd28, ESI: 0x000014e4, EDI: 0x1ba02000
EFL: 0x00010201, EIP: 0x37d78019, CS: 0x00000008, DS: 0x02170010

Debugger called: <panic>
Backtrace, Format - Frame : Return Address (4 potential arguments on stack)
Insert several lines of hex addresses, please don't ask me to retype all this.

Kernel loadable modules in backtrace (with dependencies):
com.apple.driver.AirPortBrcm43xx(223.79)@0x37d46000
dependency: com.apple.iokit.IONetworkingFamily(1.5.1)@0x3342c000
dependency: com.apple.iokit.IOPCIFamily(2.1)@ox2d550000
dependency: com.apple.iokit.IO80211Family(154.1)@ox37d29000

Kernel version:
Darwin Kernel Version 8.9.1: Thu May 3 02:38:46 UZT 2007; made by ToH:xnu-792.18.15/BUILD/obj/RELEASE_I386
errandwolfe
I have been able to leave my 4311 card in now without causing a kernel crash. I am still unable to get the card to power on though. Here is how I got around the kernel panic:

1. Just got a new HD so performed a fresh install with Uphuck 1.3 10.4.9 release. (Leave the card out of the laptop for now)
2. DO NOT Install the 10.4.5 80211 kext at installation.
3. Completed install as normal.
4. Applied all updates (i.e. Security Update 2007-005, Airport update, etc.)
5. Using the Uphuck 1.3 DVD install the 10.4.5 80211 kext
6. Shut down
7. Install wifi (Ubuntu recognizes the card as a "Dell Wireless 1390", Hardware ID 0x14e4,4311

You will now be able to boot with the card installed and NOT get a kernel panic. Unfortunately this still does not do any good as it seems like the only way to bring the radio online is through Windows. Even Ubuntu sees the card, but can make zero use of it.
Deeeebs
confirmed working on the 4306 in my dell d600 thanks!!!!!
mcsmart
QUOTE(errandwolfe @ Jun 13 2007, 10:38 PM) *
Even Ubuntu sees the card, but can make zero use of it.

BTW: Of course you could use this card with Linux thumbsup_anim.gif . But the bcm43xx kernel module requires you to install the required firmware manually (using bcm43xx-fwcutter). Since the firmware is not open source it can not be included in a standard Linux distribution. Check the bcm43xx-fwcutter manpage...

Darwin probably crashes because it expects the card to be turned on. There has to be a pretty crappy software power switch in the card you are using. This is the only thing I could think of right now...
errandwolfe
I am beginning to think this is NOT a problem with the card itself. I am thinking more along the lines of the mini PCI express bus is not being properly recognized. Unfortunately that is beyond my skill level to address. It would be great if one of the guru's looked into this problem. It may be something as simply adding the proper device and vendor ID to the appropriate kext file. That is totally just a guess at this point though. I suppose the clencher would be finding another mini PCI-E wifi card and testing it.
wood_e
mcSmart,

Thank yu for your script. I do have a concern though. It locked up my machine a few times trying it but 3rd time was a charm. I forgot to put in the directory to save the backup files <- thats when it locked up. Anyway, this script worked for 2 of my wireless cards. They are:

Belkin F5D7000
Buffalo WL12-PCI-G545

Good work!
JSn1™
BCM4311 Works cool!!!!
Do you know what do I have to use it with Kismac???
errandwolfe
JSN1,
What type of card is your 4311 mini-PCI or mini-PCI Express?
JSn1™
Wow, how do I know that?
I had the Intel 3945abg, and swapped for this one.
In Dell's website it says it is a Mini-Pci.
StealthMode
Awesome, I have been looking for something like this. My Buffalo Wireless (WLI-PCI G545) is the only thing I need to get working for a 100% working install biggrin.gif Awesome work! Will try this out shortly.
StealthMode
Ok, apparently I don't have the AppleAirPortBrcm4311.kext.... I can't locate it anywhere. I am using Uphuck 1.3 install. No AirPort cards are listed. Where can I find and install the kext?

Edit: Found it.. blush.gif
blink
So i downloaded and extracted the file. Opened a terminal window and typed the command and it says
sudo: ./bcm43xxenabler.sh: command can not be found

So what do i do?

Cancel that...Stupid me closedeyes.gif forgot the _ between xx and enabler
StealthMode
I drag an dropped the file into the terminal. Seemed to work fine. smile.gif


Though, since I have gotten it working, I get random lockups, I repaired the permissions, but nothing needed repairs. Any ideas? I have the Buffalo WLI12 G545 (BCM4306)
mcsmart
QUOTE(StealthMode @ Jul 11 2007, 06:25 AM) *
I drag an dropped the file into the terminal. Seemed to work fine. smile.gif
Though, since I have gotten it working, I get random lockups, I repaired the permissions, but nothing needed repairs. Any ideas? I have the Buffalo WLI12 G545 (BCM4306)

Did you install all of the AirPort updates via SoftwareUpdate?
StealthMode
Nope. I forgot to delete the Extensions.mkext and Extensions.kextcache, so after I did that she hasn't locked up all night. Do I need to install the airport updates?

Edit: Well I jinxed it.....It locked up as soon as I posted this.... blush.gif
blink
Just wanted to thank you for the script to get this working for me. My onboard ethernet doesn't work with mac. It shows up. But won't connect. Any ideas on how to fix this? Or could you point me to another post with the information. I have a hp zd8230us laptop. The onboard ethernet is a realtek semiconductor rtl-8139/8139c38139c+ according to the hardware information on my linux partition. Again thank you for getting my wireless to work.
justvisiting
QUOTE(mcsmart @ Jul 11 2007, 02:07 AM) *
Did you install all of the AirPort updates via SoftwareUpdate?



I have 10.4.8 + apple's airport updates ==> no problems with wireless (dev id = 4318)

JuVi
shirovin
QUOTE(justvisiting @ Jul 15 2007, 06:08 AM) *
I have 10.4.8 + apple's airport updates ==> no problems with wireless (dev id = 4318)

JuVi


What kind of wireless card do you have ? I have a belkin wireless G highspeed Notebook Network Card(PCMCIA) with dev id 4318 and I can't get wireless working in uphuck 10.4.9? Just wondering ?
miramar
Thanks for the good work. I didn't use your script but here's another card that you can add to it that's confirmed working on a fresh install of Jas 10.4.8+PPF1 followed by Koolkal's 10.4.10 SSE3 update.

Belkin High-Speed Mode Wireless G Desktop Card (PCI)
F5D7001ak ver 2000ak
0x14E4, 0x7001 (Vendor, Device IDs)

mcsmart
QUOTE(miramar @ Jul 30 2007, 09:49 PM) *
Belkin High-Speed Mode Wireless G Desktop Card (PCI)
F5D7001ak ver 2000ak
0x14E4, 0x7001 (Vendor, Device IDs)

I can not confirm this. The Device ID you have posted is _not_ supported by this script, since it does not belong to the 43xx-family of Broadcom chipsets.
bagastya
QUOTE(mcsmart @ May 21 2007, 07:56 PM) *
Update: 10-07-2007 8:41PM

Note: Only post the PCI ID if you simply have to add the ID to AppleAirPortBrcm4311.kext in order to get it working!

Supported Chipsets:
  • All Apple AirPort One Cards
  • 4306, Broadcom BCM4306 802.11 b/g Wireless LAN
  • 4309, Broadcom BCM4309 802.11 b Wireless LAN
  • 4318, Broadcom BCM4318 [AirForce One 54g] 802.11g Wireless LAN (confirmed)
  • 4320, Broadcom BCM4320 b/g (confirmed)
  • 4324, Broadcom BCM4324 802.11 a/b/g Wireless LAN
  • 2b continued
Cards that are known to work:
  • Belkin F5D7000
  • Buffalo WL12-PCI-G545
  • Linksys PCMCIA Card WPC54G
  • Probably tons of other cards, as long as they have a supported chipset...


hi mcsmart, it sounds promising. does this will work on my dell truemobile 1300 too? kindly advise. thanks!
lurknleech
Confirmed working on the BCM4306 in my Gateway M675, Thanks!
mcsmart
QUOTE(bagastya @ Aug 28 2007, 03:05 AM) *
hi mcsmart, it sounds promising. does this will work on my dell truemobile 1300 too? kindly advise. thanks!

i don't know, it depends on our wireless chipset... if it is a broadcom 43xx it should work...
mirinek
Hi mcsmart, your script does the job perfectly!
My wifi miniPCI car is BCM4306 (0x14E4,0x453) and now recognized as an AirPort one works great.
Thank you, this was only last thing to solve with my hacintosh to full hw support on this great OS :-)

I'm running: JaS MacOS X 10.4.8 on IBM ThinkPad T41p (need to replace mpci cisco card with the BCM one and make a hack on bios due to restriction by IBM...see thinkwiki.org - the IBM BIOS is set to only allow you to boot with an 'authorized' adapter installed)
jbo69er
Usage: unzip, open a Terminal window and type 'sudo ./bcm43xx_enabler.sh'
^^^

right you say unzip, when i tryed it i unzipped it, done exactly as you say and still doesnt do it, it says command not found?...any ideas? i reasly need my wireless working
mcsmart
QUOTE(jbo69er @ Oct 6 2007, 12:57 PM) *
Usage: unzip, open a Terminal window and type 'sudo ./bcm43xx_enabler.sh'
^^^

right you say unzip, when i tryed it i unzipped it, done exactly as you say and still doesnt do it, it says command not found?...any ideas? i reasly need my wireless working

Of course you have to be in the directory where you have downloaded & extracted the wireless enabler. If you've saved it to your Desktop, you have to enter 'sudo ./Desktop/bcm43xx_enabler.sh'.
Wenle Z.
i have a DYnex PCI wireless card, and it has a BCM4311 chip. how do i find the PCI IDs?
Wenle Z.
well, it doesn't work. Just like other tutorials, it only shows in Airport, but can't find / connect any network
mcsmart
It sounds like you need to swap your network interfaces in /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist.
Do you have 2 onboard LAN cards? That could be the problem.
Wenle Z.
yep, i have two lan on my motherboard. now, my lan dont even work now. any solution?
BOL_fan
I'm using a Dell 1390 card with a Broadcom 4311 or 4318 chip (I'm not 100% sure which). angel.png

The file you attached needs to be unzipped to the desktop, right? Because when I try your command in terminal, I get "command not found" or "no such file or directory" depending on whether I put a space in between sudo and the period. I feel like there's something painfully obvious my n00b brain is missing, but maybe you can help.

Thanks in advance!
pp02
oh crap. This'll teach me to pay more attention to things. it's been over ten years since I fiddled with other OS's so forgive me for the idiocracy.

New install of xxx 10.4.10. Gigbebyte p965 DQ6 mobo everything seems to work.

Broadcom 802.11g Network Adapeter.
I'm assuming in Windows XP hardward manager the PCI ID is the -

PCI\VEN_14E4&DEV_4320 ?

The actual ID Being 4320?

Anyroadup, I installed the script and not being able to find any location of the AppleAirPort kext accepted the default location, rebooted and it's all gone tits up. Flicky flashy OS X desktop.

joecool69
thanks a lot!I've had trouble finding this driver
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.