Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

jmswts

macrumors newbie
Original poster
Aug 21, 2018
6
0
Huntington Beach, CA
With the updated TB3 controller in the new MBP, It seems that the way both DisplayPort as well as HDMI is negotiated with external displays has been altered causing the 2018 MBP to be incompatible with some displays.

I have an ASUS PA248Q that I have attempted to connect to my 2018 MBP with various quality DisplayPort as well as HDMI cables. The initial indicator is a color fringing that appears around the text in OS elements but upon closer inspection, the actual signal is of much lower quality than it should be. I ran a direct comparison from a 2015 MBP and my 2018 MBP and the newer machines output is nearly half the quality of that of the older machine. Something has been changed with how the new TB3 ports negotiate this signal and it seems to have broken the compatibility to some external displays.

I've been through Apple Support and the Genius Bar with this as well as a bunch of different connection methods and cables. The color fringing can be "fixed" by de-selecting "Use LCD font smoothing" in General Preferences but the very noticeable change in the visual quality of output has still be left unaddressed.

Is anyone else experiencing issues like this?
 
This seems to be on track with what I am experiencing. I found some updated info/instructions in the comments:
http://www.mathewinkson.com/2013/03...-quality-of-an-external-monitor#comment-16073
I'll have to give it a try this weekend when I have access to a second computer. Thanks!


I am having a similar problem, but with a Dell U2715H monitor. Documented here:

https://forums.macrumors.com/thread...fonts-on-dell-u2715h-via-displayport.2131646/

I, too, was directed to the mathewinkson website. I ran "Andrew Daugherity’s improved patch-edid.rb" script which created the new profile file just fine, but I have not gotten around to disabling integrity protection to place the file in the appropriate folder. The comment you linked to (suggesting target disk mode to place the file) looks promising, and much more convenient vs. having to toggle system settings on and off. I will have to try it.

It's INSANE that this is required to get the 2018 MacBook Pro's working with external monitors that were just fine with older MacBook Pro's.
 
My old 2013 allowed my 4k monitor to run with HDR enabled. My new 2018 doesn't. Something is different. I did find that using a USB-C to HDMI cable was the best solution, rather than going via a dock or dongle.
 
  • Like
Reactions: BigMcGuire
It's INSANE that this is required to get the 2018 MacBook Pro's working with external monitors that were just fine with older MacBook Pro's.

It is absolutely insane! It seems this issue has been going on for quite a while, how has Apple not addressed this. Sadly it is somewhat to be expected from Apple these days.
[doublepost=1535141242][/doublepost]
My old 2013 allowed my 4k monitor to run with HDR enabled. My new 2018 doesn't. Something is different. I did find that using a USB-C to HDMI cable was the best solution, rather than going via a dock or dongle.

I tried USB-C to HDMI as well as USB-C to DisplayPort as well as Thunderbolt to a CalDigit TS3 Plus dock that then outputs to a monitor via DisplayPort all with the exact same results.

Something has definitely been changed and broken what was working. My concern with the "Andrew Daugherity fix" is that it seems to fix an operating system issue where the OS and paired drivers are not playing nice with specific displays. But my display is working fine with a 2015 MBP running Sierra and shows up properly in System Report on both systems. Would it show 30-bit color if HighSierra was mistaking my display for a tv and outputting? Does a mac even support or output 10-bit YCbCr color? Also, others that are using this fix report an extra line in their System Report that lists the monitor showing as a TV.

Screen_Shot_2018-08-24_at_12.48.06_PM.png
 
It is absolutely insane! It seems this issue has been going on for quite a while, how has Apple not addressed this. Sadly it is somewhat to be expected from Apple these days.
[doublepost=1535141242][/doublepost]

I tried USB-C to HDMI as well as USB-C to DisplayPort as well as Thunderbolt to a CalDigit TS3 Plus dock that then outputs to a monitor via DisplayPort all with the exact same results.

Something has definitely been changed and broken what was working. My concern with the "Andrew Daugherity fix" is that it seems to fix an operating system issue where the OS and paired drivers are not playing nice with specific displays. But my display is working fine with a 2015 MBP running Sierra and shows up properly in System Report on both systems. Would it show 30-bit color if HighSierra was mistaking my display for a tv and outputting? Does a mac even support or output 10-bit YCbCr color? Also, others that are using this fix report an extra line in their System Report that lists the monitor showing as a TV.

Screen_Shot_2018-08-24_at_12.48.06_PM.png

This is mine, which doesn't even show the monitor at 60Hz now. I have no idea what is going on with High Sierra or why it's being such a dick, but I've given up with it for now.

I cannot show 60Hz, I cannot show HDR. I don't even know where to start to fix it.
 

Attachments

  • Screen Shot 2018-08-25 at 09.22.46.png
    Screen Shot 2018-08-25 at 09.22.46.png
    91.3 KB · Views: 519
I have been able to fix the external display issues via HDMI and DisplayPort I was having with my 2018 MBP running MacOS High Sierra 10.13.6. If your external display is showing color fringing around the text, especially within the Operating System menus or seems to be showing a drastically reduced quality signal than what it should, forcing your computer to use RGB mode for the external display might be the fix.

Using the script Andrew Daugherity created I’ve updated the instructions to try and be as thorough and user-friendly as possible so you can easily follow along and perform this fix with a single computer.



1. Download the script by Andrew Daugherity: https://gist.github.com/adaugherity/7435890

2. Create a folder on your desktop titled “Display Fix”

3. Drag the script file “patch-edid.rb” from the folder in your downloads titled with a ton of numbers and letters into this folder on your desktop.

4. Connect your laptop up to the display you are going to be using. Preferably with the laptop closed running only the external display.

5. Open the app “Terminal”

6. Drag the file “patch-edid.rb” into the Terminal window. A file path will appear. Hit Enter. This should complete in a few seconds.

7. Go to your Finder App Menu (the navigation bar on the top of the desktop) Select Go>Home. There will be a folder titled “DisplayVendorID-XXX”. Mine is titled DisplayVendorID-469, Yours will be different and is specific to your display.

8. Drag “DisplayVendorID-XXX” into the Display Fix folder on your desktop.

9. Create a new folder in the Display Fix folder titled “Old Display Pref”

10. Disconnect your laptop from your external display and shut it down.

11. The file you need to alter is a system file that is protected by Apple to reduce malware or also you accidentally messing up something critical to the operating system. You need to temporarily disable this protection. Press the power button to start your laptop up and immediately hold Command + R. As soon as you see the loading bar you can release the keys. This will start your laptop in recovery mode.

12. Select your language.

13. Go to the Application Menu > select Utilities > click on and open Terminal

14. Type, no quotation marks, in the command “csrutil disable” and hit enter. It will tell you the computer must be restarted for the changes to take place.

15. Go to the Apple Menu (top bar, Apple logo) and select restart.

16. Once your computer has restarted go to the Finder App Menu, Select Go > Computer > Macintosh HD > System > Library > Displays > Contents > Resources > Overrides.

17. In Overrides look for the folder name that matches the folder name that the script created and you placed into the Desktop Fix folder. For example, if the folder that was created is “DisplayVendorID-ABC” then look for that corresponding file in the Overrides folder.

18. Open your Display Fix folder on your desktop and drag the folder (example: DisplayVendorID-ABC) from Overrides into the Old Display Prefs folder. This is to save your original in case you want to go revert back for any reason. I zipped this Old Display Prefs folder (right click > compress) and stored it on my iCloud in a folder of things I keep for “just in case” backup reasons.

19. Now that you’ve backed it up, delete this folder from the Overrides folder.

20. Next drag the new folder that was created by the script from your Display Fix folder into the Overrides folder.

21. Shut down your computer.

22. Press the power button and immediately hold Command+R, you can let go of the keys when a loading bar appears.

23. Go to the Application Menu > select Utilities > Click and open Terminal

24. Type, no quotation marks, the command “csrutil enable” then hit enter. It will say the computer needs to restart for the changes to take effect.

25. Go to the Apple Menu (top bar, Apple logo) and select restart.

26. Once your computer has restarted open the terminal app and type, no quotes, “csrutil status”. If it says it is still disabled please repeat steps 21-24 to enable this properly to protect the integrity of your operating system. If it says enabled continue.

27. Connect your External Display. The issue should be fixed. If not see #29.

28. Since you have backed up your Old Display Prefs folder somewhere you can now trash the Display Fix folder from your desktop.


29. Go to the Apple Menu (top bar) > System Preferences > Displays > Color. Under Display Profile you should see “EDID override”. If you do not see this you might not have placed the correct newly created folder from the script into the Overrides folder. Return to step 11. Or the script might not have correctly created the new folder, see step #4.


Hope this helps someone else out there!
 
I have been able to fix the external display issues via HDMI and DisplayPort I was having with my 2018 MBP running MacOS High Sierra 10.13.6. If your external display is showing color fringing around text, espeically within the Operating System menus or seems to be showing a drastically reduced quality signal that what it should forcing your computer to use RGB mode for the external display might be the fix.

Have you tried the newest MacOS supplemental update (released Tuesday, August 28th) to see if this fixes the monitor detection problem without requiring the script workaround?
 
Have you tried the newest MacOS supplemental update (released Tuesday, August 28th) to see if this fixes the monitor detection problem without requiring the script workaround?

I saw that today and have not updated. I am mid-project now and don't want to upset what is working. If someone was having these issues and this latest update fixed the issue please post so!

Due to the history of this issue going back as far as El Capitan, I'm slightly doubtful but I would love to be wrong! It would be nice if my MacBook Pro "Just worked" with whatever display I plugged it into...
 
Just wondering if this fix will work on OS Mojave please?


I have not upgraded to Mojave yet solely because of this bug. I'm unsure if updating to Mojave would break this fix and I haven't had the time or desire to deal with my setup being messed up while I try and fix it again.

I'd be interested to know peoples experience with this as well, would like to update.
 
I'm pretty sure this was fixed either at release or soon after in Mojave, I just plugged my 2018 mbp into 4k tv using 60hz compatible display port based hdmi dongle and it's showing 4:4:4 image.
 
I'm pretty sure this was fixed either at release or soon after in Mojave, I just plugged my 2018 mbp into 4k tv using 60hz compatible display port based hdmi dongle and it's showing 4:4:4 image.
Unfortunately we had a 2016 iMac Retina on El Capitan, and we had no issues with it remembering its EDID, but it was stolen from the Church where it was located.
Now we have a 2018 iMac Retina with Mojave, that's less than 6 moths old, and it has NEVER remembered its EDID!
Hence my interest in this fix.
I have a current open case with Apple, but reading these threads makes me realize that it's a far-reaching issue, and I'm not an orphan!
I would love to know if anyone else has tried this script on Mojave please, and the results of course!
 
Ok so I tried it on Mojave. The process is not as described on the instructions above, but close.
It had partial success only, so I have reverted to the original display ID and am still referring it to Apple engineers for resolution. Currently installing a fresh OS on a partition.
 
This no longer works in Catalina. Apple basically made the systems folder read only. I’m trying to mount my drive in safety mode, and copy the files that way.
 
I got it to work! Here were the steps:

  1. Run EDID script as usual with display connected.
  2. In my case, there was a DisplayVendorID-10ac folder already in /System/Library/Displays/Contents/Resources/Overrides. I copied that folder to my Desktop.
  3. I then placed the file created by the script into the folder on my desktop (i.e ~/Desktop/DisplayVendorID-10ac).
  4. Reboot and go into recovery mode.
  5. Using Disk Utility, mount your HD.
  6. Close Disk Utility and open Terminal.
  7. From Terminal, go to /Volumes/Mac...HD/System/Library/Displays/Contents/Resources/Overrides
  8. Perform 'mv DisplayVendorID-10ac old_DisplayVendorID-10ac'
  9. Perform 'mv /Volumes/Mac...HD/Users/XXX/Desktop/DisplayVendorID-10ac .'
  10. Reboot.

Your monitor should work now. I did do this with SIP disabled, but I don't think that really matters. Hope this helps.
 
  • Like
Reactions: Gr1f
I got it to work! Here were the steps:

  1. Run EDID script as usual with display connected.
  2. In my case, there was a DisplayVendorID-10ac folder already in /System/Library/Displays/Contents/Resources/Overrides. I copied that folder to my Desktop.
  3. I then placed the file created by the script into the folder on my desktop (i.e ~/Desktop/DisplayVendorID-10ac).
  4. Reboot and go into recovery mode.
  5. Using Disk Utility, mount your HD.
  6. Close Disk Utility and open Terminal.
  7. From Terminal, go to /Volumes/Mac...HD/System/Library/Displays/Contents/Resources/Overrides
  8. Perform 'mv DisplayVendorID-10ac old_DisplayVendorID-10ac'
  9. Perform 'mv /Volumes/Mac...HD/Users/XXX/Desktop/DisplayVendorID-10ac .'
  10. Reboot.

Your monitor should work now. I did do this with SIP disabled, but I don't think that really matters. Hope this helps.
Thanks for this, Catalina update system folder permissions was messing with my head this morning!
 
  • Like
Reactions: mmark77
I got it to work! Here were the steps:

  1. Run EDID script as usual with display connected.
  2. In my case, there was a DisplayVendorID-10ac folder already in /System/Library/Displays/Contents/Resources/Overrides. I copied that folder to my Desktop.
  3. I then placed the file created by the script into the folder on my desktop (i.e ~/Desktop/DisplayVendorID-10ac).
  4. Reboot and go into recovery mode.
  5. Using Disk Utility, mount your HD.
  6. Close Disk Utility and open Terminal.
  7. From Terminal, go to /Volumes/Mac...HD/System/Library/Displays/Contents/Resources/Overrides
  8. Perform 'mv DisplayVendorID-10ac old_DisplayVendorID-10ac'
  9. Perform 'mv /Volumes/Mac...HD/Users/XXX/Desktop/DisplayVendorID-10ac .'
  10. Reboot.

Your monitor should work now. I did do this with SIP disabled, but I don't think that really matters. Hope this helps.

You are awesome! Pretty quick. I just copied the file into the system folder as you said and no glitch. No need to do the csrutil, just straight forward copy paste. Thanks!
 
  • Like
Reactions: mmark77
You are awesome! Pretty quick. I just copied the file into the system folder as you said and no glitch. No need to do the csrutil, just straight forward copy paste. Thanks!

Thanks, and glad I could help.

Yes, that's correct. There's no need for csrutil. I verified this two days ago when I redid these steps (had to reinstall Catalina because I uninstalled Catalina Beta). Just remember to copy (step 2) the existing contents of DisplayVendorID-XXXX into the DisplayVendorID-XXXX folder on your desktop before entering recovery mode. Also, both step 8 and 9 are move commands (mv), and not copies. I believe this is why we don't need csrutil.

Good luck.
 
I can't believe I didn't do this before.


The difference is impossible to deny. Everything looks much clearer and sharper, colors are more accurate...a beautiful sight to see compared to how it used to be.


I recommend this to EVERYONE who uses monitors via HDMI. You need this!
 
  • Like
Reactions: mmark77
I got it to work! Here were the steps:

  1. Run EDID script as usual with display connected.
  2. In my case, there was a DisplayVendorID-10ac folder already in /System/Library/Displays/Contents/Resources/Overrides. I copied that folder to my Desktop.
  3. I then placed the file created by the script into the folder on my desktop (i.e ~/Desktop/DisplayVendorID-10ac).
  4. Reboot and go into recovery mode.
  5. Using Disk Utility, mount your HD.
  6. Close Disk Utility and open Terminal.
  7. From Terminal, go to /Volumes/Mac...HD/System/Library/Displays/Contents/Resources/Overrides
  8. Perform 'mv DisplayVendorID-10ac old_DisplayVendorID-10ac'
  9. Perform 'mv /Volumes/Mac...HD/Users/XXX/Desktop/DisplayVendorID-10ac .'
  10. Reboot.

Your monitor should work now. I did do this with SIP disabled, but I don't think that really matters. Hope this helps.
Hi, sorry for my English and knowledge of terminal commands. I made 1-6 steps, but when I am typing 7 command I always get "no such folder" what I am doing wrong?
And in Overrides I have a lot of another monitor profiles, but using only one, maybe it is better to delete others?
Also when I was using another guide, I created copy folder Overrides.bak in system folder, how can I delete it now?
 
Last edited:
Hi, sorry for my English and knowledge of terminal commands. I made 1-6 steps, but when I am typing 7 command I always get "no such folder" what I am doing wrong?
And in Overrides I have a lot of another monitor profiles, but using only one, maybe it is better to delete others?
Also when I was using another guide, I created copy folder Overrides.bak in system folder, how can I delete it now?

For step 7, if you're having trouble, go into one folder at a time (i.e. cd /Volumes, cd Mac....HD, cd /Users, etc). The Mac...HD is just shorthand for your Mac HD.

I wouldn't delete the files in case you use another monitor that needs one of these files. Also, they're super small.
 
Hey I know that this is an old thread but I am encountering the same problem and I’ve been struggling.
I’m on BigSur, and I can’t seem to be able to move the DisplayVendorID folder from my desktop to the override file, I’ve tried to disable scrutil, the folder simply won’t move! I need help. I checked the overrides folder and I don’t even have an old version of the DisplayVendorID file that I need.
If anyone could help me I would be forever grateful.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.