We get emails from people asking what our basic troubleshooting strategy is, whether it's for problems with computers, home theater gear, tablets, phones, or something completely random. I just solved a PC problem that had been plaguing me all week, and figured this is as good an excuse as any to share my basic strategy. Here's what happened:
We're in the middle of baby-proofing the house, which involved moving my PC components into a smaller, quieter case, and cleaning up the cable snarl under my desk. Unfortunately, while I was monkeying around under my desk, something happened and my monitor stopped resuming from sleep.
I'm not sure exactly what happened, but somehow the EDID EEPROM got corrupted. The EDID stores the information about the resolutions, refresh rates, and other settings your monitor supports, so it's needed for plug and play monitors to work on Windows (Linux and OSX will work a little differently). My Dell 3008WFP's DVI ports managed to get corrupted, which prevented Windows from waking up the monitor when it powered up. Needless to say, this was bad.
I managed to fix the EDID on my out of warranty monitor, but the details of the repair process aren't necessarily universal. However, the troubleshooting steps I went through are fairly generic. In the hours of research I've done since the failure, I found a few tools that are incredibly useful, as well as a couple of websites that are handy for understanding what exactly can go wrong with your EDID. The good news is that EDID problems seem to be relatively rare these days, less common with more modern display connectors, like DisplayPort and HDMI, and can be avoided entirely by making sure your monitor and PC are turned off when you connect display cables.
From what I've seen and read, EDID problems can manifest in several ways, depending on your monitor and video card. For my Dell monitor, the display went into Power Save mode as soon as Windows started. A few reboots, and I was able to get into Windows, but the display was obviously corrupted and unreadable at its native resolution. Your symptoms may vary.
The first thing I tried was to make sure that rebooting the hardware wouldn't fix the problem I powered down both the PC and monitor, disconnected the monitor's power cable, and held down the power button on the monitor for 10 seconds. This allowed me to boot back into Windows, but it didn't really fix the problem. I wasn't able to run the monitor in its native resolution and even at lower resolutions, the colors on the display were obviously off.
Next I wanted to isolate the problem and check for easy fixes or components that would be cheap to replace. I tried connecting my computer and monitor using a DVI cable I knew was good (no dice), and connecting the computer to a known good monitor (this worked). This told me something was up with the monitor.
Googling the product name and phrases like "stuck in power save mode" and "corruptions at native resolution" lead me to check the Device Manager, where I saw my monitor showed up as a Generic Non-PnP Monitor. More Google searches led me to Komeil Bahmanpour's DVI monitors showing no signal page, which is when I realized I probably had EDID problems.
To repair a corrupt EDID, you'll need a good copy of your specific monitor's EDID, a videocard that supports writing to the EDID, and a registered copy of Entech's Powerstrip. The video card might be a little tricky, newer cards didn't work for me. If your current card doesn't work, see if you can find a card a few years old. Powerstrip didn't support my GeForce GTX 580, but I was able to find an old Radeon 4750 that did the trick. I also found Entech's Monitor Asset Manager (free) and Extron's EDID Manager (also free) to be useful. There is a free command-line utility that serves the same purpose as Powerstrip in this setup, but it requires booting to a DOS environment, which is tough for most people to get running these days.
You'll also need to get a PIN code from Entech that will unlock the EDID writing functionality. The PIN is machine specific, so make sure your video card supports reading EDID info before you request a code. To get the code, send the Pstrip.ini file from your user profile/AppData/Roaming directory to the email address that sent your Powerstrip registration information and ask for an EDID upload PIN. They responded with a code within minutes when I sent the email.
You may be able to pull a working EDID from the Windows registry using Monitor Asset Manager. Unplug all your monitors except the afflicted one, then launch the program. You'll need to run Monitor Asset Manager as an Administrator the first time you launch it, but once you've done that, it will let you see the EDID information stored on the monitor, as well as the different versions cached in Windows' registry. Save reports from all of the entries that correspond to your correct monitor using the File menu, Save Report command (make sure you give them each unique, identifiable names). If you can't get the EDID info from your registry using Monitor Asset Manager, I had luck using Extron's EDID Manager, although it doesn't support polling the card directly.
If you can't pull a working EDID from your registry or don't have a spare monitor that's the exact same model, you can turn to Google or call the monitor manufacturer and beg for mercy. If you have a friend with the same model display, you can get them to pull the EDID info from their monitors. Rewriting the EDID info for your monitor without the manufacturer's help should be a last resort. If you can RMA your display and get the manufacturer to fix the problem, do that first, as rewriting the EDID is traceable by the manufacturer and will void your warranty. If you mess this up, it will likely make your already broken monitor even more broken.
The info Powerstrip needs is near the end of those report files, under the Raw Data section. For my monitor, that section contained 128 bytes of data, but you'll need to convert it into a format Powerstrip can understand. I'm sure there are tools that would reformat the raw EDID data for you, but it only takes a minute to do it manually. Open the file in Notepad, and find and replace all the commas with spaces. Then put 16 of the two character pairs per line, each separated by one space. Make sure you delete any empty space from the end of each line. Save that file as whateveryouwant.txt, and launch Powerstrip.
Powerstrip lives in the system tray of your Windows machine and does a ton of useful stuff. To get to the EDID writing bits, right click on the tray icon, go to Options, and select Monitor Information. Under options in the lower left corner of the window, you should see a drop down that defaults to "Read data from registry". Click that and go to Update EDID. Powerstrip will prompt you for the PIN you got from Entech's support team. Once you've unlocked EDID upload mode, you'll need to point Powerstrip to the file you just made, and select upload. If everything goes well, you can power down your system and unplug your monitor before turning your monitor back on and rebooting your PC.
What if this doesn't fix your EDID problems? It's possible that your monitor is actually broken, but if you're seeing something onscreen, it's more likely that your EDID EEPROM isn't writable. To make your EDID info writeable, look for a feature called DDI/CI in your monitor's on-screen menu. In order to make my monitor's EDID writeable, I had to dig into the service menu, so it's probably worth investigating that too. If none of this works, you may have to call a professional monitor repair service, dig deeper into these articles.
So that's it. I managed to fix my monitor. Hopefully this will help other people who've had similar problems.