Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

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?

share|improve this question
    
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

3 Answers 3

You may want to try

http://polypux.org/projects/read-edid/

share|improve this answer
up vote 1 down vote accepted

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. ]

share|improve this answer
    
Accept your own answer please if it's working. –  Patkos Csaba Feb 22 '11 at 13:21
    
@Patkos: I can do that only after 20 hours. ( as suggested by site ) –  SHW Feb 22 '11 at 14:28
    
@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 Feb 22 '11 at 20:14

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.

http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/ddc

share|improve this answer
    
Perhaps i2cget from i2c-tools, if using Debian, would be useful as well... –  ultrasawblade 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

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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