Questions about switching from Android 9 to iode on Fairphone 3

Hello,

I’m playing with the thought of migrating from my current custom ROM (/e/) to iode.

But I’m having a few questions regarding this (referring to this how2):

  1. Update the stock firmware to the latest
    Why exactly is this necessary?

  2. fastboot flash boot <recovery for FP3(+)>
    Can I use TWRP at this step?

  3. fastboot oem lock
    How is it possible that the FP3 works with a re-locked bootloader?
    I thought as soon as unofficial recoveries/ROMs are being flashed the phone won’t boot.

How do I keep this ROM up2date (minor and major releases)? Just sideloading the latest version but without the “Format Data/factory reset”?

Also, the Fairphone does have a/b slots for “seamless updates”:

  1. Why is this not reflected in the how2?
  2. Does iode make use of this “secure” way when delivering minor release updates to the phone?
1 Like

This is no more required for FP3, and will be removed from the flashing instructions. We now embed the latest FP3 firmware (speaking here of firmware, not full stock ROM as in flashing instructions) in iodéOS. Generally speaking, the firmware is a set of binaries that perform low-level control on the hardware and various tasks to boot the device.

Although we do not support other recoveries than the ones we provide, they generally work. There are exceptions, for example recently to switch from iodéOS v2 to v3 on some devices (Samsung series 9 and Xiaomi Mi 9), due to encryption problems when formatting: our recovery is mandatory.

Fairphone permits to relock the bootloader of their phones with custom roms. That’s fair from them :wink: On most devices it is not possible, as the encryption key used to verify the boot process is not public, so cannot be used to sign the kernel, and cannot be changed. Fairphone uses the google public key given in AOSP, and in addition permits to provide a different key. For FP3 we did not change that key, but for FP4 we provide a custom key to enforce security.

2 Likes

Thx for the reply!

Can you answer the remaining questions too? :nerd_face:

1 Like

Flashing without mentioning the partitions a or b happens on the active partitions, which will then be used to boot. In that perspective there are some flashing instructions for other devices that could be simplified.

We always ship full roms as ota, flashed through the standard a/b process.

2 Likes

Just to be sure that I’m getting this right:

Minor Updates are pushed to the devices via OTA, so they will install while Android is running.

What about major updates? When iodeOS switches to Android 13 will there be an OTA upgrade from 12 to 13 or will this require a full wipe + reflash?

1 Like

Very interesting questions …
I have a couple of LOS phones and found it extremely annoying when after one year of usage I had to reinstall everything from scratch when Android version is increased (and the maintainer gives up the previous version).

Here is an answer, a bit late but not too late as iodé 4 is not available for FP3 yet.
Most often, major upgrades can be performed without requiring a data format.
There are exceptions though, which for iodéOS happened for 2 devices for upgrading to iodé 3 (Android 12) : Xiaomi Mi9 and Samsung 9 series. In both cases, this was due to data encryption compatibility issues. Unless the actual encryption method (FBE) is maintained in AOSP (and now provided for all our supported devices since iodé 3), no data format will be required for major upgrades.

1 Like

Thank you for this clear statement!
This is a clear advantage of iodéOS instead of the “original” LOS (plus all the service you are providing).