Jump to content
m.gbt

[GUIDE] EDID injection

Recommended Posts

 

  • Your graphics framebuffer kext is correctly loaded, but you receive no image after boot messages (aka black screen);
  • Your display seem to work fine only randomly;
  • You have blinking screen or many artifacts.

 

EDID injection is a likely solution for all of these! The Clover bootloader makes it very easy to be done :)

 

1. On Windows, download and run RW-Everything (this one has multiple interesting utilities but you can use any other, like EDID Viewer, Phoenix EDID Designer, and possibly others...)

Note: Linux is also capable of dumping EDIDs, but for my laptop's built-in display, it was only possible through Windows. If you want to try it from Linux, I recommend this guide here.

2. Assuming you're using RW-Everything, click on EDID button. You'll see something like this: (don't copy, it won't work for you, EDIDs differ for each display and this is mine)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
   00 00 FF FF FF FF FF FF 00 4C A3 00 02 FF FF FF FF
   10 00 15 01 03 80 1D 10 FF 2F 00 00 A0 57 49 9B 26
   20 10 48 4F 00 00 00 01 01 01 01 01 01 01 01 01 01
   30 01 01 01 01 01 01 9E 1B 56 78 50 00 18 30 30 20
   40 25 00 25 A5 10 00 00 19 00 00 00 FD 00 00 3C 00
   50 D9 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
   60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
   70 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CC

3. Copy and paste it on notepad. Erase the first line and the first column, they are just references, not part of the EDID. You will have something like this:

00 FF FF FF FF FF FF 00 4C A3 00 02 FF FF FF FF
00 15 01 03 80 1D 10 FF 2F 00 00 A0 57 49 9B 26
10 48 4F 00 00 00 01 01 01 01 01 01 01 01 01 01
01 01 01 01 01 01 9E 1B 56 78 50 00 18 30 30 20
25 00 25 A5 10 00 00 19 00 00 00 FD 00 00 3C 00
D9 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CC

4. Remove every line break and spaces, ending up with a single line of hexadecimal code, then use HEX -> Base64 to convert it to base 64. Save the result as EDID64.txt on a pen drive. This is my base 64 EDID, the general format of yours will resemble it:

AP///////wBMowAC/////wAVAQOAHRD/LwAAoFdJmyYQSE8AAAABAQEBAQEBAQEBAQEBAQEBnhtWeFAAGDAwICUAJaUQAAAZAAAA/QAAPADZCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMw=

5. Final steps: just add it to your Clover config.plist like the example below: (more information here if needed)

<key>Graphics</key>
  <dict>
      <key>InjectEDID</key>
      <true/>
      <key>CustomEDID</key>
      <data>AP///////wBMowAC/////wAVAQOAHRD/LwAAoFdJmyYQSE8AAAABAQEBAQEBAQEBAQEBAQEBnhtWeFAAGDAwICUAJaUQAAAZAAAA/QAAPADZCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMw=</data>
  </dict>

Don't duplicate the Graphics key in your config.plist - be careful to simply add the keys InjectEDID and CustomEDID inside the Graphics key if you already have it.

My guide in my signature contains my config.plist attached, you can check it if you're still not feeling sure. Any further doubts, please post here! :)

Thanks to kyndder for originally explaining the process in the Clover bootloader thread.

Share this post


Link to post
Share on other sites

My edid :

header: ? ? ? ? ?00 ff ff ff ff ff ff 00serial number: ? 30 e4 e9 02 00 00 00 00 00 14version: ? ? ? ? 01 04basic params: ? ?90 1f 11 78 0achroma info: ? ? b7 a5 97 58 56 8f 27 1f 50 54established: ? ? 00 00 00standard: ? ? ? ?01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01descriptor 1: ? ?58 1b 56 7e 50 00 0e 30 24 30 35 00 35 ae 10 00 00 19descriptor 2: ? ?de 12 56 9a 50 00 1a 30 24 30 35 00 35 ae 10 00 00 19descriptor 3: ? ?00 00 00 fe 00 39 44 4d 4b 32 80 31 34 30 57 48 34 0adescriptor 4: ? ?00 00 00 00 00 00 41 31 94 01 00 00 00 01 01 0a 20 20extensions: ? ? ?00checksum: ? ? ? ?7f
Edited by Looklearner
Added [CODE] tag

Share this post


Link to post
Share on other sites

You seem to be dumping that from Linux. Use the get-edid command and see if you can get the correct information from it ;)

Share this post


Link to post
Share on other sites

You should dump it from another operational system. If your Mac is already correctly reading your EDID then there's no reason to inject it :D

If you want it for curiosity only, you can get it like this:

ioreg -l | grep IODisplayEDID

Share this post


Link to post
Share on other sites

biggrin.png?i just used darwindumper to see what gives. I applied your command ?in terminal and i get this:?

l:~ l$ ioreg -l | grep IODisplayEDID??? | |?? | | |?????? "IODisplayEDID" = <00ffffffffffff0030e4e9020000000000140104901f11780ab7a59758568f271f505400000001010101010101010101010101010101581b567e50000e302430350035ae10000019de12569a50001a302430350035ae10000019000000fe0039444d4b32803134305748340a0000000000004131940100000001010a2020007f>l:~ l$

---
Now my question how to add it in my config.plist ? because my plistedit pro won't add it in base64 ! but if add it in hexadecimal it will be added !
?
Suggest me what to do ? Thanks

?

Edited by Lacedaemon
Added [CODE] tag

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.