Sunday, April 26, 2009

Get EDID information

To know what your monitor supports, it passes along information to the operating system known as EDID. With this information your computer can then present you with the properly supported display resolutions and frequencies that are supported by your monitor.
Sometimes you may have a problem where you are only able to select very low screen resolutions such as 640 X 480 and 800 X 600. This is usually caused by not having the correct drivers installed for your graphics cards, but it can also be a problem of your monitor not passing the EDID information properly.
Fortunately for us Linux folks there is a way to get this information from the monitor. The following commands worked on my Ubuntu 9.04 Jaunty desktop and Ubuntu 10.04 Lucid workstation.


$ sudo aptitude install read-edid
$ sudo get-edid | sudo parse-edid
parse-edid: parse-edid version 1.4.1
get-edid: get-edid version 1.4.1

Performing real mode VBE call
Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
Function supported
Call successful

VBE version 300
VBE string at 0x11110 "Intel(r)GM965/PM965/GL960 Graphics Chip Accelerated VGA BIOS"

VBE/DDC service about to be called
Report DDC capabilities

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
Function supported
Call successful

Monitor and video card combination does not support DDC1 transfers
Monitor and video card combination supports DDC2 transfers
0 seconds per 128 byte EDID block transfer
Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
Read EDID

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
Function supported
Call successful

parse-edid: EDID checksum passed.

# EDID version 1 revision 3
Section "Monitor"
# Block type: 2:0 3:0
# Block type: 2:0 3:fe
# Block type: 2:0 3:fe
Identifier "AUO:4714"
VendorName "AUO"
ModelName "AUO:4714"
# Block type: 2:0 3:0
# Block type: 2:0 3:fe
# Block type: 2:0 3:fe
# DPMS capabilities: Active off:no Suspend:no Standby:no

Mode "1440x900" # vfreq 60.031Hz, hfreq 54.868kHz
DotClock 108.200000
HTimings 1440 1504 1536 1972
VTimings 900 903 906 914
Flags "-HSync" "-VSync"
EndMode
# Block type: 2:0 3:0
# Block type: 2:0 3:fe
# Block type: 2:0 3:fe
EndSection


Using this information you can safely rule-out, or not, a problem with your monitor's EDID.

Update 09/14/2010: Checked that these instructions are still valid as of Ubuntu 10.04 Lucid Lynx.