13

I'm on a clean install of Ubuntu 10.04 LTS. My monitor's native resolution is 1280x1024. However, in the Monitor Preferences application, I am only presented with 640x480 and 800x600 as options. My video card is an on board Matrox G200eW. I tried installing the proprietary driver from Matrox's website, but the installer immediately throws four errors. I also tried using xrandr to set my resolution, but it simply pops back saying "Size 1280x1024 not found in available modes." How can I get 1280x1024 added to my available sizes to that I can switch to it?

1
  • Thanks for all the help, guys. Unfortunately, I think it's a lost cause on this machine. Even when I finally manage to get 1280x1024 added as an option, selecting it just errors out. Aug 19, 2010 at 5:37

6 Answers 6

5

Installing the proprietary driver might help!

You can also put new screen modes in the configuration file called /etc/X11/xorg.conf but there is no default since everything is probed every time X starts. So to get a good default you can have Xorg write the probed config to file. This is done by shutting down X and the restarting, telling X on the commandline that it only has to write a config file.

So firstly print or write down these instructions ;)

Then press Ctrl + Alt + F1 to go to a console. There you will have to login. Just login as your normal privileged user.
To stop X use this command:

sudo service gdm stop

and then to have X generate a new configfile

sudo Xorg -configure

The Xorg command will tell you where it have saved the config and you can now choose to return to X if you are more comfortable with a GUI.
Restart X by using this command

sudo service gdm start

Now edit you new xorg.conf and save it as /etc/X11/xorg.conf find the section that looks like the one below and add the videomodes you want (the Modes line properly isn't there, but just add it after Depth like I have done below.

Section "Screen"
    Identifier    "Default Screen"
    Device        "NVIDIA Corporation NV34 [GeForce FX 5200]"
    Monitor        "CM752ET"
    DefaultDepth    16
    SubSection "Display"
        Depth        24
        Modes      "1024x768" "800x600"
    EndSubSection
EndSection
4
  • Thanks. Your instructions for getting an xorg.conf file worked great. I had multiple SubSection "Display" sections (each with a different depth, and all with the additional element Viewport 0 0). I added Modes "1024x768" "800x600" "1280x1024" to all of them. Unfortunately, this doesn't seem to have done anything. I know it's reading this config file, as adding garbage to the top of it causes X to not load. However, I still only have 640x480 and 800x600, and xrandr still won't let me set 1280x1024 as my resolution. Aug 10, 2010 at 22:29
  • Then it is properly your graphics driver that tells X that it does not support any higher than 800x600 :( Take a look at /var/log/Xorg.0.log (Xorg logfile) you can put it up at pastebin.com and link to it here if you have trouble deciphering it. Aug 10, 2010 at 22:38
  • Thanks. I found two suspicious lines in Xorg.0.log. (II) MGA(0): Not using default mode "1280x1024" (hsync out of range) (II) MGA(0): Not using mode "1280x1024" (no mode of this name) I don't see hsync being defined anywhere in my xorg.conf file. Should I be defining that somewhere? Aug 10, 2010 at 23:36
  • Have a look at Li Lo's anwser ubuntu.stackexchange.com/questions/1861/… Aug 11, 2010 at 6:26
4

If your driver supports xrandr this should work:

  • Use this command:

    cvt width height
    
  • I will give an output like this:

    1280x1000 59.93 Hz (CVT) hsync: 62.21 kHz; pclk: 105.50 MHz
    Modeline "1280x1000_60.00"  105.50  1280 1360 1488 1696  1000 1003 1013 1038 -hsync +vsync
    
  • Copy the numbers after 105.5

  • Then use these commands:

    xrandr --newmode name 105.50  1280 1360 1488 1696  1000 1003 1013 1038 -hsync +vsync  
    xrandr --addmode name
    
  • The first command will create a new mode with name, the second will add that mode to the available list.

Now you should be able to select your desired resolution from the drop-box in the usual menu.

3
 (II) MGA(0): Not using default mode "1280x1024" (hsync out of range)

You need to define a monitor section in xorg.conf with a sufficiently broad hsync range.

Something like:

Section "Monitor"
     Identifier "MyMonitor"
     HorizSync  xx-yy
EndSection

It would be best if you put the exact hsync range for your monitor.

I believe this is happening because the video driver is unable to get correct EDID information from the monitor. You might also need to experiment with your driver's settings to tell it to ignore the EDID information it's getting from the monitor.

1

I would recommend, correctly installing your drivers. Then i am sure if your graphic card is capable of displaying the resolution 1280x1024 it will.

:)

3
  • I tried to install the driver from Matrox's website, but it's over four years old and immediately starts throwing errors when I run the installer. Is there any other place I should be looking for the installer? Aug 10, 2010 at 18:53
  • Update: I hadn't though to check in Synaptic to see if the driver was already installed. According to Synaptic, the driver is installed already. Aug 10, 2010 at 23:42
  • @warren it's probably not the correct driver. :(
    – myusuf3
    Aug 11, 2010 at 0:02
1

This answer suggests setting the refresh and sync rates for the monitor. Use your monitor's specification to find its values, then put them like this:

  Section "Monitor"
   Identifier "Monitor0"
   VendorName "Unknown"
   ModelName "CRT-0"
   HorizSync 31.0 - 81.0
   VertRefresh 56.0 - 76.0
  EndSection
1

A common cause of this problem is the monitor sending bad (or no) resolution information to the driver. The driver then restricts itself to common defaults (e.g. 640x480 or 800x600, or sometimes 1024x768). Sometimes a bad cable is at fault.

So first verify if your monitor info is getting through properly, and if not react:

  1. Run sudo get-edid to verify the extended display data. For example I get:

The EDID data should not be trusted as the VBE call failed. EDID claims 255 more blocks left EDID blocks left is wrong. Your EDID is probably invalid.

  1. Download Phoenix EDID Designer and run it with wine Phoenix.exe. In a few clicks you can set the native resolution of your monitor, invent a manufacturer ID and serial number, and be on your way. Save this as a "raw" file. To keep things simple enter only the native resolution of your monitor.

  2. Back up xorg.conf and add a CustomEDID option:

    Section "Device" VendorName "NVIDIA Corporation" BoardName "GeForce GT 430" ... Option "CustomEDID" "DFP-0:/home/bnesbitt/XP-17-EDID.raw" EndSection

  3. Restart the X server or (if you're brave) reboot.

For clarity that error message was 'The EDID data should not be trusted as the VBE call failed. EDID claims 255 more blocks left EDID blocks left is wrong. Your EDID is probably invalid.'.

Not the answer you're looking for? Browse other questions tagged .