Category Archives: Device drivers

Clearing X-Rite Error Proves Interesting

I’ve got a terrific new loaner unit from Lenovo, a P16 Gen 3 Mobile Workstation. I’m still learning my way around this powerful beast of a laptop, as I discovered this morning. After login, I couldn’t help but notice that the built-in X-Rite Color Assistant failed — namely it opened a dialog box that told me the app couldn’t run because of an “unexpected error.” Mildly disturbing, and not terribly informative. Indeed clearing X-rite error proves interesting, as I first try–and fail–to fix the app through a basic uninstall/reinstall maneuver. Then I notice something…

Why Clearing X-Rite Error Proves Interesting

While I was checking over the P16 Gen 3 for clues, I noticed that Lenovo Vantage had a new firmware update pending. “Hmmm,” I wondered: “Maybe a firmware update (and reset) will also make X-Rite happy?” I quickly installed same (and then waited for the usual update process to grind to completion, and the post-install reboot to finish).

Guess what? The firmware update did the trick! After the reboot, I was able to launch the X-Rite Color Assistant. And it turns out it’s a “background app” on that Lenovo model (which uses a software or virtual color control, because the unit lacks a built-in color sensor). So I had to go through the Notification area, and right-click on the app to get it to open.

Below, you can see the About info from the app itself. According to Copilot, the UEFI/firmware refresh helped to bring X-Rite back to life because it resets the basic runtime environment, including the GPU to system connection. Good to know!

After a quick UEFI reset, X-Rite Color Assistant ran without error.

Here in Windows-World, the right ingredients for a happy and working laptop include the underlying firmware and drivers, as well as the OS and its software. Luckily for me, by fixing the lowest level stuff, the higher-level app came back to life. I’ll count this one as a win.

Facebooklinkedin
Facebooklinkedin

DDU Fixes GPU Driver Disasters

Today’s blog post is a paean to a tool named Display Driver Uninstaller, popularly known as DDU. It’s long been part of most Windows admin and power user toolboxes. DDU comes from Wagnardsoft, but well-known 3rd-party mirrors also include Guru3D and TechPowerUp. DDU remains a useful tool at completely replacing GPU drivers and their Windows infrastructure when graphics go wrong. It’s also a great way to switch from one GPU type to another. Say, from NVIDIA to AMD, or vice-versa, or even from one of them to Intel ARC. TL;DR version: DDU fixes GPU driver disasters and lets you switch types with little muss or fuss.

Why Say: DDU Fixes GPU Driver Disasters?

Over the past 9 days, we’ve seen an unusually fast series of NVIDIA Game-Ready GPU drivers (with one evanescent Studio driver on February 26). That Thursday saw both versions make an appearance that provoked immediate issues and outcry; version 595.59 was withdrawn less than two hours after its release.

Then on Monday, March 2, NVIDIA fired off Game-Ready version 595.71. Users soon began reporting diminished performance from this driver (especially for certain, GPU-intensive games). Further inspection (using tools like GPU-Z) observed that it imposed voltage caps on RTX 50-series GPUs to limit damage potential. At the time, I wondered if this wasn’t like putting “chewing gum on top of baling wire” to fix things.

On March 4, 2026 (Wednesday), NVIDIA dropped a hotfix to address these issues, in the form of 595.76. It addressed the voltage capping, and a variety of other game-specific glitches and gotchas. Since then, things on the NVIDIA Game-Ready driver front are steady, if somewhat uneasy. This is the first time in YEARS that the company has had two unstable Windows Hardware Quality Labs (WHQL) designated drivers follow in quick succcession.

Rollback Versus Deep Cleanup

So far, users have been able to recover from these updates without lingering issues. In the past, GPU driver glitches have resulted in black or stuttering screens, serious and ongoing display disturbances (aka “screen artifacts”), driver store damage, or bothersome system or GPU installer instability or crashing. When those things happen, that’s when DDU comes into its own. It cleans up all of the old GPU driver stuff and gets rid of whatever’s causing problems, then lays down a brand-new, clean and (hopefully) reliable replacement runtime to get your GPU(s) working properly once again. Hopefully, it’s obvious this capability also makes DDU excel at “out with the old, in with the new” actions when switching from one GPU type to another.

Did the recent NVIDIA debacle call for DDU? No it did not. I personally observed that the rollback facility in Device Manager took my system back from 595.59 to 591.74 (Studio). Other users have consistently reported that Game-Ready drivers also rolled back successfully as well (591.86 in most cases).

Even though this latest spate of Game-Ready drivers has caused some commotion, it hasn’t seemed to cause much need for DDU. Not this time around, anyway. But it’s good to know that DDU is out there should you need it. Or should you be switching from one GPU type to another. Here in Windows-World it’s better to have such tools and not need them, than to need them and not have them!

Facebooklinkedin
Facebooklinkedin

CPU Changed Boot Warning Nightmare

This morning I noticed external audio wasn’t working on my Flo6 desktop. I quickly went down a rabbit hole with audio drivers and such. Along the way, through a series of a half-dozen reboots, I noticed the fTPM “CPU changed” message kept popping up. At first, it was mildly annoying. But when it kept repeating I found myself stuck in a “CPU Changed” boot warning nightmare. How to escape?

Note on an AMD mobo fTPM is a firmware Trusted Platform Module, which resides inside a Platform Security Processor on the mobo. It provides the same functions as a discrete hardware TPM. It’s been bugging me lately, as I will relate…

Ending the “CPU Changed” Boot Warning Nightmare

Interestingly, the fTPM “CPU changed” message can appear even when the CPU has not been replaced. It shows up when the firmware detects a mismatch between the stored fTPM data and the state reported by the Platform Security Processor. This mismatch can happen during normal use. It can also happen after a firmware stall or a power loss. The message is confusing because it suggests a hardware change. In most cases, nothing is wrong with the CPU. The system is only trying to protect the integrity of the TPM state.

To say that Flo6 shows this message more often than other systems is an understatement. It happens a lot, and the reason is simple. Flo6 has a sensitive trust chain. It depends on the Platform Security Processor (PSP), the Embedded Controller (EC), and the BIOS staying in sync. If any part of that chain resets at the wrong time, the fTPM state can fall out of alignment. When that happens, the firmware cannot confirm that the stored TPM data belongs to the current system state. It then shows the prompt and waits for user input.

What Makes Flo6 My Problem Child?

This message appears most often after a forced shutdown. It can also appear after a firmware stall or a long power loss. If the system loses power while the PSP is active, the fTPM state may not save cleanly. On the next boot, the firmware sees the mismatch and stops to ask for confirmation. This is a safety feature. It prevents the system from using TPM data that may not match the current hardware state.

Flo6 also shows the message after a failed warm boot. A warm boot will not fully reset the PSP. If the PSP is left in a partially updated state, the next boot may not match the stored fTPM data. The firmware then shows the prompt again. This is why the message sometimes appears after a simple restart. The system is not failing. It is only trying to confirm the trust state.

Responding to “CPU Changed” with Yes

Choosing Y tells the firmware to restore the stored fTPM state. Choosing N tells it to discard the stored state. On Flo6, Y is usually the correct choice. It keeps the system stable and avoids repeated prompts. N is only valid when the CPU has changed. If the CPU has not changed, N can cause more trust state mismatches. It can also trigger BitLocker recovery if BitLocker is enabled.

The “CPU changed” message does not mean the CPU is faulty. It does not mean the BIOS is corrupted. Nor is the system unsafe. It only means the firmware wants to confirm the TPM state before it continues. Flo6 is more sensitive to this check because of the way its firmware handles power loss and warm boots.

That’s why I’m getting ready to swap the ASRock B550 Extreme4 mobo for an MSI MAG Tomahawk model. I read that its UEFI is more stable, robust, and less prone to fTPM mismatches. Here in Windows-World, an escape from the frying pan can lead into the fire. Fingers crossed that the upcoming rebuild ends this nightmare.

Facebooklinkedin
Facebooklinkedin

Thunderbolt 5: Video Good, Storage Bad

I finally laid hands on a Thunderbolt 5 NVMe enclosure this week. I shouldn’t have bothered, though I learned something important. Aping Alex Karras’s unforgettable character Mongo in Blazing Saddles, I have to say that for Thunderbolt 5: “Video Good, Storage Bad!” Let me explain.

Why Say for Thunderbolt 5: Video Good, Storage Bad

TLDR version: the channel is fast, but PCIe tunneling bandwidth peaks out at PCI 3.0 x4 levels. I tested a blazing fast Crucial T705 NVMe inside a brand-new Acasis TB501Pro NVMe enclosure (it cost me US$200+tax). It underperformed both the Samsung 970 EVO and the Crucial P3 NVMes I also tried out in that same box.

How can this be? Easy: The current TB5 controller generation from Intel — code name Barlow Ridge — includes a PCIe endpoint block that handles storage transfers to/from the TB5 USB-C port on the PC side of the connection. It’s hard-wired as PCIe 3.0 x4, which limits effective bandwidth for the link to somewhere around 3-4 GBps. Thus, there’s no real advantage in this generation of hardware in buying a TB5 NVMe enclosure.

Indeed, performance from a TB5 NVMe enclosure with a Barlow Ridge controller is the same as the USB-C port on my otherwise mind-blowing ThinkPad P16 Gen 3 laptop (which uses the same controller for TB5/USB4.0 v2). This isn’t going to get better until a next generation of controllers comes out, hopefully with a faster PCIe tunnel to boost NVMe access. This hardware doesn’t do what I wanted and hoped it would: offer 6-7 GBps speeds for external NVMe storage devices. That won’t change until Intel builds something faster for PCIe access.

In the meantime, save your money: you’ll get the same performance out of a TB4/USB4 NVMe enclosure as from this newer model, for around half the price. I’m sending mine back to Amazon, thankful for its “failed to live up to expectations” return policy. Sigh.

 

Facebooklinkedin
Facebooklinkedin

AMD Gets New Chipset Driver

Here I go again. I read this morning on Neowin that AMD had dropped a new version of its chipset drivers, including the B550 in my Flo6 and RyzenOfc desktops. Time for an upgrade! I found what I needed at the Chipset Driver Release Notes 8.01.20.513 page (a 62.5MB download named amd_chipset_software_8.01.20.513.exe). After applying that file, AMD gets new chipset driver upon reboot. What happened on my ASRock system was a little more vexing…and complicated. Let me explain…

After AMD Gets New Chipset Driver, Comes a Reboot

The UEFI on my ASRock B550 Extreme4 motherboard is a little tetchy. Whenever the firmware or drivers get touched (updated or replaced), it tends to hang on a black screen after a reboot intended to flush out old stuff and bring in new. Sure enough, that’s what happened after the AMD chipset installer fired off a restart with my express permission.

I had to do a deep cold start to bring the motherboard back to life. That meant:
1. Hold the power button down until the system turns off
2. Turn off the PSU
3. Hold the power button down another 10-15 seconds to discharge any capacative devices
4. Turn off, then unplug the power cord from the PSU
5. Wait 2-5 minutes for everything to turn itself completely off
6. Plug the PSU back in, turn on its power switch
7. Use the front power switch to start the PC back up
Fortunately, that worked and the unit came back to life.

Checking the Install

I’m learning to make doubly-darned sure that an update actually gets applied, thanks to some recent misadventures with Secure Boot. I visited Device Manager and made sure no yellow triangle warnings popped up, nor did anything appear under the always-annoying “Other Devices” heading.

At Copilot’s urging, I also checked the install dates for all of my AMD drivers. Copilot also confirmed that those dates matched the latest ones in the afore-linked release note (and hence, should be current).

I used this handy PowerShell one-liner to elicit the data shown in the next screencap:

Get-WmiObject Win32_PnPSignedDriver |   Where-Object { $_.DeviceName -like “*AMD*” } |  Select-Object DeviceName, DriverVersion, DriverDate

Here’s the resulting output:

After checking these against the release notes, reported dates = current dates.

It looks like the chipset update got properly applied. Copilot tells me other UEFIs will reboot after a chipset update without the 7-step polka the ASRock board needed. I wish I had another AMD system around here to verify that claim. But here in Windows-World we don’t always get what we want. Good enough for now, I guess!

Facebooklinkedin
Facebooklinkedin

So Long Samsung ML-2850

Over the weekend, I saw a story at Tom’s Hardware that reported MS is phasing out V3 and V4 printer drivers.  “Hmmm,” I thought, “I bet this means my 2009 vintage monochrome laser printer is included.” Copilot confirmed that it’s time to say so long, Samsung ML-2850. It runs V3 printer drivers and MS is halting support for same, like now.

Succession Plans After So Long, Samsung ML-2850

The printer still works fine. And it still works — for the time being, at least — with Windows 11. But it’s just a matter of time before it won’t work any more. That might hit as early as whenever 26H2 hits public release. Or it might last as long as 27H2. But its days are now officially numbered.

Here’s my plan: I’m going to use up the laser cartridge(s) I have at my disposal. When the ML-2850 runs out of toner, it’s toast. At that point, I’ll drop it off at Goodwill, where I routinely recycle my used electronika.

How long does that give this device to remain in use here at Chez Tittel? I might print 100 pages of output a month on this printer, max — probably less. So it could be 6 months or more  before I pull the plug and pack it off to Goodwill. Let’s see what happens, shall we?

But Wait, There’s More…

My Dell 2155cn is also facing obsolescence, but it qualifies as a V4 driver, not V3. So I’ve probably got another year or two before it, too, goes off to Goodwill for lack of driver support. What will I buy next? I’m thinking something like the HP M455dn, which is a low-end business class networked color laser printer that retails for US$550-800 depending on bells and whistles. Or whatever its equivalent may be when I exhaust my final set of CMYK cartridges for that printer (I’ve got a set of spares, and CMY all ahow 100% in the Dell Printer Hub’s toner status display, with B at 80%).

I’ve got at least 2 years left on that printer, it seems. Then, I’ll buy another. Interesting note: it will probably be the last printer I ever purchase, seeing as how the Samsung has lasted 17 years, and the Dell more than 13. It seems that obsolescence comes calling long before the hardware itself runs out. That was also the case for my Apple LaserWriter 1, purchased in 1985 and still running like a champ when I gave it away in 2005. For all I know, it’s still running today — that thing was built like a battleship.

MS Changes Its Tune (Added 2/25/26)

The news is out all over the place that MS is NOT dropping support for older V3, V4 printers and their drivers. Looks like they’re just limiting what OEMs can do to update or improve such drivers. The roadmap page that had promised deprecation is changed. At Windows Central, Zac Bowden quotes MS as follows:

“Windows has not ended support for legacy printer drivers. If your printer works with Windows today, it will continue to work, and no action is required,”

I guess that means this was a false alarm, of sorts. I’m still planning to retire the Samsung and Dell printers, and replace them. But the urgency is definitely dialed down. Change is the unvarying attribute of life here Windows-World. In this case, change is good!

Facebooklinkedin
Facebooklinkedin

Intel Graphics DSA Update Weirdness

It’s strange. I just got a notification on the Lenovo ThinkPad X12 Hybrid tablet that Intel DSA had 3 updates pending: Bluetooth, Graphics and Wi-Fi. Of the three, BT and Wi-Fi went swimmingly. The graphics update, however, hung in unexpected ways. That’s how I found myself fixing Intel Graphics DSA update weirdness minutes ago. The trick is fortuitous, as I’ll explain…

Overcoming Intel Graphics DSA Update Weirdness

I have kind of a built-in timer when it comes to waiting for Windows installs to finish up. If an installer shows a progress bar, and I see no progress at all for 5 minutes, I start getting antsy. At 10 minutes, I pull the plug and kill the installer to see what happens.

Killing an installer may take varying degrees of effort. The Intel Graphics installer was well-enough behaved to respond to the “close window” controls at its upper right corner. In other, more stubborn cases, I’ve been known to resort to Task Manager, where I’ll find and kill the installer process itself. Sigh.

Imagine my surprise when the DSA installer reported success in installing the new Graphics driver. Seems that their current installer had finished, but simply neglected to update the UI to report said progress.

As Luck Would Have It…

My impatience spurred me into doing exactly the right thing. I’ve had other Windows installers hang, where killing the installer meant I had to start over and install again. In some more extreme cases, I first had to clean up the leftovers from the hung installer before a new install would work. That’s where a tool like Revo Uninstaller (in “Hunter Mode”) can be helpful: if you can find a UI trace left behind –such as the DSA notification tray icon — you can use it to help you clean up.

All I can say is “Thank goodness no cleanup was needed.” Here in Windows-World, when things get messy, they can really suck up some serious time. I ran into that last Monday, when WinGet in my primary MSA got profoundly bollixed. Go figure!

Facebooklinkedin
Facebooklinkedin

Driver Upgrade Fixes 0xC1900101 Errors

I’ve seen it  before, and I’ll probably see it again. When I first ran the Beta Channel upgrade to Build 26220.7051 on Friday, it failed during the post-GUI install (aka SECOND_BOOT) phase . Basically, it hung at 10% complete for half an hour or longer, and I force-rebooted the X380 Yoga. When the rollback process completed, WU/Update History showed me an error in the 0xC1900101 range. From long experience I recognized this as some kind of device driver issue. Fortunately, a driver upgrade fixes 0xc1900101 errors. Let me tell you more…

Why Say Driver Upgrade Fixes 0xC1900101 Errors?

Alas, I didn’t record the exact error code string yesterday. I simply grabbed the latest version of Snappy SDIO from PatchMyPC Home Updater, and used it to upgrade the drivers on the X380. (TMI: That’s version R817, as far as I can tell.) This took about half an hour, give or take 5 minutes, and replaced 17 drivers.

The next go-round on the update process took quite  a while to complete (probably a bit over an hour). But it went all the way through, and resulted in a successful installation. The table you see in the lead-in graphic here comes from Copilot after I asked it to tell me about 0XC19001… Windows 11 install errors. It’s pretty informative, so I figured I’d share it.

Here in Windows-World, when a Windows 11 install goes wonky, it’s nice when prior experience retains its relevance for current troubleshooting. Again: I’m glad the tried-and-true technique for this kind of error code still works.

Facebooklinkedin
Facebooklinkedin

Intel DSA Remote Follies

OK, I found myself in a familiar pickle yesterday. I was working my way through the mini-fleet of PCs (10 units: 6 lappies, 4 desktops) here at Chez Tittel, doing updates and cleanup. I noticed the Lenovo Yoga AIO9i (Copilot+ PC with Intel Core Ultra 7 258, 32GB RAM, etc.) was hanging on the Intel Driver & Support Assistant (DSA). Half an hour in, I gave up and tried re-installing the app. Thereupon I got an interesting error “Cannot install a product when a newer version is installXXXX.” Only slowly did it dawn on me: I had a case of Intel DSA remote follies. Let me explain…

Going Local Fixes Intel DSA Remote Follies

As I figured out, my problem was not that DSA wouldn’t run, nor was it borked. My problem was that DSA didn’t want to run remotely. That is, it didn’t want to run to completion via Remote Desktop Connection from my primary desktop. I was updating the NPU and GPU drivers. So apparently DSA wants to do either or both of those things locally, not remotely.

Once I walked over to the AIO9i, rebooted, and re-ran DSA, everything worked just fine. I’ve noticed over the years that some driver updates work well remotely while others do not — or won’t work at all. On the plus side of this phenom, it always tickles me when DSA updates LAN or Wi-Fi drivers and the remote session dies briefly, then picks back up where it left off and the session resumes.

AFAIK, this issue with NPU or GPU is intermittent. Indeed I’ve never had a problem updating either built-in or Intel ARC GPU drivers remotely, now that I think back on Windows 11 era experiences. Thus, it must be something about NPU driver on a Copilot+ PC that occasionally makes DSA hang interminably.

But hey, it’s just another day’s work here in Windows-World. If you hang one way, you have to find a way to un-hang, and make the update some other way. And so it turned out, yesterday afternoon. Problem? What problem? Operator error, most likely…

Facebooklinkedin
Facebooklinkedin

Wi-Fi Kernel Dump Error Is Neutrino-Like

Here’s something interesting I’ve never seen before. The other day, I was trying to update the recently re-awaked ThinkStation P3 Ultra. Among the many items in the queue, through Lenovo Vantage, was an Intel Wireless LAN Driver. Indeed the same driver also showed up in the Intel Driver and Support Assistant. Despite repeated efforts through both facilities, the driver update always failed. This morning, I observed traces of those failures in Reliability Monitor. This Wi-Fi Kernel dump error is neutrino-like in that it registers in Relimon, but doesn’t diminish the Reliability Index (see the lead-in graphic).

More on Why a Wi-Fi Kernel dump error is neutrino-like

The error code in the Relimon details cite to the following string:LKD_0x41A1_Netwtw08!unknown_function. Online research tells me two useful things about this info:

1. It’s tied to Intel’s wireless driver (confirms what I’d suspected)

2. the LKD stands for Live Kernel Dump, indicating that Windows detected a hardware-related fault serious enough to provoke a snapshot of the error, but that it did NOT crash the system

The lack of a crash explains why Relimon imposes no charge on its Reliability Index even though the event is labeled “Critical” of type “Hardware error.” Shoot! I didn’t even know this was possible. Very interesting!

What About that Wi-Fi Driver?

A quick peek into Device Manager showed me that the Wi-Fi 6E AX211 160MHz driver was throwing a “device cannot start (Code 10)” error. Because both Lenovo Vantage and Intel DSA weren’t fixing things, I decided to go clean and start over. I right-clicked the device in DevMgr, then selected Uninstall from the pop-up menu. After a reboot, I visited the Lenovo Downloads & Software page, entered the Serial# for the P3 Ultra, and grabbed the latest Wi-Fi driver package. After installation, DevMgr obligingly reports that “The device is working properly.” Problem solved!

I figure when two update tools both choke on a driver, it’s time to remove the offending software, download, and try again. Here in Windows-World, even drastic measures need the added protection of “fingers crossed.” Thus, I’m glad that strategy worked.

 

Facebooklinkedin
Facebooklinkedin