Failed update, why (q0.17, FP3)

A month ago, on my Fairphone 3 i manually installed /e/ 0.17 from https://images.ecloud.global/stable/FP3/IMG-e-0.17-q-20210615117215-stable-FP3.zip (sha256sum checked)

When I installed it, i followed Install /e/ on a Fairphone FP3/3+ - “FP3” with one exception, the “fastboot -w” failed. I decided to not care about that as i have read others experiencing the same and it worked for them. IIUC the command is about clearing/recreating data partition. Problem is host side, various distros, and becoming fixed in Mageia ( 29157 – fastboot-android fail to use mke2fs ) if i should try again. But preferably i want to avoid reinstalling.

Before that, this device have been running same old /e/ from September 2020, with only minor quirk (one electronic ID app was sluggish. And before that, FP3 stock OS. I believe it was updated to Fairphone Android 10 but am not sure. New information is that we should update to and run stock Android before installing same major version of /e/. Advise users to flash stock ROM before applying an upgrade Unfortunately that info is not yet in official install instructions etc. Update: added very recently

In settings, about phone, Version, i see:

e_FP3-userdebug 10 QQ3A.
200805.001 eng.root.20210615.085611
dev-keys,stable-release

System update show:

/e/OS
0.17-20210615117215

Correction: …at the top and now i realise it is another way to describe the currently installed version, same as described in Version but deceivingly written in another way…

_Below that it describes one update:

/e/OS 0.17
21 june 2021
896MB

And a clickable download text. - It would really help if version descriptions followed same syntax in all three places… End correction.

I tried to let it update, but that failed to boot so i reverted. In more detail: Upon reboot it displayed:

Cant load android system
Your data may be corrupt

etc

I chose “Try again”, and it fail again.
It say slot a is chosen.

I press and hold UP+pwr, it boots to recovery
I see slot b is now chosen
I chose “Recovery”
It boots up and works as before.

Note also: The official install instruction say to install TWRP (Update: No it does not now mention twrp, but other instructions i.e at Fairphone forum do) but the updater have now replaced it with the /e/ counterpart. Feels inconsistent.

Apart from the update failing, the current problems i suffer from on this device are

I think optimally, the update problem should be solved first so this device really is on latest official version. “data may be corrupt” also feels it may trig problems.

Questions

  • How come the installed system boot OK but the update think data is corrupt. And why it thinks so and exactly what data it do not tell :frowning:

  • Can another tool verify data - some kind of disk check on relevant partition?

  • Is it possible the failure to execute “fastboot -w” caused the problems? (but strange if so, as the /e/ version i installed using adb runs, but not the update)

  • In my case (phone model and /e/ version) is it important to have updated to FP3 android 10 before /e/ q?

  • Can i check the version of firmware that is supposed to have been loaded by that stock OS is the correct one?

  • How can i take a full backup of user data (like /home on a linux system), and put it back? (and in between i plan to install and boot latest version of stock OS, then latest /e/)

I fear I can’t help you with the concrete problems, but

Where did you find TWRP in the instructions?
It’s not mentioned on https://doc.e.foundation/devices/FP3/install (ok, except in the expandable “To find some troubleshooting tips… click here” section, but I don’t see anywhere it’s written to install TWRP)

2 Likes

Right, i see it is not there now.
Either it have been, or i followed another instruction. I first installed /e/ (and twrp) almost a year ago now… So new users should use stock Fairphone loader (i did not try that).
Other instructions tell to install twrp, i.e https://forum.fairphone.com/t/twrp-3-4-0-on-fp3-with-e/62293

I also see /e/ official instruction for FP3 now recommend to first update stock OS, good. As said in that bug though we need instruction on how to go about to update from elder /e/ (i.e android 9), load lastest stock OS (android 10) and then update to new /e/ (android 10).

1 Like

These aren’t instructions, it’s just a discussion topic, and nothing there tells you to install TWRP.

It’s one thing that should have worked, but didn’t, involving the data partition.
It’s possible.

I don’t think so. It’s not mentioned as a requirement at https://doc.e.foundation/q-upgrade-fp3, and I went from /e/ 0.12-p to 0.12-q without reverting to Fairphone OS.

/e/ gets the relevant firmware parts from Fairphone and includes them.
The e foundation and Fairphone have an official partnership in place.
You can check the date at Settings - About phone - Android version - Vendor security patch level … and they tend to mention when they imported from stock at Releases · e / os / releases · GitLab.

4 Likes

With an unlocked bootloader you can boot (better not install) TWRP to do this.
With a locked bootloader you might want to have a look at the Developer option “Rooted debugging”, which gives root to ADB (i.e. it enables the adb root command), which means ADB path limitations on the phone can be disabled, which means you should be able to copy /data, not only /data/media, even if I can’t find a quotable guide just now.

1 Like

For the record, I just now tried the update again, same problem, “restored” (selected slot b again)


TWRP do look like a nice thingy to facilitate backing up etc, but there is soo much i dont know and myriads of things that can go bad. I understand “a/b” is different from elder boot models, but it all feels messy to me.
I admit i should make logs of what i do… now not sure i did use twrp on FP3, as i also fiddled with other phones, my backup phone got Saifish, my spare old Samsung an unofficial /e/, and the Fairphone2 definately got twrp and /e/.


OK good :slight_smile:

@manoj Then i think that statement to update FairphoneOS can be removed from https://doc.e.foundation/devices/FP3/install ? (recently added)


So my best option now is to save what i need (i know how to make backups of contacts, SMS, call log) and do a fresh install. (I could alternatively try factory reset but that would not test updating)

To really test things, i should follow install instruction precisely, including getting “fastboot -w” working. -But not load latest stock Fairphone, as /e/ include Fairphone firmware?
I should install the next latest version, install a few apps, and then see if it can OTA update to latest version.

Another day. I must fully configure my spare phone first including electronic ID etc.


Thanks :slight_smile: I may have a look at that.
Second thought is i may prefer data to be be created from scratch in case something have gone wrong there, and then restore SMS backup etc from that backup app, and sync down my files.

1 Like

At least the statement could make clearer what it is trying to achieve or prevent, it’s not really clear to me.
If I would have to guess it could mean “Don’t install Android 9 /e/ when your Fairphone OS was already upgraded to Android 10.” or “Just make sure you ran an OTA update with Fairphone OS at least once successfully, so all firmware parts are populated in both OS slots.”, but we’ll just see now.

On the topic of TWRP on a/b devices a good note from @AnotherElk here:

I am thinking a factory reset should be at least as comprehensive as “fastboot -w”
Am I correct?

An experiment
Without any change since previous postings, i performed a factory reset.
Booted to /e/ dated 20210615 which is what I initially installed manually (details first post), OK so far.
Same issue: No Mobile data, no APN set nor can be set, and message about this user have no access.

Boot to recovery, which i was thinking should boot the update previously downloaded OTA update which failed to boot and instead message about corrupt data: now it reboots immediately instead.

Booted back into version 20210615, performed OTA update to be sure it is done properly: But booting the update 20210621 fail.
Factory reset: 20210621 boots OK.
And on this version 20210621 Mobile data works, and on APN settings page i have two APN to select from as it should, and no message about user access.

As a test trying to boot to previous version “Reboot to recovery” fail, i just get back to Recovery panel.

This leads me to think

  1. Version 20210615 have some quirk about APN, that is fixed in 20210621.
  2. The two versions have incompatible factory defaults / data partition something… This is very serious.

On the subject of improving the install instruction:

  • There are links to both stable and dev, but no mention or link to explanation about difference, pros and cons.
  • “You can unzip the files into the folder where you copied the fastboot files.” This only applies if users distro is behind and installed adb and friends himself. Most often today i think fastboot is installed as distro package, so is in system, and in my case i just executed the commands from within the folder where I unpacked the .img files.
  • Some link explaining how a/b devices work, and why we flash both.
  • Some mention that the other files include din the zip except for those used in the commands given are not to be used. (or tell what they may be used for)
  • Short comment what “fastboot -w” does
  • At the point “Select LOCK THE BOOTLOADER with Volume + and valid with Power.” : add that after that the phone reboots to /e/.
1 Like

Wrong apparently! :frowning:

Experiment:
(Compare with rest of quoted post)

Now i made a fresh install per https://doc.e.foundation/devices/FP3/install
This time with successful “fastboot -w”
Used same zip as last time, first post, version date 20210615
_ sidenote: APN problem as usual

Then let it OTA update to 20210621
And it booted without problem.
And APN is OK, Mobile internet works.

=> “fastboot -w” is essential

There is one thing I don’t understand: How to select to boot the old version easily?
I intend to boot previous version by Recovery (booted using power button + volume up), selecting “Advanced”, and “Reboot to recovery”. But it appear to just boot back to Recovery screen. And as before it show “Active slot:b” And if i select to reboot, it boots the updated version.

I gave tha tup and instead booted to fasboot mode (booted using power button + volume down), and from host computer issued “fastboot --set-active=a”, then selected on phone to boot to Recovery mode, see it say active slot is a, and i select to reboot system. That fails with “Cant load Andriod system. Your data may be corrupt”.

So there seem to be double barriers from booting previous version: a) not easily selectable (or I missed something?), b) it finds data corrupt!

Now, I again booted to fastboot mode, sent it “fastboot --set-active=b”, and let it boot to last version.
And I can use my phone :slight_smile:

  1. was confirmed, tracked and solved at https://gitlab.e.foundation/e/backlog/-/issues/3367
  2. yes, the bootloop for “some FP3 users” is disruptive. It is tracked at https://gitlab.e.foundation/e/backlog/-/issues/3163

I tried to get boot/kernel crash logs from the bootloop, but did a A10 stock reflash and factory reset in the end. I had still A9 firmware. A 0.17-q with build date 20210615 ran fine on it, I didn’t have mobile data problems. Fetching an OTA zip to confirm a working mobile data config as a FP3 tester (the very issue you had with the version prior) with build timestamp 20210621 got me into

Can’t load Android system. Your data may be corrupt

I commented in https://community.e.foundation/t/impossible-to-perform-ota-update-fp3-bootloops-and-after-a-while-falls-back-to-other-slot/32637/4?u=tcecyk

1 Like

Ah, many thanks @tcecyk :slight_smile:
I should have found them but did not :frowning:
Will check in there.

Question: Why have it not yet proposed another update? Nothing is listed also after i select refresh.

Just to try something, I turned on
Settings > Developer Options > Use Staging OTA server
And then it lists two updates to /e/OS 0.18 from 2 and 14 August.
According to Week 33 : Development and Testing Updates, 0.18 was OTA released Aug 19.

That one have a bug for FP3, resolved by an update in staging others are testing, but my phone fail to see that also. https://gitlab.e.foundation/e/backlog/-/issues/3670

maybe subscribe to those weekly updates (Topics tagged development-updates), you’ll see in Week 34 the ota servers have some network problem currently (this afternoon), check back in in the evening? then you’ll receive the fix… timestamp is 20210821

your only affected by that FP3 problem if you run older firmware, can you make normal calls?.. check your baseband version against the strings there, I participated in that thread you’ll see, ctrl+f “baseband”

Still just the same two old updates available while still on staging OTA server, checked yesterday evening and now.

And now nothing at all after changing back from staging OTA server, despite
5 hours ago

Build with fix made publicly available on prod OTA server.

Am I somehow on a wrong channel or something, how to check and edit?
As said it have worked; OTA update to 20210621 before.

Edit, adding version details:
I installed originally https://images.ecloud.global/stable/FP3/IMG-e-0.17-q-20210615117215-stable-FP3.zip, then OTA updated.
In Settings > About phone, under Version i see:

e_FP3-userdebug 10 QQ3A.
200805.001 eng.root.20210621.124823
dev-keys,stable release

The System update page say

/e/OS
0.17-20210621120947

I find it confusing it express its version so very differently, but what appear to be the date correlates.
Also “userdebug” “dev-keys” and “stable release” is an odd looking description to me…

Yeah, sadly it’s not consistent, perhaps they’ll get there somewhen, eventually.
If you want to have a nice string with every necessary info, take the one in Settings - About phone - Android version (tap on it) - /e/ version, it looks a lot like the ZIP filename and has everything in it (and on Android 10 it can be copied to clipboard after long-tapping it).

As you are on the stable release channel, 0.18-q stable isn’t released just yet … https://images.ecloud.global/stable/FP3/

Ah, oh i am on stable

Thank you, that third(!) place to read out installed version is most like the zip filename.

As stable releases get monthly/bimonthly updates, i hope this update will end up here very soon after some extra testing. (And by now and that bug we see extra testing is good :wink: )

@manoj, Different Build Types is wrong saying stable builds are not available on the website. It may be true for some phones but not all. I think that need explaining there.

Install /e/ on a Fairphone FP3/3+ - “FP3” only link to stable, and not dev. (which is a good thing, there is also a link to explanations of the different channels, so keep as is)

dev releases, including todays release, are available for FP3 at https://images.ecloud.global/dev/FP3/ so possibly link that.

The guide mentions ’ currently only available on the /e/ smartphones’ which means phones we sell on the eSolution Shop. Will elaborate it further in the guide.

1 Like