Tag Archives: Surface Book

Clearing the Windows 10 external monitor cache

I bought a Surface Book on day 1 of its availability, 2 years ago this month. It’s been an excellent machine. I almost never use it with the clipboard undocked so I’m not sure I’d buy another one, but it’s been good.

Recently, though, it has developed a displeasing habit of failing to recognize external monitors. For example, last week when I was at Ignite, I had to borrow Richard’s laptop to do my product demos because mine wouldn’t talk to the monitor we had available. When I got back from Ignite, it was worse– I couldn’t use an external monitor either through the Surface Dock or the built-in DisplayPort. It didn’t matter what monitor or adapter I used, either. The only way I could make an external display light up was to undock the clipboard and plug the dock connector into it.

I tried a large variety of things to fix it, including updating the firmware on the Surface Dock, reverting to an older preview build of Windows, sacrificing a chicken, and loud cursing. Nothing.

Then I posted on Reddit. Within an hour or so, a user posted a link to this thread, and I found the magic solution. I unplugged the dock, deleted HKLM\System\CurrentControlSet\Control\GraphicsDrivers\Connectivity and HKLM\System\CurrentControlSet\Control\GraphicsDrivers\Configuration, plugged the dock  back in, and boom! The external monitor now works normally.

My theory is that a bug in Windows 10 and/or the Surface dGPU driver and/or Windows Insider upgrades caused the problem. I’m not really interested in figuring out the root cause now that I know how to fix it.

Hopefully this will help future generations who may have this same issue…


Leave a comment

Filed under General Tech Stuff

Removing a bad Windows driver, the hard way

From the “don’t touch what isn’t yours” department…

Yesterday I wanted to do some administrative chores related to a large stack of bills that were cluttering the dining room table. I grabbed my Surface Book from my laptop bag and plunked it on the table. My son’s Dell laptop was nearby, with his fancy Razer gaming mouse plugged into it. “Hey, free mouse,” I thought. I plugged it in to the Surface Book, opened it up, and went to get a diet Coke. By the time I came back, Windows and/or Razer had managed to install some kind of evil driver from hell™ that rendered every USB device plugged into the system inert.

That includes the built-in keyboard and trackpad, BTW, as well as anything plugged into the Surface Dock. The clipboard still worked great, though.

I tried rebooting and that didn’t help. Trying to search for a solution with just the on-screen keyboard slowed me down a bit, and I had other stuff to do last night, so I let the broken machine sit forlornly overnight and went back to it this morning.

The touch screen functioned normally, which was helpful so that I could open apps. When I looked at the “recent updates” list, I saw that a Razer device driver had been installed when I plugged the mouse in– but it was a version labeled as being from 2012. Why this happened, I don’t know. This was clearly the culprit… but Windows 10 doesn’t give you a way to remove an individual device driver update from the settings interface. Nothing relevant appeared in the add/remove programs list. There was no “undo the last update” button, and I didn’t have a recent backup. Device Manager didn’t show any driver at all for a Razer HID device of any kind… so back to the search I went.

First I tried installing Razer Synapse, their all-in-one utility. All that did was invite me to sign up for a Razer account. No thanks. Then I poked around various arcane parts of %systemroot% but didn’t find anything suspicious. Re-running Windows Update didn’t force a new version of the driver either.

To make a long story short, the answer is here: I had to run pnputil.exe -e to figure out which driver store package had the bad driver, then remove it with pnputil.exe -d -f. Once the offending driver was removed, all of my USB peripherals miraculously resumed their normal operation.

Moral of the story: don’t plug in your son’s gaming peripherals. Lesson learned.

Leave a comment

Filed under General Tech Stuff