Wi-Fi Replacement – Lenovo E14 AMD Gen 5

In the previous post, I’ve been looking at how well Ubuntu 22.04 runs on a Lenovo E14 AMD Gen 5 notebook that was released in 2023. It turned out that apart from a low volume microphone, the only other thing that didn’t work well out of the box is the Realtek Wi-Fi chip. I was hoping that in 2024 the Realtek drivers had matured and connectivity would be stable. And indeed, at first everything looked fine. However, after a few hours I moved the notebook to a new location in the house and the Wi-Fi dropped a few minutes later. A coincidence? Probably not. And by dropping, it wasn’t only dropping the connection, the PCI card completely vanished from the bus. The issue is known on the net, so it is not a local hardware issue, and there are no fixes suggested. Also, I wasn’t really in the mood to go bug hunting. So, I thought, let’s swap the Wi-Fi card.

Before I continue, let me give you some details about that card so you can either avoid buying notebooks with this Wi-Fi if you want Linux to run on it, or buy a better Wi-Fi PCI card and swap it. lspci reports the Wi-Fi hardware as follows:

02:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852

Now that’s not very descriptive but the Internet knows that this is a card with a Realtek 8852BE on it. The link before also mentions it as ‘working’, starting with Kernel 6.2. This is correct in a way, as it ‘does start working’, but the card fails after some time. Only a reboot can bring it back.

And here is what /var/log/syslog looks like when the PCI card vanishes:

Aug 21 09:49:46 wb kernel: [96772.752320] pcieport 0000:00:02.3: pciehp: Slot(0): Link Down

---> Aug 21 09:49:46 wb kernel: [96772.752326] pcieport 0000:00:02.3: pciehp: Slot(0): Card not present


Aug 21 09:49:46 wb kernel: [96772.775565] wlp2s0: deauthenticating from 2c:91:ab:b3:0b:a3 by local choice (Reason: 3=DEAUTH_LEAVING)
Aug 21 09:49:46 wb kernel: [96772.776417] rtw89_8852be 0000:02:00.0: failed to pre-release fwcmd
Aug 21 09:49:46 wb kernel: [96772.776557] rtw89_8852be 0000:02:00.0: timed out to flush pci txch: 0
Aug 21 09:49:46 wb kernel: [96772.776667] rtw89_8852be 0000:02:00.0: timed out to flush pci txch: 1
Aug 21 09:49:46 wb kernel: [96772.776781] rtw89_8852be 0000:02:00.0: timed out to flush pci txch: 2
Aug 21 09:49:46 wb kernel: [96772.776893] rtw89_8852be 0000:02:00.0: timed out to flush pci txch: 3
Aug 21 09:49:46 wb kernel: [96772.777006] rtw89_8852be 0000:02:00.0: timed out to flush pci txch: 8

As I was more or less expecting this based on experience in the past, I had a look at the notebook’s mainboard on the Internet before I bought it, so I was sure that I could replace the card. On Intel CPU based notebooks, this is no longer possible, because a part of the Wi-Fi chip is included in the overall chipset. Just the radio module is separate. No problem here, though, as the Intel Wi-Fi chips are ‘rock stable’ on Linux.

It looks like Lenovo puts Realtek and Qualcomm Wi-Fi PCI cards in their notebooks with AMD CPUs, and in this notebook the Realtek Wi-Fi card is a standard M.2 PCI card, which is replaceable. I did have a spare Intel AX200 Wi-Fi card at home, and swapping the card only took a few minutes. The quirk: You better have magnifying glasses, as the RF connectors these days are very tiny, and the connectors can easily be damaged if not handled correctly.

So after a few minutes, the Realtek Wi-Fi was out and the Intel AX200 was in. Since then, no more Wi-Fi issues. Note: Intel does have newer Wi-Fi PCI cards than the AX200. However, this one is time tested, supports 802.11ax and 160 MHz channels, so any features the newer cards provide are marginal for my purposes at best, particularly the 6 GHz band support of newer models.

Long story short: When I have to choose between experimenting with software tweaks to get the Wi-Fi card working over many days, or spend 25 euros for a new Wi-Fi PCI card and 10 minutes for the installation, I’d rather do the later.