Monday, June 16, 2008

Fixing EDID on DVI Monitors Showing No Signal When Windows Vista Boots

The following article is a guide to fix the problem with DVI monitors showing no signal when Windows Vista starts.

Does your monitor turn black (blank) and display no signal when Windows Vista (also Windows Server 2008) finishes the green progress bar in the boot process, right the second it turns the Num Lock on?

Was it okay until yesterday when you just installed Windows Vista or Windows Server 2008? Trying back Windows XP or Windows Server 2003 solves the problem?

Is your monitor listed as “Generic Non-PnP Monitor” in Windows Device Manager in XP, Vista, 2003, and 2008? Will you be surprised if I tell you it means “dear user, it’s not detected at all”?

Have you tried graphics card’s all latest drivers, a version so chef d’œuvre, even Jen-Hsun Huang is not aware of, but this time screen turns black (blank) getting “no signal” in Windows while updating driver?

Have you tried your graphics card’s other DVI port after screen turned blank, and you suddenly felt like you’ve succeeded for a while, but it was stuck at some 1024x768-or-so 4:3 low-resolution on a 16:10 widescreen, ended up in silent-films era?

Have you tried calling your monitor’s (and maybe your graphics card’s) vendor’s technical support and they just told you to unplug your monitor both from VGA and wall socket, take a breath for X seconds, and then reconnect’em all, at their best, with no luck? Hey pizza-boy-turned-support-technician, don’t fool us. Have you ever asked yourselves what should happen in these X seconds? 5-or-so for Samsung and Sharp, 10 for Dell and Fujitsu, 30 for ViewSonic; are you giving’em points for Christ’s sake, or are they each vendor’s Jesus’s response time to come along for help? One thing’s for sure: Jesus might’ve opened the eyes of a man born blind, but sure-as-hell he won’t cure a monitor turned blind, especially in a world where John Michael “Ozzy” Osbourne says “What’s a DVD?”

Don’t panic, your EDID’s gone.

- My what?

Your monitor’s “extended display identification data”.

- What the hell is that?

Extended display identification data (EDID) is a data structure provided by a computer display to describe its capabilities to a graphics card. It is what enables a modern personal computer to know what kind of monitor is connected. EDID is defined by a standard published by the Video Electronics Standards Association (VESA). The EDID includes manufacturer name, product type, phosphor or filter type, timings supported by the display, display size, luminance data and (for digital displays only) pixel mapping data.

- But XP (also Server 2003) was OK.

No, it was not. You just didn’t see the problem. It was there all the time, calling a modern-day DVI digital sure-as-hell PnP monitor a “Generic Non-PnP Monitor”.

- You mean my whole EDID is erased?

Not so sure, it might be partially erased, or it might be just a corrupt checksum. At least an invalid checksum is enough to cause this trouble. Some people reported both a corrupt resolution section and a corrupt checksum.

- Oh wait, here in this Nvidia forum it says a weak power supply was the cause of the trouble, some geek says if you just replace your PSU with something big-watt it’ll fix at no effort.

No, it’s totally wrong. Mine broke down while I was on a 700W RMS SLI-certified power supply.

- Goddamn it, I’m quite sure it has something to do with Microsoft, and Nvidia as an accessory. (Chris Malachowsky’s is huffily shouting “What if it’s an ATi, or maybe it has nothing to do with us GPUers, maybe it’s these overclockers’ fault, XFX, Club, Sparkle, or maybe it has nothing to do with the overclockers, what about board assemblers like ourselves (!), Gigabyte, and Asus?”)

Don’t be so sure, and more importantly don’t blame Microsoft, and you Chris, enough maybes, maybe none of you are to blame, but we’re to blame those at VESA for this tricky invention called EDID, and of course those monitor manufacturers for making EDID EEPROM so naïve. Yes, naïve, lacking worldly wisdom, as if you could open the door to your car with the key to your apartment.

- Oh, there it is, ViewSonic EDID Editor, I’m gonna fix my EDID.

Don’t rush, ViewSonic EDID Editor is no good, it does nothing; the only thing it’s good at, is to show you what portion of EDID means what! So, don’t waste your time downloading it.

Monitor and HDTV EDID reprogramming, as how it’s done in repair shops, usually takes additional devices like what Gefen produces, gadgets like DVI Detective N (MSRP: $69) and DVI Detective Plus (MSRP: $129), but if you’re lucky, you should be able to restore your EDID needing nothing other than your computer, thanks to Sadjad for providing me the solution to my ViewSonic’s problem.

A copy of your EDID is saved in the Windows Registry. Please note it’s not your live EDID, maybe it’s correct but your monitor’s not. This is true especially when your monitor’s out and your Windows Vista (or Windows Server 2008) was working fine until yesterday! Anyway, it’s located here:

HKLM\SYSTEM\CurrentControlSet\Enum\DISPLAY\{VESA_Monitor_ID}\{PnP_ID}\Device Parameters\EDID

You have to fill in {VESA_Monitor_ID} and {PnP_ID} with you own. For example, EDID for a ViewSonic VX2025wm can be found here:

HKLM\SYSTEM\CurrentControlSet\Enum\DISPLAY\VSCE51D\5&3a6dfcff&3&UID272\Device Parameters\EDID

If you’ve ever wanted to see what your monitor’s EDID (saved in Windows Registry) looks like, ELDIM EDID Viewer is yours. Again, please note it’s not your monitor’s live EDID. ELDIM EDID Viewer is not able to connect to your monitor and fetch its EDID, it’s just good to look at what binary EDID you’ve got in the Registry, translating it to human-readable language, and if you wanted, exporting it to an RTF file.

Solution

First, you’ll need another monitor, one just like yours, it doesn’t matter even if it’s of a friend of yours living in Ukraine, all you need is to ask them to run Phoenix EDID Designer on their computer (it’s really easy, no need to install, just run Phoenix.exe), and provide you with a copy of their EDID, using Tools/Extract Registry EDID. But first make sure they’re sending you the DVI data. That’s important because you don’t want a D-SUB EDID being replaced with your (even corrupted) DVI EDID! So as you might’ve noticed now, monitors with both DVI and D-SUB connectors have two EDIDs, one for DVI, and one for D-SUB, each one containing its own settings, only with the former being more at risk. To make sure the correct EDID is selected from the Registry, check to see if the “Digital” radio button is selected inside “Video Input Definition” group box under “Basic Display Parameters” tab, as shown below:

Phoenix EDID Designer - EDID from Ukraine.dat

Phoenix EDID Designer is able to save the EDID as a DAT file, in its own format. Its structure is very simple and is transformable to other formats if simply edited in Notepad. It’s also able to export EDID as a binary RAW file, which is identical to what PowerStrip calls BIN.

EDID BYTES:
0x 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
------------------------------------------------
00 00 FF FF FF FF FF FF 00 5A 63 1D E5 01 01 01 01
10 20 10 01 03 80 2B 1B 78 2E CF E5 A3 5A 49 A0 24
20 13 50 54 BF EF 80 B3 0F 81 80 81 40 71 4F 31 0A
30 01 01 01 01 01 01 21 39 90 30 62 1A 27 40 68 B0
40 36 00 B1 0F 11 00 00 1C 00 00 00 FF 00 51 36 59
50 30 36 30 30 30 30 30 30 30 0A 00 00 00 FD 00 32
60 4B 1E 52 11 00 0A 20 20 20 20 20 20 00 00 00 FC
70 00 56 58 32 30 32 35 77 6D 0A 20 20 20 20 00 FE
: Week of manufacture
: 1990 subtracted from the year of manufacture
: Serial number
: Checksum
ViewSonic VX2025wm DVI EDID for Phoenix EDID Designer
Download in DAT file format
Download in RAW file format
Sample of a Phoenix EDID Designer DAT file

Now, if the panel you’ve been using as the source is identical to yours, you’ll only need to change the serial number, manufacturing week, manufacturing year, and the checksum section in the EDID file. Some’d say “Man! Let’s overwrite this sh*t ASAP”, but I’m the kind of guy who prefers not to do, unless it’s going to be done perfectly. So don’t be lazy, change the serial number, manufacturing week/year, and the checksum accordingly. Who said ViewSonic EDID Editor is no good? I meant no good at what its name yells, but it’s useful to get a clue about the serial number, mfg week/year, and checksum sections placement, and to make a calculation of the new checksum. To force ViewSonic EDID Editor to recalculate the checksum of a recently opened DAT file, toggle “Modify EDID” so it shows “Modify EDID (ON)” in the toolbar. In this state, it automatically recalculates the checksum each time you edit a cell. One other thing about ViewSonic EDID Editor is its exported binary file is useless.

Bear in mind the whole extended display identification data (EDID) is 128 bytes. Considering the first byte’s index zero, the offset to the aforementioned information are as stated below:

Offset 16: Week of manufacture in a byte. e.g. hexadecimal 20 (= decimal 32): 32nd week of the year
Offset 17: 1990 subtracted from the year of manufacture in a byte. e.g. hexadecimal 10 (= decimal 16): 2006
Offset 77-88: Serial number in 12 bytes. e.g. hexadecimal 51 36 59 30 36 30 30 30 30 30 30 30: Q6Y060000000
Offset 127: EDID checksum in a byte.

128 BYTES OF EDID CODE:
0 1 2 3 4 5 6 7 8 9
________________________________________
000 00 FF FF FF FF FF FF 00 5A 63
010 1D E5 01 01 01 01 20 10 01 03
020 80 2B 1B 78 2E CF E5 A3 5A 49
030 A0 24 13 50 54 BF EF 80 B3 0F
040 81 80 81 40 71 4F 31 0A 01 01
050 01 01 01 01 21 39 90 30 62 1A
060 27 40 68 B0 36 00 B1 0F 11 00
070 00 1C 00 00 00 FF 00 51 36 59
080 30 36 30 30 30 30 30 30 30 0A
090 00 00 00 FD 00 32 4B 1E 52 11
100 00 0A 20 20 20 20 20 20 00 00
110 00 FC 00 56 58 32 30 32 35 77
120 6D 0A 20 20 20 20 00 FE
: Week of manufacture
: 1990 subtracted from the year of manufacture
: Serial number
: Checksum
ViewSonic VX2025wm DVI EDID for ViewSonic EDID Editor
Download in DAT file format
Sample of a ViewSonic EDID Editor DAT file

CAUTION! Before thinking about flashing your monitor’s EDID, make sure you are connected through DVI, otherwise you’ll end up flashing the wrong port (D-SUB)! Connect the DVI, boot up the computer, when monitor’s gone, switch to the other DVI port of your VGA card. Now Windows will detect the monitor as a “Non-PnP”, locked in a low resolution screen, which is good enough to flash a monitor! If you don’t have a double DVI port graphics card, try flashing it in Windows XP/Windows Server 2003 with the DVI connected.

Then, you’d need the toughest of them all, the Taiwanese EnTech PowerStrip. Remember Armageddon’s quote “American components, Russian components, all made in Taiwan”? Here we go, don’t waste your time with its trial version, it’s not doing our required function (upload EDID) when’s on trial, showing an error indicating “This option is only available to registered users.” and the fact that registration is required. During installation, It’ll ask to add “non-linear gamma ramps” to the Windows Registry, which you should answer no, because who needs them when the monitor’s out! Also if you’re luckily using Microsoft Forefront Client Security, it’ll ask you to permit a device driver change for “{System Folder}\drivers\PStrip.sys” published by “EnTech Taiwan”. Who’s silly enough to say no to this powerful application? After successfully registering and launching PowerStrip, it’ll place its icon in the tray. Click on it, and select the first popup item from the top “Options…”, then “Monitor Information…”, now on the opened dialog, from the bottom left corner, Options, select “Update EDID” in the combo box, just like what’s shown below:

PowerStrip Update EDID

Now, depending on your monitor’s EEPROM ability, there might be a dialog shown, entitled “EEPROM Error” explaining “An EDID EEPROM was not detected on the selected monitor. Do you want to scan the bus for other EDID EEPROMs?” Press “Yes”. Now, there might be another, entitled “EEPROM Found: {VESA_Monitor_ID}” (VSCE51D, in my case), shouting “An EDID EEPROM has been found at port #1. Do you want to attempt writing to this EEPROM?” Again press “Yes”. Give PowerStrip your EDID file, and wait while it’s flashing your junk monitor’s EEPROM. If you’re as lucky as I was, you’re saved from buying another display.

00 FF FF FF FF FF FF 00 5A 63
1D E5 01 01 01 01 20 10 01 03
80 2B 1B 78 2E CF E5 A3 5A 49
A0 24 13 50 54 BF EF 80 B3 0F
81 80 81 40 71 4F 31 0A 01 01
01 01 01 01 21 39 90 30 62 1A
27 40 68 B0 36 00 B1 0F 11 00
00 1C 00 00 00 FF 00 51 36 59
30 36 30 30 30 30 30 30 30 0A
00 00 00 FD 00 32 4B 1E 52 11
00 0A 20 20 20 20 20 20 00 00
00 FC 00 56 58 32 30 32 35 77
6D 0A 20 20 20 20 00 FE
: Week of manufacture
: 1990 subtracted from the year of manufacture
: Serial number
: Checksum
ViewSonic VX2025wm DVI EDID for PowerStrip
Download in DAT file format
Download in BIN file format
Sample of a PowerStrip DAT file

After flashing the EDID EEPROM successfully, shut down your computer, turn off the monitor, detach wall sockets off both your PC and monitor, connect the monitor to the desired DVI port. Now hook up wall sockets, and boot up.

Please note supported EDID file types by PowerStrip are:

  • Hex files: *.dat
  • Binary files: *.bin
  • Text files: *.txt

Precautions to Avoid Getting Hunted by DVI Displays

  • Even though they’re packed with D-SUB alongside DVI, I’ve learned mine was broken because I’ve been using D-SUB for test and install purposes, so unplug the D-SUB cable and throw it out of the window for your own good.
  • These DVI’d creatures are too fragile, too brittle, as sensitive as a Lolita, so whenever you want to disconnect the DVI cable from either its monitor’s head or graphics card’s head, first and foremost turn the goddamn monitor off and unplug the wall socket to both the monitor and PC.
  • These monitors are also sensitive to electric shocks. It wipes their checksum out, if it doesn’t clear their whole EDID. No country’s providing us with power quality, may energy ministers burn in hell, so power conditioning is essential, try a UPS, or at least a surge protector.
  • What harm does keeping a backup of your EDID? Keeping this particular less-than-a-kilobyte file seems to be a lot more practical than those things you and I have collected since our childhood… It’ll become handy someday! Best pray not.

Configuration

My system configuration at the time of the fault discovery during a Windows Server 2008 installation was:

Then I tried many combinations of the following, with no luck:

  • Graphics Card: Replaced with another XFX Nvidia 8800 GT, tried a few older Nvidia drivers, even a modded 174.74 was also tested, then an XFX Nvidia 7300 GT
  • CPU: Replaced with an Intel Core 2 Duo E4600 2.4 GHz HT
  • Motherboard: Updated Gigabyte GA-965P-S3’s BIOS to F12, and then to beta BIOS F13e, then replaced with a Gigabyte GA-P31-DS3L (F8)
  • RAM: Replaced with 4GB OCZ Dual-Channel CL4 Titanium, then tested with Sadjad’s 2GB OCZ Dual Channel CL5 Special Ops
  • HDD: Installed Windows Vista this time on a Western Digital Caviar SE 320 GB
  • PSU: Replaced with a Cooler Master M700W, once even with a noname 300W

15 comments:

Stephen said...

Hi...
Thank you so much for sharing such a nice information. I like this site. I will surely bookmark it for future use. Good work! keep it up.

insomnie

Anonymous said...

Hey sir thanks for this...badly needed these infos but I'm stuck at updating the EDID with powerstrip, I don't seem to have the Update EDID option on the left corner..

BTW my monitor would not display at all using a DVI connection and I'm also using Viewsonic VX2025wm... I connected it to my computer using DVI and VGA since it won't display with DVI only.

I hope you could help me on this one.

CallmeRob said...

Hi, Thanks for the tip, was able to get my display running to a point.

I followed your steps and all went well until I got to the point for updating the EDID. The new version isn't asking me for the new file eeprom that I customized, and now I'm kinda stuck.

My display currently views at 1280X1024 but can't go higher as my windows 7 is detecting it as a generic non Pnp even after searching the net automatically. I'm unable to modify it to reset it back to its native 1600X1080 resolution.

Any help would be appreciated.

rg said...

Monitor Asset Manager is a great tool to easily see and save the EDID from a "live" monitor, to/from a file, or from a registry entry. Simply edit accordingly and then upload into a connected monitor with PowerStrip. Worked great on a repair of a VP2130b monitor that suddenly lost scaling.

Anonymous said...

I'm not able to get another monitor just like mine.. is there no other solution? I'm screwed for life? =/ My monitor is capped at 1600x1200 instead of 1680x1050. I'm running a Gateway HD2200

tzok said...

Hi,
I've created a small utility to convert EDID data between PowerStrip, ViewSonic, Phoenix and RAW file format.

http://cid-c0648a9c3edfbae2.skydrive.live.com/self.aspx/.Public/EDID^_Converter.zip

Komeil Bahmanpour said...

tzok, good job man.

William Toms said...

Most of this worked fine for me. I did not user PowerStrip to flash the port with a 'fixed' edid. DDCW is able to do this (From dos bootdisk). One thing to note with this is to make sure you flash the right port, or you can make your working VGA also dead (though you can fix it blind). Compare the output of `ddcw -m #` before doing anything. The help states #=0 and #=1 are VGA and DVI, respectively, but compare the output to be sure (#=1 was VGA for me, and #=2 DVI). Second row, fifth column I think is where the input is defined, "80" for Digital.

Rathmel - Glen said...

Hello...your information is AMAZING!! I am having the same problem..and my monitor is the SAME AS YOURS!! Please tell me you still have a backup of your corrected EDID! (smile). I could really use that...if you would be kind enough to email it to me...>>Please... :) rathmel30@hotmail dot com. Thank you very much!!

Komeil Bahmanpour said...

Rathmel - Glen, The EDID file for the ViewSonic VX2025wm is available in different formats (DAT, BIN, RAW) for download in the blog post. You might want to change the mfg date and serial number if you want to make it exact.

Ed said...

I am having this issue with a brand spanking new Viewsonic VP950b, that Viesonic sent me as a replacement for my VP930b, that was doing this for the 3rd time.

Can anyone help me resolve my issues with it? Viewsonic is saying "No More, its not our poroblem!"

Chi said...

Your guide is excellent. Helped me fix up my VX2025wm as well. Only downside is that it is almost at the end of its warranty, and in case something like that happens again, I'd have to fix this myself. I was wondering if its possible to make this fix permanent. In my research, some people had mentioned that you can write protect the EDID. Are you aware of any way to do this?

Komeil Bahmanpour said...

Chi, I don't think EDID EEPROMs could become write-protected via software tricks. It might be possible through an electronic workaround, I'm not sure though. But the point is once you have a backup of each of your ViewSonic's inputs (DVI & VGA D-sub 15-pin connectors) you shouldn't be afraid. You flashed it once, you'll be able to do that once again!

Anonymous said...

I fixed HDMI port #2 on my Pioneer Kuro HDTV months ago, when I got blank screen after I switched from Windows XP to Windows 7 on my HTPC. Yesterday I noticed my Kuro's HDMI port #1 is also defected, after I connected a VAIO notebook's HDMI socket! Why is this happening?

Luke said...

I registered my PowerStrip, but when I try to update EDID it asks for a PIN. Awaiting reply from entech.

I have that same ViewSonic 2025wm...

Post a Comment


Copyright © 1999-2010 Komeil Bahmanpour. All rights reserved.

Reproduction is permitted provided that the source is acknowledged and a link is included to the relevant article.