Fedora GNOME - Stable MT7902 Wi-Fi Setup
This note documents the Wi-Fi configuration that produced the most stable results on the Fedora GNOME installation using the MediaTek MT7902 / Filogic 310 wireless adapter.
Working hardware and software
- Wi-Fi adapter: MediaTek MT7902 802.11ax PCIe Wireless Network Adapter
- PCI ID:
14c3:7902 - Driver:
mt7921e - Fedora kernel tested:
7.2.5-200.fc44.x86_64 - Interface:
wlo1 - Home SSID:
Benz Wifi2 - Preferred 5 GHz BSSID:
BC:07:1D:39:BF:D7 - Frequency:
5200 MHz - Channel:
40
The stable configuration required three main changes:
- Disable PCIe ASPM for
mt7921e. - Disable Wi-Fi power saving.
- Pin the main Wi-Fi profile to the stable 5 GHz BSSID to prevent roaming between mesh access points.
1. Confirm that Fedora detects the MT7902
uname -r
lspci -nnk -d 14c3:7902
nmcli device statusExpected driver information:
Kernel driver in use: mt7921e
Kernel modules: mt7921eThe Wi-Fi interface should appear as wlo1.
2. Disable PCIe ASPM for the MT7902
Create the module configuration:
echo 'options mt7921e disable_aspm=1' | sudo tee /etc/modprobe.d/mt7921e.confRebuild the Fedora initramfs:
sudo dracut -fReboot:
sudo rebootAfter reboot, verify:
cat /sys/module/mt7921e/parameters/disable_aspmExpected result:
YIf it returns N, the workaround is not active.
3. Connect normally to the Wi-Fi network
Connect to:
Benz Wifi2Then verify:
nmcli device statusThe Wi-Fi interface should show:
wlo1 wifi connected4. Disable Wi-Fi power saving
Disable power saving for the NetworkManager profile:
nmcli connection modify "Benz Wifi2" 802-11-wireless.powersave 2Reconnect:
nmcli connection down "Benz Wifi2"
sleep 3
nmcli connection up "Benz Wifi2"Verify the NetworkManager setting:
nmcli -g 802-11-wireless.powersave connection show "Benz Wifi2"Expected result:
disableAlso verify the kernel interface setting:
iw dev wlo1 get power_saveExpected result:
Power save: off5. Create a dedicated stable Wi-Fi profile
The automatic profile roamed repeatedly between mesh access points. A dedicated pinned profile eliminated that behavior.
Clone the existing profile:
nmcli connection clone "Benz Wifi2" "Benz Wifi2 Stable"Configure the stable profile:
nmcli connection modify "Benz Wifi2 Stable" 802-11-wireless.bssid BC:07:1D:39:BF:D7 802-11-wireless.powersave 2 802-11-wireless.cloned-mac-address permanent connection.autoconnect yes connection.autoconnect-priority 20Switch to the stable profile:
nmcli connection down "Benz Wifi2"
sleep 3
nmcli connection up "Benz Wifi2 Stable" ifname wlo1Verify the connected access point:
nmcli -f IN-USE,BSSID,SSID,FREQ,CHAN,SIGNAL device wifi list ifname wlo1 | grep '^\*'Expected values:
BSSID: BC:07:1D:39:BF:D7
SSID: Benz Wifi2
Frequency: 5200 MHz
Channel: 406. Keep the original profile as a fallback
Set the original profile to a lower autoconnect priority:
nmcli connection modify "Benz Wifi2" connection.autoconnect yes connection.autoconnect-priority 0Keep the stable profile at priority 20:
nmcli connection modify "Benz Wifi2 Stable" connection.autoconnect yes connection.autoconnect-priority 20Verify:
nmcli -f NAME,AUTOCONNECT,AUTOCONNECT-PRIORITY connection show | grep "Benz Wifi2"The preferred profile should be:
Benz Wifi2 Stable7. Final verification
Confirm ASPM workaround:
cat /sys/module/mt7921e/parameters/disable_aspmExpected:
YConfirm power saving:
iw dev wlo1 get power_saveExpected:
Power save: offConfirm current BSSID:
nmcli -f IN-USE,BSSID,SSID,FREQ,CHAN,SIGNAL device wifi list ifname wlo1 | grep '^\*'Expected:
BC:07:1D:39:BF:D7
5200 MHz
Channel 40Test the local connection:
ping -I wlo1 -c 100 192.168.68.1The successful final test produced:
100 packets transmitted, 100 received, 0% packet loss
rtt min/avg/max/mdev = 1.794/10.556/156.712/26.672 msWhy this configuration was chosen
With default Fedora settings, the MT7902 showed severe packet loss and very high latency.
Disabling ASPM substantially improved reliability.
Disabling Wi-Fi power saving further reduced latency.
The remaining instability came from the adapter roaming repeatedly between several mesh access points sharing the same SSID. Kernel logs showed repeated reassociation between BSSIDs and at least one 4-way handshake timeout.
Pinning the dedicated profile to:
BC:07:1D:39:BF:D7stopped the roaming and produced the best stable Fedora result:
100/100 packets received
0% packet lossDo not force the 2.4 GHz BSSIDs on this Fedora installation
Several 2.4 GHz BSSIDs were visible, but Fedora repeatedly timed out when authentication was forced to them.
Examples tested included:
98:03:8E:58:D4:5A
BC:07:1D:39:BF:D6
BC:07:1D:39:BF:3AFor this Fedora installation, the pinned 5 GHz profile was more reliable.
Quick rebuild checklist after reinstalling Fedora
# 1. Confirm MT7902 driver
lspci -nnk -d 14c3:7902
# 2. Disable ASPM
echo 'options mt7921e disable_aspm=1' | sudo tee /etc/modprobe.d/mt7921e.conf
sudo dracut -f
sudo rebootAfter reboot:
# 3. Verify ASPM workaround
cat /sys/module/mt7921e/parameters/disable_aspm
# 4. Connect to Benz Wifi2 normally, then disable power saving
nmcli connection modify "Benz Wifi2" 802-11-wireless.powersave 2
# 5. Create stable pinned profile
nmcli connection clone "Benz Wifi2" "Benz Wifi2 Stable"
nmcli connection modify "Benz Wifi2 Stable" 802-11-wireless.bssid BC:07:1D:39:BF:D7 802-11-wireless.powersave 2 802-11-wireless.cloned-mac-address permanent connection.autoconnect yes connection.autoconnect-priority 20
# 6. Lower priority of fallback profile
nmcli connection modify "Benz Wifi2" connection.autoconnect yes connection.autoconnect-priority 0
# 7. Activate stable profile
nmcli connection up "Benz Wifi2 Stable" ifname wlo1
# 8. Verify
iw dev wlo1 get power_save
nmcli -f IN-USE,BSSID,SSID,FREQ,CHAN,SIGNAL device wifi list ifname wlo1 | grep '^\*'
ping -I wlo1 -c 100 192.168.68.1Expected final state
Driver: mt7921e
disable_aspm: Y
Wi-Fi power save: off
Profile: Benz Wifi2 Stable
BSSID: BC:07:1D:39:BF:D7
Band: 5 GHz
Frequency: 5200 MHz
Channel: 40
MAC behavior: permanent
Autoconnect priority: 20
Fallback profile priority: 0