[SOLVED] Wi-Fi Dropping on FW 13 w/ Ubuntu (AMD)

Unfortunately, it isn’t. Flathub is being misleading here.

If you scroll down you see this note: " This app is developed in the open by a community of volunteers, and released under the GNU Affero General Public License v3.0 only."

You can look at all of Alien’s source code though and compile it yourself. And if you don’t trust alien, there’s always just extracting the deb using dpkg-deb -x foo and running it from a local directory.

:slight_smile:

1 Like

FWIW the flatpak is pretty transparently just an installation of the “official” .deb:

...
sources:
      - type: file
        dest-filename: signal-desktop.deb
        url: https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_6.47.0_amd64.deb
        sha256: 944b0f0e8603997c0357bfb8cb7d11fa754e955adc267623cbe089a50b493962
...
2 Likes

No, that just means the flatpack is setup with an FOSS license.

What I was referring to was the by Signal Foundation and the FQDN of org.signal.Signal.
:thinking: Which honestly doesn’t mean much…

Looking at the repo, it’s an automated build that takes the signal deb, uses apt to extract it, and then bundle it in a flatpak.

:thinking: Yes, you can install apt in fedora. So you can use the official apt package from fedora and manually download and verify that the deb is legit, and then use apt to install it.

1 Like

Any thoughts on installing the Noble version of linux-firmware from a .deb? How likely is this to make my Jammy system unusable, and how would I recover if it did? @Loell_Framework, @Matt_Hartley (when you’re back in office on Monday)—is anyone on the support team brave enough to try this?

Can you build it yourself on Fedora?

Okay, I see. I’ll think about it! Thanks for the suggestions :slight_smile:

The fix for the bug is in jammy-proposed now, so I enabled jammy-proposed and installed it, but unfortunately the firmware update still didn’t load as indicated by the build times.

I tried again, but got this output linux-firmware is already the newest version (20220329.git681281e4-0ubuntu3.28). Selected version '20220329.git681281e4-0ubuntu3.28' (Ubuntu:22.04/jammy-proposed [all]) for 'linux-firmware'

I don’t really understand, why I still don’t have the updated firmware.

Does anyone here have an idea or can try installing the firmware update via jammy-proposed themselves?

Perhaps the firmware you dropped in /lib/firmware/updates previously was the “old” version not the new one. That would explain why it didn’t change versions and why the updates DEB package isn’t doing anything.

I deleted the mediatek directory inside /lib/firmware/updates and rebooted but unfortunately I still don’t have the new firmware.

Here is the output of tree /lib/firmware like you asked on the bug report on launchpad.net:

I also moved the bin files into /lib/firmware/mediatek before to get the firmware to manually update. But I am afraid to do damage if I try deleting something again.

We may have made some progress on this over on the Launchpad thread! By upgrading the firmware for the MT7922 wireless card as well as the MT7961, two of us have managed to at least get newer firmware running.

This was first reported by Harry Mayrhofer. I got similar results with a version of Harry’s procedure, which I’ve written step-by-step instructions for. Once again, the new strategy was suggested by Mario Limonciello.

I’ll watch my wireless connection to see if it’s behaving better. I’d love to hear from anyone else who tries this—especially people whose systems are closer to the Ubuntu 22.04 defaults.

1 Like

Thank you for the detailed instructions, they worked for me!

I also wanna thank Harry Mayrhofer as well as Mario Limonciello!

Now to explain what exactly I did to get my wireless card to update.

First I opened the Ubuntu app Software & Updates, went into Developer Options and ticked the box, that says Pre-released Updates (jammy-proposed).

Then, I went into the terminal and entered sudo apt update sudo apt-get install linux-firmware/jammy-proposed.

After that, I disabled Pre-released Updates (jammy-proposed) again.

Then I entered sudo rm /lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin sudo rm /lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin into the terminal to remove any outdated versions of the wifi card firmware.

And finally, I entered cd /tmp wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_RAM_CODE_MT7922_1.bin

sudo mv WIFI_MT7922_patch_mcu_1_1_hdr.bin /lib/firmware/mediatek/ sudo mv WIFI_RAM_CODE_MT7922_1.bin /lib/firmware/mediatek/

sudo update-initramfs -u

After I rebooted and ran sudo dmesg | grep mt7921e I got build times starting with 2023 instead of 2022 like before, indicating that the new Mediatek Wifi card firmware has loaded.

I will test my Wi-Fi for a day and if it doesn’t drop, I will consider the issue solved :slight_smile:

3 Likes

Just back from a long weekend (off Thurs and Friday, through the weekend).

Delighted to see the bug report progress on launchpad and here as well. This is going to be tested today and if I can replicate success, will smooth this out for the existing docs as well.

Appreciate everyone’s hard work on this! :raised_hands:

Testing will happen today through tomorrow for adaptation into the Ubuntu guide.

1 Like

Anyone on the latest firmware experience this by chance?

Nope, luckily not.

So, it seems like the tag can be changed to [SOLVED]!

Since yesterday’s update my Wi-Fi works perfectly. No drop-outs!

Thanks again everyone for your support :slight_smile:

2 Likes

Awesome and confirmed. I made something easier to use. Props to @Max_Power for doing the leg work on the needing to vanish old firmware files - tested it both ways, they do need to go. So the one liner is paste and go, reboot, done.

Copy, paste, enter key a few times, reboot, profit. This enables Jammy proposed, installs linux-firmware/jammy-proposed, disables Jammy proposed. Then it deletes the old firmware, updates initramfs. No GUI needed.

Just reboot after.

sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ jammy-proposed main restricted universe multiverse"  && sudo apt update && sudo apt install linux-firmware/jammy-proposed && sudo sed -i 's/^deb http:\/\/archive.ubuntu.com\/ubuntu\/ jammy-proposed/# &/' /etc/apt/sources.list && sudo apt update && sudo rm /lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin && sudo rm /lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin && cd /tmp && wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin && wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_RAM_CODE_MT7922_1.bin && sudo mv WIFI_MT7922_patch_mcu_1_1_hdr.bin /lib/firmware/mediatek/ && sudo mv WIFI_RAM_CODE_MT7922_1.bin /lib/firmware/mediatek/ && sudo update-initramfs -u

Check with:

sudo dmesg | grep mt7921e

Build time in dmesg confirms this worked. 20230627143702a and 202330627143946

Also tried it without deleting old firmware, no go - must follow all the steps and reboot, works.

Script tested on two FW 13 AMD units, success both times.



If you used the one liner above, you do not need to do this. Using this option is for those who want to do this step by step and understand what each step does - casual to new Linux users, please use the above oneliner as it prevents typos.

If you prefer step by step as an alternative (slower):

sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ jammy-proposed main restricted universe multiverse"
sudo apt update && sudo apt install linux-firmware/jammy-proposed 
sudo sed -i 's/^deb http:\/\/archive.ubuntu.com\/ubuntu\/ jammy-proposed/# &/' /etc/apt/sources.list
sudo apt update && sudo rm /lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin
sudo rm /lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin
cd /tmp
wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin
wget https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_RAM_CODE_MT7922_1.bin
sudo mv WIFI_MT7922_patch_mcu_1_1_hdr.bin /lib/firmware/mediatek/
sudo mv WIFI_RAM_CODE_MT7922_1.bin /lib/firmware/mediatek/ && sudo update-initramfs -u
2 Likes
sudo apt update && sudo apt install linux-firmware/jammy-proposed 

This step currently fails with:

Package linux-firmware is not available, but is referred to by another package.

This may mean that the package is missing, has been obsoleted, or
is only available from another source

However the following packages replace it:
  firmware-sof-signed

E: Release 'jammy-proposed' for 'linux-firmware' was not found

Currently trying to understand why I’m seeing this. Using 6.5.0-21-generic with 22.04.04

Update: After running apt policy linux-firmware and apt search linux-firmware which resulted in no references to jammy-proposed repo - I found that I could look into the proposed updates and that it was deleted on March 8. UbuntuUpdates - Package "linux-firmware" (jammy 22.04) and was moved to jammy-updates

In that case, is none of the above necessary anymore? The wifi driver should automatically be updated by doing apt-upgrade? My wifi driver has updated to the correct build time but I’m not sure which action triggered it.

Welcome to the community!

We do not test against generic, we test against OEM D from our guide.

There may have been an update here, I will circle back tomorrow and see if it’s has made its way out of proposed.

In tickets, A user named Thomas was kind enough to share these steps working for him, just copy/pasting here.

Stage files in case things go horribly wrong

UPDATE_DIR=“wifi-firmware-update”

mkdir -p $UPDATE_DIR/{old,new}

cd $UPDATE_DIR

Fetch the new firmware

wget -P new https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin

wget -P new https://gitlab.com/kernel-firmware/linux-firmware/-/raw/0a18a7292a66532633d9586521f0b954c68a9fbc/mediatek/WIFI_RAM_CODE_MT7922_1.bin

Save the old firmware

cp /lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin old/

cp /lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin old/

Remove the old firmware

sudo rm /lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin

sudo rm /lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin

Copy the new firmware into place

sudo cp new/*.bin /lib/firmware/mediatek

Update initramfs

sudo update-initramfs -u

3 Likes