Contribute
Register

[GUIDE] General Framebuffer Patching Guide (HDMI Black Screen Problem)

Hello CaseySJ
Your Nvidia card is fully active so it's not necessary to use video ports on the motherboard. You can use a "headless" platform ID to disable video output, but still keep iGPU activate for compute tasks.
I would like to use nvidia GTX 660, explained in post 596 using Hackintool what should I select
407185


407186


407187


Thanks
 
Hello CaseySJ

I would like to use nvidia GTX 660, explained in post 596 using Hackintool what should I selectView attachment 407185

View attachment 407186

View attachment 407187

Thanks
To use the Nvidia card to drive your monitor, you can set the iGPU into headless mode by simply using Platform ID 0x04120004 as shown in your screenshots. The General and Advanced settings in your screenshots are correct. Just Generate Patch and apply it to your config.plist.
 
Hello CaseySJ
it doesn't create me anything
407591
 
If you're still having issues with Sleep, please try the attached config.plist, but copy your serial numbers and UUIDs back into SMBIOS.

A handful of changes were made, but the main ones are:
  • Inject Intel = disabled now because you're using WhateverGreen to manage the iGPU
  • ig-platform-id = empty now for the same reason
I noticed that you're using a USB port limit patch. Are you still on 10.14.3? Have you updated to 10.14.4 or 10.14.5? If so, they require different USB port limit patches.

Many sleep issues are related to USB devices and Bluetooth devices. Some suggestions:
  • Create a custom USB SSDT for your motherboard. Invest an hour or two into this and never worry about USB port limit patches again. This can also solve some USB-related sleep problems. The most user-friendly guide for this is located here.
  • Disconnect all USB devices except keyboard and mouse. Then disconnect all Bluetooth devices except keyboard/mouse (this does not mean un-pair; it just means disconnect from the Bluetooth menu).
  • If sleep works, then reattach USB devices one by one, and reconnect Bluetooth devices one by one until sleep no longer works. That will identify the offending device.
Hi! Today I have installed the asus h110i plus motherboard and tried with the new config.plist that you gently provided.
We are getting close! The led and fan behaves like sleep and wake is working, no restart and no panic, but the display is black after wake up, and won't turn on even if I disconnect and connect again hdmi cable...
Please let me know if there is still something to try.
Evertything else is working nicely.
Thank you.
 
Hi, any idea why the the 2 options only (1) works?
(1)
  • Devices --> Fake ID --> IntelGFX --> Enter appropriate Device ID (e.g. 0x3E9B8086).
  • Graphics --> Inject Intel --> Check this ON.
  • Graphics --> ig-platform-id --> Click pop-up menu and choose appropriate ID (e.g. 0x3E9B0007).
(2)
<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>BwCbPg==</data>
<key>device-id</key>
<data>mz4AAA==</data>
<key>framebuffer-patch-enable</key>
<data>AQAAAA==</data>
</dict>
</dict>
option (1) shows the igpu in both hackintool and system information
but option(2) only show inside the hackintool, missing from system information.
During patching connectors, I must delete away the option(1) and add in option 2,
the connectors shows correctly after boot, but no igpu inside system information.
Is there a way use combination of option (1) and option(2)?
I am confirm that the connectors are correct, just that the igpu it's not showing.

below is my option(2)
<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
BwCbPg==
</data>
<key>AAPL,slot-name</key>
<string>Internal</string>
<key>device-id</key>
<data>
mz4AAA==
</data>
<key>device_type</key>
<string>VGA compatible controller</string>
<key>enable-hdmi20</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con0-busid</key>
<data>
AgAAAA==
</data>
<key>framebuffer-con0-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con0-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con0-index</key>
<data>
AgAAAA==
</data>
<key>framebuffer-con0-pipe</key>
<data>
CgAAAA==
</data>
<key>framebuffer-con0-type</key>
<data>
AAgAAA==
</data>
<key>framebuffer-con1-busid</key>
<data>
BAAAAA==
</data>
<key>framebuffer-con1-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con1-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con1-index</key>
<data>
AwAAAA==
</data>
<key>framebuffer-con1-pipe</key>
<data>
CAAAAA==
</data>
<key>framebuffer-con1-type</key>
<data>
AAgAAA==
</data>
<key>framebuffer-con2-busid</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con2-index</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-pipe</key>
<data>
CQAAAA==
</data>
<key>framebuffer-con2-type</key>
<data>
AAQAAA==
</data>
<key>framebuffer-patch-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-unifiedmem</key>
<data>
AAAAgA==
</data>
<key>hda-gfx</key>
<string>onboard-2</string>
<key>model</key>
<string>UHD Graphics 630 (Mobile)</string>
</dict>
</dict>

thank you for help:)
 
Hi, any idea why the the 2 options only (1) works?
(1)
  • Devices --> Fake ID --> IntelGFX --> Enter appropriate Device ID (e.g. 0x3E9B8086).
  • Graphics --> Inject Intel --> Check this ON.
  • Graphics --> ig-platform-id --> Click pop-up menu and choose appropriate ID (e.g. 0x3E9B0007).
(2)
<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>BwCbPg==</data>
<key>device-id</key>
<data>mz4AAA==</data>
<key>framebuffer-patch-enable</key>
<data>AQAAAA==</data>
</dict>
</dict>
option (1) shows the igpu in both hackintool and system information
but option(2) only show inside the hackintool, missing from system information.
During patching connectors, I must delete away the option(1) and add in option 2,
the connectors shows correctly after boot, but no igpu inside system information.
Is there a way use combination of option (1) and option(2)?
I am confirm that the connectors are correct, just that the igpu it's not showing.

below is my option(2)
<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
BwCbPg==
</data>
<key>AAPL,slot-name</key>
<string>Internal</string>
<key>device-id</key>
<data>
mz4AAA==
</data>
<key>device_type</key>
<string>VGA compatible controller</string>
<key>enable-hdmi20</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con0-busid</key>
<data>
AgAAAA==
</data>
<key>framebuffer-con0-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con0-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con0-index</key>
<data>
AgAAAA==
</data>
<key>framebuffer-con0-pipe</key>
<data>
CgAAAA==
</data>
<key>framebuffer-con0-type</key>
<data>
AAgAAA==
</data>
<key>framebuffer-con1-busid</key>
<data>
BAAAAA==
</data>
<key>framebuffer-con1-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con1-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con1-index</key>
<data>
AwAAAA==
</data>
<key>framebuffer-con1-pipe</key>
<data>
CAAAAA==
</data>
<key>framebuffer-con1-type</key>
<data>
AAgAAA==
</data>
<key>framebuffer-con2-busid</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-flags</key>
<data>
xwMAAA==
</data>
<key>framebuffer-con2-index</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con2-pipe</key>
<data>
CQAAAA==
</data>
<key>framebuffer-con2-type</key>
<data>
AAQAAA==
</data>
<key>framebuffer-patch-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-unifiedmem</key>
<data>
AAAAgA==
</data>
<key>hda-gfx</key>
<string>onboard-2</string>
<key>model</key>
<string>UHD Graphics 630 (Mobile)</string>
</dict>
</dict>

thank you for help:)
This behavior is completely normal. When iGPU is enabled with WhateverGreen, we don't see iGPU in System Information --> Graphics/Displays. But we can add a description to the System Information --> PCI page by following this guide:

But an even easier method is to use Hackintool with the following settings: (You should use platform ID 0x3E980003 for your i9-9900K)
Screen Shot 2019-05-24 at 3.27.00 PM.pngScreen Shot 2019-05-24 at 3.29.20 PM.png
  • Now Mount EFI partition of your Mojave SSD.
  • Finally, select File --> Export --> Bootloader config.plist and select the config.plist from your EFI/CLOVER folder. Don't worry, Hackintool will insert this patch safely and backup the existing config.plist.
 
Last edited:
This behavior is completely normal. When iGPU is enabled with WhateverGreen, we don't see iGPU in System Information --> Graphics/Displays. But we can add a description to the System Information --> PCI page by following this guide:

But an even easier method is to use Hackintool with the following settings: (You should use platform ID 0x3E980003 for your i9-9900K)
View attachment 408177View attachment 408178
  • Now Mount EFI partition of your Mojave SSD.
  • Finally, select File --> Export --> Bootloader config.plist and select the config.plist from your EFI/CLOVER folder. Don't worry, Hackintool will insert this patch safely and backup the existing config.plist.
thank you for your help, I had followed your second instruction and patched it and it shows in System Information --> PCI
After this, I proceed to connector Info and realised that all of them is headless, but there is no signal coming from IGPU.( No IGPU display)
with below setting I can get IGPU information display in Information --> Graphics/Displays but black screen when I switch to IGPU display(I guess it's correct setting but incorrect connector value, but I convert it into properties, it just not show in Graphics/Displays and black screen too)

  • Devices --> Fake ID --> IntelGFX --> Enter appropriate Device ID = 0x3E9B8086
  • Graphics --> Inject Intel --> Check this ON.
  • Graphics --> ig-platform-id --> Click pop-up menu and choose appropriate ID = 0x3E9B0007
I am using SMBHIOS 18.3 by the way
but with below patch I get no signal detected.
below is the patch

<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
AwCYPg==
</data>
<key>AAPL,slot-name</key>
<string>Internal</string>
<key>device_type</key>
<string>Display controller</string>
<key>framebuffer-patch-enable</key>
<data>
AQAAAA==
</data>
<key>hda-gfx</key>
<string>onboard-2</string>
<key>model</key>
<string>UHD Graphics 630 (Desktop 9 Series)</string>
</dict>
</dict>
what could be the reason? hope you can enlighten me a bit
thank you for you help once again :)
 
Last edited:
thank you for your help, I had followed your second instruction and patched it and it shows in System Information --> PCI
After this, I proceed to connector Info and realised that all of them is headless, but there is no signal coming from IGPU.( No IGPU display)
with below setting I can get IGPU information display in Information --> Graphics/Displays but black screen when I switch to IGPU display(I guess it's correct setting but incorrect connector value, but I convert it into properties, it just not show in Graphics/Displays and black screen too)

  • Devices --> Fake ID --> IntelGFX --> Enter appropriate Device ID = 0x3E9B8086
  • Graphics --> Inject Intel --> Check this ON.
  • Graphics --> ig-platform-id --> Click pop-up menu and choose appropriate ID = 0x3E9B0007
I am using SMBHIOS 18.3 by the way
but with below patch I get no signal detected.
below is the patch

<key>Properties</key>
<dict>
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
AwCYPg==
</data>
<key>AAPL,slot-name</key>
<string>Internal</string>
<key>device_type</key>
<string>Display controller</string>
<key>framebuffer-patch-enable</key>
<data>
AQAAAA==
</data>
<key>hda-gfx</key>
<string>onboard-2</string>
<key>model</key>
<string>UHD Graphics 630 (Desktop 9 Series)</string>
</dict>
</dict>
what could be the reason? hope you can enlighten me a bit
thank you for you help once again :)
Oops, my mistake. For some reason I thought you wanted to switch to headless mode. Because you have a Vega 56, I actually recommend using that exclusively for driving your monitor. The IGPU will be used to accelerate rendering tasks, but will not drive a monitor. Additionally, you’ll be able to run iMovie, Final Cut Pro, etc.

If you really need to drive a monitor with the IGPU, then you can use platform ID 0x3E9B0007 and set your connectors correctly. But in this case iMovie will immediately crash. Final Cut Pro and some other A/V apps will also crash.
 
Back
Top