Wi-Fi doesn't work after Windows 10 To Go shut down: How to reset the wireless card
Do you do Linux/Windows dualboot or run Windows To Go? Did Windows screw up your wireless card? Here's a tip on how to fix it.
- Turn off the PC, unplug everything (mice, displays, …).
- Unplug the power supply from electricity.
- Hold the main power button for full 60 seconds and pray to your favorite god.
- Then plug everything back and turn the PC on.
Intro – How I got into the trouble
For a long time, I didn't need Microsoft Windows at all, even for gaming. But recently, I wanted to play Metro Exodus Enhanced Edition which requires DirectX 12. I managed to get the non-enhanced version running under my Kubuntu 22.04 with DX11, but I that wasn't enough for me and getting DX12 to work under Linux hurts too much, currently. And I don't want dual-boot per se, because (among other things) installing Windows after your Linux OS is up and running is notorious PITA.
Fortunately, there's a To Go edition of Windows 10 (no, it works fine despite what the docs page says; see also installation instructions). Its concept is somewhat similar to running a Linux image from a USB drive, but it has its specifics.
The main difference from Linux live USB is that once you run thru the whole Windows setup, you have a functioning version of Windows on a separate drive and the installation can't touch your boot sector, hence not dual-boot per se. You just plug in the drive with Windows 10 To Go, select it as a boot device (in Grub, your boot menu, or in BIOS/UEFI), and you're running Windows. Everything is saved to the external drive so it behaves like a genuine installation until you plug it off and have your PC back safe.
After I happily played for a couple of hours, I wanted to turn off the computer. So I hit Start > Power > Shut down, computer turned off, I plugged off the Windows external drive, and all seemed good. Then I booted my main Linux system… can't find the Wi-Fi? What? It worked fine before turning the Windows thing on, and even on Windows To Go, it worked fine.
Soon, I found out that my Linux system doesn't see the wireless (Wi-Fi and Bluetooth) card at all. So I went back to Windows 10 To Go, just to find that it doesn't see the card either.
No amount of reinstalling the generic drivers helped. Didn't matter how deep into the decades-old cobwebs-filled dungeons of the Windows system I dug. The issue is somehow connected to the Fast Startup feature in Windows 10. However, officially, this feature isn't on in Windows To Go, and as such, you can't disable it.
Fortunately, the Ethernet card for UTP cable with RJ-45 worked fine, as did everything else. This problem concerned only the wireless card on my Gigabyte Aorus Elite AX AMD X670 motherboard.
After 7 hours (!!) of googling and trying to find a software solution, I found an old forum post that saved me from reinstalling everything (which would, likely, not help at all).
Hardware-reset the wireless card
- Turn off the PC.
- Unplug all the peripherals (mice, keyboards, monitors, everything).
- Unplug the power supply (PSU) from electricity.
- Push and hold the PC's main power button for 60 seconds (yes, full 60 seconds, use stopwatch, seriously).
- Plug everything back in and pray to your favorite god.
It has to be full 60 seconds or a bit more, not less. That's why it's a good idea to use stopwatch.
After you turn on the computer and boot up your system (doesn't matter which, this became firmware issue once you turned of the Windows for the first time), your wireless card should work fine. I had to reinstall the GPU drivers on my Linux, but that was a piece of cake after a day like this.
Turns out that holding the power button for 60 seconds while the PC is without electricity resets the wireless card. Yes, it's similar to those 5 seconds you can use to kill your running PC and it seems it's similarly universal.
How to avoid the problem in the first place
You can use restart instead of shutdown and turn of your machine during the boot sequence. Restart in Windows is something else than shutdown and it won't break you anything (most likely, couldn't test it – see below).
It's also worth noting that I wasn't able to reproduce this again. Once I went thru this hell, I can turn off the Windows thing and nothing breaks. But to be on the safe side, I used the restart workaround for a couple of months before I gathered the courage to try the "proper" shut down.
I hereby apologize to the author of the aforementioned post that saved me, for not linking the post here. I didn't save the link and can't find it back now. Now that I know that holding the power button for 60 seconds is actually a thing, I can find some posts mentioning it, too, but not the original post that helped me (and was meant to help fix the issue for some Lenovo laptop).