Contribute
Register

[Guide] Dell XPS 8930 Big Sur 11.4 (upgraded from Catalina 10.15.7), RX580/UHD630, OpenCore

Joined
May 28, 2018
Messages
126
Motherboard
Dell XPS 8930
CPU
i7-8700
Graphics
RX 580
Update 06/04/2021: I updated to OC 0.6.9 and then Big Sur to 11.4 smoothly under System Preferences. See attached files.

Update 01/21/2021: I upgraded to OC 0.6.5 then upgraded to Big Sir by downloading in the mac App Store. Things seem to be running smoothly without problem, but I haven't tested very extensively yet. I'll write back if there're problems down the road.

This is a new write-up based on my earlier guide on Mojave on the same system using Clover:

[Guide] Dell XPS 8930 Mojave 10.14.6 (Updated to Catalina 10.15.7), RX580/UHD630

A lot of discussions are still made on the old thread along with some very useful comments. I was going to upgrade to Big Sur. Big Sur requires either OpenCore or a new version of Clover that has functionalities based on OpenCore. I figured it would be better off jumping to OpenCore now instead of sticking to Clover. After successfully converting to OpenCore, I realized I want to wait a little longer before jumping to BigSur

Model: Dell XPS 8930
CPU: i7 8700 Coffee Lake
Chipset: z370
Graphics: Sapphire Nitro+ RX580 / Intel UHD Graphics 630
Ram: 32GB
Audio: ALC3861
Ethernet: Killer E2400 Gigabit Ethernet Controller
Wifi: BCM943602CS PCI-e card (non-OEM)

Harddisk:
  • 500GB WD-Black (2nd generation) m.2 NVMe x4 + OEM 2TB Harddisk fusion drive
  • 512GB Intel SSD for Windows
  • 2TB 3.5” HDD for Time Machine

macOS version: 10.15.7

What doesn't work:
  • OEM Wifi
  • Intel integrated graphics (output only) (QuickSync works): Dell BIOS seems to automatically turn off output of the IGPU when a discrete graphics card has been installed. I have not tried the -wegnoegpu flag for whatevergreen

Tools needed:
  • macOS Catalina bootable USB drive
  • Ubuntu bootable live USB drive
  • A USB wifi adaptor (optional, you can use ethernet instead), or
    • A BCM943602CS PCI-e card with a spare USB 2.0 cord. Should work out of the box when connected correctly. See below
  • Apps (please google and download the latest version)
  • EFI Drivers: (Use drivers that came with your downloaded version of OpenCore)
    • HfsPlus.efi
    • OpenCanopy.efi
    • OpenRuntime.efi
  • Kexts:
    • EFI/OC/kexts/
      • AppleALC
      • AtherosE2200Ethernet
      • Lilu.kext
      • SMCDellSensors.kext
      • SMCProcessor.kext
      • SMCSuperIO.kext
      • USB-Map.kext (Build your own or use attached if you have the exact same model as I do)
      • VirtualSMC.kext
      • Whatevergreen.kext

Step 1: create bootable macOS installation USB drive
  1. Follow this guide to create the bootable drive (https://dortania.github.io/OpenCore-Install-Guide/installer-guide/)
Step 2: Prepare and configure OpenCore bootloader
  1. This guide really walk you through step by step: https://dortania.github.io/OpenCore-Install-Guide/installer-guide/opencore-efi.html
  2. 8700 is Coffee lake. Follow all Coffee lake recommendation in that guide
  3. I've attached my EFI folder for those who are lazy. Remember to put in your own serial numbers and enable/disable SSDT patches in ACPI
  4. I kept using iMac18,3 because I don't want Apple to see a new SMBIOS attached to the same Serial Number
  5. for IGPU, I kept using an AAPL-ig-platform-id of 07009B3E instead of a headless connector because it was working with Clover and it's still working with OpenCore!
Step 3: wipe hard drive with Ubuntu live CD
  1. Dell has a 500Mb EFI folder in front and a Recovery partition at the end of the disk. I tried installing just by using Disk Utilities in the macOS installer to wipe the disk. That was a mistake. The computer kept trying to boot into recovery but couldn’t because the main OS has been wiped.
  2. I ended up booting with Ubuntu live USB to wipe the drive clean and delete all existing partitions
    1. Boot computer with Ubuntu live USB
    2. Click on the “Activities” text on the top left corner, then in the search bar on top in the middle of your screen, type in “disks”. First result should be Ubuntu’s “disk utilities”
    3. Choose the correct hard disk (disk size is a good estimate), and delete all partitions you see there
Step 4: Install macOS
  1. Plug the USB drive into the machine you want to install hackintosh onto
  2. Boot into bios and make the suggested changes
    1. Intel SpeedStep, Virtualization, VT for Direct I/O = Enabled
    2. SATA Operation: ACHI
    3. Everything else = disabled
    4. Secure Boot = Disabled
  3. Boot using the EFI installation drive
  4. Follow the macOS installation wizard, create fusion drive here before installation if you intend to use fusion drive. A quick google search should return some good write-ups
Step 5: Boot without USB
  1. Copy your EFI partition from the USB installation drive to the EFI partition of your Macintosh HD. You can use my attached files, but remember to put in your own serial numbers
  2. Follow this guide for GUI OS Picker: https://dortania.github.io/OpenCore-Post-Install/cosmetic/gui.html#setting-up-opencore-s-gui
Step 6: Inject USB Properties and Power Properties
  1. If you have the same exact model as I do, my USB-Map.kext should have done the job for you
  2. Follow this guide: https://dortania.github.io/OpenCore-Post-Install/usb/#macos-and-the-15-port-limit
  3. Below is a table of what ports in IOReg correspond to physical port location
  4. PXSX is a different USB controller (ASMedia 1242) pci1b21_1242. This controller controls the USB 3.1 gen2 port (2.0 and 3.1 gen2), and the rear USB type-c port (2.0 and 3.1 gen2)
    • The 3.1 gen2 port (PXSX HS01 (USB 2.0 mode and SS01 (USB 3 mode)) is being misrecognized as an internal port. OpenCore does not suggest injecting DSDT, fearing that it would affect other OS's
    • I have included a DSDT Hotpatch in my OpenCore config.
    • Basically, you want to change
    • Code:
                              Device (HS01)
      {
      Name (_ADR, One) // _ADR: Address
      Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
      {
      Return (TUPC (0xFF))
                                  }
    • into
    • Code:
                              Device (HS01)
      {
      Name (_ADR, One) // _ADR: Address
      Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
      {
      Return (TUPC (0x02))
                                  }
    • And same for Device SS01 into Return (TUPC (0x03))
    • By using the iasl -l flag (iasl -l -dl dsdt.aml) as explained in Rehabman's post: https://www.tonymacx86.com/threads/guide-using-clover-to-hotpatch-acpi.200137/
    • We can find out the original code's binary is "5B822848 53303108 5F414452 01140D5F 55504300 A4545550 430AFF"
    • By hotpatching the FF at the very end to 02, we change the USB type from FF (255, or internal) into USB 2.0
    • Do the same for SS01, whose binary is "5B822953 53303108 5F414452 0A03140D 5F555043 00A45455 50430AFF"
    • By hotpatching the FF at the very end to 03, we change the USB type from FF (255, or internal) into USB 3
    • Now any USB drives attached to that port should be properly recognized as external drives

proxy.php_1.png


Step 7: Enable hardware temperature and fan speed sensors
  1. Put SMCDellSensors.kext, SMCProcessor.kext, and SMCSuperIO.kext into EFI/OC/kexts/ if not already
  2. Reboot
  3. Use HWMonitor or other monitoring software

Step 8: SSDT
  1. Follow this guide and apply the following SSDT: https://dortania.github.io/Getting-Started-With-ACPI/
    1. SSDT-EC-USBX
    2. SSDT-PLUG
  2. I did not need SSDT-AWAC. To check whether you need it or not, follow the guide and manually build your own SSDT
  3. You can use pre-built SSDT's if you do not want to go too deep

Step 9: Install natively supported Wifi and Bluetooth card for handoff and continuity
  1. I originally tried to use the BCM94360CS2 MacBook Air card with m2 (a+e key) adapter for the built-in USB connection and internal antennae. Sadly there was not enough clearance to install the card. The m2 port is too close to the PCI-e x16 port that this card simply won't fit. A flex cable for a+e keyed m2 ports costs $40+, so I went the other route instead.
  2. I ended up purchasing a BCM943602CS PCI-e card and installed into the PCI-e x1 port.
  3. For handoff to work, you would have to plug in the 4-pin port on the card into a USB port. Unfortunately the XPS 8930 does not have an available internal USB header. What I ended up doing was cutting an spare USB 2.0 cable that I have, and attach the cable that came with the Wifi+Bluetooth card to it so I can plug it into an external USB 2.0 port. You would only need to connect the 4 color wires to their corresponding color wires of the cut USB cable. Breadboard jumper wires, heat-shrink tubings and the heat gun from my Arduino project came in really handy. You can probably make do with electrical tape although the connection wouldn't be as good. For a more robust cable, soldering is recommended.
  4. After connecting everything, Wifi and Bluetooth should work out of the box.
  5. Unlock with Apple Watch works sometimes. Seems like the trick with Unlock with Apple Watch is signing out and back in of your iCloud account, and restarting both your hackintosh and Apple Watch. I have it working consistently well.
 

Attachments

  • EFI 10.15.7.zip
    2.2 MB · Views: 448
  • EFI 11.1 OC 0.6.5.zip
    2.2 MB · Views: 431
  • EFI 11.4 OC 0.6.9.zip
    2.3 MB · Views: 470
Last edited:
Hello dandelion

Very nice write up ! do u know if i can just do

sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume

and then unzip your efi folder to the USB ?
 
Hello dandelion

Very nice write up ! do u know if i can just do



and then unzip your efi folder to the USB ?
A few things I’ll do
  • I took out serial numbers from my confit.plist. You’ll have to put your own in
  • make sure we have nearly identical hardware
  • test boot Catalina first
  • read up here https://dortania.github.io/OpenCore...ig-sur/#kernel-collections-vs-prelinkedkernel
  • backup your current system and efi folder with carboncopycloner
  • Look up what app is not supported by Big Sur. I know little snitch 4 won’t work anymore
  • Post on here and let me know how it went!
 
Hi Dandelion,

Followed your guide for my Dell XPS 8930 hack and everything is working. Great write-up again! Many thanks!
I didn't go for a Broadcom Wifi and Bluetooth card hence i don't need wifi on my machine. For the matter of Bluetooth, the internal bluetooth of the XPS 8930 works, but fails sometimes (bluetooth connection gets lost and to restore the only thing that works is a reboot) Also handoff isn't supported. So instead I purchased a bluetooth dongle from IOgear type GBU521W6 which has a Broadcom BCM20702A0 chip inside it and thus should work natively in macOS. So I would like to disable the internal Dell wifi/bluetooth card. When i open up the machine the card seems to attached directly to the motherboard with no power cable to unplug. I the checked the BIOS, no option to disable bluetooth there. So I was wondering if there is a method to disable this card in the OS without having to physically remove it from the motherboard. How did you disable this card so it won't interfere with your installed Broadcom Wifi/Bluetooth card?
 
Hi Dandelion,

Followed your guide for my Dell XPS 8930 hack and everything is working. Great write-up again! Many thanks!
I didn't go for a Broadcom Wifi and Bluetooth card hence i don't need wifi on my machine. For the matter of Bluetooth, the internal bluetooth of the XPS 8930 works, but fails sometimes (bluetooth connection gets lost and to restore the only thing that works is a reboot) Also handoff isn't supported. So instead I purchased a bluetooth dongle from IOgear type GBU521W6 which has a Broadcom BCM20702A0 chip inside it and thus should work natively in macOS. So I would like to disable the internal Dell wifi/bluetooth card. When i open up the machine the card seems to attached directly to the motherboard with no power cable to unplug. I the checked the BIOS, no option to disable bluetooth there. So I was wondering if there is a method to disable this card in the OS without having to physically remove it from the motherboard. How did you disable this card so it won't interfere with your installed Broadcom Wifi/Bluetooth card?
You can disable the internal USB port of HS08 under XHCI. It’s the one for the internal m.2 port.
 
Thank you for the quick reply. Under Clover i managed the USB ports in Hackintool, now in Open Core I'm not sure if Hackintool is the best option? What do you suggest?
I made my USB-MAP.kext manually. You can follow this guide
I didn’t reenumerate my ports, so the port assignments in my table should stay the same. It’ should be the same for you compared to what you had before as well.
 
Managed to adapt the USB-MAP.kext. The bluetooth IOgear dongle works to connect my magic mouse and keyboard, Handoff still doesn't work, i found this https://www.insanelymac.com/forum/t...ing-handoff-for-non-apple-bt4-devices/?page=3 where they suggest to patch the IObluetootfamily kext. But don't know how to do this in OC.
On another topic: did you encounter sleep/wake problems? Because when my XPS goes to sleep, I can't wake it without reboot.
 
Hi Dandelionclock

Congratulations on getting things up and running with OC

I see that these are currently on sale at costco. Do you think you guide would work with one of these (with the necessary adjustments for newer processor)?

 
Running Big Sur 11.0.1 for a few days now and everything's going smooth.

Screenshot Big Sur.png

When I update Open Core however to OC 0.6.4, update my kexts (Apple ALC, Atheros2200, Lilu, VirtualSMC and Whatevergreen) and adjust my config.plist after doing the comparison with the sample.plist, I get kernel panic when booting. Did the update on my bootable USB flash drive and installed the OC Debug version.
Below is a picture of my screen during kernel panic. Added my config.plist as well. Any ideas on how to solve this?

IMG_0183.jpg
 

Attachments

  • config.plist.zip
    5.1 KB · Views: 132
Back
Top