Booting into recovery after upgrading to v7.x

Hi,

I recently upgraded my Fairphone 4 from v6 to v7, just like every time. Unfortunately the phone now boots into recovery. I can apply an update from adb or do a factory reset.

While I do have a backup with seedvault, I would very much like to be able to update without having to restore from backup (the whole reason I went with a Fairphone is that I want to setup my devices up as seldomly as possible) . I know that I re-locked the bootloader (that was the reason I went with iode instead of LineageOS).

I am on Linux, so feel free to send me shell commands.

Is there a way to “fix” the update?

Cheers,
Simon

Hey, was it specifically from 6.13 to 7.5 that you updated? Because 7.4 had this whole procedure associated with it but then, today, 7.5 just appeared in my Updater app - wondering if it’s safe to do a regular OTA update to 7.5 through the Updater app.

Sorry to add questions rather than helping, but knowing the exact versions you upgraded between might help others chime in with something more useful

Did not try yet, but I strongly assume that the instructions from here still hold: Fairphone 4 update to iodéOS 7.4 . pity.

The damage is already done.

So what I need to know is whether there is a way to fix the broken update or if I need to unlock the bootloader and wipe everything while doing so.

I think so, but I am not totally sure since I can no longer boot into the system.

ah, I could directly do a factory reset (adb wasn’t working due to having USB debugging disabled).

Lets see how good seedvault works, sigh

No!! This sent me in a boot loop (user0). Might be, all userdata are lost.
Stupid as I was I trusted iode to test the OTA updates before deploying them.

Actually it does work, the userdata has to be wiped though. I installed 7.4 via the updater –> bootloop
After wiping the user data I could successfully set up my device

1 Like

oh, great. Why is there no red warning during the update process? I am sorely disappointed by iode.

Is there a possibility to roll back or by other means accessing personal data before wiping it, once you are in the boot screen with the option of rebooting once again or wiping user data?

I am a bit disappointed as well, but hey its opensource and iode does emphasize it very much that a backup has to be set up.

Having seedvault integrated by default is also a good thing.

I’ve also been ignoring the news app, so maybe add a changelog to the updater would be great.

1 Like

Oh yes! Also, I received a “battery too low” warning, so I charged the battery before continuing the update process. It would have been very simple to send a warning “Attention! User data will be wiped” before rebooting.

Ok guys, when stuck in the boot screen, DO NOT wipe user data.
Boot to recovery and change the active slot with fastboot. a fastboot reboot brings you back to a working system! You can then back up your data.

At least for me that worked.

1 Like

that would have been a great info yesterday :cry:

its too late now :confused:

Hey, thanks for the tips.

Unfortunately it doesn’t seem to work for me. When in recovery, I went in advancedenter fastboot, and then on my computer I ran fastboot –set-active=a (also tried with b), and then pressed reboot system now on my phone, but I keep ending up in the recovery menu with the same message. Is that what you did to make it work?

Yes, almost. recovery → advanced → fastboot
then

fastboot getvar current-slot (was a for me)
fastboot set_active b
fastboot reboot

booted perfectly, now I set up nextcloud :joy:

1 Like

Second this and want to amend: it is not only open source, but also free.

After every visit of this forum, I am grateful that I did choose a Motorola G32 back in the days which was a lot cheaper than a FairPhone and came with A LOT less problems …

But still, I always run my backups before installing an update. It is so easy, I just plug my USB stick in (settings are automated to run a seedvault backup every time I plug this stick), wait 1 minute until backup is done, then head on to Threema and run the data backup there. Most time costly step is to type in my very long password twice. I do this every friday and also before every update. Never needed it - probably exactly for this reason. :wink:

why do you think such a comment might be helpful?

Yikes, seeing how this ended up for you and some of the others here, I might start a new thread to find out how best to upgrade now that 7.5 is out

With a re-locked bootloader there is no way to upgrade from 6.x to 7.x without doing a userdata reset as noted in the “News” app post on your device and this discussion: Fairphone 4 update to iodéOS 7.4 as well as our issue tracker: Fairphone 4: v7.x builds blocked due to v6.x locked bootloader upgrade issue (#71) · Issues · ota / issue-tracker · GitLab

Without manually changing the slot, if an upgrade causes the phone to not boot, after ?6 - 7? failed attempts it should automatically revert to the other slot and boot. So your manual slot change speeds it along, but users that are not comfortable with that process would eventually get to their prior working system (after some serious despair). Not ideal!

Were you on 6.x before or on 7.x? If on 6.x is your bootloader locked? Sorry you may have noted it but with the multiple threads and lots of comments I may be getting things confused: re-clarification would help!

I was on 6.x with a locked bootloader.

Then I naively upgraded to 7 using the regular updater and after one or two reboots it dropped me into recovery.

I did not know that there was another slot, so I went into the recovery menu and did a factory reset.

Afterwards I booted into 7.4 and was able to set up my phone and restore from Seedvault.

I may have been just one reboot away from getting there :smiley: