The *new* homepage of read-edid

read-edid is a pair of tools (originally by John Fremlin) for reading the EDID from a monitor. It should work with most monitors made since 1996, assuming the video card supports the standard read commands (most do). read-edid is a set of two tools - get-edid, which gets the raw edid information from the monitor, and parse-edid, which turns the raw binary information into a xorg.conf-compatible monitor section (Modelines also compatible with xrandr).

As of read-edid version 2.0.0, the lrmi code has been replaced by libx86 code - same syntax, but allows for use on many more architectures. For powerpc, there is a /proc interface, /proc/device-tree/pci/{video-card}/EDID, which you can pipe to parse-edid. Some architectures, AFAIK, may be stuck with only parse-edid.

As of read-edid version 3.0.0, there have been significant code rewrites, including a new I²C-based interface that tends to work much better and in many more cases than the old interface (still included). If you had problems before, this will likely fix them.

read-edid 3.0.1 cleans up the source tree (I left a binary in there), gives the correct INSTALL intructions for the new CMake build system, fixes the install directives to FHS-approved locations, and includes two extra headers, in case they are necessary on your system.

read-edid 3.0.2 fixes a bug in parse-edid that caused "you have data blocks, but not video ones..." in certain situations where that error should not occur. The classic (VBE) module now strongly suggests use of the I2C method when it errors out, as VBE hardly ever works anymore.


By nature, certain cards/monitors do not work or work very badly. If this is the case, email me with an attachment that is the output of get-edid (preferribly seperate files for what stdout and stderr say), as well as your monitor and video card types.

To get your settings to override those provided by XFree86 or, add "Option "NoDDC"" to the device section of your XF86Config or xorg.conf.

It is possible, according to VBE standards newer than 3 (IIRC) to access as many monitors and video cards as you'd like. This is now an option in get-edid, but it doesn't work very well. If the I²C interface works for you, you can generally find all of your monitors on the different busses uncovered by get-edid.

To contact me, throw an email to This is for any bugs, support requests, patch submissions, etc.

read-edid-3.0.2.tar.gz: C source tarball.
read-edid-2.0.0.tar.gz: C source tarball. Older version, around for historical purposes.
read-edid-1.4.2.tar.gz: C source tarball. No libx86 requirement, but won't work on amd64. A dos version of get-edid, in case the linux version gives you problems (sometimes, this works where the linux version doesn't).

poly-p-ux main site | poly-p-ux projects main page