Skip to content

Fix Blurry Text on Mac Using External Non-Apple Monitor

After connecting my newly-purchased Mac mini 2018 to my Dell U2410 24 inch 1920×1200 LCD monitor by HDMI cable, I notice that the text is a little blurry and pixelated. The lines aren’t smooth, but jagged. The text looks like it would on an old analog TV.

The problem is caused by the Mac choosing to talk to the Dell monitor using YPbPr, an input color format previously used by S-Video and composite video for analog TVs. The Dell monitor supports two input color formats, RGB (digital computer standard) and YPbPr (analog TV standard). I am not sure why the Mac defaulted to using YPbPr, instead of the superior RGB color format.

Note: I did not see this problem when connecting my MacBook Air 2015 to the Dell monitor using the Apple Mini DisplayPort to DVI adapter. Online comments seem to indicate that this issue only occurs with the 2018 (and probably later) Macs.

The solution is to force the Mac to use the RGB input color format for my Dell U2410 monitor. This is accomplished by creating or overwriting the macOS’s EDID (Extended Display Identification Data) configuration file for the Dell monitor. The details are documented by this webpage, Fixing the External Monitor Color Problem with My 2018 MacBook Pro.

Tip: To verify that YPbPr is being used by your monitor, check the “Input Color Format” in the monitor settings. On my Dell monitor, I go to the monitor’s settings Menu and select “Color Settings” to view the “Input Color Format” field.

Because the EDID override files are located in a protected system directory, “/System/Library/Displays/Contents/Resources/Overrides/”, we will need to use the macOS Recovery Mode to write to it.

Here are the steps I took:

  1. Download the “patch-edid.rb” script file from GitHub’s adaugherity/patch-edid.rb project. This script will create an override EDID file to force RGB usage. Look for the “Download ZIP” button near the top-right. The archive file will be downloaded to “~/Downloads/7435890-00ff3ead17ae77d2f1c376e90831c037b7dea7ed.zip”.
  2. Unzip the downloaded archive file by double-clicking on it. (My Safari browser automatically unzipped the archive file after downloading.)
  3. Launch the Terminal app and run these commands:
    # Rename the unzipped folder to a nicer name, "patch-edid"
    mv ~/Downloads/7435890-00ff3ead17ae77d2f1c376e90831c037b7dea7ed ~/Downloads/patch-edid

    # Change directory to the "patch-edid" folder
    cd ~/Downloads/patch-edid

    # Ruby should be pre-installed; double-check by getting version info
    ruby -v

    # Execute the script
    ruby patch-edid.rb
    • The script outputted the following on my Mac:
      Found display 'DELL U2410': vendor ID=4268 (0x10ac), product ID=61462 (0xf016)
      Raw EDID data:
      00ffffffffffff0010ac16f04c5055310914010380342078ea1ec5ae4f34b1260e ...
      Setting color support to RGB 4:4:4 only
      Number of extension blocks: 1
      removing extension block

      Recalculated checksum: 0x38

      new EDID:
      00FFFFFFFFFFFF0010AC16F04C5055310914010380342078E21EC5AE4F34B1260E ...
      Output file: /Users/chanh/Downloads/patch-edid/DisplayVendorID-10ac/DisplayProductID-f016
    • Take note of the output file, “/DisplayVendorID-10ac/DisplayProductID-f016”. We will need to put the ProductID file with its VendorID parent folder under the EDID overrides folder like so: “/System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-10ac/DisplayProductID-f016”.
    • On my Mac, the “DisplayProductID-f016” file did not exist in the system “Overrides” folder. However, the “DisplayVendorID-10ac” folder did already exist there.
  4. Reboot into the macOS Recovery Mode. When the Mac starts up, hold down “Command-R” (hold down both the “Command ⌘” and “R” keys) and release when you see the Apple logo.
    • Tip: An easier alternative is to hold the “Option/Alt” key on boot to launch the Startup Manager. Then just click and release “Command-R” keys to launch into the recovery mode.

  5. Once in recovery mode (you will see “macOS Utilities” in the top menu bar), click on the “Utilities” menu and select “Terminal” to launch the Terminal application.
    • On my Mac, the main “Macintosh HD” drive is automatically mounted. If it isn’t on your system, launch the “Disk Utility” first (before the “Terminal”), select the “Macintosh HD” disk (or whatever you named it), and click the “Mount” button. Quit the “Disk Utility” when done in order to launch the Terminal application.
  6. Run these commands in the Terminal:
    # Change directory to your "patch-edid" directory
    # Note: Change the "username" string below to your actual username
    cd /Volumes/Macintosh\ HD/Users/username/Downloads/patch-edid/

    # Copy your override subfolder+file into the EDID overrides system directory
    # Note: Change the "DisplayVendorID-XXXX" to your actual DisplayVendorID
    #       Do not include ending forward-slash at end of "DisplayVendorID-XXXX"
    cp -R DisplayVendorID-XXXX /Volumes/Macintosh\ HD/System/Library/Displays/Contents/Resources/Overrides/
  7. Quit the “macOS Utilities” to reboot.

After reboot, the text on the Dell monitor is no longer blurry and pixelated. The text looks sharper and the lines are smoother. (Unfortunately, the photo to the right does not show the blurry/pixelated text very well.) When I check the monitor’s “Input Color Format”, it now says “RGB”. Success.

20 Comments

  1. Andrei

    Does not help in Catalina (10.15.2), maybe somebody knows any new fix?

    • Chanh

      Thanks for the update about it not working under macOS 10.15 Catalina, Andrei. I only did it on macOS 10.14 Mojave with the Dell U2410 monitor. (On a side note, I have an older Dell 2407WFPb monitor which puts itself into “Mac mode” when connected to a Mac. So, Dell used to support Macs correctly.)

      • M1kz

        Thanks for the guide – I followed it verbatim today and it works fine in MacOS Catalina 10.15.3 with a Dell U2410.

  2. Kz

    thanks so much. It fixed my problem. There needs to be an easier way for Macs to select the color mode. MacBook Pro (Retina, 15-inch, Late 2013) 10.13.6 (17G8030)

  3. gpi

    Unfortunately, this didn’t solve my problem. Any other idea?
    MacBook Pro Retina 2019
    Dell S2719DC

    • Chanh

      Not sure. I found this page, 2018 MacBook Pro blurry displayport output, which suggests that the issue is related to using the USB-C to DisplayPort cable. The workaround was to use a USB-C to HDMI cable instead.

      • G

        I have followed your instructions above. I did force the monitor to have RGB connection. I used patch-edid method that you have described. I am using USB-C cable for connecting the display to the laptop. I also tried HDMI to USB-C cable… same blurry result.

        Idea?

        • Chanh

          Thanks for letting us know the results. Unfortunately, I don’t have any other idea.

        • Mehmet

          Have you find any solution?

  4. Elli

    Hello! I’m having trouble with this part on #6:
    When I typed in this command on the terminal, I get “command not found.”
    I’m not really sure why.

    -R DisplayVendorID-XXXX /Volumes/Macintosh\ HD/System/Library/Displays/Contents/Resources/Overrides/

    ^I literally copied the same code you provided and replaced the “XXXX” with “10ac”

    Any ideas? Thanks!

    • Chanh

      Hi, two guesses:

      • Command not found might be because the copy command “cp” is missing from the beginning. It’s supposed to be “cp -R”, not just “-R”.
      • Try running the list command “ls” to show the contents of that directory first to double-check that the “DisplayVendorID-10ac” subfolder actually exists.
  5. Jeerral

    Didn’t work for me 🙁

    Macbook pro 2017
    Benq EX3203R

    I’ve nearly tried all the solutions on the internet, none of it works

  6. Gurkirat Singh

    Thanks. Worked for my MBP 2015 with Catalina and Lenovo monitor…

  7. Jean-Yves

    Thanks a lot for this tutorial : I just bought a Mac Mini 2020,
    running Catalina of course, and this works like a charm for
    a Dell U2410.

  8. Nikki

    Hi, thanks for sharing. I have Dell P2419H projector and Catalina 10.15.4. on my Macbook Air. I downloaded and ran the file in Terminal, but it failed to create a DisplayVendorID file. it said “No display data found! Are any external displays connected?” Any idea?

    • Chanh

      When you connect the Dell projector to your Macbook, does the projector display your screen? It sounds like the Macbook doesn’t recognize or use the projector as a secondary screen. You may need to download drivers from Dell to get the projector working. Once the projector works and if the image projected is blurry, you can try the fix above to sharpen the text quality.

      • Nikki

        Thank you very much for getting back to me Chanh. yes. the projector displayed my screen when i connected Dell to Macbook. think it was because I installed a beta driver from Dell for Catalina.. now that Dell released a new driver, i am able to create the file now. but the problem right now is that i can’t paste the commands in Terminal in recover mode (keep saying the commands not found) and i can’t paste the newly created display folderunder Overrides (the system forbids me from doing so even i already used “csrutil disable” in recover mode). any idea?

        • Chanh

          Glad you got the file generated.

          For the command not found, which command are you trying to run?

          Not sure why it won’t let you overwrite since you are in recovery mode already.

          If you use “csrutil disable”, I think you have to reboot for it to take effect and then even in non-recovery mode, you should be able to write to “/Volumes/Macintosh HD/System/Library/Displays/Contents/Resources/Overrides” folder.

          • Nikki

            Thanks Chan, I think the problem right now is that i can’t write to “/Volumes/Macintosh HD/System/Library/Displays/Contents/Resources/Overrides” folder. (i have rebooted the Macbook) Is it because Catalina 10/15/4 has higher security settings? are there any ways that i can paste the new display folder to Overrides? thank you!

            oh that worked now… (don’t know why though).
            and i was able to activate the forced RGB mode (Edid override) but it did not seem to have solve the blurry problem. but applying HiDPI seems work better but it only supports 960 x 540 (HiDPI) on my laptop, which is not enough… i’ll need higher resolution for my external display. do you know if there is other way to activate higher resolution HiDPI? thanks !

          • Chanh

            Unfortunately, I don’t know another way to activate higher resolution HiDPI. If I ever find out, I will contact you again. Good luck!

Leave a Reply

Your email address will not be published. Required fields are marked *