Contribute
Register

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

When I boot into windows and check the display settings it says that both my laptop display and external monitor are UHD 620.

Please see the screenshot of my Patch > Connectors settings
Correct -- just like the GTX 1050Ti Mobile I mentioned above, the GeForce MX150 is also headless and used for compute operations only.

The Hackintool screenshot shows all connectors at Pipe 18 (this is okay), which is designed to fixed HDMI hot-plug reboot problem. At this point it seems you've done everything correctly. You stated that the HDMI port does work, but it turns off when the cable is unplugged. Only other thing I can suggest is to try enabling CSM Support in BIOS.
 
  • When the black screen problem occurs, are you able to ping your system from another machine on the same network?
  • Do you have Remote Desktop or screen sharing software that you can use to remotely login to the Hack while the black screen is displayed?
I'm trying to determine whether your system:
  1. Crashes --> and thus displays black screen
  2. Continue to work --> but HDMI/DP output is turned off
If your system continues to work, it means that we haven't yet determined the correct BusID and Type for the various connectors. A Remote Desktop application can be very help so we can login to the machine remotely (while black screen is occurring) and run IORegistryExplorer and/or Hackintool.

If you don't have screen sharing software or experience with such applications, the only alternative is to try various combinations of BusID and Type until one of the combinations works.

Also, the use of an adapter or converter is absolutely not recommended during this procedure. In other words, we should use an HDMI-to-HDMI cable (computer and monitor must both be connected via HDMI) or a DP-to-DP cable (computer and monitor must both be connected via DP).

A DP-to-DP connection should almost always work without any frame buffer patch.

The system crashes. I tried to connect with teamviewer unsucessfully. I can't ping or detect any ip mapping ports.

I have also tried connecting the eGPU and the system freezes on "gIOScreenLockState". When I delete everything from Devices->Properties from config.plist (Clover), the system not freezes and system works with eGPU (non accelerated) and Hackintool detects iGPU (not appears ??? in info menu). I don't know if it can be help.
 
Correct -- just like the GTX 1050Ti Mobile I mentioned above, the GeForce MX150 is also headless and used for compute operations only.

The Hackintool screenshot shows all connectors at Pipe 18 (this is okay), which is designed to fixed HDMI hot-plug reboot problem. At this point it seems you've done everything correctly. You stated that the HDMI port does work, but it turns off when the cable is unplugged. Only other thing I can suggest is to try enabling CSM Support in BIOS.
My problem was solved. I just updated my OS to Mojave and now I don't have any problem with plugging and unplugging of HDMI. I don't know what is the issue with High Sierra though, I'm just glad to have a working HDMI in my hackintosh :headbang:
 
The system crashes. I tried to connect with teamviewer unsucessfully. I can't ping or detect any ip mapping ports.

I have also tried connecting the eGPU and the system freezes on "gIOScreenLockState". When I delete everything from Devices->Properties from config.plist (Clover), the system not freezes and system works with eGPU (non accelerated) and Hackintool detects iGPU (not appears ??? in info menu). I don't know if it can be help.
Okay, let's start with a very basic setup (attached CLOVER) that does not enable WhateverGreen. Instead, it sets:
  • SMBIOS to Mac mini 8,1
  • Platform ID to 0x3E9B0007 via Clover (Clover Configurator --> Graphics)
  • Enables Inject Intel
  • Removes the Designare Z390 SSDTs from CLOVER/ACPI/patched folder
  • Enables the 4 USB port limit patches in Clover Configurator --> Kernel and Kext Patches
The purpose of this version is to create a bootable system where iGPU is accelerated and drives a display monitor with DisplayPort only. If this works, then we can worry about enabling HDMI. This is only for Mojave.

How to install:
  • The attached CLOVER folder may be installed in either:
    • EFI partition of a USB flash disk.
      • In this case, please press the appropriate function key during BIOS splash screen to bring up the Boot Menu, and select the USB flash disk.
    • EFI partition of the Mojave SSD.
EFI partition can be mounted using EFI Mounter v3 or from Clover Configurator --> Mount EFI (on the left side pane).
 

Attachments

  • CLOVER.zip
    2.8 MB · Views: 82
@CaseySJ - I think I may have a weird problem. On my ASRock z390 itx Mobo, sometimes when I wake up my screen from sleep (induced by apple menu > sleep) or display only sleep (induced by hot corner), I get a flashing screen with white lines (attached pic).
The phenomenon is totally random and I can't seem to find what cause it to work and what breaks it. To get back , I have to hard reboot or login via remote desktop and reboot.
When the flashing dance is ongoing, the Remote Desktop connection shows the display to be stable/
  • ASRock z390 itx Mobo. BIOS 4.0.
  • 9900K stock no overclock.
  • 2 x 16GB 2400 Corsair LPX.
  • The Mobo is connected to the display through a HDMI cable.
  • I have only iGPU driving the display and the Framebuffer patch enabled (platform ID 07009B3E ).
  • No eGPU
  • Wifi and BT working with DW1560
I suspect the issue could be down to two of the following
  1. I don't know why the audio devices under Hackintool show both the Realtek and Intel Kabylake HDMI ?
  2. Under System Pref> Sound > Output - my Dell shows up as DisplayPort device
I have checked the IORegistryExplorer and it looks ok to my untrained eye. Can you take a look and see if you find something wrong with my config here ?


I have already done this - sudo rm com.apple.PowerManagement.*

I used this as a base for setting my system up - https://www.tonymacx86.com/threads/...-gaming-itx-tb3-igpu-mojave-sff-build.277418/. I'm on BIOS 4.0 instead of the 1.5 that the author is on.
 

Attachments

  • Screenshot 2019-08-26 at 8.12.49 PM.png
    Screenshot 2019-08-26 at 8.12.49 PM.png
    51.5 KB · Views: 74
  • Screenshot 2019-08-26 at 8.14.18 PM.png
    Screenshot 2019-08-26 at 8.14.18 PM.png
    97.1 KB · Views: 64
  • Screenshot 2019-08-26 at 8.14.46 PM.png
    Screenshot 2019-08-26 at 8.14.46 PM.png
    87.6 KB · Views: 65
  • Screenshot 2019-08-26 at 8.16.32 PM.png
    Screenshot 2019-08-26 at 8.16.32 PM.png
    297.3 KB · Views: 86
  • Screenshot 2019-08-26 at 8.27.33 PM.png
    Screenshot 2019-08-26 at 8.27.33 PM.png
    290.4 KB · Views: 73
  • export.config.plist
    9.9 KB · Views: 88
  • iMac.ioreg
    6.1 MB · Views: 80
  • Screenshot 2019-08-26 at 8.36.14 PM.png
    Screenshot 2019-08-26 at 8.36.14 PM.png
    60.8 KB · Views: 66
  • Screenshot 2019-08-26 at 8.36.26 PM.png
    Screenshot 2019-08-26 at 8.36.26 PM.png
    50.2 KB · Views: 62
  • Screenshot 2019-08-26 at 8.36.35 PM.png
    Screenshot 2019-08-26 at 8.36.35 PM.png
    19.8 KB · Views: 76
  • Screenshot 2019-08-26 at 8.37.37 PM.png
    Screenshot 2019-08-26 at 8.37.37 PM.png
    171.8 KB · Views: 65
Last edited:
@mango1122,

That's another great example of how to report a problem!

Some comments and suggestions:
  • Realtek and Intel Kaby Lake audio are both necessary and indicate correct behavior.
  • If your monitor has built-in speakers, then connecting an HDMI or DisplayPort cable will not only drive the display, but will also treat the monitor as another audio device. That's why you see your monitor listed as an Audio Output device.
  • Those were the easy answers. Now let's try the following:
    • First suggestion would be to update Lilu, WhateverGreen, and AppleALC to latest versions that were released a week or so ago.
    • Next, because Mojave 10.14.4 and later has native support for 9th-Gen iGPUs (device ID 0x3E98), we should delete the device-id field from Clover Configurator --> Devices --> Properties.
    • Add -disablegfxfirmware to the Boot section.
    • The System Parameters section of config.plist has Inject Kexts set to Yes. This is okay for now, but it may be a good idea to install third-party kexts in /Library/Extensions, rebuild kernel cache with Kext Utility, and set Inject Kexts to Detect.
      • If Clover finds VirtualSMC or FakeSMC in /Library/Extensions, then it will not inject any kexts from the CLOVER/kexts/Other folder.
 
Hi @CaseySJ

Got it (4K on Kaby Lake Intel HD Graphics 630) to work in the end by modding DVMT Pre-allocated Video Memory in BIOS to 64MB.

Thanks for your help and hoping someone will find the below useful.

2019-08-26 at 18.44.png


2019-08-26 at 18.58.png


2019-08-26 at 19.00.png


2019-08-26 at 19.02.png



2019-08-26 at 19.03.png



Have you tried SwitchResX from madrau.com? It has a 10-day trial period.

I would suggest trying this app with both the original platform ID (59120000) and the new (3E9B0007). Instructions for this app are on the website (“How to use it”).

Let us know whether it helps.
 

Attachments

  • 2019-08-26 at 18.58.png
    2019-08-26 at 18.58.png
    82.2 KB · Views: 90
Thank you for the reply @CaseySJ
  1. Glad to know that the audio indicates the correct behaviour. My monitor does not have any speakers, but I am confused that it shows up as connected over DisplayPort as opposed to HDMI (even when I have the correct Framebuffer connection patch set up). I remember with the Designare it would show up as HDMI and not DP.
  2. The kexts look upto date from Hackintool and Kext Utility - I'll take a look manually tomorrow morning just to be sure.
  3. I've deleted the device ID field and and added the -disablegfxfirmware flag.
Will monitor and report back
 

Attachments

  • Screenshot 2019-08-27 at 1.06.52 AM.png
    Screenshot 2019-08-27 at 1.06.52 AM.png
    68.8 KB · Views: 56
  • iMac2.ioreg
    6.6 MB · Views: 78
  • export_config2.plist
    9.9 KB · Views: 73
Last edited:
All

I would like to share my experience with getting my Asus H110T + i3 6100 / HD530 build to work with DisplayPort in full 4k resolution (up to my display native resolution) - I still need to check this also works in HDMI, but I will do it only tomorrow.

I am working with Catalina 10.15 Beta 6, SMBIOS iMac 17,1...

1566948516255.png


1566948961756.png


1566948779748.png


... and I was trying since last January to get this build to work stably with by AOC U2477PWQ 4K display, either in HDMI or DisplayPort.

As you can see in my post in a different tread, https://www.tonymacx86.com/threads/...ching-using-whatevergreen.256490/post-1889707, I started with 10.13.6, then moved to 10.14.2 (I think) and finally with 10.15 Beta.

This Asus H110T motherboard has built in 3 connectors (LVDS, DisplayPort and HDMI), as per ig-platform-id 0x193B0000 (Device ID 0x1912). I had already discovered that the connection problems I was having in 10.13.6 and 10.14.2 were related to having DisplayPort connected to BusID 0x06 instead of BusID 0x05 at Index 3 / Port 7.

1566951005231.png


1566949432166.png


After changing the BusID, I could bet a picture in the monitor... the main problem was that I couldn't get 4k to work. I only had a 1080p picture!

I had my clover config.plist patched with the help of Hackintool (thanks headkaze, excellent tool), trying and reading everything, to understand how to get this to work.

Until today, I tried to include in config.plist all twicks and tricks I was reading, specially related to WhateverGreen/Framebuffer ... but finally tried to take out everything out of Devices/Properties that I didn't know what it was about. I updated all kexts, drivers, Clover, to latest builds, including BIOS, and just kept the following properties:

1566950186883.png

1566950214953.png


The previous properties list was as following:

1566950352052.png

1566950395983.png

1566950419918.png

1566950445780.png

1566950467938.png

1566950491272.png


Rebooted, and voila... I have a 4k picture. Still not 100% stable (sometimes I loose image for 1 second or so, and get it back, which is very annoying - but this also happens in my H310T build), but workable and manageable.

Just to let you know, my UEFI drivers and kexts (which I keep at the clover EFI space) are the following:

1566949905669.png


I will update how this goes with HDMI...

Thanks, CaseySJ, for this Guide.
 

Attachments

  • 1566950717316.png
    1566950717316.png
    12.7 KB · Views: 53
Back
Top