Linux and Nagios‎ > ‎

"Unknown Display" on Ubuntu

posted 29 Nov 2017, 12:14 by Tristan Self   [ updated 2 Dec 2017, 01:33 ]
Whilst building a new home machine I came across this issue where the third screen in my three screen setup was only seen as an "Unknown Display". My machine has an on-board graphics card and a 2 port PCI-E riser graphics card, the monitors connected to the 2 port riser were working correctly, and the OS saw them as the LG Monitors, the third was showing as "Unknown Display". The problem this caused was that the screen's resolution should be 1440x900@60Hz, but the unknown display was only giving me the option of 1024x768@60 or lower.

So to fix I used xrandr to set the monitor to a resolution I know it supported as follows:

First run cvt to generate a mode, where the 1440 is the Width, 900 the Height and 60 the frequency.
# cvt 1440 900 60

This returned the following:
# 1440x900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz
Modeline "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync

The modeline is what we want, so copy this line and create the following line and hit enter to create a new mode based on these settings:

# xrandr --newmode "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync

Now it is all set you just need to run randr to find out the name of the graphics output you are looking to set to this new mode.

# xrandr
... output omitted.....
VGA-1-1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*
   800x600       60.32    56.25 
   848x480       60.00 
   640x480       59.94 
....output omitted....

In my case it was VGA-1-1, so now I have this information I can apply the new mode to the monitor as follows:

# xrandr --addmode VGA-1-1 1440x900_60.00

Now if you go into the "Settings" and "Display" and click on the unknown monitor you'll notice a new resolution available from the drop down. Select it and click on "Apply" and hey presto, your monitor should now be showing the correct resolution.

The only issue is that the next time you reboot, the changes will be gone. To resolve this create a file called .xprofile in your home directory and add the following contents all on a single line:
xrandr --newmode "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync && xrandr --addmode VGA-1-1 1440x900_60.00

Then finally make it executable with:

# chmod +x .xprofile