The Motherboard Crapshoot

Prologue

I've been working hard to come up with a pithy phrase to describe this whole mess. The best I've come up with thus far is that selecting a motherboard is a complete crapshoot. I used to think that it mattered from what vendor one purchased components. You can always trust BMW or Mercedes Benz to make great, albeit terribly expensive, cars, right? So shouldn't the same sort of thing be true for at least some vendors in the computing industry?

Perhaps it is in certain market segments. When it comes to complete systems, for example, I've never had any major troubles with a Dell computer, whereas I've had all kinds of grief with Gateway. Similarly, when it comes to hard drives, I've had very few problems with products from Maxtor, whereas I've had all kinds of grief with Western Digital. When it comes to motherboards, though, it seems impossible to trust even one vendor as my latest tale of technological terror demonstrates.

No Keyboard Detected

Blaming the KVM

The whole fiasco began when I decided to check email. What was I thinking, eh? It was around 23:30 hrs. on Sunday, September 28, 2003, and I was going to head off to bed. I wanted to check if I had received a reply to an important message, however, and since my main desktop system was powered down I used my KVM switch to use our house server instead. I've written previously about the hassles of a KVM switch, but it's a very handy device once it's working properly.

I was surprised to find that the server seemed to be locked up, or at least that the mouse and keyboard didn't seem to be working. The computer might not have been locked up, in retrospect, but I have no way to know. I had used the server roughly 2.5 hours earlier, and it was working just fine then. Still, I figured I was probably seeing one of Windows XP's many silly glitches, so I simply rebooted the system.

My surprise deepened when the server gave me that wonderful error: "No Keyboard Detected. Press <F1> to Continue." Again I ask: when the hell are BIOS developers going to wake up and realize that it's impossible to press the F1 key when no keyboard is present? Hmm? This is quite possibly the stupidest error message in the entire history of computing, and I'm still getting it almost 25 years since the birth of the IBM PC.

Anyway, I figured it was likely the fault of the KVM, so I pressed its button to switch from one computer to the next. My thinking was that maybe there was some kind of little glitch that was preventing the keyboard from being recognized. My surprise deepened all the more when the KVM seemed to be "locked up"; i.e., it wouldn't switch from one computer to the next. Nothing happened when I pressed its button. I've never seen it do that before or since.

I decided to investigate a bit further, despite the lateness of the hour, and I powered up my desktop system to help in the process. I was able to determine pretty quickly that the KVM switch wasn't at fault. Once I pushed its button to switch to my house server, it would be stuck there until the house server was powered down. If I then powered down the house server, however, I could switch back to my desktop system and use the keyboard and mouse without any trouble. It seemed that the server was somehow messing up the KVM, which was working otherwise.

Blaming the Motherboard

After exonerating the KVM, I started monkeying around with the server again, this time plugging my keyboard directly into its keyboard PS/2 port. Unfortunately, that didn't change anything; the server still wasn't recognizing the keyboard. What's more, it didn't make any difference if I switched keyboards. I had no less than three different keyboards sitting around in my office, and none of them worked with the house server. Now I was getting somewhere. The data taken suggested that the motherboard in my server, an old ASUS P3V4X, had given up the ghost with respect to its keyboard PS/2 port. Because it was late, I decided that I would try again in the morning and headed off to bed.

Sadly, the problem was still with me the next morning, so off to Fry's Electronics I went. I was originally hoping that I could acquire another Pentium III motherboard as a replacement, preferably one that would take the old PC-133 SDRAM RAM that my server had been using. Unfortunately, though not surprisingly, I was out of luck; Fry's no longer carries any motherboards for the Pentium III. They still carry the heatsink/fan combos, mind you, for I had just bought a new one for my server when the old unit failed the previous week (naturally). Little did I know that the motherboard was going to fail a week later. I could have saved myself $24.95. Oh well, there's always EBay, I suppose.

At any rate, Fry's carried only one model of motherboard that could make use of my old PC-133 memory, and since I was initially trying to get my server back up and running "on the cheap", the $50 price tag for a new ECS K7S5A Pro motherboard was just fine by me. I also selected an Athlon XP 3000+ CPU, figuring that I could put that into my desktop and hand down its Athlon XP 2400+ CPU to the server. After paying for my purchases, I headed back home, confident that I could have it hooked up and running pretty quickly.

The Motherboard Hokey Pokey (Again)

Unfortunately, God, Satan, fate, or whoever/whatever it is that makes my life a living hell where technology is concerned was dead set against me. I got home, swapped out the server's motherboard with the new ECS K7S5A Pro, hooked it up, applied power, and just about lost my cool completely when I found that the new motherboard couldn't detect any of my keyboards either! Seriously, I tried all three of the keyboards in my office (a Microsoft Internet Keyboard, a Microsoft Internet Keyboard Pro, and an old generic AT-style keyboard), but not even one of them worked with it.

I started this whole adventure the previous evening by blaming the KVM, but it still worked with my desktop system. From there I moved on to blaming the keyboard, but all three of my keyboards worked with my desktop system. My next step, naturally, was to blame the motherboard, but the problem still remained even after switching motherboards. So what the hell could possibly be causing the problem?! Could some other component in the system be at fault? How couldn't it be something else? After all, the problem remained even after swapping motherboards.

I spent the next several hours practically tearing my hair out in frustration trying to figure out what the problem could really be. For sake of testing, I reduced the system to the most minimal set of components that would boot. Then I swapped out components one at a time to see what was causing the problem. Changing CPUs made no difference. Changing heatsinks/fans made no difference. Changing out the spacers that hold the motherboard in place made no difference. Changing video cards made no difference. Changing memory made no difference. Nothing seemed to make any difference.

This wasn't making any sense. How could it be that I was having the same keyboard problem with both the old and new motherboards, no matter which known good components I used? Could it be the case itself somehow? I tried swapping out power supplies, but that made no difference. I even went so far as to remove the new motherboard from the server case completely, holding it suspended in mid-air via non-conducting plastic so that there could be no shorting or anything like that. But even that made no difference. A friend, with whom I was instant-messaging during this entire process, was just as incredulous as I was.

I remembered that I had one more keyboard in the house, an old Memorex MX-2500 attached to my wife's computer, so I decided to try it just as a lark. I plugged it into the keyboard PS/2 port and was surprised to see its lights flash at startup. That was more than any other keyboard had done. It still wasn't detected or usable, mind you, but its lights did flash. After a bit of fiddling, I discovered that I could get it to work properly if I would insert its connector with great force into the keyboard PS/2 port. If I inserted it with typical (i.e., very little) force, it wouldn't work, but if I really jammed it in there, then it worked just fine.

Hmm... Maybe it was just a problem with a flaky connection? That was what I figured, so I carefully cleaned every connector. I even cleaned all of the surrounding area in the system case. It was a little dusty in there, so I thought maybe that had somehow contributed to the problem. Sure enough, after I was done cleaning I could connect the MX-2500 keyboard with typical force, and it would work just fine. I mentally chastised myself for letting the server's interior get so dirty and plugged in the regular keyboard to make sure I'd solved the problem.

My jaw just about went through the floor when it wouldn't work, no matter how hard I jammed its connector into the keyboard PS/2 port. Yes, dear reader, this bizarre and seemingly inexplicable behavior was 100% repeatable. I plugged all four keyboards into my desktop system to test them, and all four worked just fine. I plugged all four keyboards into my server, and only the MX-2500 was even detected. If anybody out there can provide a rational explanation for this I would really love to hear it, for I have none. It's really difficult for me to understand how only one of four known good keyboards should work; either none or all should work from what I understand of computers and keyboards.

No Memory Detected

Back to Fry's We Go

So what was I to conclude? The only rational conclusion I could come up with was that I had somehow managed to be "lucky" enough to get a motherboard that just happened to have a problem almost exactly the same as my original motherboard. But how could I take that seriously? The odds of something like that happening would have to be positively enormous.

Nevertheless, I decided that I was going to make another trip to Fry's and buy a second, new motherboard. I also decided that I might as well buy some other components and upgrade the server while I was at it. I was obviously going to be fighting the problem for a while, and I figured the final system should be worth the effort. Besides, our server had performed nicely for my wife and I since I built it back in 2001, and some of its components were getting a bit long in the tooth. I knew it needed some extra hard drive space, and I figured it could probably use a bit more memory as well.

Because I had recently played the motherboard hokey pokey with my desktop system, culminating in its upgrade to a Gigabyte GA-7N400 Pro, and because its new nForce2-based motherboard has been a huge improvement over previous VIA-based boards, I decided I would stick with a proven winner. Fry's had the new revision of that board available, so I selected a Gigabyte GA-7N400 Pro2 and two 512 MB sticks of PC-3200 DDR RAM. I figured I would put the new memory and CPU into my desktop system and use its two 512 MB sticks of PC-2700 DDR RAM and Athlon XP 2400+ CPU in the server. That way, my desktop machine gets a nice boost while the server gets what it needs.

While I was at Fry's, I also bought a brand new case just to be safe, another Antec Plus 1080 AMG to be precise, a Sony DVD drive—though it might be hard to believe, our house server has never had its own CD/DVD drive—and even an extra keyboard, just in case further testing required it. I headed home with a lot of new stuff, hoping that I would yet be able to resolve my problem before nightfall. I'd already had nothing but success with the previous revision of that Gigabyte motherboard, so I expected everything would go smoothly.

One Long Beep

Once home, I discovered how fortunate it was that I bought a new case. Why, you ask? Because my server's power supply did not provide the special four-pin +12V power connector that so many motherboards expect these days. In short, if I wanted to keep using my old case, then I was going to have to go buy a new power supply or yet another motherboard. For sake of simplicity, I decided I would proceed for the time being with the new Antec case. After all, they are really nice cases, and I would have spent about half its price to replace the power supply in the old case anyway.

So, I installed the GA-7N400 Pro2, hooked it all up, applied power, and... BEEEEP (pause) click click (pause) BEEEEP (pause) click click (pause) BEEEEP... Lather, rinse, repeat. How lovely. I was getting one long beep followed by a few seconds of silence, a couple of clicks, and then the cycle would repeat for as long as I left the power connected. Given my many experiences with motherboard hell, I knew immediately what one long beep meant: either the memory wasn't being detected, or it was bad.

It seemed pretty unlikely, of course, that I could have gotten two bad sticks of memory from Fry's. After all, I had already managed to get a motherboard that had almost exactly the same problem as my original motherboard; the odds had to be in my favor by now, right? Well, yes and no. When I tested the new memory in my desktop system, I was relieved to see that it worked just fine. But the odds clearly remained against me insofar as none of the memory seemed to work in the new server.

Isn't that just peachy? The payoff from all my hard work thus far was that I managed to exchange my bizarre and seemingly inexplicable problem with keyboards, working with one machine but not working with another, for an equally bizarre and seemingly inexplicable problem with memory sticks, working in one machine but not working in another. Oh how wonderful technology is these days.

To be sure, I know that new motherboards can have various compatibility problems. So I decided to do some pretty methodical memory testing to determine whether any of my modules would work with the GA-7N400 Pro2. I first tried all possible combinations of two sticks, using both the PC-3200 and PC-2700 variety. I also tried each of the PC-2700 sticks in each of the four DIMM slots.

It was only when I eventually tried one, particular PC-3200 stick in the third DIMM slot that I got a working memory configuration. Isn't that odd? Isn't it odd that my older, more reliable PC-2700 memory wouldn't work at all, but the newer, cheaper PC-3200 memory would? Just for kicks, I tried the other PC-3200 stick in the third DIMM slot, but it didn't work. It did behave differently, insofar as the system didn't let out the one long beep with that configuration, but the system never got beyond its power-on self test (POST). It sat there doing nothing. Obviously, that's not a solution.

Goodbye, V770

To continue, it's worth asking: how did I know when I had found a working memory configuration? That's simple, dear reader: I knew I had a working memory configuration when I started getting a different error! (sigh) With that one, apparently special PC-3200 stick in the third DIMM slot, I would then get one long beep followed by two short beeps. Obviously, that's not a solution either, but at least I wasn't having memory errors anymore, right? (sigh)

For those fortunate souls who don't have all the BIOS error codes memorized, a long beep followed by two short beeps is a sign that something is wrong with the display adapter. Until this whole mess started, I had been using a Diamond Viper V770 video card, which is based on the old TNT2 chipset. It had worked fine for years because a normally headless server doesn't really need much in the way of video power. After some further digging, however, I discovered that the new GA-7N400 Pro2 motherboard doesn't support any video card operating at slower than 4X AGP. In contrast, the V770 is set to 2X AGP by default.

In the plus column, the V770 has a convenient jumper that may be used to select 4X AGP instead. In the minus column, though not surprising given my luck, I still couldn't get it to work. No matter what I did, the system was now giving me one long beep followed by two short beeps. By now I was pretty tired of this whole situation, so I decided it was time to say goodbye to the V770. I tossed it into the trash and temporarily poached my ATI Radeon 9700 Pro from my desktop system for further testing.

Goodbye, GA-7N400 Pro2

With a newer video card in place, I could finally get the GA-7N400 Pro2 to complete its POST. I wasn't surprised to find that the board was using the initial revision of the BIOS, F1. A quick check of the company web site from my laptop—every time I have such ridiculous problems I thank God I have several computers—showed that the fifth BIOS revision, F5, had just been released a few days ago. Since some of the BIOS updates were supposed to correct memory compatibility problems, I figured I should update my board's BIOS and give it another go.

Thus, I downloaded the update file and used my laptop to put it on a floppy disk. One great thing about Gigabyte boards is that they have the ability to update their BIOSes right from within the BIOS itself! I didn't even need to have a bootable floppy; I could simply update directly from a file on any floppy disk. That feature, coupled with the dual-BIOS feature, gives Gigabyte a real edge in terms of its BIOS in my book. But I digress.

Unfortunately, the F5 BIOS made no difference. I resumed my memory testing after the update, but I didn't find any additional memory configurations that would work. In light of everything I had seen, I decided the GA-7N400 Pro2 simply wasn't trustworthy. If a board is that flaky about memory, it's not a board I want to have in one of my systems. Since it was already close to midnight, I knocked off for the day and vowed to go back to Fry's a third time the next day.

Seven!

Which brings us to today. As planned, I headed to Fry's first thing this morning, and I bought yet another motherboard, an MSI K7N2 Delta-L, along with a new video card for the server, a Gainward GeForce4 MX 440. The former was cheaper than the Gigabyte board by about $30, and the latter was the cheapest, least powerful video card Fry's had to offer. It would have been nice, I suppose, to find a motherboard with on-board video, but how would I ever know what to pick? It's not like there's any rhyme or reason to what works and what doesn't.

After paying for my third set of purchases, I headed back home, swapped out the GA-7N400 Pro2 for the K7N2 Delta-L, hooked everything up, applied power, and... it worked the first time! Yes, folks, after the better part of two days' efforts, more than $1,000 of equipment purchases (about half of which I'll return later), and piles and piles of crap around my office, I had finally rolled a seven in the great motherboard crapshoot. My new server first came to life around noon today, and since that time I've been getting it configured. I've installed Windows XP on the new hard drive, connected the old hard drive, got the DVD drive installed and working, and I'm now copying all the important files from the old hard drive to the new hard drive.

I've got a lot of configuration work yet to do, but the basic hardware and software seem to be working just fine. My very great hope is that by the end of today, I will again have a house server up and running. Without it, my wife and I have no access to email, our files aren't being backed up daily, our laser printer isn't available, etc. Let's just hope my "luck" doesn't come back to visit me again any time soon.

Epilogue

So here's the question: what lessons can I draw from this whole mess? Here's one that I'll call Phil's Law: any substantive computer problem will require a minimum of four trips to Fry's Electronics. Once I'm sure everything is working, I'll make my fourth trip to Fry's to return all the stuff that didn't work. No doubt, that's what I'll be doing with my morning tomorrow.

The far sadder conclusion, I think, is that buying a motherboard is a crapshoot, plain and simple. I've been avoiding that conclusion for some time now, trying desperately to categorize vendors as being good or bad at making motherboards. But that's clearly not the case. For any given vendor, some motherboards are lemons while others are great, and there doesn't seem to be any rhyme or reason to it all.

For example, I had nothing but nightmares with an ABit KT7A-RAID when I originally built our server. I promptly replaced that board with an ASUS A7V133, which worked much better. That experience led me to believe that my prior woes with an ASUS P3V4X might have been a fluke. Later on, however, I had problems with the ASUS A7V133, which led me to replace it with a Gigabyte GA-7VAXP. Just recently, that GA-7VAXP failed strangely, and I went through hell with the motherboard hokey pokey until I had great success with a Gigabyte GA-7N400 Pro instead. Over the last two days, however, I've found that the new revision of that board, the GA-7N400 Pro2, is an incompatible nightmare where memory is concerned.

So where does all of this leave me? Sure, the K7N2 Delta-L has worked just fine for me today, but for how long will that last? Will I find myself writing next month about how it too has failed? Only time will tell. Is there even one motherboard vendor out there who consistently makes high-quality, broadly compatible products? It sure doesn't look like it to me. Buying a motherboard is simply a crapshoot, folks, and that sucks.

09/30/2003