A script to fix EDID problems on external monitors in macOS.
-
Connect only the problem display.
-
Create this directory structure (if it doesn't already exist):
sudo mkdir -p /Library/Displays/Contents/Resources/Overrides
-
Download this ruby script in that directory:
cd /Library/Displays/Contents/Resources/Overrides sudo curl -O https://gist.githubusercontent.com/ejdyksen/8302862/raw/patch-edid.rb
Note: You may want to use adaugherity's version of the script instead.
-
Run the script we just downloaded (as root again). This creates a new display override plist file.
cd /Library/Displays/Contents/Resources/Overrides sudo ruby patch-edid.rb
-
Unplug and replug in the problem display.
- The original forum thread
- An improved version of the script by adaugherity
- An explaination of the problem from Atomic Object's blog
- Thanks so much to @stackrainbow for pointing out that this can be done without disabling SIP.
- This version appears to work in Catalina and Big Sur. See earlier revisions for what worked (with disabling SIP) in earlier versions of macOS, which require the override plist to be in a different directory.
How to enable HiDPI on M1 based Macs on any resolution
I have some interesting news: I found a solution to enable HiDPI on M1 based Macs on any resolution, even on 1080p screens, without the need to use mirroring or other workarounds.
Here is an example of HiDPI running on a Dell U2415 monitor that only supports a maximum resolution of 1920x1200:
What you need to do is to edit the com.apple.windowserver.displays.plist file located in
/Library/Preferences/com.apple.windowserver.displays.plist
and change the key
<key>Scale</key>
to have a value of 2.This is an example of how the section in the displays plist file should look like after the change:
Make sure that you change only the Scale key for the monitor that you need, and nothing else.
You can follow the step-by-step video tutorial on how to make the changes in the displays plist file here:
https://www.youtube.com/watch?v=Z1EqH3fd0V4
After that, restart your Mac and you should get HiDPI and noticeably more crisp and anti-aliased text, and the high resolution macOS icons.
An easy way to confirm that the HiDPI changes work is by looking at the Safari icon on the dock. If the HiDPI version of the icon is enabled, it will have a lot more sections in the compass than the low resolution icon. It should look something like this:
Please note that while this might make the image look better even on 1080p screens, they will still be running at 1080p resolution, so the change might not be as drastic as running on a higher resolution screen.
If you have any questions about the procedure, please feel free to contact me or comment below.