sshterminalxrandr

Why does xrandr give me errors if I try and use commands on my computer, but not if I ssh into it?


When using xrandr on my device to select a resolution I kept getting an error stating " configure crtc 0 failed: "

(shortened) xrandr output after selecting display and running$ xrandr

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
DP1 disconnected (normal left inverted right x axis y axis)
DP2 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 1439mm x 809mm
   1920x1080     60.00*+  50.00    59.94    30.00    24.00    29.97    23.98  
   4096x2160     24.00    23.98  
   3840x2160     30.00    25.00    24.00    29.97    23.98  
   1920x1080i    60.00    50.00    59.94  
   1680x1050     59.88   
   1280x720      60.00    50.00    30.00    59.94    29.97    24.00    23.98  
   1024x768      60.00  
   720x480       60.00    59.94  
   640x480       60.00    59.94  
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)  

Code I used to select a new resolution

$ xrandr --output DP2 --mode 3840x2160

when that gave me the error I also added the frame rate by trying both

$ xrandr  --output DP2 --mode 3840x2160 30

AND

$xrandr --output DP2 --mode 3840x2160_30

(because I wasnt sure of the proper format to add it) Both gave me the error " configure crtc 0 failed: "

This was done on the device itself. for ergonomical reasons I went back to my desk and used SSH to access the device.

I then used a custom resolution (that was the same as above) and tried to use that instead.

steps I used for custom resolution (minus long outputs)

$ cvt 3840x2160

$ xrandr --newmode "3840x2160 30.00" 338.75 3840 4080 4488 5136 2160 2163 2168 2200 -hsync +vsync

$ xrandr --addmode DP2 3840x2160_30.00

$ xrandr --output DP2 --mode 3840x2160_30.00

That seemed to work on my device. When my device restarts I need to repeat the process again though (reverts to 100p when I need it 4k). I stuck $ xrandr --output DP2 --mode 3840x2160_30.00 into a .sh file and now if I run it from my laptop (using SSH) it changes my screens resolution BUT if I try and run the .sh file from my device itself I get the " configure crtc 0 failed: " error


Solution

  • You can reconfigure xOrg. I did this by creating a file in my /usr/share/X11/xorg.conf.d Directory.

    I made it using vim:

    sudo vim /usr/share/X11/xorg.conf.d/5-monitor.conf
    

    Here is an example of my file

    Section "Monitor"
       Identifier "Monitor0"
       Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
       Modeline "3840x2160_30.0" 297.00 3840 4016 4104 4400 2160 2168 2178 2250 +hsync +vsync
       Modeline "4096x2160_24.0" 297.00 4096 5116 5204 5500 2160 2168 2178 2250 +hsync +vsync
    EndSection
    Section "Device"
       Identifier "Device0"
       Driver "intel"
    EndSection
    Section "Screen"
       Identifier "Screen0"
       Device "Device0"
       Monitor "Monitor0"
       DefaultDepth 24
       SubSection "Display"
          Depth 24
          Modes "3840x2160" "1920x1080"
       EndSubSection
    EndSection
    

    For directions on how to do this you can follow this tutorial: https://wiki.gentoo.org/wiki/Xorg/Multiple_monitors

    I was ran into this issue with ubuntu 16.0.4