It is a well-known fact that macOS does not support iGPU functionality on 500-series motherboards out of the box. This typically results in one of three scenarios: hardware acceleration without video output, video output without hardware acceleration, or neither working properly.
Fortunately, there is a simple solution. We can embed the monitor’s EDID directly into the DeviceProperties configuration. This fix supports multiple monitors as well, but you’ll need to use Windows to extract the EDID and adjust your .plist configuration
Extended Display Identification Data (EDID) allows your monitor to communicate its capabilities to your computer.
There are many ways to grab your Monitor's EDID, Including:
Launch Monitor Asset Manager and scroll down to the bottom in the Asset information
You will want the raw data section from the Asset information panel, not the Raw data panel
Copy the hex information and paste it into a notepad
Clean up those commas and spaces
Click on Find -> Replace
, or Ctrl+H.
Find: ,
Replace:
Remove the whitespaces and ensure the text is in one line (even if it breaks due to text wrap)
An Alternative way to grab your EDID without downloading a software.
Open windows regedit by searching it, or using Windows Run (Ctrl+R
) and type regedit
Go to this path Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\SAM0D1A
You wil find more than one folder inside this path. Expand all of them like this:
We only want the folders that has Device Parameters
Right click on each Device Parameter folder and export it to your desktop.
Open the export file(s) with notepad
Only copy the hex data and paste it onto a new notepad file.
Remove the commas by using the Find & Replace function in notepad
Find: ,
Replace:
Similarly, remove the backslashes
Remove the whitespaces and ensure the hex data is in one line, even if it breaks due to word wrap.
That's it, this is your monitor's EDID. If the other folders have the exact same EDID, just use one of them.
Otherwise, use each EDID to inject the respective monitor into config.plist
Open your config.plist file from Opencore using ProperTree
Head to DeviceProperties
-> Add
-> PciRoot(0x0)/Pci(0x2,0x0)
Add only those fields:
Key | Data | Explanation |
---|---|---|
AAPL,ig-platform-id |
07009B3E |
Identifies the iGPU (UHD 630, Kaby Lake) platform for macOS. |
AAPL00,override-no-connect |
<EDID Data> |
Injects EDID for the first monitor to enable display detection. |
AAPL01,override-no-connect |
<EDID Data> |
Injects EDID for the second monitor, if applicable. |
AAPL02,override-no-connect |
<EDID Data> |
Injects EDID for the third monitor, if applicable. |
device-id |
9B3E0000 |
Device ID for the Intel UHD 630 iGPU, used for identification. |
framebuffer-con0-enable |
01000000 |
Enables the first display output (e.g., HDMI or DisplayPort). |
framebuffer-con0-type |
00080000 |
Specifies the connection type for the first output (HDMI). |
framebuffer-con1-enable |
01000000 |
Enables the second display output. |
framebuffer-con1-type |
00080000 |
Specifies the connection type for the second output (HDMI). |
framebuffer-con2-enable |
01000000 |
Enables the third display output. |
framebuffer-con2-type |
00080000 |
Specifies the connection type for the third output (HDMI). |
framebuffer-patch-enable |
01000000 |
Enables framebuffer patches to adjust graphics settings. |
We will inject our EDID code into AAPL00,override-no-connect
, AAPL01,override-no-connect
, and AAPL03,override-no-connect
.
Each AAPL
entry corresponds to a different monitor. If you have multiple monitors, every monitor has its own unique EDID, so make sure to inject the correct EDID into the corresponding AAPL
entry for each monitor.
Important: Every monitor has its own unique EDID. Even if two monitors are the same model, do not use the EDID from another source. Always obtain your own EDID.
Your AAPL values should look like this:
Key | Data |
---|---|
AAPL00,override-no-connect |
00FFFFFFFFFFFF004C2D1A0D52515A5A071C010380301B782A5295A556549D250E5054BFEF80714F81C0810081809500A9C0B3000101023A801871382D40582C4500DD0C1100001E000000FD00324B1E5111000A202020202020000000FC00533232463335300A2020202020000000FF004834544B3230303735380A20200108 |
AAPL01,override-no-connect |
00FFFFFFFFFFFF004C2D1A0D52515A5A071C010380301B782A5295A556549D250E5054BFEF80714F81C0810081809500A9C0B3000101023A801871382D40582C4500DD0C1100001E000000FD00324B1E5111000A202020202020000000FC00533232463335300A2020202020000000FF004834544B3230303735380A20200108 |
AAPL02,override-no-connect |
00FFFFFFFFFFFF004C2D1A0D52515A5A071C010380301B782A5295A556549D250E5054BFEF80714F81C0810081809500A9C0B3000101023A801871382D40582C4500DD0C1100001E000000FD00324B1E5111000A202020202020000000FC00533232463335300A2020202020000000FF004834544B3230303735380A20200108 |
Test your config first if it gives an output. Remember, RecoveryOS does not use Graphics acceleration
Boot into macOS and check your VRAM size, if it's 7MB, then you need to patch your graphics using Whatevergreen's guide
Likewise, this is related to GPU patching, there are many causes to this issue.
A quick fix is using igfxonln=1
in the NVRAM boot arguments.
If you change or upgrade your monitor, you will have to grab it's EDID all again.
Injecting 3 single-EDIDs.
B560M Gaming Motherboard with only iGPU on macOS Sequoia 15.2.
Video tutorial by 乌龙蜜桃来一打
ProperTree by corpnewt
Opencore by acidanthera
Whatevergreen guide by acidanthera