Contribute
Register

Monterey/Ventura on HP EliteDesk 800 G4/G5 Mini - The Perfect MacMini8,1 Hackintosh - OpenCore

Joined
Jun 14, 2012
Messages
74
Motherboard
HP 800 G4 Mini
CPU
i5-8500
Graphics
UHD 630 ??
Mac
  1. iMac
  2. MacBook Pro
Mobile Phone
  1. iOS
This thread is dedicated to installing/running Big Sur on the HP EliteDesk 800 G4/G5 Mini PC. This thread is derived from the original Catalina Guide and will gradually replace the Catalina guide and the Big Sur Guide

Thank you to deeveedee and everyone else who has contributed to the previous threads with making the guides, helping compiles the files and taking the time to post their experiences and changes.

This thread is not applicable to other versions of the HP EliteDesk PCs (e.g. non-Mini PCs and G1, G2, G3, G6, etc.). It has been reported that this thread and posted EFIs are applicable to the HP Prodesk 600 G4 and G5 Mini PCs as well.

I will try and get it updated as soon as possible
 
Last edited:
Revision History

8 December 2021 - Created Draft Thread - In Support for now but once finished will request if this thread can be moved
18 December 2021 - Updated Flex I/O information, Wifi card information
 
Last edited:
Methodology
  • Started by disassembling ACPI to confirm that it didn't contain any errors
  • I researched various BIOS suggestions and found that they were in agreement. I don't think my BIOS settings have any surprises.
  • I experimented with different CLOVER UEFI configurations (this is my first UEFI hack) and think I settled on a minimal set of required drivers. Found that KernelPM fix was required to boot. I kept Clover in verbose (-v) boot mode during initial installation / debugging.
  • I prefer to install kexts in /L/E, so my kext installation strategy is based on that preference
  • Temporarily added USB port limit patch to permit Catalina USB installation. Then created SSDT-UIAC (using Hackintool) and removed port limit patch.
  • Researched Apple devices and selected MacMini8,1 as closest architectural match (CPU and graphics)
  • Inspected disassembled DSDT to observe device names for potential renaming or missing (e.g. GFX0, EC0, SAT0, HDAS, HECI). Note that Lilu/WhateverGreen handles video/audio renaming.
  • Created Clover config.plist with _OSI and _DSM renames and also EC0 and SAT0 renames
  • I added SSDT-XOSI.aml and SSDT-PMCR.aml to EFI/CLOVER/ACPI
  • Enabled typical Clover ACPI fixes (identifying and testing the need for these fixes will be ongoing)
  • Dropped DMAR and MATS tables after a bit of research (not certain this is needed)
  • Enabled PluginType after a bit of research
  • Added -disablegfxfirmware boot arg to resolve gfx firmware boot loop while I was trying to get my display working (before I established working FrameBuffer patching with WhateverGreen). After successfully implementing FB patching with WEG, removed -disablegfxfirmware boot arg.
  • Created device properties (in Clover config.plist) for IGPU / Framebuffers. This was the hardest part. LOTS OF TRIAL and ERROR since I'm using DP > DVI adapters with multiple displays. Attempted video with and without WEG and ended up staying with WEG. I got lucky with an accidental ig-platform-id mistake that actually kept IGPU acceleration from loading and allowed me to boot the Catalina installer. The incorrect ig-platform-id allowed me to boot the Catalina installer and see the display (single display) before I had a working FrameBuffer solution. Without this "accident" the Catalina installer booted to black screen. After extensive reading of Hackintool and WEG guides and other posts, I ended up manually creating my device properties and experimenting with different ig-platform-ids and port types. My approach was a methodical, brute-force trial and error elimination of the possibilities until I found one that worked. I suspect that my device properties currently include things that are unnecessary.
    Critical to my Framebuffer patching was enabling System Preferences > Sharing > Remote Login and Remote Management to allow me to "Remote Desktop" into my hack. Each failed Framebuffer patch resulted in a black screen. The only way to see the desktop was to remote into the hack. I disabled sharing after I was certain that my Framebuffer patching was working properly.
    Also critical to my Framebuffer patching: While trying to get a working Framebuffer patch with WEG, I discovered that I needed to use framebuffer-conX-type = 0x0004 (DigitalDVI) and NOT 0x0400 (DP) (even though my system has DP ports). This is because I'm using DP->DVI adapters.
  • While trying to get IGPU acceleration working with FrameBuffer patching, I added an AppleGraphicsDevicePolicy patch. I have confirmed that this AGDP patch is required for multiple displays on my HackMini8,1.
  • Set hibernatemode and proximitywake to 0 to address potential sleep issues and also disabled "Wake for Ethernet" and "Enable Power Nap"
  • I added No-hda-gfx device property to HDEF after finding that my system froze on sleep / wake
  • Removed -disablegfxfirmware boot arg which is not needed after successfully implementing FB patching with WEG
 
Last edited:
Install macOS on HP EliteDesk 800 G4/G5 Mini with Open Core (OC)
Rev
Date

****************************************************************
This guide is for installing macOS with Open Core (OC) boot loader on HP EliteDesk G4/G5 Minis. This guide is tested with the EliteDesk 800 G4/G5. Others have claimed that it works with ProDesk 600 as well.
****************************************************************
 
CLOVER Specifics
  • I will not be posting a Clover-based solution for Monterey. Open Core will be my only bootloader for Monterey.
To switch from CLOVER to OC, do the following:
  1. Make a full system backup before you convert
  2. Open Hackintool and collect the following info (collecting this from your CLOVER config.plist is possible, too, if you can avoid the confusion of RtVariables.MLB and SMBIOS.BoardSerialNumber):
    1. Serial Number (this will be OC's PlatformInfo.Generic.SystemSerialNumber)
    2. System ID (this will be OC's PlatformInfo.Generic.SystemUUID)
    3. ROM (this will be OC's PlatformInfo.Generic.ROM)
    4. Board Serial Number (this will be OC's PlatformInfo.Generic.MLB)
  3. Follow this guide to remove the CLOVER stuff from your system: Converting from CLOVER to OC
  4. After you have completely removed the CLOVER EFI from your system, replace it with your OC EFI
  5. Populate your OC config.plist with the values you collected in Step 1
  6. Reboot (now with OC bootloader)
  7. Follow any prompts to allow extensions for apps that you've installed
 
Last edited:
Still being investigated
  • See Catalina items still being investigated here.
  • See Big Sur items still being investigated (url to be added)
  • After confirming that MSR 0xE2 register is locked in the HP EliteDesk 800 G4 Mini BiOS, I have enabled Quirks AppleCpuPmCfgLock and AppleXcpmCfgLock (a work-around that is apparently not as good as a BIOS Mod). I will continue to observe after making these Quirks changes.
  • CFG-Lock is enabled in BIOS. I have extracted the BIOS .bin from multiple HP EliteDesk 800 G4 Mini BIOS versions and examined with UEFITool / Universal IFR Extractor as discussed here, but I am not able to find the 'Setup' in the BiOS .bin and Universal IFR Extractor reports everything I try to examine as "Unknown Protocol."
 
Last edited:
Graphics Device Properties
  • 3xDP-to-DVI (default solution in EFIs attached to Post #1): 3 x DP -> DVI adapters. Audio over DP/HDMI is disabled with property No-hda-gfx to prevent kernel panic on wake. Provided by @deeveedee. See here and here and here for my work to determine these DeviceProperties.
  • 3xDP_NoHdaGfx: 3 x DP. Audio over DP is disabled with property No-hda-gfx. Provided by @cavesdev
  • 3xDP_NoHdaGfx-v2: 3 x DP. Audio over DP is disabled with property No-hda-gfx. Provided by @deeveedee . This is a simplified property list that needs testing. If you have 3xDP and do not want audio over DP, please test and post your test results. See background here.
  • 2xDP+1HDMI: 2 DP + 1 HDMI. Audio over DP / HDMI is ENABLED. Provided by @NeoNero
  • 3xDP: 3 DP. Audio over DP is ENABLED. Provided by @rafale77. See details here.

Jump to what addon card fit these machines - HP 800 Elite Desk G4 Flex I/O Cards
 

Attachments

  • 3xDP_NoHdaGfx-v2.plist.zip
    1.2 KB · Views: 162
  • 3xDP.plist.zip
    1.2 KB · Views: 209
  • 2xDP+1HDMI.plist.zip
    1.2 KB · Views: 316
  • 3xDP_NoHdaGfx.plist.zip
    1 KB · Views: 152
  • 3xDP-to-DVI.plist.zip
    1.2 KB · Views: 152
Last edited:
Wifi Options

HP 800 G4 Mini Wifi Hardware Options


A good internal wifi card that you can use is the BCM94360NG

1639858186774.png

External Link to Wifi Card

These can be had for about £20-40 depending on where you look to get one.


HP 800 G5 Mini Wifi Hardware Options
 
Last edited:
Hard Drive Caddy Mod

For those who would be looking to use all the native slots and use the 2.5 hard drive bay as well

*** WARNING *** If you perform this drive caddy modification, make sure that you thoroughly clean the modified drive caddy so that you don't introduce metal fragments into your PC ***

Installing 3 drives in your HP EliteDesk 800 G4 Mini (2 x M.2 2280 NVMe SSDs and 1 x SATA HD / SSD)


The HP EliteDesk 800 G4 Mini specs indicate that the G4 Mini supports two M.2 2280 NVMe SSDs and one SATA6 HD/SSD. Unfortunately, a mechanical design flaw prevents simultaneous use of the second M.2 2280 slot and the SATA drive caddy. As shown here, when the second M.2 2280 slot is populated, the SATA drive caddy sits on top of the M.2 2280 SSD card and the drive caddy cannot be properly installed. If you call HP support, they will admit that you can only install one or the other and not both.

Unmodified SATA Drive Caddy SATA Caddy sits on second M.2 2280 NVMe SSD
g4-mini-original-caddy.jpg
g4-mini-before-cutout.jpg



My solution was to modify the SATA drive caddy by making a cutout that provides clearance for the second M.2 2280 slot as shown here. A Dremel tool and cutting wheel works perfectly for this modification.

Modified SATA Drive Caddy
g4-mini-caddy-cutout.jpg



With this modified SATA drive caddy, the HP EliteDesk 800 G4 Mini easily accommodates two M.2 2280 NVMe SSDs and a SATA HD / SSD in the SATA drive caddy.

g4-mini-3drives.jpg



HD Fan Assembly in 65W HP EliteDesk 800 G4 Mini
Note that this caddy mod works perfectly with the HD fan in 65W units

1639089139946.png
1639089156940.png



See additional mod instructions here.


Thanks to @deeveedee for this work
 
Last edited:
Back
Top