I "upgraded" (flashed WITH dataloss) my FP3 from /e/-0.23-dev-p (Android 9) to /e/-1.5.1-dev-s (Android 12) and here is how

Since the installation documentation for the FP3 is a little outdated and OTA upgrades won’t be available for Android 9 to 10/11/12, I decided to report how I successfully flashed 1.5.1-dev-s on my device WITHOUT using the easy installer.


Here is what I did:

  1. Backup all the things. Most of the Apps offered backup/restore functionality, for a few it was just a pain.
  2. Unlock Bootloader
  3. Download and flash the latest available stable build which was not released via full OTA method. (./flash_FP3_factory.sh)
  4. (Relock Bootloader) Will be automatically requested by the .sh script)
  5. Boot FP3 once to see if /e/ loads up correctly
  6. With locked Bootloader: Boot to sideload (adb reboot sideload) and flash latest available dev build (adb sideload <zip file>)
  7. Boot FP3 with latest /e/-dev build :smiley:
  8. Reinstall Apps, restore data where available


  • Flashing with ./flash_FP3_factory.sh will fail if the full path contains spaces! Remove them if there are any.
  • Sideloading /e/-1.5.1-dev-s will trigger a signature verification error but you can skip that from withing the recovery
  • Battery saving mode does not work after first boot, rebooting fixed that for me
1 Like

Apparently I can’t edit my post anymore so I’ll reply to it:

Caveats (Appendix):

  • Android 12 introduced a new style for quick settings. The icons are way bigger than what you are used to and this is annoying quite a lot of people.
  • The experimental feature to backup your calendar entries within the preinstalled app was removed on later versions, you won’t be able restore the backup from within the app.
1 Like

Very good to hear you were able to upgrade with a locked bootloader.

Could you further explain why you did not upgrade from P to S in one go?

P.S.: … and unfortunately I can fully confirm both caveats

I asked in the forum for the need of flashing stock before flashing /e/. The answer was that the device tree (?) and firmware changed and therefore it’s required to flash those firmware upgrades first.

AFAIK some custom ROMs already include those firmware upgrade within their release, I know that iodeOS and /e/ are doing it like that.

Thanks for the procedure! I was also disappointed by the lack of OTA upgrade (at least now it’s clear it was a technical issue). Your post motivated me to give it a try and it worked very nicely (well, except that I Can't install open source apps but hopefully that can be easily fixed).

The only thing that was not clear to me was point 2: it took me some time and research until I realised I had to type fastboot flashing unlock on my computer when on the bootloader screen. Maybe you could add this to your original post in case someone else faces the same issue as me?

Hi, thanks for the feedback and I’m glad that it helped you.

Currently it seems that /e/ only allows editing of posts for a given period of time. I’m not able to edit my OP anymore, so I guess it stays like that now.

(IDK why they removed the possibility to edit posts for an infinite amount of time)

If managed to install a stable version as follows (cross-post from here).

I updated from Android 9 (dev) to Android 11 (stable; zip here). I first did the installation of the FP3 stock ROM 11, as described above (steps 1-4).

One modification: In step 2, I was not asked to enter my unlock code again as described in the docs. Instead the toggle in the developer options just went to “active” but when rebooting into fastboot, the phone was still shown as locked. I solved this with the command fastboot flashing unlock (in fastboot mode), and rebooting into the wiped OS and then again into fastboot mode for step 3.

At this stage I had my phone on Fairphone stock ROM 11.


  1. Go again into the fastboot mode.
  2. Again unlock the phone with fastboot flashing unlock. After that in reboots automatically (I let it boot into the OS).
  3. rebooting into fastboot
  4. Locally unzip IMG-e-1.6-r-20221129238947-stable-FP3.zip (the one I used) and change into the extracted directory. (You can find the stable zips here).
  5. Finally execute the flash_FP3_factory.sh

This ran through without errors. After that I could simply reboot into my shiny /e/ Android 11.

1 Like