Contribute
Register

Adding/Using HiDPI custom resolutions

Status
Not open for further replies.
Ok, I've figured out why it looks crap.

The physical resolution used with the screen is 3440x1440, not 5120x2160

Edit: SOLVED!
Added: the following key to the DisplayProductID-7720

Code:
    <key>DisplayPixelDimensions</key>
    <data>
    AAAUAAAACHA=
    </data>

which is:
<00001400 00000870>
5120x2160

Now super sharp text.
Very happy.

So in the end I used the following plist:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>DisplayPixelDimensions</key>
    <data>
    AAAUAAAACHA=
    </data>
    <key>DisplayProductID</key>
    <integer>30496</integer>
    <key>DisplayProductName</key>
    <string>LG HDR 5K</string>
    <key>DisplayVendorID</key>
    <integer>7789</integer>
</dict>
</plist>

and deleted all prefs added as per post 1.

Now, going to the Display preference pane I see:
View attachment 386653

Which is awesome.

MacBook Pro 13'' 2016 running 10.14.6 + Razor Core X eGPU + Saphire Radeo RX 580 + LG 34WK95U monitor.

It works just fine when connecting the monitor directly to the computer via USB-C and I get this, which is exactly what I want:
LG HDR 5K:
Resolution: 6720 x 2834
UI Looks like: 3360 x 1417 @ 60 Hz

But when going through the eGPU, I could not get the higher resolutions, until I followed your guide. I can get it to the maximum (Scaled: more space) and I'll get 5120x2160 with tiny letters that are impossible to read. If I change to the 2nd last setting on the scaling options I get pixel-perfect resolution with readable letters (just like you did) but my mouse cursor is completely off like the screen was bigger than it actually is. I must click something in the distance of 5cm to the right and down to get the correct icon/target which is very odd.

Any ideas?
 
@joevt well well well. Thank you!!! I used SwitchResX Custom Resolutions and saved it. Now it shows 5120x2880 under About This Mac > Displays.

I see that it created a Displays > Overrides profile.
I would like to see the override file that SwitchResX created. For long text files, it might be better to post as an attachment. Override files are small so post it either way. This display does not come with an override from Apple. The override created by SwitchResX will have a file name containing Year and Week instead of product ID.

One thing I noticed is that your display and Douirc's have identical EDIDs. Are they too cheap to give different serial numbers? Anyway, glad the behavior has improved.
 
MacBook Pro 13'' 2016 running 10.14.6 + Razor Core X eGPU + Saphire Radeo RX 580 + LG 34WK95U monitor.

It works just fine when connecting the monitor directly to the computer via USB-C and I get this, which is exactly what I want:
LG HDR 5K:
Resolution: 6720 x 2834
UI Looks like: 3360 x 1417 @ 60 Hz
That does not tell you what you got. macOS only shows info about the frame buffer, not the signal that is sent to the monitor. You need to view the timing info (Pixel Clock, Active, Scaled To, Scan Rate) of the current resolution by double clicking it in the Current Resolutions tab of SwitchResX.

and I'll get 5120x2160 with tiny letters that are impossible to read
They should be easy to read if you stick your face in the monitor. But if the tiny letters are blurry even when you do that, then it may be outputting a lower resolution (use SwitchResX to check the timing info).

If I change to the 2nd last setting on the scaling options I get pixel-perfect resolution with readable letters (just like you did) but my mouse cursor is completely off like the screen was bigger than it actually is. I must click something in the distance of 5cm to the right and down to get the correct icon/target which is very odd.
What's the second last setting (timing info?).

The cursor thing is strange. What if you turn on zoom and zoom in/out (Accessibility preferences panel - there are keyboard shortcuts listed there)?

Attach AGDCDiagnose output here.
 
I would like to see the override file that SwitchResX created. For long text files, it might be better to post as an attachment. Override files are small so post it either way. This display does not come with an override from Apple. The override created by SwitchResX will have a file name containing Year and Week instead of product ID.

One thing I noticed is that your display and Douirc's have identical EDIDs. Are they too cheap to give different serial numbers? Anyway, glad the behavior has improved.

It created the following file /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-418e/DisplayProductID-2790.

I tried to make a cosmetic change on my machine of renaming "SwitchResX4 - IX2790" to "iMac" like the iMac profiles but it didn't change the icon on the About This Mac > Displays. Looks like I need to figure out how to mark it as internal and/or modify Icons.plist.

FYI - I only added one custom resolution - 5120x2880. Don't remember if it asked for Hz, if it did, I added 60.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>DisplayPixelDimensions</key>
    <data>
    AAAUAAAAC0A=
    </data>
    <key>DisplayProductID</key>
    <integer>10128</integer>
    <key>DisplayProductName</key>
    <string>SwitchResX4 - IX2790</string>
    <key>DisplayVendorID</key>
    <integer>16782</integer>
    <key>IODisplayEDID</key>
    <data>
    AP///////wBBjpAnAQEBAQAbAQSlPCF4Otf1rVFDsSYNUFS/74DhwNEA0cCzAKlAqcCB
    gIEATdAAoPBwPoAwIDUAU08hAAAaVl4AoKCgKVAwIDUAU08hAAAaAAAA/QAXTA+0YQAK
    ICAgICAgAAAA/ABJWDI3OTAKICAgICAgAyUCAyDzUxAfBBQDEgIRBRQHFgYVAWFfXl0j
    CX8HgwEAAAR0ADDycFqAsFiKAFNPIQAAHgR0gBhxcFqAWCyKAFNPIQAAHgI6gBhxOC1A
    WCxFAFNPIQAAHgEdAHJR0B4gbihVAFNPIQAAHsW8AKCgQFKwMCA6AFNPIQAAGgAAAAAA
    WXASJAMAAwEUvHkBhP8TZwEXgF8APws9AC8ABwAHAAoIgQAIBAAEAhAADAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQcBEkAwADABS8eQEA/xNnAReAXwA/Cz0A
    LwAHAAsAClN3aXRjaFJlc1hFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AJA=
    </data>
    <key>SwitchResX backuped settings</key>
    <dict>
        <key>DisplayProductID</key>
        <integer>10128</integer>
        <key>DisplayVendorID</key>
        <integer>16782</integer>
    </dict>
    <key>default-resolution</key>
    <data>
    AAAKAAAABaAAPAAA
    </data>
</dict>
</plist>
 
Last edited:
It created the following file /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-418e/DisplayProductID-2790.
Maybe SwitchResX only uses the week/year format name when an Apple override with product ID exists.

FYI - I only added one custom resolution - 5120x2880. Don't remember if it asked for Hz, if it did, I added 60.
It is identical to the resolution that already existed in the EDID. I don't think you need it.
[email protected] 176.462kHz 967.01MHz h(24 96 240 +) v(48 8 6 -)

What might have fixed your problem is one of the following (probably default-resolution):
  • DisplayPixelDimensions = 5120x2880
  • default-resolution = 2560x1440
I tried to make a cosmetic change on my machine of renaming "SwitchResX4 - IX2790" to "iMac" like the iMac profiles but it didn't change the icon on the About This Mac > Displays. Looks like I need to figure out how to mark it as internal and/or modify Icons.plist.
To change the icon, maybe add a .tiff file. See examples in the LG folder (DisplayVendorID-1e6d) and the Apple folder (DisplayVendorID-610). You might need to edit the Icons.plist file too (add the vendor and product and point to your new tiff file).
 
Maybe SwitchResX only uses the week/year format name when an Apple override with product ID exists.


It is identical to the resolution that already existed in the EDID. I don't think you need it.
[email protected] 176.462kHz 967.01MHz h(24 96 240 +) v(48 8 6 -)

What might have fixed your problem is one of the following (probably default-resolution):
  • DisplayPixelDimensions = 5120x2880
  • default-resolution = 2560x1440

To change the icon, maybe add a .tiff file. See examples in the LG folder (DisplayVendorID-1e6d) and the Apple folder (DisplayVendorID-610). You might need to edit the Icons.plist file too (add the vendor and product and point to your new tiff file).

Thank you! I removed IODisplayEDID and default-resolution and it still works. Here's the modified Override. Changed it, rebooted. Still shows 5120x2880 under Displays.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>DisplayPixelDimensions</key>
    <data>
    AAAUAAAAC0A=
    </data>
    <key>DisplayProductID</key>
    <integer>10128</integer>
    <key>DisplayProductName</key>
    <string>iMac</string>
    <key>DisplayVendorID</key>
    <integer>16782</integer>
</dict>
</plist>

Also, I was able update icons.plist to change icon.

Code:
<key>418e</key>
<dict>
    <key>products</key>
    <dict>
        <key>2790</key>
        <dict>
            <key>display-resolution-preview-icon</key>
            <string>/System/Library/Displays/Contents/Resources/Overrides/Models/Mac-7BA5B2D9E42DDD94.tiff</string>
            <key>resolution-preview-x</key>
            <integer>33</integer>
            <key>resolution-preview-y</key>
            <integer>47</integer>
            <key>resolution-preview-width</key>
            <integer>160</integer>
            <key>resolution-preview-height</key>
            <integer>90</integer>
            <key>display-icon</key>
            <string>/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/com.apple.imacpro-2017.icns</string>
        </dict>
    </dict>
</dict>
 

Attachments

  • Screen Shot 2019-12-17 at 10.14.07 PM.png
    Screen Shot 2019-12-17 at 10.14.07 PM.png
    299.5 KB · Views: 191
Last edited:
Thank you! I removed IODisplayEDID and default-resolution and it still works. Here's the modified Override. Changed it, rebooted. Still shows 5120x2880 under Displays.
The override is very similar to the new override (DisplayVendorID-1e6d/DisplayProductID-9e7b) Apple made for an LG 49BL95C-W display 5120x1440 in Catalina 10.15.2 containing only DisplayPixelDimensions. There are 8 overrides like that:
Code:
cd /System/Library/System/Library/Displays/Contents/Resources/Overrides/
for thefile in $(grep --include 'Display*' -l -r DisplayPixelDimensions . ); do
    printf "%s  " "$thefile"
    eval $(plutil -p $thefile | grep DisplayPixelDimensions | sed -E 's/.*0x(.{8})(.{8})}/echo $((0x\1))x$((0x\2))/')
done

./DisplayVendorID-10ac/DisplayProductID-a10d  5120x1440
./DisplayVendorID-10ac/DisplayProductID-a10f  5120x1440
./DisplayVendorID-1e6d/DisplayProductID-9e7b  5120x1440
./DisplayVendorID-410c/DisplayProductID-92a  5120x1440
./DisplayVendorID-4c2d/DisplayProductID-e5d  3840x1080
./DisplayVendorID-4c2d/DisplayProductID-f9c  5120x1440
./DisplayVendorID-610/DisplayProductID-a027  2304x1440
./DisplayVendorID-610/DisplayProductID-a028  2304x1440

Also, I was able update icons.plist to change icon.
Very nice.
 
@Douirc I have the same monitor with the same issue on About this Mac. For me, if I keep windows open and reboot, when the system logs in, it moved the windows up making the top bar inaccessible. Its as though it logs in as 4K and then immediately switches to 5K. Is this happening to you?
sounds like you resolved it, but I don't keep any windows open on closing, so there's nothing to open when it restarts (plus, I don't check the reopen windows box when rebooting).
that said, each time I log in, the monitor flashes twice. I'm guessing it's the video card adjusting correctly or something. either way, it all works fine and it much easier on the eyes than the PB258Q 1440p monitor it replaced.
 
That does not tell you what you got. macOS only shows info about the frame buffer, not the signal that is sent to the monitor. You need to view the timing info (Pixel Clock, Active, Scaled To, Scan Rate) of the current resolution by double clicking it in the Current Resolutions tab of SwitchResX.


They should be easy to read if you stick your face in the monitor. But if the tiny letters are blurry even when you do that, then it may be outputting a lower resolution (use SwitchResX to check the timing info).


What's the second last setting (timing info?).

The cursor thing is strange. What if you turn on zoom and zoom in/out (Accessibility preferences panel - there are keyboard shortcuts listed there)?

Attach AGDCDiagnose output here.

Here's the AGDCDiagnose output
 

Attachments

  • AGDCDiagnose_a.txt
    78.9 KB · Views: 110
That does not tell you what you got. macOS only shows info about the frame buffer, not the signal that is sent to the monitor. You need to view the timing info (Pixel Clock, Active, Scaled To, Scan Rate) of the current resolution by double clicking it in the Current Resolutions tab of SwitchResX.


They should be easy to read if you stick your face in the monitor. But if the tiny letters are blurry even when you do that, then it may be outputting a lower resolution (use SwitchResX to check the timing info).


What's the second last setting (timing info?).

The cursor thing is strange. What if you turn on zoom and zoom in/out (Accessibility preferences panel - there are keyboard shortcuts listed there)?

Attach AGDCDiagnose output here.

Here goes, in attach, the details when using the monitor directly connected to the computer via Thunderbolt.
 

Attachments

  • Screenshot 2019-12-27 at 16.49.45.png
    Screenshot 2019-12-27 at 16.49.45.png
    800.1 KB · Views: 189
Status
Not open for further replies.
Back
Top