Contribute
Register

[GUIDE] Catalina on HP EliteDesk 800 G4/G5 Mini - The Perfect MacMini8,1 Hackintosh - CLOVER & OC

The upgrade to 10.15.6 was easy with the steps below:
  1. Backup! Use Carbon Copy or your favorite backup utility.
  2. If you have installed your 3rd-party kexts in EFI/CLOVER/kexts/Other and not in /Library/Extensions, proceed to Step 3.
    If you have installed your 3rd-party kexts in /Library/Extensions as I have done, create a USB boot disk, install Clover r5119 on the USB drive and install your EFI on the USB drive. Copy all 3rd-party kexts to EFI/CLOVER/kexts/Other on the USB drive. Leave your USB drive inserted so that your system reboots from the USB drive. All 3rd-party kexts must be located in EFI/CLOVER/kexts/Other for the macOS upgrade.
  3. Select About This Mac -> Software Update and start the update. Your system will begin the update.
  4. After your system reboots the first time, select the "Install macOS from Catalina Data" Volume
  5. After your system reboots the second time, select the "Install macOS from Catalina Data" Volume
  6. After your system reboots the third time, boot from your Catalina Volume (now updated) and complete the update prompts. If you created a USB boot drive, you may now remove it.
  7. Welcome to Catalina 10.15.6!
 

Attachments

  • Screen Shot 2020-07-15 at 7.10.41 PM.png
    Screen Shot 2020-07-15 at 7.10.41 PM.png
    56.3 KB · Views: 133
EDIT: After reviewing and testing the EC and PMCR advice in Dortania's ACPI Guide, I'm sticking with my original solutions. No changes at this time. Leaving the info below for informational purposes, in case I need to revisit for OpenCore.
-----------------------------------------------
I'm starting to examine OpenCore for this HP EliteDesk 800 G4 Mini. Dortania's reference here appears to be extremely well done. In addition, Dortania's ACPI Guide is a wealth of information. In the ACPI Guide, there is excellent discussion of the Embedded Controller and PMCR devices. Based on Dortania's explanation, I may be changing my implementations of Device (EC) and Device (PMCR).

Based on the teachings in Dortania's ACPI Guide, I'm specifically reviewing the following:
  • Creating a Fake EC device instead of renaming EC0->EC. Preliminary results suggest that renaming EC0 is the correct way to handle the Embedded Controller for this G4 Mini. When a Fake EC device is created (instead of renaming EC0), Device (EC) exists, but AppleACPIEC binds to the existing EC0 device (because the existing EC0 device has HID PNP0C09).
    Screen Shot 2020-07-17 at 12.48.23 PM.png
  • Moving Device (PMCR) from Scope (_SB.PCI0) to Scope (_SB.PCI0.LPCB) so that PMCR loads earlier. I'm hoping to assess the affect of this change through continued use, because I have not noticed any change in system behavior following this change. Note that as observed in the IORegistry dump from a real MacMini8,1, Device (PMCR) in a real MacMini8,1 is in Scope (_SB.PCI0).
 
Last edited:
This Mini PC can easily install by Opencore, but now my isn't perfect, mainly the WiFi and BT cannot be driven.
 
This Mini PC can easily install by Opencore, but now my isn't perfect, mainly the WiFi and BT cannot be driven.

I'm in no rush to create an OpenCore solution for this G4 Mini. It is PERFECT with CLOVER r5119 and Slice's team is very busy with readying CLOVER for BS (including adopting some OpenCore code in CLOVER).

EDIT: CLOVER r5120 pre-release is out here
 
Last edited:
This post is NOT proposing a new SSDT-XOSI. I'm posting this only to show the results of an experiment with SSDT-XOSI and am leaving this for the curious reader.
------------------------------------------------------
The DSDT for my HP EliteDesk 800 G4 Mini includes Device (PAGD) that is enabled on condition _OSI("Processor Aggregator Device"). I've searched for ACPI documentation on "Processor Aggregator Device" and found this reference. Device (PAGD) does not appear in the IORegistry dump from a real MacMini8,1, so I'm fairly certain that Device (PAGD) is not relevant/applicable to macOS.

Just for fun, I added "Processor Aggregator Device" to my SSDT-XOSI (attached) and have confirmed (with IORegistryExplorer) that Device (PAGD) is loaded.

IORegistry Explorer: SSDT-XOSI includes "Processor Aggregator Device"
Screen Shot 2020-07-18 at 11.10.50 AM.png


IORegistry Explorer: SSDT-XOSI does not include "Processor Aggregator Device"
Screen Shot 2020-07-18 at 11.39.15 AM.png


It doesn't appear that macOS does anything with this device.

If anyone knows more about this, I would welcome your explanation.
 

Attachments

  • SSDT-XOSI.zip
    709 bytes · Views: 115
Last edited:
EDIT: I had inadvertently attached the wrong version of SSDT-XSPI. The correct version (copied from a real MacMini8,1) is now attached.
---------------------------------------------------
There is an unnamed device revealed in IORegistry Explorer that is named XSPI on a real MacMini8,1. The attached SSDT-XSPI names this device and injects the pci-device-hidden property to mimic Device (XSPI) in a real MacMini8,1 DSDT. I suspect that this addition is purely cosmetic. If you want to apply this change, simply copy the attached SSDT-XSPI to your EFI/CLOVER/ACPI/patched folder.
 

Attachments

  • SSDT-XSPI.zip
    638 bytes · Views: 150
Last edited:
Thanks to @MacKonsti for alerting me to an Intel Wi-Fi / Bluetooth solution. It may be possible to get working Wi-Fi and Bluetooth with the factory-installed Intel card (without purchasing BRCM replacement).

According to @MacKonsti: "Been testing this for a couple of days, works great. All kexts loaded from CLOVER/kext/Other works great in Mojave."
 
I am offering NO support for Intel Wi-Fi / Bluetooth and am only posting this for others who may want to experiment on their own. Please don't clutter this thread with Intel Wi-Fi /Bluetooth support questions. However, if after testing, you have concrete/tested suggestions that improve Intel Wi-Fi / Bluetooth performance, your posts are welcome.
----------------------------------------------------
Initial tests of Intel Wi-Fi/Bluetooth look promising after being alerted to this solution here. If you want to test with the Intel Wi-Fi/Bluetooth card that is factory-installed in your HP EliteDesk 800 G4 Mini, do the following:
  1. Enable Wi-Fi / Bluetooth device in BIOS
    1. Enable System Options -> M.2 WLAN / BT
    2. Enable Built-in Device Options -> M.2 USB / Bluetooth
  2. Add USB port HS14 to SSDT-UIAC.aml (used in conjunction with Rehabman's USBInjectAll.kext). An updated SSDT-UIAC.aml is attached. Replace SSDT-UIAC.aml in EFI/CLOVER/ACPI/patched with this updated version.
  3. Install kexts from the links at this post as follows:
    1. If you are injecting 3rd-party kexts with CLOVER (FakeSMC.kext or VirtualSMC.kext is NOT in /Library/Extensions), add IntelBluetoothFirmware.kext, IntelBluetoothInjector.kext and itlwm.ikext to /EFI/CLOVER/kexts/Other (do NOT add itlwmx.kext).
    2. If you have installed FakeSMC.kext or VirtualSMC.kext in /Library/Extensions with CLOVER's "Inject Kexts" = DETECT, you must remove all 3rd-party kexts from /EFI/CLOVER/kexts/Other, set CLOVER "Inject Kexts" = YES (not DETECT) and copy the following kexts to /EFI/CLOVER/kexts/Other: IntelBluetoothFirmware.kext, IntelBluetoothInjector.kext and itlwm.ikext (do NOT add itlwmx.kext)
  4. Reboot and configure Bluetooth and Wi-Fi
Since I am running with 3rd-party kexts in /Library/Extensions, my kext configuration is as follows
  • CLOVER "Inject Kexts" = YES
  • Kexts in /EFI/CLOVER/kexts/Other: IntelBluetoothFirmware.kext, IntelBluetoothInjector.kext, itlwm.ikext
  • Kexts in /Library/Extensions: AppleALC.kext, EFICheckDisabler.kext, FakeSMC_CPUSensors.kext, FakeSMC.kext, IntelMausi.kext, Lilu.kext, NVMeFix.kext, USBInjectAll.kext, WhateverGreen.kext

I have not thoroughly tested, but Intel Bluetooth/Wi-Fi looks promising. Attached are some screenshots. Bluetooth connected easily to my Bluetooth speaker. Wi-Fi appears as another Ethernet device.
-----------------------------------------------------
I am offering NO support for Intel Wi-Fi / Bluetooth and am only posting this for others who may want to experiment on their own. Please don't clutter this thread with Intel Wi-Fi /Bluetooth support questions. However, if after testing, you have concrete/tested suggestions that improve Intel Wi-Fi / Bluetooth performance, your posts are welcome.
 

Attachments

  • SSDT-UIAC.zip
    827 bytes · Views: 199
  • Screen Shot 2020-07-21 at 12.02.20 PM.png
    Screen Shot 2020-07-21 at 12.02.20 PM.png
    64.9 KB · Views: 182
  • Screen Shot 2020-07-21 at 12.05.05 PM.png
    Screen Shot 2020-07-21 at 12.05.05 PM.png
    15.6 KB · Views: 186
Last edited:
Thank you very much for your work! I have recently acquired the G5 mini model, it seems the same like G4, but only CPU changes to i5-9500T. Awesome machine. I have tried your EFI folder and it works like a charm. I have one question, what is your idle temperature? Mine keeps on 60-65º Celsius, it seems too high.

Another question, I am trying to migrate the configuration to OpenCore, as it seems it is going to be the only supported bootloader, at least by other acidanthera kexts. Using dortania default ACPI files, using the desktop guide building from scratch it runs perfectly, but if I try to use your DSDT files, the machine stops booting. Could you please post your working OpenCore tests for testing purposes? Thank you very much again!!
 
Thank you very much for your work! I have recently acquired the G5 mini model, it seems the same like G4, but only CPU changes to i5-9500T. Awesome machine. I have tried your EFI folder and it works like a charm. I have one question, what is your idle temperature? Mine keeps on 60-65º Celsius, it seems too high.

Another question, I am trying to migrate the configuration to OpenCore, as it seems it is going to be the only supported bootloader, at least by other acidanthera kexts. Using dortania default ACPI files, using the desktop guide building from scratch it runs perfectly, but if I try to use your DSDT files, the machine stops booting. Could you please post your working OpenCore tests for testing purposes? Thank you very much again!!

I'm glad this helped you. My CPU temps are low - I never hear the CPU fan unless I'm doing a software build that is CPU intensive, and even then it is quiet. I didn't realize how annoying the constant drone of CPU and GPU fans was until having this desktop that is silent.

Screen Shot 2020-07-28 at 8.21.40 AM.png


Rumors about CLOVER's demise are false. Slice and his team are hard at work on the next version that fully supports Big Sur and they have incorporated components from OC into CLOVER. My rig is running so perfectly with ZERO flaws that I have no desire to switch to OC. This may sound selfish (because it is), but I'm perfectly content to let everyone else BETA test OC while CLOVER continues to be perfect. I'm sticking with CLOVER r5119 until I need to switch to BS.

If you are having temperature issues with CLOVER r5119, please post your problem reporting files as stated in Post #1 of this thread and I'd be happy to take a look. Also, check the following:
  1. What are idle temps in Windows 10 and how do they compare to Catalina idle temps?
  2. Is the fan working properly without any obstructions of the front and rear vents?
  3. What is the ambient temp (office temp around the unit)?
  4. If 1-3 reveal no issues, do this at your own risk: Remove the heat sink, clean the old thermal paste and properly apply AS5 or your favorite thermal paste.
Please post your problem reporting files as requested in Post #1 if you want more help.
 
Back
Top