[HOWTO] Upgrade my /e/OS to major Android version without loosing /data

.

In order to determine if it is possible, you must answer those 4 questions :

.

  1. What was the StockOS version installed before /e/ ?

  2. What is the current StockOS available ?

If answers to 1 and 2 are the same, you can have a go for dirty upgrade !

If answers to 1 and 2 are differents, you must answer to questions 3 or 4

  1. does latest /e/ build include the upgraded needed parts of the firmware ?
    download it and have a look inside the .ZIP (you may need to extract it)
    what to do if you find a payload.bin file ?

  2. does Lineage wiki offer a firmware upgrade solution for this device ?

if answers to 3 and 4 are no, you will have to install latest available full Stock OS (relative to the android version of the /e/ build you want to install → not higher), then reinstall /e/OS from scratch.

if answer to 3 is yes, you can have a go to dirty upgrade /e/OS.
if answer to 4 is yes, you can have a go for dirty upgrade the firmware, then dirty upgrade /e/OS !

.

to do it, you have several options :

(it is recommended to take a backup of your things in case)

.

  1. download the file, go to “→ settings → system updater” and use the feature called “locale update” (if you have it in the “3 dot menu” at top right of the screen).

or

  1. download the file, boot the phone into the recovery mode and use “apply update” then “from internal storage” (if your “recovery mode” have the feature).

or

  1. download the file on a SDcard, boot the phone into the recovery mode and use “apply update” then “from External SDcard” (if your “recovery mode” have the feature).

or

  1. Universal Method, download the file on a computer, boot the phone into the recovery mode and use “apply update” then “from ADB” :

.

5 Likes

.

the Universal Method détailled

DO NOT APPLY FACTORY-RESET → do not format /data

.

Install the platform-tools on your computer :

Install adb and fastboot on a computer running macOS or Linux
Install adb and fastboot on a computer running Windows

On the computer,

download the latest /e/OS build for your device
(put it into the platform-tools folder)

it must be named like e-3.2-a15-20251023539369-community-instantnoodle.zip

if you found something named like IMG-e-3.2-a15-20251022539003-official-FP6.zip
use the right clic to copy the link, paste it in the adress bar of your browser, remove the 4 IMG- carracters and press enter to download e-3.2-a15-20251022539003-official-FP6.zip

.

Boot the phone into recovery mode.

.
Select Apply Update, then Apply from ADB

The screen should now change and the output at the bottom ask you to send the package from your computer.

On the computer,

Use the right clic to open a terminal from the /platform-tools folder, and
issue the command to sideload the latest /e/OS-T installation zip.

adb sideload e-3.2-a15-20251023539369-community-instantnoodle.zip

the phone screen will be mostly blank with just the output at the bottom showing progress.

On the computer the sideloading shows progress as a percentage figure that will stop at 47%. The phone will still be installing though (even though it might feel like nothing is happening sometimes!) and you can expect to see the following screens

when success message comes on the device screen, press the arrow at the top of the screen to return to Home Screen

and Tap Reboot system now to boot into your new /e/OS.

.

.

here is an exemple of /e/ build that don’t include firmware parts :

.

here is an exemple of /e/ build that contains firmware parts :


in the firmware folder, we see :

.

here is an exemple of /e/ build that contains a payload.bin file :

.

here is an exemple of a payload.bin file that don’t include firmware parts :

./payload-dumper-go -l e-3.2-a15-20251023539369-community-kebab.zip
Please wait while extracting payload.bin from the archive.
payload.bin: /tmp/payload_038534537.bin
Payload Version: 2
Payload Manifest Length: 99712
Payload Manifest Signature Length: 267
Found partitions:
boot (101 MB), dtbo (25 MB), odm (87 MB), product (587 MB), recovery (101 MB), system (1.6 GB), system_ext (554 MB), vbmeta (8.2 kB), vbmeta_system (4.1 kB), vendor (542 MB)

.

here is an exemple of a payload.bin file that contains firmware parts :

./payload-dumper-go -l e-2.6.3-u-20241218455570-community-fajita.zip
Please wait while extracting payload.bin from the archive.
payload.bin: /tmp/payload_344338513.bin
Payload Version: 2
Payload Manifest Length: 119371
Payload Manifest Signature Length: 267
Found partitions:
LOGO (8.0 MB), abl (2.2 MB), aop (184 kB), bluetooth (766 kB), boot (67 MB), cmnlib (381 kB), cmnlib64 (500 kB), devcfg (41 kB), dsp (34 MB), dtbo (8.4 MB), fw_4j1ed (352 kB), fw_4u1ea (352 kB), hyp (397 kB), keymaster (221 kB), modem (120 MB), qupfw (66 kB), storsec (25 kB), system (3.0 GB), tz (2.1 MB), vbmeta (4.1 kB), vendor (1.1 GB), xbl (3.3 MB), xbl_config (98 kB)

.

.

if you find a payload.bin file into your /e/OS build,

./payload-dumper-go -l e-3.2-a15-20251023539369-community-instantnoodle.zip

that will list the partitions included into the /e/OS build

.

1 Like