Contribute
Register

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

I have attached my latest EFI and /L/E kexts to Post #1 in the "EliteDesk800 G4 Mini - Rev 1.1.zip" archive. The changes in this updated archive are documented here in the Revision History. As with previous EFIs, if you use my config.plist, you must replace all "XX-MASKED-XX" values with your own (MLB, Board Serial Number, System Serial Number, SmuUUID, Custom UUID). You can use CLOVER Configurator to set these values.

Also, I still do not have a supported Wi-Fi/Bluetooth module, so SSDT-UIAC.aml does not include the USB port mapping for Bluetooth. See Known Issues.

If your system does not exactly match the system specs that I've detailed in Post #1, then copying my EFI may be incorrect for your system. See Known Issues.
 
External 90W brick. I haven't researched the internal RX560, so I'm not sure if I need to obtain a higher wattage brick to power the RX560. My "new" G4 Mini that I purchase has a vented cover (the cover on my 35W i7-8700T unit is sealed). I suspect the vented cover is required for the internal RX560.

The platform is still pretty fresh and not well presented on second hand market (at least where I'm from). I couldn't find any hardware mods done by community (ie. replacing CPU to higher W or Gen, adding RX560 etc.) which would be interesting. I would particularly be interested in obtaining RX560, but can't find a part number or any information besides that it exists and comes pre-installed in some instances. It also requires a massive PSU brick half the size of PC as can be seen below:

s-l1600.jpg


I'll keep researching into this and post my findings here if any.
Thanks for supporting this thread deeveedee
 
I would particularly be interested in obtaining RX560, but can't find a part number or any information ...

I believe the part number for the RX560X card is L21466-001 or L21467-001.

As shown in the attached picture, I believe that the add-on RX560X card may be limited to a single display port. If that's the case, I won't be pursuing this upgrade option.

EDIT: It also appears that the RX560X card can only be installed with one M.2 NVMe SSD and without the SATA6 caddy. I understand the trade-off given the limited space in this G4 Mini. Still, it's truly amazing that this little device is so incredibly capable. I have a NUC and I prefer the HP EliteDesk 800 G4 Mini.
 

Attachments

  • rx560x.jpg
    rx560x.jpg
    285.6 KB · Views: 134
Last edited:
I am currently testing with CLOVER r5122. I have replaced AptioMemoryFix.efi with OCQuirks.efi / OpenRuntime.efi. So far, I have not noticed any difference in behavior or performance. Attached is a GeekBench5 CPU benchmark after migrating to CLOVER r5122 / OCQuirks (from r5119 / AptioMemoryFix.efi). See r5119 performance here.

EDIT: A note about migrating from AptioMemoryFix.efi to OCQuirks.efi: I didn't know what I was doing when I migrated from AptioMemoryFix.efi to OCQuirks, so I guessed the following steps which seems to have worked:
  1. Save a copy of my r5119 EFI
  2. Remove my r5119 EFI from my boot disk
  3. Install CLOVER r5122 with the options specified in Post #1 of this thread. When configuring CLOVER r5122 installation options, instead of AptioMemoryFix driver, I selected OCQuirks.
  4. Save the newly installed, default config.plist as config-org.plist
  5. Replace the newly installed ACPI/patched, config.plist and kexts with the ACPI/patched, config.plist and kexts that I saved in Step 1.
  6. Copy the Quirks section from the config-org.plist saved in Step #4 to config.plist. Note that when you have a Quirks section in your CLOVER config.plist, you do not need a separate OCQuirks config.plist
  7. Reboot with the new EFI

After rebooting with the new EFI, if you open the new r5122 config.plist in the latest Clover Configurator, you will see and be able to edit Quirks (which are saved in the CLOVER config.plist). You do not need a separate config.plist for Quirks.

EDIT2: A new CLOVER config.plist with Quirks is attached. If you use my config.plist, you will need to replace the XX-MASKED-XX values with your own values and you should review Known Issues.
 

Attachments

  • Screen Shot 2020-09-03 at 3.01.09 PM.png
    Screen Shot 2020-09-03 at 3.01.09 PM.png
    84.7 KB · Views: 73
  • config.plist.zip
    2.7 KB · Views: 94
Last edited:
I am currently testing with CLOVER r5122. I have replaced AptioMemoryFix.efi with OCQuirks.efi / OpenRuntime.efi. So far, I have not noticed any difference in behavior or performance...

I've followed your steps and now I'm with OC Quirks without the Quirks config.plist file. The system seems to be going just as well as before, if anything I would tell you that it goes faster on the screen that shows the BIOS boot until the Clover menu appears, before it stopped approx. 5-6" on that screen and now stops approx. 2". In the rest I do not appreciate differences.

Note: after trying for several hours I have observed a curious detail: if there is no OcQuirks.plist file in the drivers / UEFI folder, sleep is broken, it goes to sleep well but when you exit and recover the screen there is a kernel panic, nothing responds and I have to turn off by hand. If the OcQuirks.plist file exists, this problem disappears.
 
Last edited:
Note: after trying for several hours I have observed a curious detail: if there is no OcQuirks.plist file in the drivers / UEFI folder, sleep is broken, it goes to sleep well but when you exit and recover the screen there is a kernel panic, nothing responds and I have to turn off by hand. If the OcQuirks.plist file exists, this problem disappears.

My system sleeps/wakes without any problems and I do not have a separate OCQuirks config.plist. Are you sure that the OCQuirks config.plist has the exact same options as the Quirks block in your CLOVER config.plist? Note that if you follow my instructions here, the Quirks block in the CLOVER config.plist will have ONLY the default Quirks options set by the CLOVER installer. It will not contain any additional Quirks (e.g. those Quirks that might be required for your chipset).

Be sure to compare the Quirks options in the CLOVER config.plist with the options in your separate OCQuirks config.plist. If you want help, please post your debug files. It would be best for you to post your system-specific questions in your thread and I can help/answer there.
 
I am currently running/testing with a revised CLOVER config.plist for the reasons explained here.

EDIT: My system booted to black screens while using a CLOVER config.plist without pipes and without "dummy" con3 properties. This gives me more reason to suspect that UHD 630 graphics needs the pipes and/or dummy properties.
 
Last edited:
I had to satisfy my own curiosity about CLOVER's "Plugin Type" for CPU Power Management, so I created an SSDT.aml using ssdtPRGen (new versions of ssdtPRGen support Coffee Lake and specifically the i7-8700). I don't notice ANY difference in performance when using the SSDT.aml vs. CLOVER's "Plugin Type." I'm not surprised, but feel better seeing it for myself.
 
acidanthera has released new versions of the following kexts. I am running with these new kexts on my system and am not observing any difference in behavior (not surprising since the updates/fixes don't appear to be relevant to the components in the HP EliteDesk 800 G4 Mini).
  • Lilu.kext 1.4.7
  • WhateverGreen.kext 1.4.2
  • AppleALC.kext 1.5.2
 
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.
The Intel Wifi project is getter better with every release but still does not support Airdrop, Handoff, iMessage etc. since it is not a real wifi solution but spoofing ethernet. I have success with several other M.2 wifi/bluetooth cards and my favorite is the Broadcom BCM94360NG. This works OTB with not extra kexts. The strange thing is that this works great in HP 800 G1 but not in newer versions like G2, G3 and G4. I have no idea why. Even in Windows 10 I get random reboots and crashes with this card. HP Support could not give me any answer why only original HP cards (Broadcom 1802.11.n) or any newer Intel cards work fine. This is no problem in other mini-PCs I have tested like Dell 7070 or Lenovo m700, m910q, m920.
 
Back
Top