Radxa A8 WiFi Device Names

There is some confusion about the multiple device names when using the Radxa A8 WiFi module. By default, one of the names is assigned a udev name like wlP2p33s0, the other uses fallback naming logic and is assigned a kernel name of wlan0 or wlan1. Indeed, in order to make your connections work you need to specify the device (using Network Manager, etc). The problem I see, however, is these device names are not consistently being assigned. The device that gets the udev name on one boot could be different on the next boot (the MAC addresses switch). This makes it difficult to setup network connections based on the device.

The fix for this is to change how udev assigns names for the rtl8852be driver. To do this, create a file /etc/systemd/network/10-rtl8852be-wifi.link. In that file put the following.

[Match]
Driver=rtl8852be
Type=wlan

[Link]
NamePolicy=mac

This will change the way udev names the devices associated with the rtl8852be driver to be based on the mac addresses. This will give each of the two devices a unique and consistent name that will be the same after each reboot. From there the network connections will be easier to setup in network manager.

If the longer names bug you, you can setup your own naming policy. The documentation is here…

https://www.freedesktop.org/software/systemd/man/systemd.link.html

I had this problem on Armbian, but suspect the same issue exists on the other systems.

4 Likes

This is great - fixed the issue with inconsistent naming and with the SSH server being sometimes unreliable. However, you should keep in mind that you’ll have to reconnect the WiFi from desktop after doing this and rebooting (it will be fine after the next reboots).

1 Like

Yup… The WiFi device names will change, so you’ll want to be on a wired network or have a monitor and keyboard when you make this change. If you need this, though, you probably already have an unreliable WiFi connection at boot.
:slight_smile:

I wish there was more information about these two devices. They both work, but I’m not sure if they can be used concurrently. I haven’t been able to get Hotspot mode working with Network Manager yet to test this.

Nah, the WiFi is OK but some routes weren’t working because of the random device names.

There is a fix for it here: No SSH on Wlan0 but yours is easier.

1 Like

Wow, thank you for this. I am excited to test out this solution. This has been bugging me endlessly.

1 Like

I’m glad this has helped someone. It was bugging me too.

I was able to get Hotspot mode working after I remembered that Network Manager displays more channels than can actually be used in Hotspot mode. This didn’t have anything to do with the device names… just some stupidity in the Network Manager GUI. You need to pick a Wi-FI channel for the HotSpot that isn’t listed as “(no IR)” or “(disabled)” in the “iw list” output.

After figuring that out I was able to test if I could use one of the WiFi devices in client mode (connected to a home router) and the other in Hotspot mode at the same time. This, unfortunately, does not work… at least not with Network Manager.

Do you know why it’s renaming the devices in the first place? Why can’t they just stay as en0, wlan0 and wlan1? Is this an armbian thing?

Btw, maybe try nmcli if the GUI isn’t working for you.

Also what is interesting is that for me the OUI of the first interface is registered with Shenzhen Phaten Tech Ltd 2C:05:47

But the second MAC starts with 2E:05:47, which is not a registered block. I don’t know much about this, is this normal?
So in the end, if client and hotspot modes can’t be used at the same time, what can you use it for? Can you connect to 2 wifi networks, for example?

I have some of the same questions. :slight_smile:

On the surface the naming problem is all about the default naming scheme in udev not handling multiple devices on the same network card. I wouldn’t think that issue is specific to Armbian or even the network card. So the original post to fix that by changing the naming scheme to use MAC still makes perfect sense.

The rest of the questions… I really don’t know.

I mean… Radxa has their name stamped on the device after all. It would be nice to see an official response on whether or not we are supposed to be able to use two devices at once or if this is just a driver anomaly that they exist. :slight_smile:

Just wanted to let you guys know that the rtw89 driver works well, and does not include concurrency:

Concurrency on the A8 module, I believe, only functions when on the same channel. I don’t find that to be very useful, in most cases.

An example of a card that supports proper dual channel concurrency (DBDC) is the mt7916. Might be tough to find in m.2 e-key form factor though.

1 Like

Thanks for that info. With that knowledge, I was able to bring up a Hotspot connection using the same WiFi channel as the Client connection to our home router. The two devices can very much work concurrently. It makes more sense why the second one exists now.

You are also right about there being limited use cases for two same channel connections. I have seen some WiFi extenders work exactly like this though.