I'm having some issues configuring my screen setup correctly with xrandr
.
My setup consists of a Dell XPS-13 with a 4K (3200x1800) Display and an external 21 inch FullHD (1920x1080) Monitor.
Because of the High DPI, I've been using the 200% scaling on the laptop. Since you can't set scaling on a per monitor basis, I'm stuck either having everything way too big on the external monitor and the correct size on the laptop OR everything normal on the external monitor and way too small on the laptop screen.
I then tried to solve this with xrandr
, as explained in here or here. In principle, I want to set the external monitors resolution to 3840x2160, and then scaling everything by 2x2, so that I can use the same DPI-Scaling on both monitors.
This image shows what my setup is supposed to look like. I applied those settings with
xrandr --output DVI-I-1-1 --scale 2x2 --mode 1920x1080 --fb 7040x3100 --pos 0x0
xrandr --output eDP-1 --scale 1x1 --pos 3840x1300 --mode 3200x1800
DVI-I-1-1
is my external monitor, eDP-1
my laptop's screen.
This does not have the desired effect, and on my external monitor I can only see the upper left quadrant of the "big 3840x2160" Montior.
So if here the big red rectangle is the whole image I'm supposed to see on my external monitor, the green rectangle is what I'm able to see. On the Laptop's screen everything is fine..
Any ideas on what I'm doing wrong here? I couldn't find good explanations on how xrandr is supposed to work, only people posting the solution to their very specific setup. I would like to understand what is wrong here... Thanks! :)
TLDR: what is wrong with my xrandr commands that I can only see 1 quarter of what I'm supposed to see on my external monitor
EDIT: So from further research I suspect that the scaling command is not working. If it did, I should be able to add --panning 1920x1080+0+0
to the command for my external monitor. This however results in the following error:
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 29 (RRSetPanning)
Serial number of failed request: 41
Current serial number in output stream: 41
This led me to believe that the --scale 2x2
is not working, so I tried to replace it with --transform 2,0,0,0,2,0,0,0,1
(which should be the exact same thing since scale
is a shortcut to transform
)· This did however not change anything...