All posts by Ed Tittel

Full-time freelance writer, researcher and occasional expert witness, I specialize in Windows operating systems, information security, markup languages, and Web development tools and environments. I blog for numerous Websites, still write (or revise) the occasional book, and write lots of articles, white papers, tech briefs, and so forth.

USB Cables Make Amazing Differences

A couple of weeks ago, I read an online item bemoaning the variations in USB cables, especially those with USB-C connectors on one or both ends. This weekend, I experienced this phenom for myself. I also learned that the right USB cables make amazing differences in speed/throughput.

In the lead-in screenshots above, CrystalDiskMark speeds for the same device appear at left and right. To the left is the US$26 Fideco M.2 NVME External SSD Enclosure – USB 3.1. It’s linked to my Lenovo Yoga X390 through its USB 3.1 port using the vendor-supplied cable. Inside is the Sabrent 1TB Nano M.2 2242 SSD I’ve been writing about a lot lately. To the right everything is identical except I used a USB 3.1 Gen 2 cable. It’s rated at “up to 10 GBPS.”

No Lie: USB Cables Make Amazing Differences

Why on earth would the equipment vendor ship such a POS cable with an otherwise capable NVME enclosure? Speed results for the in-box cable (right) versus a US$7 cable purchased from Amazon differ starkly. For bulk transfers, the Amazon cable is 10 or more times faster. For 4K random reads and writes (bottom two rows), it’s between 6 and 7 times faster for queue depth = 32. That drops to 2 to 3 times faster for queue depth = 1.

Clearly, this is a red flag. It tells us that faster USB-C cables can speed peripheral I/O significantly. It also indicates that one should know what kinds of cables to buy. I got the speed-rated cables so I could see if they did make a difference. Little did I know I would actually benefit greatly from this experiment.

Wrinkles in the Plug-n-Play Experience

The question with USB-C cables is not “Will it work?” Rather, it should be “How fast does it go?” I’ve just learned that big differences sometimes present themselves. Testing your devices is the only way to confirm what kind of performance you’re getting. In my case, it quickly showed me that a high-speed USB-C cable is a worthwhile expense.

FWIW, this experiment also  explained some of the cost differential between the US$26 Fideco unit linked above and the US$45 Sabrent units I also own. The latter ships with USB-C 3.1 Gen 2 cables that perform on par with the speed-rated cables I mentioned near the outset of this story. The NVME enclosures are more or less on par performance wise. That’s NOT true for the in-box USB-C cables, though. There indeed: you get what you pay for!


21H1 Attains Commercial Pre-Release Validation

A recent Windows IT Pro Blog post title reads “Windows 10, version 21H1 for commercial pre-release validation.” That means that users can update selected PCs to 21H1 using the enablement package to see what it’s like. The post raises interesting questions. “Do you want to see how quickly devices update from version 2004 or 20H2 to 21H1, and how little downtime is involved? Now you can!” And that dear readers is what 21H1 attains commercial pre-release validation means. Simply put: Check it out!

What If 21H1 Attains Commercial Pre-Release Validation?

The fine print reveals it’s still necessary that “select PCs” enroll in the Insider Preview program to partake of 21H1. Indeed, MS announced on February 17 the enablement package would go to Beta Channel Insiders. I’ve been running it on my Surface Pro 3 since then, to very good effect. The whole thing took under 5 minutes on that 2014-vintage PC (i7-4650U CPU, 8 GB RAM, Samsung 256 GB OEM mSATA SSD) from initial download, through installation, and back to the desktop. It ought to go faster on newer, more capable hardware.

Another Harbinger of GA

Of course, GA stands for “General Availability.” That’s when MS starts public release of a new Windows 10 version through official channels. If “commercial pre-release” is happening now, GA won’t be too far behind. This hasn’t always been part of the MS release sequence, but it is a definite signal that 21H1 is coming soon. In fact, I think it’s bound to appear within the next 30 days. I’m guessing Patch Tuesday, April 13 or somewhere thereabouts, is quite likely.

Typically, business users tend to follow one or two versions behind the leading edge. So perhaps this is really a signal they should be planning upgrades to 2004 (on the trailing edge) or 20H2 (on the leading one)? As with so much else on the Internet, things vary wildly from one organization to the next. I still keep seeing the screens at my optometrist’s office, with the Windows 7 lock screen on cheerful display…


A Tale of Two USB Ports

I’ve been troubleshooting a vexing M.2 2242 NVMe drive this week. If you look back over my recent writings here at, you’ll see this adventure has led me to some interesting places. Yesterday, it led me to recognize that not all USB-C ports are the same. I found myself confronting the profound difference that current-gen Thunderbolt support can make. Thus indeed, a tale of two USB ports follows.

Telling the Tale of Two USB Ports

On the one hand: a 2019-vintage Lenovo X390 Yoga. Its fastest USB port is described in its tech specs as “USB 3.1 Gen 2 Type-C / Intel Thunderbolt 3.” On the other hand: a 2021-vintage Lenovo X1 Nano. Its fastest USB port is described in its tech specs as “USB 4 Thunderbolt 4.” I must confess, I was curious about what differences might manifest between these two technology generations.

It made a significant difference. Thus the story’s lead-in graphic shows. CrystalDiskMark output from the Nano is on the left, the X390 on the right. It shows the speed-up varies somewhat. It is better than 2:1 on the big-transfer items (upper 2). But the more important random 4K reads/writes fill the bottom two rows. There,  we see 17-18% (read-write) for random with queue depth=1. That jumps to 42-50% with queue depth=32.

In practice, I believe it’s what allows the X1 Nano with an i5 processor to work much like my older i7-6700 on my desktop PC. It also makes the X1 Nano faster than the X390, despite an i7 on that older machine. I/O is indeed a  powerful performance factor.

Is USB 4 Thunderbolt 4 Worth Buying?

If you’re in the market for a new PC or laptop, you will get a performance boost from using the newer USB technology. If the ability to complete backups (and other big file transfers) twice as fast is worth something to you, factor that into the price differential. If better overall I/O performance of at least 18% in accessing peripheral storage has value, ditto.

Only you can decide if it’s worth the price differential. For me, the answer is “Heck yeah!” I’m not sure that means I’ll buy an X1 Nano. But I am sure it means my next laptop will have USB 4 Thunderbolt 4 ports.


Zen and the Art of USB Troubleshooting

Back in the 1970s, Robert Pirsig’s Zen and the Art of Motorcycle Maintenance made its debut. I was a year out of college, working in a somewhat technical job as an audio engineer at the Library of Congress. I devoured that book and many of its thoughts have stayed with me over the intervening years. None has stuck better than his discussion of the scientific method (that link goes to a reprint of that section). It always struck me afterward that when somebody wants to get serious about troubleshooting, it’s time to invoke the awesome majesty of “the formal scientific method.” That’s why I call this blog post, with tongue in cheek: “Zen and the Art of USB Troubleshooting.”

What Good is Zen and the Art of USB Troubleshooting?

Early in the cited section on the scientific method, Pirsig makes two great observations. First he says “Actually, I’ve never seen a cycle-maintenance problem complex enough really to require full-scale formal scientific method.” Second, he compares that method to “an enormous juggernaut, a huge bulldozer — slow, tedious, lumbering, laborious, but invincible.” As I’ve been troubleshooting a vexing issue with a recently-acquired Sabrent Nano 1 TB M.2 2242 NVMe SSD lately, I’ve had reason to revisit and ponder Pirsig’s thinking and  problem-solving toolset.

Here’s the Deal

Here’s the combination of the four-plus ingredients that go into my problem set:

  1. A Sabrent NVMe SSD enclosure, model EC-NMVE
  2. The Sabrent 1 TB Nano SSD, model SB-1342-1TB; for comparison I also have an M.2 ADATA XPG 256GB 2280 NVMe
  3. The USB-C  cable (with USB 3.1 female to USB-C male adapter) that Sabrent shipped with the enclosure
  4. The USB port on Windows PC into which I plug enclosure (1) using cable (3)

The only time I have problems with the enclosure is when the Sabrent Nano device is plugged in. It works reliably and constantly if I use the enclosure, its cable and the ADATA SSD. When the Nano is plugged in, however, the device goes offline if I leave it plugged in overnight. When I come into my office, the controller light on the enclosure is blinking constantly. At other times, and at irregular intervals, the device goes offline while it’s idle.

I take the constant blinking to mean the USB controller in the PC is trying — and failing — to handshake with the drive controller in the enclosure. If I unplug the device (either end) and plug it back it, it resumes working.

The scientific method tells me that you must vary only one item in a collection of possible causes for trouble at a time to determine which item is the actual cause. The only collection of the items listed in 1-4 above that causes a fault occurs when the Sabrent Nano is present. Therefore, the Sabrent Nano is the faulting item.

Filing a Tech Support Case

I’m going to use this article as the documentation for a tech support filing, and re-open my trouble ticket with Sabrent. I believe I have shown that the Nano is not working as it should be, and that it faults regularly. I am hopeful Sabrent will agree with my analysis, and send me a replacement SSD. I’ll keep you posted, and share their response(s) here. Stay tuned.

[Note Added 3/17 Afternoon]

Sabrent simply asked for a copy of the invoice (easy to retrieve from my Amazon order history) and the ship-to information. Let’s see how long it takes for a replacement to get here. Interesting, and satisfying, so far!


Interesting Partial 21H1 Component Store Cleanup

I’m running the Beta Channel Insider Preview on my Surface Pro 3. I just bumped it to Build 19043.899 thanks to KB5000842. Out of curiosity, I then ran the DISM commands to analyze and clean up the component store as shown in the lead-in graphic for this story. A final analyze shows interesting partial 21H1 component store cleanup occurred. Let me explain…

What Does Interesting Partial 21H1 Component Store Cleanup Mean?

If you take a look at some detail from the lead-in graphic then check the screencap below, you’ll see they show 7 reclaimable packages before clean-up. After cleanup, 2 reclaimable packages still remain behind.

Notice that 2 reclaimable packages persist, event after running the cleanup option.

Reclaimable packages persist after dism cleanup for one of two reasons AFAIK:
1. At some point, the user ran the /resetbase parameter in an earlier dism cleanup.
2. Something odd or interesting is going on in the component store, and dism can’t clean up one or more packages (in this case, two).

I don’t use /resetbase on test machines as a matter of principle. So something interesting and odd is going on here.

Another Try Produces No Change

Having seen this before on other Insider Previews (and production Windows 10 versions), I had an inkling of what would happen. I repeated the cleanup and got the same results: 2 reclaimable packages still show. In my experience, this means they’re “stuck” in the component store. What I don’t know is if taking the image offline and trying again would make any difference. What I do know is that this won’t change until Microsoft finalizes the 21H1 release for general availability (or issues a specifically targeted fix).

Trading on my connections with the Insider Team at MS, I’ll be letting them know about this curious phenomenon. We’ll see if anything changes as a result. My best guess is that this gets a cleanup as part of the final release work sometime in the next 2-3 weeks. That said, only time will tell. Stay tuned!


Strange Sabrent Rocket Adventures

Last Friday, I blogged about swapping out my review unit Lenovo Thinkpad X1 Nano SSD. I purchased a US$150 Sabrent Rocket Nano (Model SB-1342 1 TB). It replaced a Samsung OEM 512 GB SSD (NVMe PCIe 3.0 x4). Check the Friday post for details on performance, installation and so forth. Today, I’m writing about the strange Sabrent Rocket adventures I’ve had since taking that device out of the laptop. Frankly, it’s a continuing and wild ride.

Strange Sabrent Rocket Adventures: Drive MIA

First, I used Macrium Reflect to clone the original Samsung drive. Then, I made the swap, ran some tests and replaced the Sabrent with the original SSD. Things got intersting after I plugged the drive back into the Sabrent NVMe drive enclosure (EC-NVME). The drive was MIA: it showed up as 0 bytes in size and generated a “fatal device error” if I tried to access it. Ouch! I immediately reached out to vendor tech support.

Sabrent Tech Support quickly coughed up a link to a terrific tool, though. The name of the tool is lowvel.exe, and it performs a complete low-level format of the drive, zero-filling all locations as it goes. That turned out to be just what I needed and put the Rocket Nano back into shape where DiskMgmt.msc could manipulate it once again.

Then, I initialized the drive as GPT, and set it up as one large NTFS volume. For the next 12-14 hours, I was convinced this was a final fix. But my troubles are not yet over, it seems.

More Strange Rocket Adventures

The next morning, having left the device plugged in overnight, I sat down at my desk to see it blinking continuously. When I tried to access the device, it was inaccessible. It’s not throwing hardware errors to Reliability Monitor, but I have to unplug the device and plug it back in, to restore it to working order. Something is still weird. Temps seem normal and the Sabrent Rocket Control Panel utility (shown in this story’s lead-in graphic) gives the device a clean bill of health.

I’ve got an intermittent failure of some kind. I need more data to figure this one out. I’m leaving the Control Panel running on the test laptop where the Rocket Nano is plugged in. We’ll see if I can suss this one out further. It’s not inconceivable I’ll be going back to Sabrent Tech Support and asking for a replacement — but only if I can prove and show something definite and tangible. Sigh.

Info Added March 25: All Is Quiet

Who’d have thought a Sabrent NVMe enclosure and a Sabrent NVMe drive might be ill-fitted together? Apparently, that’s what ended up causing my intermittent failures. On a whim, I bought the cheapest NVMe enclosure I could find — a US$26 FIDECO USB 3.1 Gen 2 device — into which I inserted the Sabrent Nano SSD. It’s now run without issue, pause, hitch, or glitch for a week. I did not insert the device pad that normally sits between the case and the device (already present in the Sabrent enclosure). I’m inclined to blame some kind of heat buildup or connectivity issue resulting from an overly tight fit in the Sabrent enclosure, which I may have avoided in its FIDECO replacement. At any rate, it’s working fine right now. Case closed, I hope!


Swapping X1 Nano NVMe Drives

OK, then. I went and sprung US$150 for a Sabrent 1TB M.2 2242 NVMe drive at Amazon. It is depicted in the lead-in graphic above. The high-level sequence of events is as follows. Ordered on Wednesday, received and experimented on Thursday, reported on Friday (today). Alas, I seem to have hosed the drive and have started RMA negotiations with Sabrent. Along the way, I learned most of what’s involved in swapping X1 Nano NVMe drives.

Be Careful When Swapping X1 Nano NVMe Drives

As is almost always the case, there’s a YouTube video for that. It showed me everything I needed to do. Disassembly/reassembly were easy and straightforward. I had no mechanical difficulties. But once again, my US$7 investment in a laptop screws collection saved my butt. I mislaid one of the two NVMe holder screws (found it later during  cleanup). I lost one of the 6 battery restraint screws (fell on the floor into neutral brown carpet). Both were easily replaced from the collection.

Cloning Works, But Proves Mistaken

For whatever odd reason, the Sabrent drive shows up pre-formatted. The disk layout is MBR and the primary partition is ExFAT. Both of those got in my way as I cloned the original drive to the replacement. First, I had to clean the drive, convert to GPT, then format it as a single NTFS volume. Then, I used Macrium Reflect to clone the contents of the Samsung OEM drive to the Sabrent. Along the way Reflect told me it had turned off BitLocker and that I would need to re-enable it after boot.

Replacing the Samsung with the Sabrent, I went into BIOS and turned secure boot off instead. This let the X1 Nano boot from the cloned drive just fine. I was able to run CrystalDiskMark to compare their performance. Here’s what that looks like:

Swapping X1 Nano NVMe Drives.side-by-side

Samsung OEM results left; Sabrent results right. Best improvement where it counts most!
[Click image for full-sized view.]

What do these results show? Indeed, the Sabrent is faster on all measurements, and more so on the most important random 4K reads and writes (lower two rows). It’s not a night-and-day difference, but IMO the added capacity and increased speed justify the expense involved. It’s a good upgrade for the X1 Nano at a far lower price than Lenovo charges. Also, performance is somewhat better than what their OEM stock delivers.

Here’s a summary of performance row-by-row (count 1-4 from top to bottom):
1. Read speeds increase by <1%; write speeds by >28%
2. Read speeds increase by >7%; write speeds by >36%
3. Read speeds increase by  >52%; write speeds by >21%
4. Read speeds increase by >14%; write speeds by >51%

Where Did I Go Wrong?

Cloning was a mistake. I saw it in the disk layout, which showed over 400 GB of unallocated space. Better to have done a bare-metal backup using Reflect with their Rescue Media. Next time I’m in this situation, that’s what I’ll do.

Something untoward also happened when uninstalling the Sabrent drive. When I stuck it back in my M.2 Sabrent caddy (which fortunately handles 2242 as well as other common M.2 form factors), it came up with a fatal hardware error. None of my tools, including diskpart, diskmgmt.msc, MiniTool Partition Wizard, or the Sabrent utilities could restore it to working order. I suspect that removing the battery, even though the power was off on the laptop, spiked the drive with a power surge. It’s currently non-functional, so I hope my warranty covers this and I’ll get a replacement. If not, it will prove a more expensive lesson than I’d planned, but still a valuable one.


Insider Preview 19043 ISO Download Available

IMO, it’s always a good idea to have ISO files for Window 10 images available. That’s why I jumped on a chance to download the ISO file for Build 19043 from the Windows Insider Preview Downloads page. The 64-bit version of the file is 5,330,642 KB in size. On my GbE (nominal: actual around 940 Mbps) Internet link, it took about 5 minutes to download. Given Insider Preview 19043 ISO download available, you might want to grab one, too.

When Insider Preview 19043 ISO Download Available, Get one!

To access this page — and get the download — you must provide a valid Windows Insider MS account. Use it to login to the page. Once validated, navigate to the “Select Edition” heading, then choose the version of 19043 you wish to download. For the vast majority of readers, that will be the 64-bit edition.

In fact, according to PassMark Software’s latest (March 11) OS Marketshare survey, 0.45% of users run Windows 10 32-bit and 96.34% of users run 64-bit. That means 45 users in 10,000 run 32-bit whereas 9,634 of the rest run 64-bit. That is a vast majority, indeed!

More About the 19043 ISO

Interestingly, the 19043 ISO is 5,330, 642 KB (5.083 GB) in size. That means it’s too big to reside in a single FAT32 file (max size: 4 GB). To my mind, that makes for another good argument to use Ventoy (which puts ISOs into an NFTS volume) instead of having to split a too-big ISO into multiple parts to store on a bootable FAT32 partition.

I just checked, and a new Ventoy release appeared on March 6. Thus, I took the opportunity to upgrade my 256 GB Ventoy drive. I just copied this new ISO to it, too. It’s now sharing that space with 27 other Windows 10 (and other) ISO files. Good stuff!

Here’s a shout-out to Sergey Tkachenko at, who brought the ISO’s availability and location to my attention.


Might Wonky WU Presage Hardware Obsolescence

OK, then. Here’s an interesting story. After updating my 2012 vintage Lenovo X220 Tablet to Build 21327.1010 the Windows Update (WU) UI starting misbehaving. I’ve reported it to the Feedback Hub, with a screen recording to show what happens. This experience has me asking myself: might wonky WU presage hardware obsolescence?

Why Might Wonky WU Presage Hardware Obsolescence?

Built in 2012 and purchased in 2013 for a book on Windows 8, this system runs a Sandy Bridge CPU. It’s so old, it doesn’t support USB 3.0 natively (though I do have a plug-in Express Card that adds such capability). Simply put, the whole situation has me wondering if this old laptop is finally aging out of usefulness. I retired the companion system — a same vintage, same CPU T420 laptop — late last year because it was flaking out too often for everyday testing. Until this happened, the X220 Tablet remained a paragon of Windows support.

Here’s a short video (24 seconds) that shows very little, but enough for me to describe what’s wonky.

Normally, when you click the “Check for updates” button, the display changes to “Checking for updates” while the activity balls flow from left to right (and repeat until the check is complete). Next, if updates are available, the display reads “Updates available” while it installs them. When it’s done the display changes to “You’re up to date” with a timestamp to match. That final status info serves as the lead-in graphic for this story, in fact.

What Did Wonky WU Do Instead?

As you can see by playing the video, none of those display changes occur. I know the update is working because it grabbed and installed a Defender update when I tried it for the first time and that update shows under “Definition Updates” in Update History. That said, the usual animations (or status changes) that show WU is working are invisible on this PC. All that stuff works fine on my 2018 vintage Lenovo ThinkPad X380 Yoga (which has a Kaby Lake/7th Gen CPU).

Having reported the issue to MS via Feedback Hub, all I can do now is wait to see if it gets fixed. If it becomes a “new normal,” I may need to start retirement planning for my hitherto unflappable and unshakeable X220 Tablet. Sigh. That’s the way things go sometimes, here in Windows-World.

Note Added March 11, 2021

With the upgrade to Dev Channel Build 21332.1000, WU returned to “normal behavior.” But I did have to return to Advanced Sharing Settings/All Networks in the Network and Sharing Center. There, I had to turn off password protected sharing and turn on Public folder sharing. After a reboot,  RDP into the X220 Tablet worked again. This has been an on-again/off-again issue on this laptop for years. (A) it’s easily fixed locally, and (B) it seems to be a low-priority item for MS.

Finalley here’s a shout-out to Eddie Leonard (@DJ+EddieL). He told me the WU item was a known problem and would be fixed with the next build. He was spot-on, and I’m grateful.


Multiple Methods Clear Defender Threat History

First, an admission. I do occasionally use the CCleaner and the MiniTool Partition Wizard (MTPW) installers. Yes, I know they include “bundleware” elements that Defender flags as “potentially unwanted programs” (PUPs). In fact, until you clear the threat history and exclude that history from future scans, Defender keeps reporting them ad infinitum. Sigh. As I worked my way through a article yesterday on my Lenovo X390 Yoga I learned multiple methods clear Defender threat history. In fact, when none of the article’s methods worked for me, a spin on one of them did the trick.

[Note] The lead-in graphic for this story shows a Defender warning for a “potentially unwanted application” (PUA) from another bundleware instance. That one comes from the Unlocker program (it’s always been a little dicey, which is why I provide a MajorGeeks download link). Use at your own risk.

Enumerating Multiple Methods Clear Defender Threat History

The article is entitled “Windows Defender identifies the same threat repeatedly — how to fix?” It works readers through three separate methods:

  1. Delete the Service folder within the following Windows folder:
    C:\ProgramData\Microsoft\Windows Defender\Scans\History. This is where Defender keeps its logs and threat history info. There’s an alternate method based on Event Viewer described in the article as well to clear the history log.
  2. Prevent Defender from scanning the history file. This occurs in Manage Settings inside Virus & Threat Protection in Defender, under the Exclusions heading. By excluding the preceding folder specification, you stop Defender from repeating warnings based on its own history files.
  3. Clear Browser Caches: YMMV on this one, depending on the browsers you use. I’ll let you puzzle these efforts out for yourselves, from the help systems built into each browser.

As I said, none of the methods worked for me. What did work, was a variation on Item number 1 above. I was unable to delete the Service folder. It came back as “locked by Windows Defender.” What I was able to do, however, was to navigate within the Service folder and edit the history.log file using NotePad++ to delete its contents. I also found a series of two-digit-numbered folders with various history files inside (named 01, 02 and so forth) that I was able to delete (and did so).

After that maneuver, the annoying multiple repetitions of PUP warnings for the CCleaner (version 5.77) and MTPW (version 12.03) installers disappeared. I used Everything to check my systems and make sure the offending files were no longer present, too. It’s only the installers that include bundleware. Once deleted and flushed, they no longer pose any threat.

Concluding Unscientific Rantlet

It’s weird that Defender triggers PUA/PUP warnings from the contents of its own history file. Even when the files that legitimately trigger an alert on a Windows 10 PC are no longer present, the same alerts still trigger — repeatedly! My plea to the Defender development team is that they automatically exclude the history file from scans by default so as to further insulate users from this small but vexing gotcha.