Contribute
Register

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

Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
Is there any way you could borrow a more recent HDMI/DisplayPort monitor (not a TV, but a computer monitor)? It would be nice if the monitor also has DVI, then you can test both DVI and HDMI.
I had the wife of a friend on the phone this morning. I’m not sure if it is possible to borrow his monitor. But if it is, it will not be before the weekend.
 
Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
I borrowed the HDMI cable again and tried different settings, but the TV is not recognised. (I always re-plugged it after restart, but that didn’t help either.)

For now, don't worry that DVI port is black -- that could be due to the monitor and EDID value.
How can I patch the EDID values? How does that work and what do I have to set?
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
12,230
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
I borrowed the HDMI cable again and tried different settings, but the TV is not recognised. (I always re-plugged it after restart, but that didn’t help either.)
As you can see, the connector configuration we're gravitating towards is the same one as the H370M D3H. The reason these settings worked for Peter is most likely because he's using a recent-model computer monitor. So that's why I still think it's best to wait until the weekend or next week until you have a chance to test such a monitor yourself.

How can I patch the EDID values? How does that work and what do I have to set?
We use Hackintool to patch EDID, but the more I think about it, the more I think EDID might not be the issue. EDIDs are typically (which is not to say exclusively) used for inserting high-DPI resolutions for scaled or "retina" displays on 2K or 4K monitors.
 
Last edited:
Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
I’ve just switched screens and ports to see how I would fare with that. So the Philips is connected via VGA and the Dell via DVI.

That results in graphical glitches for the Philips (and the screen turning black for maybe two seconds every now and then, occasionally several times a minute). I barely had any glitches with the Dell on VGA.

But now being connected via DVI, the Dell disappeared. That is, not just turning black, but not visible at all in either the monitors panel of System Preferences, or in Hackintool – in contrast to the Philips when it was connected via DVI.

I was wondering whether that might give you any new clues (until I can hopefully test with a newer screen in a couple of days)?
 
Joined
Jul 18, 2016
Messages
83
Motherboard
Asus Z-170 Deluxe
CPU
i7-6700K
Graphics
RX 580
Mobile Phone
  1. iOS
Yes, but you should be aware of several factors:
  • eGPUs require Thunderbolt connections.
  • Using on-board HDMI to drive a TV can lead to color tint issues, boot-to-black issues, scaling issues, etc. Not all TVs play nicely. If you have a very recent Smart TV, for example, it might work better.
I tried connecting a 4K LG Smart TV from the on-board HDMI and it froze the system. The primary display, 24" 4K LG monitor is connected to Sapphire RX 580 using DisplayPort.

When I try connecting the TV using HDMI from the RX 580, TV is detected by macOS, but no signal is detected by the TV.

Any ideas what I did wrong?
 
Joined
Nov 3, 2015
Messages
19
Motherboard
HP 290 G2 Microtower - H370
CPU
i5-8500
Graphics
UHD 630
Mac
  1. iMac
  2. MacBook Air
Mobile Phone
  1. iOS
Good progress! Some comments and suggestions:
  • The HDMI connector is on Port 0x06 or Index 2.
  • The other Indexes do not matter (Index 1 and Index 3). You can set the BusID to 0x00 for both of them, and the Type to DUMMY.
  • Because of the pink tint on Index 2, try changing the BusID.
    • Currently you have BusID 0x02.
    • What happens if you change it to 0x04? (You must set the Index 1 and Index 3 BusIDs to 0x00)
    • If pink tint still exists, try changing the BusID to 0x06.
  • Also make sure you're using a straight HDMI-to-HDMI cable (no adapters).

Hi!
I was a little bit busy last few days... When I choose 0x04 or 0x06 for Index 2 BusID, with Index 1 and Index 3 set BusID to 0x00, I got same result - pink display. But one strange thing happened - when I connect smaller monitor (Samsung 23") pink display is disappeared. My main monitor is LG 24M45 24".
 
Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
As you can see, the connector configuration we're gravitating towards is the same one as the H370M D3H. The reason these settings worked for Peter is most likely because he's using a recent-model computer monitor. So that's why I still think it's best to wait until the weekend or next week until you have a chance to test such a monitor yourself.
True. The reason the settings didn’t work for me in the first place is probably the different Platform ID I initially used.

Hopefully I can borrow that monitor for testing. We’ll see.
 
Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
In the “Displays” panel of System Preferences I clicked on “Gather Windows” so I could access the settings for the Philips. There I clicked on “Default for display” and all is fine now. Obviously the Philips 17S doesn’t work with the 75 Hertz that were set by default.

After working through the framebuffer patching, which was all new to me, I was in the “think complicated mode” as it seems. That wrong settings in the System Preferences could lead to the screen staying black simply didn’t come to my mind – until it suddenly did now.

Wow, I’m glad this works now!

By the way, I have managed to create the EDID patches. For the main monitor (Dell) I used this script (which only does it for the first screen) and for the Philips I did it manually according to this guide. Only strange thing is that the Dell isn’t recognised by the system at all if connected via DVI, while the Philips also works via VGA, but only with the glitches described earlier (even after EDID patching).

Anyhow, I again want to thank you for your patience and for your effort in sharing your knowledge here!

EDIT:
So for VGA and DVI I can confirm that Peter’s framebuffer patch for the Gigabyte H370M D3H is correct (though not for every screen, for whatever reason). But you might want to mention that it is also applicable to the Gigabyte H370M D3H GSM and you might want to add a variant with a different platform ID as I use it.

See post 460 for the exact settings. IIRC, I also tried it with “HDMI20 (4K)” and even “VRAM 2048 MB” checked and it didn’t make a difference.

EDIT 2:
And you might also want to mention in the guide or at the patch for this motherboard that this solution works on High Sierra too.
 
Last edited:

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
12,230
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
@mabam,

Well done! Peter's framebuffer connector patches were right all along, but often the problem lies with the monitor. Most current-generation monitors support DisplayPort 1.2/1.4 and HDMI 1.4/2.0. These monitors tend to have the highest out-of-box compatibility.
 
Joined
Oct 3, 2018
Messages
30
Motherboard
Gigabyte H370M D3H GSM-F2-Clover
CPU
i5-8600K
Graphics
UHD630, 1280 × 1024
Classic Mac
  1. iMac
  2. Power Mac
Mobile Phone
  1. iOS
@CaseySJ,

The system is now able to enter sleep mode, which wasn’t possible before – though it takes very long. But it doesn't wake up from sleep, the screens stay black.

I realise that might be off topic, but I’m not sure as I don’t know whether it is related to the framebuffer.

Do you have suggestions as to what I can try or else, could you point me to a thread or forum or guide that could help me fix this?
 
Top