From the link: http://en.wikipedia.org/wiki/Extended_display_identification_data

The EDID is often stored in the monitor in a memory device called a serial PROM (programmable read-only memory) or EEPROM (electrically erasable PROM) and is accessible via the I²C bus at address 0x50.[1] The EDID PROM can often be read by the host PC even if the display itself is turned off.

How can I read that information?

  • Also note some technical details. You must have a proper VGA cable with ALL the pins connected, not just the image link, so you have the extra line with the monitor. Also some monitors can "talk" only via DVI and only if your video card natively supports digital DVI output. And, as the last impediment, you may need a video driver capable of requesting EDID information. For example my nvidia fx8600gt, with nvidia-config, can read the hole EDID info from my Samsung H2770P monitor. – Patkos Csaba Feb 21 '11 at 14:32
  • @Patkos: I have the latest nvidia device driver. The monitor under Question is either DVI or HDMI. I get the EDID info when I run the Xorg with -logverbose 10 option. But the thing is that, I need the EDID info, whenever the new monitor is connected at runtime. – SHW Feb 21 '11 at 14:43
  • Did you try nvidia-settings from console to query the EDID? – Patkos Csaba Feb 21 '11 at 18:37

Answer to my own Question: [:)]

  1. i2cdetect -l : To enlist the existing i2c adapter
  2. echo Y | i2cdump $i 0x50 : Where i is the device id of each /dev/i2c-*
  3. The above command will print the Raw-EDID for the given I2C-Adapter.
  4. Now custom C ( or any ) programming language can be used to parse the information to give the neat description of the underlying device.

[ Though I used the i2c-tools, still It will be far better to use the low-level assembly programming to read the EEPROM values. ]

| improve this answer | |
  • @Patkos: I can do that only after 20 hours. ( as suggested by site ) – SHW Feb 22 '11 at 14:28
  • 2
    @It's too late now, but there's no need to make your answer community wiki just because you're answering your own question. This is explicitly allowed in the FAQ. – Gilles 'SO- stop being evil' Feb 22 '11 at 20:14

You may want to try


| improve this answer | |

A few days ago, I was also wondering. I found Xorg implementation, but I didn't look at the details. Also, apparently, the kernel module i2c-dev can be used to read EDID.


| improve this answer | |
  • Perhaps i2cget from i2c-tools, if using Debian, would be useful as well... – LawrenceC Feb 21 '11 at 12:54
  • Can you explain in detail, how you solve the issue ? – SHW Feb 21 '11 at 13:06
  • @unltrasawblade: I tried i2cget but it is not well-documented, how to do that. Can you enlist few example for the same ? @elmarco: get-edid | parse-edid is also not useful. I tried that too. – SHW Feb 21 '11 at 13:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.