Two Displays of Different DPI

Its about the Xserver. AFAIK&IIRC you can have Dpi setting per Screen, not monitor.

2 Likes

yeah, your right. for the xorg.conf way to work a server layout and a screen section for each monitor would need to be added.

1 Like

Hi dglt, to answer your question, no; the xrandr commands didn't give me what I wanted. I don't want to reduce the resolution of the screen in order to make things appear larger, I need and want the higher resolution. And no, the 1080p screen isn't right either. The photograph below shows how the displays actually appear:

The two terminal windows are "identical", except the one on the high resolution screen is too small to read comfortably, whereas the one on the 1080p screen is too large - look at the size of the cursor.

I really want to use the full resolution of both screens, but somehow scale things so that text, icons, windows etc. are exactly the same physical size on both screens.

This seems to require the ability to set different scaling (not dpi) for each display. I am sorry but I didn't really understand the other answers. As things are at the moment, I can't comfortably use Manjaro on this machine because of this problem.

I should mention that another OS, which I won't name here, copes with these two screens perfectly without me doing anything, which is what amateurs like me need and want. Perhaps the problem is with XFCE?

thats not what those xrandr commands would do, the only reason there is a lower resolution as the first command is because sometimes DPI wont change without also switching to and from different resolutions. xfce afaik does not have the ability to scale per screen but there are other methods you can try. once you find a set of xrandr commands that do what you want you can have the script run at startup and it will do it automatically for every boot.

lets try this:

xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.3x1.3 --right-of HDMI2

the numbers are deceiving, --scale 0.7x0.7 actually increases scaling, and 1.3x1.3 makes it smaller.

let me know how it goes, you can adjust the values until you feel it's just right. otherwise please post an updated output of xrandr --prop

1 Like

Why do you say that. IMHO you want what dpi does, technically, you just described it.
Dots per inch, relates/connects resolution to physical monitor's dimensions.

Why not? We should have a paradigm of what is user friendly.
But have you checked/confirmed what method is being used from the super secret OS?

2 Likes

Sorry for the delay, I have been away for a few days. The first thing I tried was the modified xorg configuration, edit/save/reboot - result is that both screens were blank! I will probably need to boot from a USB stick to edit or delete the file.

OK, it's me not understanding the terminology that you are using. I don't what is meant in Linux speak by display, screen or monitor. To me these are just different terms for the physical thing that I look at, but I think that to you guys they mean different things. As I think do pixels and dots. But I don't know what exactly.

The OS that I didn't name is Windows 10. I have no idea what method it uses; all I know is that when I booted after replacing an HD monitor with the UHD monitor it looked after the change in pixels from 1920x1080 to 3840x2160 silently without me having to do anything.

delete the .conf file i had you create, if you cant get to a desktop then use CTRL+ALT+F2 or f3,f4,f5 to get to a TTY and

sudo rm -rf /etc/X11/xorg.conf.d/20-intel.conf

once your back on the desktop after rebooting, have you tried using these to adjust scaling?

play with the numbers until you get the intended outcome. once you have that you can have GDM run it automatically when starting a session.

Thanks, After a bit of cogitating I used Ctrl-Alt-F2 to get to a terminal and managed to delete the .conf file after a bit of 'learning' :smile:

I then tried to adjust the display scaling with the xrandr command you suggested, which worked! Hurray!

Both displays are certainly a lot more comfortable on the eye with the settings you suggested.

I felt that 1.3x1.3 made the HD display perhaps a little small, so emboldened with my success I tried 1.2x1.2 - which caused that display to go blank. When I got it back by running the previous xrandr command there was this error message:

[david@DavidsOffice ~]$ xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.2x1.2 --right-of HDMI2
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  7 (RRSetScreenSize)
  Serial number of failed request:  36
  Current serial number in output stream:  37

1.3x1.3 works fine, but it won't take 1.2x1.2, 1.25x1.25 or 1.4x1.4. I guess there might be some scaling values that are not acceptable to the hardware?

Here is the current output of xrandr --prop.

[david@DavidsOffice ~]$ xrandr --prop
Screen 0: minimum 8 x 8, current 6336 x 1512, maximum 32767 x 32767
HDMI1 connected 2496x1404+3840+0 (normal left inverted right x axis y axis) 530mm x 300mm
	EDID: 
		00ffffffffffff0009d1407845540000
		2a14010380351e782e6081a6564a9c25
		125054a56b80710081c081408180a9c0
		b300d1c00101023a801871382d40582c
		4500132b2100001a000000ff00584141
		3030363830534c300a20000000fd0032
		4c185311000a202020202020000000fc
		0042656e5120473234323048440a00eb
	Content Protection: Undesired 
		supported: Undesired, Desired, Enabled
	content type: No Data 
		supported: No Data, Graphics, Photo, Cinema, Game
	aspect ratio: Automatic 
		supported: Automatic, 4:3, 16:9
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	audio: auto 
		supported: force-dvi, off, auto, on
	link-status: Good 
		supported: Good, Bad
	non-desktop: 0 
		range: (0, 1)
   1920x1080     60.00*+
   1680x1050     59.88  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1152x864      75.00  
   1280x720      60.00  
   1152x720      59.97  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32  
   640x480       75.00    59.94  
   720x400       70.08  
HDMI2 connected primary 2688x1512+0+0 (normal left inverted right x axis y axis) 610mm x 350mm
	EDID: 
		00ffffffffffff004c2d710d324e5030
		191c0103803d23782a5fb1a2574fa228
		0f5054bfef80714f810081c081809500
		a9c0b300010104740030f2705a80b058
		8a0060592100001e000000fd00184b1e
		5a1e000a202020202020000000fc0055
		3238453537300a2020202020000000ff
		004854504b3630303139320a202001f4
		020324f0495f10041f13031220222309
		0707830100006d030c001000803c2010
		60010203023a801871382d40582c4500
		60592100001e023a80d072382d40102c
		458060592100001e011d007251d01e20
		6e28550060592100001e565e00a0a0a0
		29503020350060592100001a00000000
		00000000000000000000000000000067
	Content Protection: Undesired 
		supported: Undesired, Desired, Enabled
	content type: No Data 
		supported: No Data, Graphics, Photo, Cinema, Game
	aspect ratio: Automatic 
		supported: Automatic, 4:3, 16:9
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	audio: auto 
		supported: force-dvi, off, auto, on
	link-status: Good 
		supported: Good, Bad
	non-desktop: 0 
		range: (0, 1)
   3840x2160     30.00*+  25.00    24.00    29.97    23.98  
   2560x1440     59.95  
   1920x1080     60.00    50.00    59.94    30.00    24.00    29.97    23.98  
   1680x1050     59.88  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
VGA1 disconnected (normal left inverted right x axis y axis)
	link-status: Good 
		supported: Good, Bad
	non-desktop: 0 
		range: (0, 1)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
	non-desktop: 0 
		supported: 0, 1

Anyway, I am much happier with the screens as they are at the moment, so how do I get GDM to run this automatically when starting a session?

1 Like

glad it worked out.

you can use a .desktop file and gdm will run it when it starts.

sudo nano /usr/local/share/display-scale.desktop
copy/paste these contents:

[Desktop Entry]
Type=Application
Name=Set xrandr display scale
Exec=sh -c "xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.3x1.3 --right-of HDMI2"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer

save/exit, then run these

sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop
sudo ln -s /usr/local/share/display-scale.desktop /etc/xdg/autostart/display-scale.desktop

Thanks. I ran into a problem because I don't have a /greeter/ directory in my /usr/share/gdm/, the only thing in there is /env.d/

[david@DavidsOffice ~]$ sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop
ln: failed to create symbolic link '/usr/share/gdm/greeter/autostart/display-scale.desktop': No such file or directory

#run this first
sudo mkdir /usr/share/gdm/greeter/autostart/
#then this
sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop

OK, did that and rebooted, but scaling reverted to original. Should I have also run the second command?

sudo ln -s /usr/local/share/display-scale.desktop /etc/xdg/autostart/display-scale.desktop

yes, both

Thanks for your patience, that last step did it and now the displays are scaled on boot.

I would still like the HD screen to be scaled a little larger, do you know why xrandr works with 1.3x1.3 for that display but won't take 1.2x1.2, 1.25x1.25 or 1.4x1.4 - are there some scaling values that are not acceptable to the hardware?

possibly, i tested ridiculous values both large and small and it works for me so hardware limits are a possibility or maybe because your using 2 monitors the difference can only be allowed to a certain point? :man_shrugging:

OK. Thanks for all your help.

1 Like

Does the new version of XFCE change this? I notice it has improved HiDPI support.

i really dont know, but you could always just try and see what happens

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by