Ubuntu – How to get a higher resolution on Ubuntu 11.04 using an intel chipset

driversintel graphicsresolutionUbuntu

I have a bit slow PC here, so I decided to put Ubuntu 11.04 on it. It use to run Windows Vista on a resolution of 1280×1024, so both my hardware and monitor support it.

Now I'm on Ubuntu, but can only run 1024×768, and the screen is not that bright. Its like when you don't have the right drivers on a Windows machine. Now i'm new to linux, so I do not know what do do. I have an onboard Intel chipset i965.

Maybe this is some useful information, I read something about it on a forum: lspci

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 02)
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 01)
00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 01)
00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01)
00:1f.2 IDE interface: Intel Corporation N10/ICH7 Family SATA IDE Controller (rev 01)
00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 01)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
03:03.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (rev c0)

Can someone please tell me how I can get the screen better?

saif@sodium:~$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 4096 x 4096
VGA1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768       60.0* 
   800x600        60.3     56.2  
   848x480        60.0  
   640x480        59.9  

Best Answer

You can try setting your resolution to the desired level manually.

First, run this command, changing the example 1920x1080 resolution to the resolution you want:

cvt 1920 1080

That will spew out something like this:

# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

We're only interested in the chunk after the quotes and before the -hsync, e.g.

173.00  1920 2048 2248 2576  1080 1083 1088 1120

Use that in the next command to add a graphics mode:

xrandr --newmode clever_name 173.00  1920 2048 2248 2576  1080 1083 1088 1120

Now, add your new mode to your VGA output:

xrandr --addmode VGA1 clever_name

Finally, switch your VGA monitor to use it:

xrandr --output VGA1 --mode clever_name

Now that that works, you can make it take effect every time you log in. To do so, create the following files somewhere:

fix-resolution.sh with what is called a shebang line and then the last three commands you ran that got it working before, e.g.:

#!/bin/sh
xrandr --newmode clever_name 173.00  1920 2048 2248 2576  1080 1083 1088 1120
xrandr --addmode VGA1 clever_name
xrandr --output VGA1 --mode clever_name

fix-resolution.desktop with the following contents:

[Desktop Entry]
Name=fix resolution
Exec=/usr/bin/local/fix-resolution.sh

Now, copy the files to the appropriate places on your hard drive and make the script executable. From a terminal:

cp fix-resolution.sh /usr/local/bin
chmod +x /usr/local/bin/fix-resolution.sh
cp fix-resolution.desktop /etc/xdg/autostart

This will run the commands that force your monitor to the proper resolution every time someone logs into your computer.

Related Question