Getting modelines for x.org

Getting modelines can be done by calculating them yourself or using a online calculator like this one. But still, you have to get all this information about your monitor. You wonder, why can’t the monitor itself just supply them? Well, it can. You can get it by using the EDID information.

EDID?

Extended Display Identification Data is a VESA standard data format that contains basic information about a monitor and its capabilities, including vendor information, maximum image size, color characteristics, factory pre-set timings, frequency range limits, and character strings for the monitor name and serial number.

The information is stored in the display and is used to communicate with the system through a Display Data Channel (DDC ), which sites between the monitor and the PC graphics adapter. The system uses this information for configuration purposes, so the monitor and system can work together.

The latest version of EDID can be used in CRT displays, LCD displays, and future display types because EDID offers general descriptions of almost all display parameters.

Getting the information

# get-edid
(some information)

This isn’t very helpfull thou. We need to run it through the program parse-edid to get some usefull information.

[...]
parse-edid: EDID checksum passed.

        # EDID version 1 revision 3
Section "Monitor"
        # Block type: 2:0 3:ff
        # Block type: 2:0 3:fc
        Identifier "DELL 1908FP"
        VendorName "DEL"
        ModelName "DELL 1908FP"
        # Block type: 2:0 3:ff
        # Block type: 2:0 3:fc
        # Block type: 2:0 3:fd
        HorizSync 30-81
        VertRefresh 56-76
        # Max dot clock (video bandwidth) 140 MHz
        # DPMS capabilities: Active off:yes  Suspend:yes  Standby:yes

        Mode    "1280x1024"     # vfreq 60.020Hz, hfreq 63.981kHz
                DotClock        108.000000
                HTimings        1280 1328 1440 1688
                VTimings        1024 1025 1028 1066
                Flags   "+HSync" "+VSync"
        EndMode
        # Block type: 2:0 3:ff
        # Block type: 2:0 3:fc
        # Block type: 2:0 3:fd
EndSection

And there you go… ready to copy n paste in your xorg.conf file.