Fwupd: Difference between revisions
link to edge post about adjusting udev rules |
available in v22.06 and higher |
||
Line 1: | Line 1: | ||
{{note|Running Biktor's firmware currently requires [https://postmarketos.org/edge/2022/05/23/biktor-modem-fw-disappears/ adjusting udev rules]. Otherwise the modem will oftentimes disappear after suspend.}} | {{note|Running Biktor's firmware currently requires [https://postmarketos.org/edge/2022/05/23/biktor-modem-fw-disappears/ adjusting udev rules]. Otherwise the modem will oftentimes disappear after suspend.}} | ||
This article is about upgrading firmware on your postmarketOS installation with fwupd. The primary use case is upgrading the EG-25 modem of the PinePhone (Pro) from the stock firmware to [https://github.com/Biktorgj/pinephone_modem_sdk Biktor's alternative firmware] that has several stability improvements. | This article is about upgrading firmware on your postmarketOS installation with fwupd. The primary use case is upgrading the EG-25 modem of the PinePhone (Pro) from the stock firmware to [https://github.com/Biktorgj/pinephone_modem_sdk Biktor's alternative firmware] that has several stability improvements. This feature is available in postmarketOS v22.06 and higher. | ||
=== fwupd frontends === | === fwupd frontends === |
Revision as of 17:44, 12 June 2022
Running Biktor's firmware currently requires adjusting udev rules. Otherwise the modem will oftentimes disappear after suspend. |
This article is about upgrading firmware on your postmarketOS installation with fwupd. The primary use case is upgrading the EG-25 modem of the PinePhone (Pro) from the stock firmware to Biktor's alternative firmware that has several stability improvements. This feature is available in postmarketOS v22.06 and higher.
fwupd frontends
fwupd can be used with several frontends:
- fwupdmgr (CLI)
- KDE Discover
- GNOME Software
- GNOME Firmware Updater
For now it is recommended to make the firmware upgrades through fwupdmgr. Other interfaces are not tested as well, and may not yet support newer features of fwupd, such as swichting branches.
Upgrading Modem Firmware on the PinePhone
Preparations
- Make sure your phone is charged
- Plug the charger while doing this
fwupdmgr
Verify that fwupdmgr detects the EG25-G modem. If it does not, you may need to reboot first (e.g. if fwupd packages were just installed):
$ sudo fwupdmgr get-devices WARNING: This package has not been validated, it may not work properly. Pine64 PinePhone (1.2) │ └─QUECTEL Mobile Broadband Module: Device ID: 976c4a39e87f61e6940ea6a8d39c583cfa99615f Summary: Quectel EG25-G modem Current version: EG25GGBR07A08M2G_01.001.01.001 Vendor: QUALCOMM INCORPORATED (USB:0x2C7C) GUIDs: db379a33-254f-5140-b37e-d36ae7e5c039 d18f31f1-a3fa-55a2-b4ed-decfbc1e004d 1a2996cb-f86e-5583-a464-e1b96e1c6ae9 587bf468-6859-5522-93a7-6cce552a0aa3 22ae45db-f68e-5c55-9c02-4557dca238ec Device Flags: • Updatable • System requires external power source • Supported on remote server • Device supports switching to a different branch of firmware
$ sudo fwupdmgr refresh --force WARNING: This package has not been validated, it may not work properly. Updating lvfs-testing Downloading… [***************************************] Downloading… [***************************************] Updating lvfs Downloading… [***************************************] Downloading… [***************************************] Successfully downloaded new metadata: 1 local device supported
Do the initial upgrade with switching the branch. This will take about 10 minutes (and yes, it says "downgrade" initially). You can find information about Biktor's releases here. Make sure to replace <DEVICE-ID>
in the following command with the "Device ID:" from fwupdmgr get-devices
output.
sudo fwupdmgr switch-branch <DEVICE-ID> [sudo] password for user: WARNING: This package has not been validated, it may not work properly. ╔══════════════════════════════════════════════════════════════════════════════╗ ║ Switch branch from default to community? ║ ╠══════════════════════════════════════════════════════════════════════════════╣ ║ The firmware from Pine64 is not supplied by QUALCOMM INCORPORATED, the ║ ║ hardware vendor. ║ ║ ║ ║ Your hardware may be damaged using this firmware, and installing this ║ ║ release may void any warranty with QUALCOMM INCORPORATED. ║ ║ ║ ║ This release brings the following fixes and improvements: ║ ║ ║ ║ • Allow calls to be delayed for more than 999 seconds ║ ║ • Ensure we send a RING_IN pulse to the Pinephone when making simulated ║ ║ calls, to be able to wake the Pinephone from crust ║ ║ • Force resync of the RT5616 registers in the external codec (Pinephone ║ ║ Pro) so call audio keeps working after suspend ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Do you understand the consequences of changing the firmware branch? [y|N]: y ╔══════════════════════════════════════════════════════════════════════════════╗ ║ Downgrade QUECTEL Mobile Broadband Module from ║ ║ EG25GGBR07A08M2G_01.001.01.001 to 0.5.9? ║ ╠══════════════════════════════════════════════════════════════════════════════╣ ║ This release brings the following fixes and improvements: ║ ║ ║ ║ • Allow calls to be delayed for more than 999 seconds ║ ║ • Ensure we send a RING_IN pulse to the Pinephone when making simulated ║ ║ calls, to be able to wake the Pinephone from crust ║ ║ • Force resync of the RT5616 registers in the external codec (Pinephone ║ ║ Pro) so call audio keeps working after suspend ║ ║ ║ ║ This firmware is provided by LVFS community members and is not provided (or ║ ║ supported) by the original hardware vendor. ║ ║ ║ ║ Installing this update may also void any device warranty. ║ ║ ║ ║ QUECTEL Mobile Broadband Module and all connected devices may not be usable ║ ║ while updating. ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Perform operation? [Y|n]: Y Downloading… [***************************************] Less than one minute remaining… Downloading… [***************************************] Decompressing… [***************************************] Decompressing… [***************************************] Authenticating… [***************************************] Authenticating… [***************************************] Restarting device… [***************************************] Writing… [***************************************] Waiting… [***************************************] Less than one minute remaining… Successfully installed firmware
Following upgrades can be done with fwupdmgr upgrade
.
When there is nothing to do, you will see:
$ sudo fwupdmgr upgrade WARNING: This package has not been validated, it may not work properly. Devices with the latest available firmware version: • QUECTEL Mobile Broadband Module
Troubleshooting
If flashing fails for whatever reason, try hard rebooting the phone by powering off, taking the battery out, and powering the phone back on. Then you can use the flashall method as described in Biktor's release notes here.