Sometimes, a background in Embedded Systems can be useful in IT work.
Recently, a Logitech wireless keyboard at work was acting strangely. Before being moved to a new computer, it had worked flawlessly, but now was only responding intermittently (perhaps registering one keystroke in twenty — but always correctly.)
Since the wireless adapter plugged in to the laptop via USB and had been detected readily by Windows 7, it wasn’t likely to be a driver issue. (Keyboards usually don’t cause many driver problems in Win7.) The batteries had been recently changed, so that didn’t seem to be the problem. It was a classic case of gremlins.
The next step in troubleshooting was to narrow the problem down to what had changed. The computer had been changed, so that was one possible suspect — although an unlikely one, since the only connection to this computer was as a USB keyboard. The power connection to the wireless base was still plugged in securely and the base was getting power.
The only other change was that the PS/2 mouse connection, which had been connected but not in use on the older computer’s docking station, had been left unplugged on the new machine (which didn’t have any PS/2 ports.) Hmmm.
Plugging the PS/2 mouse connection back in to the old docking station (while leaving the USB keyboard connector plugged in to the new machine) made the problems go away: the keyboard started working perfectly. My guess, as an Embedded Systems geek, is that the processor in the wireless base was getting stuck in the “wait-for-PS/2-mouse-response” routine, and not processing the keyboard input. In Muggle terms, it realized that it no longer had a mouse port to talk to, and had gone off to sulk.
It works for now — while the old docking station is still there — but keeping an entire legacy docking station on a desk just to keep a wireless keyboard working properly is rather inefficient. Something tells me that there’s a PIC project to emulate a PS/2 mouse port in my immediate future. That should rank right up there on my list of weird projects.