Contribute
Register

Adding/Using HiDPI custom resolutions

Joined
Aug 25, 2015
Messages
220
Motherboard
DELL Inspiron 7370
CPU
i7-8550U
Graphics
UHD620
Mac
iMac, MacBook Air
Mobile Phone
Android, iOS
No
Hi,
I'm having the same problem. Have you solved yours in some way?
No, it has too many issues and the text is too small for me
 
Joined
Dec 10, 2013
Messages
150
Motherboard
Huawei Matebook D 2017
CPU
i5-7200U
Graphics
HD 620
Hi,
i'm trying to make a modified DisplayPrefence without success.
Long story short :
If i use this code inside my DisplayPreference (it is generated by a script called OneKey HiDPI) i've custom resolutions
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>DisplayProductID</key>
    <integer>1892</integer>
    <key>DisplayVendorID</key>
    <integer>2533</integer>
    <key>IODisplayEDID</key>
    <data>
    AP///////wAGEBSgAAAAAAoWAQSlHRJ4Am+xp1VMniUMUFQAAAABAQEBAQEBAQEBAQEB
    AQEBPDeA3nA4FEAwIDYANa0QAAAaAAAA/ABDb2xvciBMQ0QKICAgAAAA/gBCT0UgQ1EK
    ICAgICAgAAAA/gBUVjE0MEZITS1OSDAKAMA=
    </data>
    <key>scale-resolutions</key>
    <array>
        <data>
        AAANIAAAB2AA
        </data>
        <data>
        AAALQAAABlQA
        </data>
        <data>
        AAAKAAAABaAA
        </data>
        <data>
        AAAIAAAABIAA
        </data>
        <data>
        AAAKAAAABkAAAAABACAAAA==
        </data>
        <data>
        AAAKAAAABaAAAAABACAAAA==
        </data>
        <data>
        AAAHgAAABLAAAAABACAAAA==
        </data>
        <data>
        AAAHgAAABDgAAAABACAAAA==
        </data>
        <data>
        AAAFAAAAAtAAAAABACAAAA==
        </data>
        <data>
        AAAGkAAAA7AAAAAB
        </data>
        <data>
        AAAGQAAAA4QAAAAB
        </data>
        <data>
        AAAFoAAAAyoAAAAB
        </data>
        <data>
        AAAFAAAAAtAAAAAB
        </data>
        <data>
        AAAEgAAAAogAAAAB
        </data>
        <data>
        AAAEAAAAAkAAAAAB
        </data>
        <data>
        AAADSAAAAdQAAAAB
        </data>
        <data>
        AAADIAAAAcIAAAAB
        </data>
        <data>
        AAACgAAAAWgAAAAB
        </data>
        <data>
        AAANIAAAB2AAAAAJAKAAAA==
        </data>
        <data>
        AAALQAAABlQAAAAJAKAAAA==
        </data>
        <data>
        AAAKAAAABaAAAAAJAKAAAA==
        </data>
        <data>
        AAAIAAAABIAAAAAJAKAAAA==
        </data>
        <data>
        AAAHgAAABDgAAAAJAKAAAA==
        </data>
        <data>
        AAAGkAAAA7AAAAAJAKAAAA==
        </data>
        <data>
        AAAGQAAAA4QAAAAJAKAAAA==
        </data>
        <data>
        AAAFAAAAAtAAAAAJAKAAAA==
        </data>
    </array>
    <key>target-default-ppmm</key>
    <real>10.069930100000001</real>
</dict>
</plist>
If i try to modify that file using some custom resolution i want to try they just don't appear.
I have also a question because in that plist some resolution have undocumented hex after the "normal" height and width bytes. Some resolutions have <00000d20 00000760 00000009 00a00000> while others have only <00000690 000003b0 00000001> while others have <00000a00 00000640 00000001 00200000>.
Could please somebody help me for example add a 1600*900 HiDPI resolution to this file ?

Thanks
mattia
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,691
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
So using the tool available at:

I created a:
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>DisplayProductName</key>
  <string>LG HDR 5K2K</string>
  <key>DisplayProductID</key>
  <integer>7789</integer>
  <key>DisplayVendorID</key>
  <integer>30496</integer>
  <key>scale-resolutions</key>
  <array>
    <data>AAAUAAAACHA=</data>
    <data>AAANIAAABYkAAAABACAAAA==</data>
    <data>AAAaQAAACxI=</data>
    <data>AAAPAAAABlQAAAABACAAAA==</data>
    <data>AAAeAAAADKg=</data>
  </array>
</dict>
</plist>
This contains 5 resolutions:
5120x2160 <- native
3840x1620 (HiDPI) and 7680x3240
3360x1417 (HiDPI) and 6720x2834

I didn't invent those resolutions, they are the one that shows up if I connect this screen (LG 34WK95U-W with a 5120x2560 panel via DP3).
I don't want to connect this screen via TB3 as it uses two DP1.2 out of my graphic card. I can connect it using a single DP1.4 link

Now after rebooting, I do see 3360x1417 and 3840x1620 in in System Preferences -> Display when I click the scaled option. But it's a rather poor experience. The text is blurry. No-where near as nice as when connected over TB3.

I did run:
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES

Funnily, when I take a screenshot of both mode (TB3 and DP1.4), even zoomed it looks exactly the same in both mode. But not quite what I'm seeing. This is not HiDPI mode

In the System Information, what shows up when I connect the screen via DP1.4 is:

LG HDR 5K2K:
Resolution: 6720 x 2834
UI Looks like: 3360 x 1417 @ 60 Hz
Framebuffer Depth: 30-Bit Colour (ARGB2101010)
Mirror: Off
Online: Yes
Rotation: Supported
Automatically Adjust Brightness: No
Connection Type: DisplayPort


Which is exactly the same as when connected over TB3.

Attached are two close-up photos, one of the screen connected with TB3, the other connected via DP1.4
View attachment 386527
View attachment 386528

TLDR; TB3: Super sharp text in 3360x1417 mode, DP1.4: blurry text, hurt my eyes.

What am I missing?
Thanks
JY

Edit: I tried with the simpler:
Code:
  <array>
    <data>AAAUAAAACHA=</data>
    <data>AAANIAAABYk=</data>
    <data>AAAaQAAACxI=</data>
    <data>AAAPAAAABlQ=</data>
    <data>AAAeAAAADKg=</data>
  </array>
and it makes no difference.
I installed the RDM tool and it shows a little lightning bolt right next to the resolution, indicating that it is seen as HiDPI. Except it's not.
I'm going to stop now, having a headache looking at such blurry text.

View attachment 386537

Edit2: Had a play with SwitchResX and I'm getting the same outcome. It shows up as HiDPI, but it's all blurry
View attachment 386550

@RehabMan any ideas what's going on? Is this method still usable with Mojave?
You will need to define "blurry". Using resolutions that are not even multiples (eg. 2x,3x) will not look as good as even multiples.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,691
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Hi,
i'm trying to make a modified DisplayPrefence without success.
Long story short :
If i use this code inside my DisplayPreference (it is generated by a script called OneKey HiDPI) i've custom resolutions
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>DisplayProductID</key>
    <integer>1892</integer>
    <key>DisplayVendorID</key>
    <integer>2533</integer>
    <key>IODisplayEDID</key>
    <data>
    AP///////wAGEBSgAAAAAAoWAQSlHRJ4Am+xp1VMniUMUFQAAAABAQEBAQEBAQEBAQEB
    AQEBPDeA3nA4FEAwIDYANa0QAAAaAAAA/ABDb2xvciBMQ0QKICAgAAAA/gBCT0UgQ1EK
    ICAgICAgAAAA/gBUVjE0MEZITS1OSDAKAMA=
    </data>
    <key>scale-resolutions</key>
    <array>
        <data>
        AAANIAAAB2AA
        </data>
        <data>
        AAALQAAABlQA
        </data>
        <data>
        AAAKAAAABaAA
        </data>
        <data>
        AAAIAAAABIAA
        </data>
        <data>
        AAAKAAAABkAAAAABACAAAA==
        </data>
        <data>
        AAAKAAAABaAAAAABACAAAA==
        </data>
        <data>
        AAAHgAAABLAAAAABACAAAA==
        </data>
        <data>
        AAAHgAAABDgAAAABACAAAA==
        </data>
        <data>
        AAAFAAAAAtAAAAABACAAAA==
        </data>
        <data>
        AAAGkAAAA7AAAAAB
        </data>
        <data>
        AAAGQAAAA4QAAAAB
        </data>
        <data>
        AAAFoAAAAyoAAAAB
        </data>
        <data>
        AAAFAAAAAtAAAAAB
        </data>
        <data>
        AAAEgAAAAogAAAAB
        </data>
        <data>
        AAAEAAAAAkAAAAAB
        </data>
        <data>
        AAADSAAAAdQAAAAB
        </data>
        <data>
        AAADIAAAAcIAAAAB
        </data>
        <data>
        AAACgAAAAWgAAAAB
        </data>
        <data>
        AAANIAAAB2AAAAAJAKAAAA==
        </data>
        <data>
        AAALQAAABlQAAAAJAKAAAA==
        </data>
        <data>
        AAAKAAAABaAAAAAJAKAAAA==
        </data>
        <data>
        AAAIAAAABIAAAAAJAKAAAA==
        </data>
        <data>
        AAAHgAAABDgAAAAJAKAAAA==
        </data>
        <data>
        AAAGkAAAA7AAAAAJAKAAAA==
        </data>
        <data>
        AAAGQAAAA4QAAAAJAKAAAA==
        </data>
        <data>
        AAAFAAAAAtAAAAAJAKAAAA==
        </data>
    </array>
    <key>target-default-ppmm</key>
    <real>10.069930100000001</real>
</dict>
</plist>
If i try to modify that file using some custom resolution i want to try they just don't appear.
I have also a question because in that plist some resolution have undocumented hex after the "normal" height and width bytes. Some resolutions have <00000d20 00000760 00000009 00a00000> while others have only <00000690 000003b0 00000001> while others have <00000a00 00000640 00000001 00200000>.
Could please somebody help me for example add a 1600*900 HiDPI resolution to this file ?

Thanks
mattia
You should attach the files you're working with, and attach PR files (as per laptop FAQ), and prove that you installed the display override correctly.
 
Joined
Dec 10, 2013
Messages
150
Motherboard
Huawei Matebook D 2017
CPU
i5-7200U
Graphics
HD 620
You should attach the files you're working with, and attach PR files (as per laptop FAQ), and prove that you installed the display override correctly.
Hi RehabMan,
let's start fresh on this issue.
I've managed to better understand the DisplayPreference file and now i can add all the HiDPI resolutions i want and select them using RDM (see attached pictures) BUT i'm facing a problem waking the monitor (when become black from inactivity). When i use some particular HiDPI resolutions like 1664x936 or 1536x864 when the laptop wake from sleep (or from black screen due to inactivity) the display scale is wrong. The image is on the top left corner of the monitor and the rest of the monitor space is black(see picture).
I think it's important to say that if i let the screen goes black (for inactivity) and then press a key to switch the monitor on the image is of the right size and everything seems ok but after login i've graphical glitches (for example moving the mouse leave a trail of the precedent mouse position).
If i use 1440x810 (still HiDPI) i don't have this problem. I thought it was because of the huge resolution (1536x864 hidpi means 3072x1728 if i correctly understand how HiDPI works) but then i tried 1920x1080 HiDPI and using this resolution cause no problem after sleep so i don't know what to think anymore.
Attached you will find the RP file as requested and also the DisplayPreference i'm currently using.

Thanks for your help
Mattia
 

Attachments

Last edited:

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,691
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
When i use some particular HiDPI resolutions like 1664x936 or 1536x864 when the laptop wake from sleep (or from black screen due to inactivity) the display scale is wrong. The image is on the top left corner of the monitor and the rest of the monitor space is black(see picture).
I've seen that too. Seems to be a macOS bug.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,691
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
So no solution at the moment, right?
My experience:
If you have lock enabled over sleep, you'll enter your password and upon transition to the normal desktop, it corrects itself.
 
Joined
Oct 20, 2017
Messages
4
Motherboard
GIGABYTE Z170X Gaming 7
CPU
Intel Core i7 6700K
Graphics
Intel HD Graphics 530
Why am I the first person to reply to this thread?! This is beautiful!

So glad to not have to use SwitchResX. Wonderful guide, RehabMan! The only issue I ran into was my HiDPI resolution wasn't appearing in Display preferences. I instead used RDM to show me all available HiDPI resolutions and was in the money!

Thanks a bunch! :thumbup:

Which software are you using? I can't find the related software with the name RDM :(
 
Top