Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
Catalina does not have the AirportBrcm4331.kext in the IO80211Family.kext plugins. You can add the Mojave version to the Catalina plugin. Dosdude1's patcher can do this for you. Alternatively upgrade the hardware to a BCM94360CD as this works OOB with Catalina. Many have done this and it has the benefit of giving you all the handoff/continuity features. A thought for @cdf - can the AirportBrcm4331.kext be added to the Kernel part of OC to do this for members who wish to keep the old wifi card working in Catalina?

What problems are you having with the optical drive. Mine works fine.

Hi Flacko,

Thanks for your reply! Never mind about the optical drive 🙈, I just did not look for it in the right way. .

Do you have any suggestions for the names underneath the icons in the bootpicker screen?
 
Update, it works! I now have the boot switcher and it’s not being taken over by GRUB after a normal install with OC and Manjaro on same EFI partition. Thanks for the help @cdf @startergo

Nice! Some questions, if you don't mind: Did you use BlessOverride to point to GRUB? If not, did you check the contents of the EFI partition to make sure that OpenCore's bootx64.efi is still there (if you open the file with TextEdit, you should see "Acidanthera Research")?

A thought for @cdf - can the AirportBrcm4331.kext be added to the Kernel part of OC to do this for members who wish to keep the old wifi card working in Catalina?

Yes, adding the kext with OpenCore should work.

Do you have any suggestions for the names underneath the icons in the bootpicker screen?

As mentioned in the OpenCore manual, there are a few options. OpenCore should respect the names assigned to the drives in Finder. Verify .disk_label.contentDetails in \System\Library\CoreServices.
 
Thank you all for the amazing information. i have a perfect opencore 0.5.9 installation and also windows 10, it runs perfect.

the only thing that is not working on catalina, is the original wifi card. i read in another post that this is the kext (mojave) i need the make it work: /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext.


how can i install that kext without messing up my perfect mac?

Thanks so much!

ps. in my opinion, it would be a good idea to add this to the original WIKI, since the majority of people probably have the original wifi card.
 
Last edited:
Thank you all for the amazing information. i have a perfect opencore 0.5.9 installation and also windows 10, it runs perfect.

the only thing that is not working on catalina, is the original wifi card. i read in another post that this is the kext (mojave) i need the make it work: /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext.


how can i install that kext without messing up my perfect mac?

Thanks so much!

ps. in my opinion, it would be a good idea to add this to the original WIKI, since the majority of people probably have the original wifi card.
I am no expert on this but it would be an elegant solution for those using OC to add the required driver as it has come up a few times. You could try this:

Copy the Mojave AirportBrcm4331.kext to /Volumes/EFI/EFI/OC/Kexts

Then edit the OC config.plist (back up first!) by adding something like this to the Kernel key under the Add key:



<dict>
<key>BundlePath</key>
<string>AirportBrcm4331.kext</string>
<key>Comment</key>
<string>Old WiFi Fix</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string></string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>19.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>

Cannot guarantee it would work so if there is an expert feel free to add/comment.
 
  • Like
Reactions: octoviaa
Thank you all for the amazing information. i have a perfect opencore 0.5.9 installation and also windows 10, it runs perfect.

the only thing that is not working on catalina, is the original wifi card. i read in another post that this is the kext i need the make it work: /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext.


how can i install that kext without messing up my perfect mac?

Thanks so much!

ps. in my opinion, it would be a good idea to add this to the original WIKI, since the majority of people probably have the original wifi card.

Copy AirPortBrcm4331.kext to the Kext folder in OpenCore and add the kext to your configuration with

Code:
<dict>
<key>BundlePath</key>
<string>AirPortBrcm4331.kext</string>
<key>Comment</key>
<string>Legacy Wi-Fi</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AirPortBrcm4331</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>19.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>

See also the wiki for guidance on installing kexts. If this works, I can certainly mention it in the wiki.

(@Flacko, close but you forgot the executable path.)
 
  • Like
Reactions: octoviaa
Copy AirPortBrcm4331.kext to the Kext folder in OpenCore and add the kext to your configuration with

Code:
<dict>
<key>BundlePath</key>
<string>AirPortBrcm4331.kext</string>
<key>Comment</key>
<string>Legacy Wi-Fi</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AirPortBrcm4331</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>19.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>

See also the wiki for guidance on installing kexts. If this works, I can certainly mention it in the wiki.

(@Flacko, close but you forgot the executable path.)
I just followed your instructions but it didnt work. Wifi doesnt work. thats sad. any other ideas?
 
Copy AirPortBrcm4331.kext to the Kext folder in OpenCore and add the kext to your configuration with

Code:
<dict>
<key>BundlePath</key>
<string>AirPortBrcm4331.kext</string>
<key>Comment</key>
<string>Legacy Wi-Fi</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AirPortBrcm4331</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>19.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>

See also the wiki for guidance on installing kexts. If this works, I can certainly mention it in the wiki.

(@Flacko, close but you forgot the executable path.)
Many thanks for your comment. Still trying to get familiar with this. Impressed so far with OC. Seems it has not worked though.
 
I just followed your instructions but it didnt work. Wifi doesnt work. thats sad. any other ideas?
You can install the kext in /L/E:
Code:
sudo spctl --master-disable
sudo mount -uw
sudo killall Finder
sudo cp -R AirPortBrcm4331.kext /Library/Extensions
sudo chown -v -R root:wheel /System/Library/Extensions
sudo touch /System/Library/Extensions
sudo chmod -v -R 755 /Library/Extensions
sudo chown -v -R root:wheel /Library/Extensions
sudo touch /Library/Extensions
sudo kextcache -i /

To verify that the kext is loaded after reboot, open up Terminal again and type:
Code:
kextstat | grep -y "AirPortBrcm4331"
 
Last edited:
You can install the kext in /L/E:
Code:
sudo spctl --master-disable
sudo mount -uw
sudo killall Finder
sudo cp -R AirPortBrcm4331.kext /Library/Extensions
sudo chown -v -R root:wheel /System/Library/Extensions
sudo touch /System/Library/Extensions
sudo chmod -v -R 755 /Library/Extensions
sudo chown -v -R root:wheel /Library/Extensions
sudo touch /Library/Extensions
sudo kextcache -i /

i will wait for another person to try this and report back, i really dont wanna mess up my perfect computer. :D doesn't this way, will be broken again after catalina updates?

thanks you guys are awesome.

i dont really use Wifi much since i use ethernet. but is good to have it in case its needed in the future.
 
i will wait for another person to try this and report back, i really dont wanna mess up my perfect computer. :D doesn't this way, will be broken again after catalina updates?

thanks you guys are awesome.

i dont really use Wifi much since i use ethernet. but is good to have it in case its needed in the future.
It should not break anything. All aftermarket apps install their kexts in /L/E. This is a signed by Apple kext so you should not even need to disable SIP for this.
 
It should not break anything. All aftermarket apps install their kexts in /L/E. This is a signed by Apple kext so you should not even need to disable SIP for this.
ok i did your steps but the kext doesnt load. i also veryfied in About this mac /system report/extensions and it says not loaded.

how can i load it ?

also your first terminal code when i copy the whole thing and then paste it it doesnt seem to work, how is it supose to be pasted in terminal? one line at a time ?
 
ok i did your steps but the kext doesnt load. i also veryfied in About this mac /system report/extensions and it says not loaded.

how can i load it ?

also your first terminal code when i copy the whole thing and then paste it it doesnt seem to work, how is it supose to be pasted in terminal? one line at a time ?
Replace MojaveSSD with your Mojave drive label:
Code:
sudo cp -R /Volumes/MojaveSSD/System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext /Library/Extensions
 
Replace MojaveSSD with your Mojave drive label:
Code:
sudo cp -R /Volumes/MojaveSSD/System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext /Library/Extensions
i just did that and reeboot and nada. it doesnt load the kext. i checked again in about mac /extensions
 
i just did that and reeboot and nada. it doesnt load the kext. i checked again in about mac /extensions
Use Hackintool under utilities-->install kext(s):
1592079694141.png

Then you can examine the log window.
 

Might be OOT, but…

WTF what is “OpenCore Computer?”
Anyone knows deeper? Is have relation with OpenCore bootloader we known? I was asked there but mostly they just folks who never getting touch with OC.

Just afraid it would threatening our favorite boot loader existence. I baffled since they sounds too same.
 
Last edited:
You can install the kext in /L/E:
Code:
sudo spctl --master-disable
sudo mount -uw
sudo killall Finder
sudo cp -R AirPortBrcm4331.kext /Library/Extensions
sudo chown -v -R root:wheel /System/Library/Extensions
sudo touch /System/Library/Extensions
sudo chmod -v -R 755 /Library/Extensions
sudo chown -v -R root:wheel /Library/Extensions
sudo touch /Library/Extensions
sudo kextcache -i /

I tried this. All good until the end where it responded:
Code:
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331_P2PInterface' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331_P2PInterface' is malformed. Make sure your kext has been built against the correct headers.
Link failed (error code 5).
Prelink failed for com.apple.driver.AirPort.Brcm4331; omitting from prelinked kernel.

Exactly the same result using the Hackintool app linked above
 
Last edited:
i just did it with that hackintool and this is the error i get

kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331_P2PInterface' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331' is malformed. Make sure your kext has been built against the correct headers.
kxld[com.apple.driver.AirPort.Brcm4331]: The vtable 'vtable for AirPort_Brcm4331_P2PInterface' is malformed. Make sure your kext has been built against the correct headers.
Link failed (error code 5).
Prelink failed for com.apple.driver.AirPort.Brcm4331; omitting from prelinked kernel.
 
Download dosdude's Catalina Patcher folder:
Inside is the patched AirPortBrcm4331.kext
Code:
/Users/<user>/Downloads/macos-catalina-patcher-2f70edd420756be23dd3d396f016e1afe2508607/macOS Catalina Patcher/macOS Post Install/patchedkexts/bcm4321/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext
 
  • Like
Reactions: octoviaa
Download dosdude's Catalina Patcher folder:
Inside is the patched AirPortBrcm4331.kext
Code:
/Users/<user>/Downloads/macos-catalina-patcher-2f70edd420756be23dd3d396f016e1afe2508607/macOS Catalina Patcher/macOS Post Install/patchedkexts/bcm4321/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext
once i download this file, do i install it with hackintool to L/E of my main catalina HDD ?
 
  • Like
Reactions: startergo
Made the switch to OC, thanks to everyone who has worked so hard on this. Everything is working as expected after following the wiki.
My only lingering concern is the Windows SecureBoot issue...
Am I right in saying that all will be fine provided I never boot Windows outside of the OC boot picker?
The wiki doesn’t specify that other steps are necessary (others have deleted boot64.efi, for example)
I guess the question is “what is safest?”
Thanks
 
Made the switch to OC, thanks to everyone who has worked so hard on this. Everything is working as expected after following the wiki.
My only lingering concern is the Windows SecureBoot issue...
Am I right in saying that all will be fine provided I never boot Windows outside of the OC boot picker?
The wiki doesn’t specify that other steps are necessary (others have deleted boot64.efi, for example)
I guess the question is “what is safest?”
Thanks
Delete the bootx64.efi and check it /delete after every Windows update.
 
  • Like
Reactions: richgoga
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.