Navigate / search

Force RGB mode in Mac OS X to fix the picture quality of an external monitor

I recently bought a MacBook Pro (with ‘Retina’ screen), but when I hooked it up to my Dell U2410 monitor via HDMI cable I was shocked by the poor picture quality. The contrast was all wrong and text was misshapen. No amount of calibration in the monitor or software would fix it.

Short answer: OS X thinks my monitor is a TV, and is using the YCbCr colour space rather than RGB. I had to override an EDID setting to force the RGB colour space, and it is now working correctly.

Long answer: I haven’t owned a Mac for a while and had forgotten how difficult much of the “Apple community” can be when it comes to anything that can’t be adjusted in System Preferences. Googling for problems with external monitors on MacBooks found dozens of threads on official and unofficial Apple forums, all full of people with the same problem. The most common response was to blame the monitor, despite assurances from the stricken users that the monitor worked beautifully in Linux and Windows, even on the same machine under Boot Camp.

“You just haven’t calibrated it!”, “You are just too used to Retina now!”, “You just need to buy a Thunderbolt display!” Apple people also like to solve problems by throwing more money at it. (I realise that owning a Mac makes me an Apple person, too. Hypocritical self-loather?)

My lucky break was reading that the current colour space was “YCbCr” when I was browsing the monitor’s settings menu. I was sure that it was using RGB when hooked up to my PC, so I started searching instead for forcing RGB mode in OS X. It didn’t appear to be available out-of-the-box, but I have had some experience in overriding EDID settings for similar purposes so I searched instead for that.

I found this thread on the EmbDev.net forums. Mr Schwarz, thanks very much. Your thread and script was incredibly helpful and informative. It was written to fix problems connecting an external monitor via DisplayPort, but it fixed my HDMI issue just the same. I’ve summarised the required steps below.

My last word is to wonder what Apple is playing at. It seems that this problem has been reported by a lot of people for a long time, and I expect it would require a fairly simple software update. Do they just not care about those using third-party components, or are they actively attempting to force people on to Thunderbolt displays?

How to force RGB in Mac OS X

  1. Download the patch-edid.rb script from the forums thread above and put it in your home directory.
  2. Connect only the external monitor(s) in question (I closed my MacBook lid, for example). The script will make override files for any connected monitor.
  3. Type “ruby patch-edid.rb” in Terminal.
  4. A new folder will be created in your home directory. Move it into the “/System/Library/Displays/Overrides” folder. If Finder tells you that you are overwriting an existing folder, consider backing it up first.
  5. Restart your computer, enjoy your monitor.

To undo the changes, either delete the folder you had copied to the Overrides folder (if it didn’t already exist) or replace it with the folder you had backed up.

Updates

I’m not running OS X any more, but if you’re having trouble with any of these steps, please have a look through the comments below (and note that there are multiple pages). Many questions have been answered with helpful tips from others.

Update, 27 Oct 2013: If you’ve applied this fix before, the OS X Mavericks update will overwrite it. I’ve successfully re-applied the fix by following exactly the same steps, and other commenters below have done so, too.

Update, 13 Nov 2013: Andrew comments below that he has modified the script to add some useful new features, and provides a link to his GitHub for those wishing to use it instead.

Update, 28 Nov 2013: If the process appears to work but doesn’t seem to make a difference, consider Tom’s comments below. Depending on your monitor an extra tweak may be required.

Update, 26 May 2014: If you have had trouble with limited resolutions being available after the fix, check out Ibrahim’s comments here.

Comments

tapp
Reply

It didn’t work for me on a late 2012 iMac 27″ with a Pavilion 23xi. OS X version is 10.10.1. It creates me a 1920×1080@60Hz mode, but I still get the same results. In case it’s a different issue, what I find is that the desktop size for the secondary monitor seems to be the same as for the 27″ display, so I only see part of the desktop (I have to underscan the secondary screen to be able to see the menubar and the dock).

I’ve ordered a thunderbolt to DVI converter, and I hope it fixes the issue, otherwise, I’ll return the monitor.

Paddy Bauer
Reply

I am in Yosemite 10.10.01 and the folder Displays/Override simply does not exist.

tapp
Reply

The full path for the folder is /System/Library/Displays/Overrides. It exists, at least on my system. Thanks.

Paddy Bauer
Reply

I found it. It does not work. In my case though the colours are good. I calibrated them even. But the fonts are just not sharp. They are blurry. Damn it, this drives me crazy.

Nick Y
Reply

Any luck since you posted this, Paddy Bauer? I’m in the same boat.

Sridhar Katakam
Reply

Mid-2014 15″ rMBP hooked to Dell U2415 using the mini-displayport to displayport cable that came with the monitor.

Used Andrew’s modified script. Restarted laptop and the monitor.

No dice. Text is still blurry.

It does show in the window’s title bar that RGB mode is being forced though: http://cl.ly/image/1k0t101K232V

Display setting screenshot: http://cl.ly/image/3M3o0b2u0m2s

Connection Type did change from TV to DisplayPort: http://cl.ly/image/0i403k3g442w

Larry
Reply

Thanks a million to you and the originators of that patch. Worked great with my new iMac running Yosemite and external Acer K272HUL

john doe
Reply

Script doesn’t seem to be working for me on Asus MX279H with OS X 10.10.1

Nick Y
Reply

Anyone have success with this under Yosemite, where there is no /System/Libraries/Displays/Overrides folder?

Trevor
Reply

There is. You need to make sure you’re looking at your hard drive globally, not just “all my files”

Ben
Reply

I am trying to get this to work on my Benq 27 Monitors and just not getting there. The file I create and copy to the folder is not editable with my txt reader and therefore I suspect I need to change a part of the source file as per Tom’s message, however when I change ANYTHING in this line: monitor_name=[disp[“edid_hex”].match(/000000fc00(.*?)0a/){|m|m[1]}.to_s].pack(“H*”) I simply get error messages when running the script. I tried running the ORIGINAL script, however display was even worse…I am not sure WHICH bit of that line to change to get it working. Any help would be really really appreciated!!

Juan
Reply

Thank you very much!

It worked for me.

Macbook Pro 15′ Late 2013 running Yosemite 10.10.1
Acer B276HUL

Trevor
Reply

Same setup here…isn’t it crazy the difference it makes?

dave
Reply

Similar setup here too, and worked perfectly to smooth over the jagged fonts.

Late 2013 mbp, OS X 10.10.1, Acer K272HUL 2560×1440 27″

total3dxSergey
Reply

Thank you! That helped. I had a problem with s2415h dell. gray and blue gradients were’t smooth, now it look perfect!

Charles
Reply

I can’t get this to work at all? I’ve downloaded the file but where do I put it next? After that where is the /System/Library/Displays/Overrides area, I can’t find it? How am I meant to close my Mac lid and do something on it at the same time? All very confusing…

Peter Swartwout
Reply

Worked like a champ. I have a 2014 MBP Retina with an external Acer K272HUL. Thank you so much!

Haldor422
Reply

I was on the line to AOC for their AOC Q2963PM 29-inch IPS (21:9) with the same jagged text problem…
He explained that the problem would go away with a DVI to DVI cable… I’m currently waiting on Amazon to find out if he is right… I’ll let you all know soon…

Trevor
Reply

Unbelievable. I can’t believe this worked. 2013 rMBP with DP connected Acer B276JUL at 2560 x 1440 running Yosemite.

Again, I can’t thank you all enough. This has made such a difference.

Yaron Guez
Reply

WOW!!! Game changer, sir. I was THIS close to returning my brand new monitor before reading a comment in Amazon that mentioned this trick. Why is this a thing?? THANK YOU!!!!! Got PayPal? Let me buy you a drink! :-)

JK
Reply

Just did this with Acer K272HUL and it worked. Thanks!!

Jim A.
Reply

No joy with 2014 13″ rMBP and Asus 248H-P monitors connected via TB to HDMI adapter and HDMI direct connection. (no Displayport on this monitor). It forced the RGB mode but text is still blurry. Anyone else have success with this monitor?

Daniel Gordon
Reply

I still have this issue, even after running the script. Is it possible this could be because I am not using certified Apple ‘dongle’ – I am using a cord (no adapter) that goes from displayport to DVI (and another one for displayport to VGA). Both the cords are from Amazon.

Ken
Reply

I’m having a bit of trouble. I’ve followed all the steps and the resolution is great now, however the screen is too large and I cannot see the dock at the bottom; it is cut off. How can I fix this issue?

bigbaum
Reply

Weird, doesn’t work for me using a late 2013 Retina MacBook Pro connected via DisplayPort to a Dell Ultrasharp U2412m. Similar to Sridhar Katakam above, connection type is listed as DisplayPort and the display title bar says RGB forced.
Anyone have an idea what else I could try?

neond
Reply

Thanks, this is an awesome feature! works on Yosemite with Mac Mini.

The only problem with it is that for me is that I cant choose the refresh rate 24hz (hertz) in the Mac Display Menu any longer, I could do that before the “fix”. The only choices are 60hz, 60hz (probably i, interlaced) and 50hz, and that means that it will not do 24p any more and therefore it will not automatically change refresh rate in media apps like XBMC,Kodi and Plex HT. Any help..? if someone could fix it with a 24hz option it would be awesome. I had choices of 60, 50, 30, 25 and 24hz before and now I only have 60, 60 and 50hz.

neond
Reply

I figured it out, you just recreate the missing resolutions with SwitchResX.

ph0togeek
Reply

Hello everyone, i purchased dell u2415 monitor that i connected to my rMBP 2014 but the fonts are really bad. Is any change to the script needed in order to work properly? thank you!

Chantel Hormuth
Reply

I am a novice and I can’t thank you enough for this fix. It took me a while to figure everything out, but I did it and now my ACER K272HUL is working great with my Mac Mini. Yahoo!!!!

RC4 Wireless
Reply

This helped a lot with an HP Pavilion 27xi 1920 x 1080 LED monitor connected to a MacBookPro 13″. It went from horrible to bearable. I think the rest of the problem is related to the pixels being quite spread out on this monitor, which is fairly low-res for 27 inch.

Thank you!

Srikanth Sivaramakrishnan
Reply

Facing the same issue on my ASUS VN248H :( forcing the RGB mode doesn’t seem to help much
Works so perfectly on windows (even the ones before 2008)

Chris
Reply

new to mac and have maybe a dumb question. In the overrides folder I have a bunch of other folders titled “DisplayVendorID -xxxx”. Are they supposed to be there? This process is not working for me at all.

Thanks!

Stefan
Reply

@Chris: it is normal that you see all kinds of “DisplayVendorID -xxxx”. Copying the new folder into the folder System/Library/Displays/Overrides/ and restarting the MacBook should do it.

@Leon: 1. Download the file ‘patch-edid.rb’ and put it into your home directory.

2. Run the patch by opening Terminal and typing in Terminal the following:

ruby patch-edid.rb

After doing that you’ll see a new folder in your home directory.

3. Go to System/Library/Displays/Overrides/ and make a back-up
of the folder ‘DisplayVendorID-4dd9′ if it exists, i.e. back-up the folder you are going to overwrite.

4. Copy the new folder from your home directory to System/Library/Displays/Overrides/.

5. Restart your laptop.

Hope you will have more succes now.

Philipp
Reply

I was about to send my new Acer K272HUL back because the main reason I bought it was the 1440 lines in resolution and then I founf this post and it worked: Thanks a lot to all the people involved finding the cause and writing the fixes! I ended up using Andews ruby script mentioned in his comment above:
http://www.ireckon.net/2013/03/force-rgb-mode-in-mac-os-x-to-fix-the-picture-quality-of-an-external-monitor/comment-page-3#comment-9463

My configuration: Yosemite 10.10.2 on a MacBook Air Mid-2012 with Intel HD Graphics 4000 1024MB connected with a Mini Display Port to DP cable. I bought both of these, both work finally. I only bought the more expensive one because originally I thought the cable might be the reason for my limit in resolution:

http://www.amazon.de/gp/product/B0094WTC2C?psc=1&redirect=true&ref_=oh_aui_detailpage_o01_s00
http://www.amazon.de/gp/product/B002XVYZ82?psc=1&redirect=true&ref_=oh_aui_detailpage_o02_s00

Original problem: From the Display settings I could select 2048×1152 and it would display the content on my big screen with black borders at 2560×1440 (told by the monitor menu –> info). Switching to 2560×1440 in the mac settings would result in a totally broken image: Mainly black, some heavily distorted parts of the screen on the left third of the monitor.

Followed the instructions exactly as described and it works like a charm: 2560×1440 @ 60Hz now!

Leon
Reply

Hi Philip, glad this worked out so well for you! I am trying to improve my own brand new setup with my Mac Mini and HDTV. Not sure if I did it correctly, so please confirm if the below seems correct:

I copied Andrew’s file and containing folder to the required folder, so that it shows in Finder as follows:
System/Library/Displays/Overrides/gist7435890-66c54c17b179809b028b58a2ca7af0b9540d05b6/patch-edid.rb

Then I restarted my computer (Late 2014 Mac Mini, running Yosemite including all updates). I did not really see any changes, as the fonts still appear blurry on the screen (32″ LG smart TV, connected with HDMI to HDMI; the TV has no DVI or VGA connections).

In the Display Preferences on my Mac, the resolution is set to “Default for display”, which is 1080p, and in the color tab I see the following profiles:
HD 709-A
LG TV Calibrated [this one I created before; it shows the richest colors]
SD 170M-A
Adobe RGB (1998)
Generic RGB Profile
sRGB IEC1966-2.1

Did I take the right steps? I have no idea what a script is supposed to do; was I also supposed to double-click on the script file, beside just copying it to the required folder?

And am I looking in the right place, under Display Preferences? As I never saw anything about YcBcR or something in any of the System Preferences, I don’t know if I am trying to apply the right fix here in the first place. Sorry to ask such basic questions. I did read through many of the comments posted here, but I might have missed any clarifications for dummies.

Thanks much,
Leon

clem
Reply

Thanks so much! This worked like a charm on my mid 2011 11″ MacBook Air and brand new HP 25xi monitor.

So glad I found this post and didn’t try to buy new expensive cables as suggested on forums for nothing!

More details if it can help anyone: resolution 1920*1080@60Hz, plugged from Mini Display Port to HDMI with a $7 Mini Display Port to HDMI adapter + HDMI cable.

Leon
Reply

Hi all,

So, I am wondering if the blurry fonts on my LG 32″ HDTV, connected by HDMI-HDMI to my Mac Mini (late 2014), are caused by the same problem you are all dealing with here…

Please could anyone review whether I correctly followed the instructions of Matthew’s post and Andrew’s comment? I am an absolute dummy in this department, so I probably skipped some step that to others seems too obvious to mention. This is what I did:

I copied Andrew’s file and containing folder (see his post above) to the required folder, so that it shows in Finder as follows:
System/Library/Displays/Overrides/gist7435890-66c54c17b179809b028b58a2ca7af0b9540d05b6/patch-edid.rb

Then I restarted my computer (Late 2014 Mac Mini, running Yosemite including all updates). I did not really see any changes, as the fonts still appear blurry on the screen (32″ LG smart TV, connected with HDMI to HDMI; the TV has no DVI or VGA connections).

In the Display Preferences on my Mac, the resolution is set to “Default for display”, which is 1080p, and in the color tab I see the following profiles:

HD 709-A
LG TV Calibrated [this one I created before; it shows the richest colors]
SD 170M-A
Adobe RGB (1998)
Generic RGB Profile
sRGB IEC1966-2.1

Did I take the right steps? I have no idea what a script is supposed to do; was I also supposed to double-click on the script file, beside just copying it to the required folder?

And am I looking in the right place, under Display Preferences? As I never saw anything about YcBcR or something in any of the System Preferences, I don’t know if I am trying to apply the right fix here in the first place.

Thanks much for any suggestions!
Leon

Stefan
Reply

Hi Leon,

See my reaction on Chris above, I put my reaction there by accident.
Hope this helps you.

Leon
Reply

Thanks for your directions, Stefan. I have another question:

Since I don’t see anything with YcBcR (or so) in the color profiles on my Mac Mini, am I actually dealing with the same problem here? These are the color profiles that I have now:
HD 709-A
LG TV Calibrated [this one I created before; it shows the richest colors]
SD 170M-A
Adobe RGB (1998)
Generic RGB Profile
sRGB IEC1966-2.1

Thanks again,
Leon

Stefan
Reply

I was glad to see that this trick worked, but I see that the colors on my Macbook Air are now wrong.
After overriding the folder with the old back-up folder and restarting, nothing has changed.

Does anyone know how to solve this?

Stefan
Reply

It’s already fixed yet, just by adapting the color settings in system preferences.

lostnthesound
Reply

Hi Guys,

I used this fix before when connecting my K272HUL to my MBP Retina and it worked perfectly. Now I have the monitor connected to my iMac Retina. Has anyone used the fix with success? I wasn’t sure if it would work since I can’t have only the external monitor working to “force” the override. Cheers.

lostnthesound
Reply

Turns out it works just fine. :-) I’m surrounded by glorious hi-res. Cheers.

Leon
Reply

Hi all,

Could anyone tell me whether the blurry fonts on my LG TV might be due to the colors problem you all are discussing here? I am not sure about this myself, since the following profiles are all listed in my Mac Mini’s (late 2014) display preferences when connected with HDMI to my HDTV:

HD 709-A
LG TV Calibrated [this one I created; it shows the richest colors]
SD 170M-A
Adobe RGB (1998)
Generic RGB Profile
sRGB IEC1966-2.1

My question: can anyone tell me what is missing from these profiles that should be there for the fonts on my display to appear sharper? And so, should I go through the procedure described here to fix this supposed colors problem?

Thanks!
Leon

Ela
Reply

how to get rid of this “problem” on my external monitor samsung t260hd while working on macbook retina 13″ (hdmi -> hdmi)
/var/folders/yt/f3jrdqxx3sdbfkcffvzyq2kc0000gn/T/com.apple.iChat/Messages/Transfers/IMG_0001.JPG

AlamoPS
Reply

There is a way to revert this modify?

Because I bought another Monitor and now RGB is crashing my display.

Jose
Reply

I have macbook pro 2010 with Mavericks, Monitor Dell U2414H and worked perfect!!. Thanks a lot!

neond
Reply

Hi is there any way to send Limited RGB..? On my Mac Mini 2012, Intel4000 it sends extended/full RGB and it messes up my TV..

neond
Reply

What I mean is that it sends Full RGB after this “fix”.(patch-edid)

Leave a Reply