Contribute
Register

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

Status
Not open for further replies.
Joined
May 28, 2018
Messages
126
Motherboard
Dell XPS 8930
CPU
i7-8700
Graphics
RX 580
Update 11/19/2020: I have successfully switched over to OpenCore. See new post for more info
https://www.tonymacx86.com/threads/...atalina-10-15-7-rx580-uhd630-opencore.306636/

Update 10/19/2020: Update to 10.15.7 was effortless. Clover, AppleALC, WhateverGreen, and Lilu were updated to the latest version. APFS.efi in the EFI partition was also updated to 10.15.7 before pressing update (required for fusion drive).

Update 09/18/2020: Update to 10.15.6 was effortless. Clover, AppleALC, WhateverGreen, and Lilu were updated to the latest version. APFS.efi in the EFI partition was also updated to 10.15.6 before pressing update (required for fusion drive).

Update 06/02/2020: Update to 10.15.5 was effortless. AppleALC, WhateverGreen, and Lilu were updated to the latest version. APFS.efi in the EFI partition was also updated to 10.15.5 before pressing update (required for fusion drive). After several restarts everything worked. Supplemental update also updated flawlessly.

Update 04/12/2020: 10.15.4 was a buggy release from Apple. I had trouble copying big files, and Time Machine refused to work. I updated to 10.15.4 supplemental update without any problems, and things seem to be more stable now.


Update 04/07/2020: Update to 10.15.4 was successful. Had to move USBInjectAll and XHCI-200-series-injector to EFI/Clover/kexts/other per recommendations. Updated Clover to r5109, and AppleALC, WhateverGreen, and Lilu to the latest version. I put in the latest APFS.efi into my EFI drivers before starting the update this time. Everything went smoothly.

Update 12/21/2019: Update to 10.15.2 was successful. Had to boot into windows half-way and replace the APFS.efi with 10.15.2 in the EFI partition.

Update 11/13/2019: Update to 10.15.1 was successful with the latest version of WhateverGreen.

Update 10/18/2019: I was able to update to Catalina with relative ease. See below for what I did.

This is a new write-up based on my earlier guide on High Sierra on the same system:

Dell XPS 8930 High Sierra Guide 10.13.6 (Nvidia 1050 Ti)

A lot of discussions are still made on the old thread along with some very useful comments. You may want to check that thread out even though you are installing Mojave.

Update 6/26/19: I have finally mapped the remaining USB C ports. The only catch is all the USB ports on this system go over 15-port limit. So you may have to disable some ports, or you may have to use the remove USB port limit patch which gives me trouble sometimes (e.g. USB devices gets "unplugged" as I plug another USB device in)

Model: Dell XPS 8930
CPU: i7 8700 Coffee Lake
Chipset: z370
Graphics: Sapphire Nitro+ RX580 / Intel UHD Graphics 630
Ram: 16GB
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
Installed macOS version: 10.14.4
Updated macOS version: 10.15.7

What doesn't work:
  • OEM Wifi
  • USB C ports (because I do not have any USB-C devices to map the ports) See correct port injections for all USB ports (including 2.0, 3.0, 3.1 gen2, and USB C) (06/26/2019)
  • 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.
Tools needed:
  • macOS Mojave bootable USB drive (created with another macOS computer)
  • 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:
    • ApfsDriverLoder-64.efi (For original installation only! Does not work with fusion drives afterwards!)
    • APFS.efi from your installation (For subsequent system boot after your installation. Make sure you copy this into your clover EFI Drivers right after your first boot and remove APFSDriverLoader-64.efi! I got stuck here because I needed my APFS.efi to get clover to boot my system, but I would first need clover to first boot my system to obtain my APFS.efi.... so I was in a catch-22)
    • AptioMemoryFix-64.efi
    • NTFS-64.efi
    • VBoxHfs-64.efi
  • Kexts:
    • /Library/Extensions (All kexts are now recommended to be placed in EFI/clover/kexts/other for Catalina 10.15.4)
      • AppleALC (Needs to be in EFI/Clover/kexts/other for Catalina. Didn't look into why. Probably just needs to be with Lilu and WhateverGreen)
      • USBInjectAll
      • XHCI-200-series-injector
    • EFI/Clover/kexts/other
      • AppleALC
      • FakeSMC
      • FakeSMC_ACPISensors
      • FakeSMC_CPUSensors
      • FakeSMC_GPUSensors
      • FakeSMC_LPCSensors
      • FakeSMC_SMMSensors.kext
      • AtherosE2200Ethernet
      • USBInjectAll
      • XHCI-200-series-injector
      • The following two I decided to put in EFI because they are necessary to get any display. If they're in L/E you will not get any display when booting into recovery
        • Lilu
        • WhateverGreen (I used a pre-released version 1.2.8 because of problems with UHD 630)
Step 1: create bootable macOS installation USB drive
  1. Follow this guide to create the bootable drive using UniBeast (https://www.tonymacx86.com/threads/...ierra-on-any-supported-intel-based-pc.235474/)
Step 2: 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 3: Install macOS
  1. For ethernet, install AtherosE2200Ethernet.kext into EFI/Clover/kext/others folder of install macOS USB drive
  2. Plug the USB drive into the machine you want to install hackintosh onto
  3. 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
  4. Boot using the EFI installation drive
  5. 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
  6. Disable hibernation:
  7. Code:
    sudo pmset -a hibernatemode 0
    sudo rm /var/vm/sleepimage
    sudo mkdir /var/vm/sleepimage
Step 4: Clover configuration
  1. Tl;dr: use the attached config.plist and skip to the next step
  2. ACPI -> enable change GFX0 to IGPU. AFAIK WhateverGreen automatically do this for *most* instances of GFX0 but sometimes you may still need to enable this patch
  3. Boot -> boot arguments -> "-v" (optional, but helps a lot with troubleshooting)
  4. Boot -> check "neverhibernate"
  5. For 4K screens: Boot Graphics -> EfILoginHiDPI = 1, UScale = 2
  6. Devices -> USB -> check "inject" and "FixOwnership"
  7. Devices -> Audio -> Inject "1"
  8. To set up UHD 630
    1. Devices -> Properties (Bottom, next to Arbitrary) -> Devices (Bottom Left) -> PciRoot(0x0)/Pci(0x2,0x0)
    2. Devices -> Properties -> Devices -> Properties -> Bottom Right ->
      1. AAPL,ig-platform-id; 07009B3E (00009B3E for headless. I haven't tested it. Dell Bios makes it headless regardless whenever a discrete graphics card is plugged in); Data
      2. framebuffer-fbmem; 00000000; Data
      3. framebuffer-unifiedmem; 00000080; Data
      4. framebuffer-patch-enable; 01000000; Data
      5. framebuffer-stolenmem; 00009003; Data
  9. Graphics -> Leave everything BLANK
  10. Kernel and Kext Patches -> AppleRTC, AppleIntelCPUPM
  11. Kernel and Kext Patches -> Disable USB Port Limit (See Step 5)
  12. SMBIOS: iMac18,3 (Use iMac18,1 if you do not have a discrete graphic card)
  13. System Parameters -> Check Inject System ID; Inject Kexts -> Detect
ScreenShot20190404at.png


Step 5: Inject USB Properties and Power Properties
Thanks @lisai9093 for correction on card reader
Update (06/26/2019): The most up-to-date SSDT-UIAC contains the correct USB injection for the front USB C port. Please note the 2.0 port of the rear 3rd and 4th USB 3.0 port, as well as internal bluetooth has been disabled. Please comment/uncomment out the correct port injections to suit your own needs.

  1. Tl;dr: use the attached SSDT-UIAC.aml and skip to the next step
  2. Follow these two guides:
    1. https://www.tonymacx86.com/threads/guide-creating-a-custom-ssdt-for-usbinjectall-kext.211311/
    2. https://www.tonymacx86.com/threads/guide-usb-power-property-injection-for-sierra-and-later.222266/
  3. Add the port limit patch in clover config
  4. Below is a table of what ports in IOReg correspond to physical port location
  5. Do not use FakePCIID_XHCIMux.kext because chipset z370 does not have an EHCI controller to move USB 2.0 ports to
  6. Use bootleg example: uia_exclude=SS06;SS07 to disable any ports that you do not need in case it goes over the 15-port limit
  7. Turn off the 15-port limit patch after done
  8. I do not have any USB-C device so I do not have them tested/listed/enabled
  9. May need to turn on clover config -> devices -> USB -> fix ownership. I did not have to until I cloned my drive onto a fusion drive and lost all my USB ports except for the USB 3.1 gen 2 port under PXSX
  10. PXSX is a different USB controller (ASMedia 1242) pci1b21_1242. This controller controls the USB 3.1 gen2 port, the rear USB type-c port (2.0 and 3.1 gen2), and an unknown “internal” port.
    1. The 3.1 gen2 port is misrecognized as an internal port. Edit DSDT by looking for Device (HS01) and change “Return (TUPC (0xFF))” to “Return (TUPC (0x03))
    2. Not sure if necessary: Open the Info.plist in USBInjectAll.kext and add these lines under <key>Configuration</key> <dict>
    3. Code:
            <key>port-count</key>
      <data>BAAAAA==</data>
      <key>ports</key>
      <dict>
      <key>HS01</key>
      <dict>
      <key>UsbConnector</key>
      <integer>3</integer>
      <key>port</key>
      <data>AQAAAA==</data>
      </dict>
      <key>HS02</key>
      <dict>
      <key>UsbConnector</key>
      <integer>9</integer>
      <key>port</key>
      <data>AgAAAA==</data>
      </dict>
      <key>SS01</key>
      <dict>
      <key>UsbConnector</key>
      <integer>255</integer>
      <key>port</key>
      <data>AwAAAA==</data>
      </dict>
      <key>SS02</key>
      <dict>
      <key>UsbConnector</key>
      <integer>9</integer>
      <key>port</key>
      <data>BAAAAA==</data>
      </dict>
      </dict>
                  </dict>
ScreenShot20190626at.png


Step 6: Enable hardware temperature and fan speed sensors
  1. Put FakeSMC_ACPISensors.kext, FakeSMC_CPUSensors.kext, FakeSMC_GPUSensors.kext, FakeSMC_LPCSensors.kext, and FakeSMC_SMMSensors.kext into EFI/Clover/kexts/Other
  2. Reboot
  3. Use HWMonitor or other monitoring software
Step 7: DSDT and SSDT Patches
  1. Apply the following DSDT Patches using MaciASL, see this guidefor details. I have attached my DSDT but we probably have different BIOS version so it may not work for you
    1. _Wak Arg0 v2: For sleep/wake
    2. HPET
    3. SMBUS
    4. IRQ: For sound
    5. OS Check
    6. Mutex with non-zero SyncLevel
    7. Add IMEI
    8. Shutdown fix v2
    9. PXSX USB Fix from 0x99 to 0x03 (see step 4.10.1)
    10. PXSX USB Power Injection (see step 4.10.1)
  2. Apply the following SSDT Patches (Tl;dr, see step 5.1)
    1. SSDT-UIAC (Follow Rehabman’s USB PORT injection guide)
    2. SSDT-USBX (Follow Rehabman’s USB POWer injection guide, may be combined into SSDT-UIAC)
    3. SSDT-EC (Follow Rehabman’s USB POWer injection guide)
Step 8: 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.
  6. I haven't been able to get Continuity Camera working yet. Continuity Camera started working after like a week or so. Maybe sync your iPhone with iTunes a couple of times?
Step 9: Update to 10.14.6
I didn't have much problem except the APFS.efi seems to have been updated again. I was able to boot into the system, but a lot of programs would not run. I was able to mount my EFI partition with terminal and copy the latest apfs.efi from my system to the clover driver folder. After a reboot everything was normal.

Step 10: Update to Catalina (10/18/2019)
Updating to Catalina was relatively easy. The most difficult part with the UHD630 that was changed in Mojave stayed the same in Catalina. Because of the minimal changes, the only file I am uploading is AFPS for 10.15. Using a fusion drive necessitates having the actual apfs.efi file in my EFI partition.
  1. Update Clover. I am currently on 5070. I went into problem here because I thought I updated Clover, but somehow maybe it was installed into an EFI partition of a different drive. With an old version of Clover, I kept getting the "[IGPU] Hash data from me never returned" error. To be sure, you can manually overwrite the CLOVERX64.efi in your EFI partition with the latest version.
  2. Update Whatevergree to 1.3.3 and Lilu to 1.3.8 in EFI/kext/Other
  3. Update AppleALC to 1.4.2 in /Library/Extensions
  4. No changes in config.plist
  5. Download and install macOS Catalina in Mojave System Preference! Download sometimes slows down to a crawl. Press the "x" button to stop and resume the download. That speeds it up.
  6. The installation process is painfully slow. It may be because I have a fusion drive. I have seen people complaining on Apple support forum that it took over 48 hours. Do not update until you can go without your computer for an extended amount of time. As with all minor and major macOS update, I unplugged all USB devices except for my mouse and keyboard. That seems to have sped things up.
Step 11: Update to 10.15.1 (11/13/2019)
  1. If you use AMD Graphics, you will need to update WhateverGreen to 1.3.4 before attempting this update. In 1.3.4 WhateverGreen "added support for disabled AppleGraphicsDevicePolicy in AMD drivers on 10.15.1." Make sure you first update WhateverGreen before processing the update. If you find out too late, you can always boot into Windows (if you have dual boot enabled) and mount the EFI folder from there.
  2. APFS.efi has been updated again, which manual update is needed for fusion drive user. I needed to replace the file in between reboots during the update. If I update APFS.efi before updating the system, it won't boot. If I don't do it, it won't update. See attached.
Step 12: Fix Audio (AppleALC) (12/05/2019)
  1. Update AppleALC, WhateverGreen, and Lilu and put them in the same folder (either EFI or L/E). I used to install WhateverGreen and Lilu in EFI and AppleALC in L/E, but it appears that AppleALC would refuse to load. Once I put them all in EFI, audio came back.

EOF
 

Attachments

  • 10.14.4.zip
    1.3 MB · Views: 694
  • apfs 10.14.4.efi
    587 KB · Views: 324
  • apfs 10.14.5.efi
    587.4 KB · Views: 386
  • SSDT-UIAC.zip
    2.7 KB · Views: 405
  • apfs 10.14.6.efi
    588.9 KB · Views: 407
  • apfs 10.15.efi
    613.6 KB · Views: 373
  • apfs 10.15.1.efi
    613.5 KB · Views: 415
  • apfs 10.15.2.efi
    613.5 KB · Views: 425
  • apfs 10.15.4.efi
    614.8 KB · Views: 311
  • apfs 10.15.5.efi
    614.8 KB · Views: 313
  • apfs 10.15.6.efi
    615.4 KB · Views: 251
  • apfs 10.15.7.zip
    286.3 KB · Views: 208
Last edited:
This is a new write-up based on my earlier guide on High Sierra on the same system:

Dell XPS 8930 High Sierra Guide 10.13.6 (Nvidia 1050 Ti)

Model: Dell XPS 8930
CPU: i7 8700 Coffee Lake
Chipset: z370
Graphics: Sapphire Nitro+ RX580 / Intel UHD Graphics 630
Ram: 16GB
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
Installed macOS version: 10.14.4

What doesn't work:
  • OEM Wifi
  • USB C ports (because I do not have any USB-C devices to map the ports)
  • 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.
Tools needed:
  • macOS High Sierra bootable USB drive (created with another macOS computer)
  • 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:
    • ApfsDriverLoder-64.efi (For original installation only! Does not work with fusion drives afterwards!)
    • APFS.efi from your installation (For subsequent system boot after your installation. Make sure you copy this into your clover EFI Drivers right after your first boot and remove APFSDriverLoader-64.efi! I got stuck here because I needed my APFS.efi to get clover to boot my system, but I would first need clover to first boot my system to obtain my APFS.efi.... so I was in a catch-22)
    • AptioMemoryFix-64.efi
    • NTFS-64.efi
    • VBoxHfs-64.efi
  • Kexts:
    • /Library/Extensions
      • AppleALC
      • USBInjectAll
      • XHCI-200-series-injector
    • EFI/Clover/kexts/other
      • FakeSMC
      • FakeSMC_ACPISensors
      • FakeSMC_CPUSensors
      • FakeSMC_GPUSensors
      • FakeSMC_LPCSensors
      • FakeSMC_SMMSensors.kext
      • AtherosE2200Ethernet
      • The following two I decided to put in EFI because they are necessary to get any display. If they're in L/E you will not get any display when booting into recovery
        • Lilu
        • WhateverGreen (I used a pre-released version 1.2.8 because of problems with UHD 630)
Step 1: create bootable macOS installation USB drive
  1. Follow this guide to create the bootable drive using UniBeast (https://www.tonymacx86.com/threads/...ierra-on-any-supported-intel-based-pc.235474/)
Step 2: 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 3: Install macOS
  1. For ethernet, install AtherosE2200Ethernet.kext into EFI/Clover/kext/others folder of install macOS USB drive
  2. Plug the USB drive into the machine you want to install hackintosh onto
  3. 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
  4. Boot using the EFI installation drive
  5. 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
  6. Disable hibernation:
  7. Code:
    sudo pmset -a hibernatemode 0
    sudo rm /var/vm/sleepimage
    sudo mkdir /var/vm/sleepimage
Step 4: Clover configuration
  1. Tl;dr: use the attached config.plist and skip to the next step
  2. ACPI -> enable change GFX0 to IGPU. AFAIK WhateverGreen automatically do this for *most* instances of GFX0 but sometimes you may still need to enable this patch
  3. Boot -> boot arguments -> "-v" (optional, but helps a lot with troubleshooting)
  4. Boot -> check "neverhibernate"
  5. For 4K screens: Boot Graphics -> EfILoginHiDPI = 1, UScale = 2
  6. Devices -> USB -> check "inject" and "FixOwnership"
  7. Devices -> Audio -> Inject "1"
  8. To set up UHD 630
    1. Devices -> Properties (Bottom, next to Arbitrary) -> Devices (Bottom Left) -> PciRoot(0x0)/Pci(0x2,0x0)
    2. Devices -> Properties -> Devices -> Properties -> Bottom Right ->
      1. AAPL,ig-platform-id; 07009B3E (00009B3E for headless. I haven't tested it. Dell Bios makes it headless regardless whenever a discrete graphics card is plugged in); Data
      2. framebuffer-fbmem; 00000000; Data
      3. framebuffer-unifiedmem; 00000080; Data
      4. framebuffer-patch-enable; 01000000; Data
      5. framebuffer-stolenmem; 00009003; Data
  9. Graphics -> Leave everything BLANK
  10. Kernel and Kext Patches -> AppleRTC, AppleIntelCPUPM
  11. Kernel and Kext Patches -> Disable USB Port Limit (See Step 5)
  12. SMBIOS: iMac18,3 (Use iMac18,1 if you do not have a discrete graphic card)
  13. System Parameters -> Check Inject System ID; Inject Kexts -> Detect
ScreenShot20190404at.png


Step 5: Inject USB Properties and Power Properties
Thanks @lisai9093 for correction on card reader
  1. Tl;dr: use the attached SSDT-EC.aml and SSDT-UIAC.aml and skip to the next step
  2. Follow these two guides:
    1. https://www.tonymacx86.com/threads/guide-creating-a-custom-ssdt-for-usbinjectall-kext.211311/
    2. https://www.tonymacx86.com/threads/guide-usb-power-property-injection-for-sierra-and-later.222266/
  3. Add the port limit patch in clover config
  4. Below is a table of what ports in IOReg correspond to physical port location
  5. Do not use FakePCIID_XHCIMux.kext because chipset z370 does not have an EHCI controller to move USB 2.0 ports to
  6. Use bootleg example: uia_exclude=SS06;SS07 to disable any ports that you do not need in case it goes over the 15-port limit
  7. Turn off the 15-port limit after done
  8. I do not have any USB-C device so I do not have them tested/listed/enabled
  9. May need to turn on clover config -> devices -> USB -> fix ownership. I did not have to until I cloned my drive onto a fusion drive and lost all my USB ports except for the USB 3.1 gen 2 port under PXSX
  10. PXSX is a different USB controller (ASMedia 1242) pci1b21_1242. This controller controls the USB 3.1 gen2 port, the 2 USB type-c ports, and an unknown “internal” port.
    1. The 3.1 gen2 port is misrecognized as an internal port. Edit DSDT by looking for Device (HS01) and change “Return (TUPC (0xFF))” to “Return (TUPC (0x03))
    2. Not sure if necessary: Open the Info.plist in USBInjectAll.kext and add these lines under <key>Configuration</key> <dict>
    3. Code:
            <key>port-count</key>
                  <data>BAAAAA==</data>
                  <key>ports</key>
                  <dict>
                                  <key>HS01</key>
                                      <dict>
                                  <key>UsbConnector</key>
                                  <integer>3</integer>
                                  <key>port</key>
                                  <data>AQAAAA==</data>
                              </dict>
                              <key>HS02</key>
                              <dict>
                                  <key>UsbConnector</key>
                                  <integer>9</integer>
                                  <key>port</key>
                                  <data>AgAAAA==</data>
                              </dict>
                              <key>SS01</key>
                              <dict>
                                  <key>UsbConnector</key>
                                  <integer>255</integer>
                                  <key>port</key>
                                  <data>AwAAAA==</data>
                              </dict>
                              <key>SS02</key>
                              <dict>
                                  <key>UsbConnector</key>
                                  <integer>9</integer>
                                  <key>port</key>
                                  <data>BAAAAA==</data>
                              </dict>
                          </dict>
                  </dict>
Screenshot2019031820.png


Step 6: Enable hardware temperature and fan speed sensors
  1. Put FakeSMC_ACPISensors.kext, FakeSMC_CPUSensors.kext, FakeSMC_GPUSensors.kext, FakeSMC_LPCSensors.kext, and FakeSMC_SMMSensors.kext into EFI/Clover/kexts/Other
  2. Reboot
  3. Use HWMonitor or other monitoring software
Step 7: DSDT and SSDT Patches
  1. Apply the following DSDT Patches using MaciASL, see this guide for details. I have attached my DSDT but we probably have different BIOS version so it may not work for you
    1. _Wak Arg0 v2: For sleep/wake
    2. HPET
    3. SMBUS
    4. IRQ: For sound
    5. OS Check
    6. Mutex with non-zero SyncLevel
    7. Add IMEI
    8. Shutdown fix v2
    9. PXSX USB Fix from 0x99 to 0x03 (see step 4.10.1)
    10. PXSX USB Power Injection (see step 4.10.1)
  2. Apply the following SSDT Patches
    1. SSDT-UIAC (Follow Rehabman’s USB PORT injection guide)
    2. SSDT-USBX (Follow Rehabman’s USB POWer injection guide, may be combined into SSDT-UIAC)
    3. SSDT-EC (Follow Rehabman’s USB POWer injection guide)
Step 8: 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. I haven't been able to get Continuity Camera working yet.
EOL
Very nice post. Although I do not plan to build this exactly, I specifically interested in the wifi+BT solution, particularly the custom USB connection to support the BT. Could you share an image of your cable/wiring?
 
Very nice post. Although I do not plan to build this exactly, I specifically interested in the wifi+BT solution, particularly the custom USB connection to support the BT. Could you share an image of your cable/wiring?
My wiring is all shrink wrapped so it won’t show you much unfortunately. But basically you just snip a regular usb cable and you’ll find 4 colored wires inside. Connect those 4 color wires to the corresponding pin. If you cannot figure out the correct pin for the color, the cable attached that’s for internal usb header is color coded I believe.

Look up usb cable color wires on google and you’ll see which wire is for what.
 
Update 6/26/19: I have finally mapped the remaining USB C ports. The only catch is all the USB ports on this system go over 15-port limit. So you may have to disable some ports, or you may have to use the remove USB port limit patch which gives me trouble sometimes (e.g. USB devices gets "unplugged" as I plug another USB device in)
 
Hi,
I follow your guide but run into this issue. EFI is the High Sierra one with update from this post.
Can you take a look ?
 

Attachments

  • IMG_20190725_181213.jpg
    IMG_20190725_181213.jpg
    3.9 MB · Views: 454
  • IMG_20190725_183047.jpg
    IMG_20190725_183047.jpg
    4.3 MB · Views: 350
Hi,
I follow your guide but run into this issue. EFI is the High Sierra one with update from this post.
Can you take a look ?
We’re you able to boot into macOS using the unibeast boot disk? If so try using the clover config from it to boot. If still same error try removing the DSDT and SSDT and see if it boots. If it does then extract your own DSDT and apply the patches I mentioned. We may have different bios version or hardware revision that made it incompatible.
 
It seems that USB-c (both front and back) can work without adding them to the SSDT-UIAC file. I've tested my ipad and android phone using usb-c to c cable and both works fine under usb2.0 mode. But I cannot test for usb3.0 mode since the cable only support usb2.0.
 
This a Dell 8930- 1050 Ti. I don't need WiFi or BT and I think I can get by with UHD630. Is it reasonable to install Mojave and go through the "ignore GPU" routine? Should I simply pull my NVIDIA 1050Ti out prior to install or leave it in and settle on High Sierra? I want to be Catalina ready but don't have a compatible IGPU at this time. My needs are few. What about just installing Linux instead? Maybe a Vanilla Install? What would you (anyone) do?
 
Last edited:
ALSO: Is it possible that I could brick this machine?
 
It seems that USB-c (both front and back) can work without adding them to the SSDT-UIAC file. I've tested my ipad and android phone using usb-c to c cable and both works fine under usb2.0 mode. But I cannot test for usb3.0 mode since the cable only support usb2.0.
I noticed the 2 USB-C ports use different chip on the motherboard. I tested with my USB-C hub and updated the mapping a while back.
 
Status
Not open for further replies.
Back
Top