FP6: Unable to lock bootloader

Hello everyone,
I tried to install iodéOS 7.5 on a Fairphone 6 via fastboot.
The Fairphone had Android 15 installed, with a build from February.
Unlocking the bootloader and installing iodéOS went smoothly.
However, when I try to lock the bootloader afterward, I get a corrupt device:
“Your device is corrupt, it can’t be trusted and will not boot”.
Fortunately, I was able to unlock the bootloader again, but the iodéOS installation was no longer bootable.
A fresh installation with the bootloader unlocked is bootable, and iodéOS runs without any issues.
But every time I try to lock the bootloader, I end up with a corrupted device.
Unfortunately, I’m no longer sure what security patch level FairphoneOS had. Probably from February…
iodéOS 7.5 has Android security updates from April and a vendor security patch level from December. Is the latter the problem here?
Does anyone have any ideas on what I could do to close the bootloader?
I’m grateful for any constructive suggestions.

:germany:

Hallo zusammen,
ich habe versucht iodéOS 7.5 auf ein Fairphone 6 per fastboot zu installieren.
Auf dem Fairphone war Android 15 mit einer Version von Februar installiert.
Die Öffnung des Bootloaders und auch die Installation von iodéOS liefen problemlos.
Allerdings, wenn ich versuche den Bootloader im Anschluss zu schließen, dann erhalte ich ein korruptes Gerät:
“Your device is corrupt, It can’t be trusted and will not boot”.
Zum Glück ließ sich der Bootloader wieder öffnen, aber die iodéOS-Installation war nicht mehr bootbar.
Eine Neuinstallation mit offenem Bootloader ist bootbar und iodéOS läuft auch ohne Probleme.
Aber jedes Mal, wenn ich versuche den Bootloader zu schließen, erhalte ich ein korruptes Gerät.
Ich bin jetzt leider nicht mehr sicher, welche Security Patch Level das FairphoneOS hatte. Vermutlich vom Februar…
Das iodéOS 7.5 hat Android Security Updates von April und ein Vebdor security patch level von Dezember. Ist letzteres ds Problem hier?
Hat jemand eine Idee, was ich tun könnte, um den Bootloader zu schließen?
Ich bin für alle konstruktiven Ideen dankbar.

1 Like

Let me check with our lead developer. The December vendor security patch level is the most recent for the FP6 still I believe.

UPDATE: I got confirmation that Fairphone DID release an updated vendor security patch, so that is why re-locking is not working. This updated patch is not yet integrated in the LineageOS build that iodéOS is based on. So, unfortunately, if that security patch was part of your previous install you will need to wait for another month until it is incorporated in the iodéOS builds until you can re-lock the bootloader (when you re-lock, your userdata will be reset so you will need to then restore a backup). You can follow the commits here to see when the security patch gets applied: Commits · v7-staging · os / public / devices / fairphone / device_fairphone_FP6 · GitLab

Thanks @rik for the confirmation.

It’s a bummer that I now have to wait (hopefully just) another month, but I’ll use the time to come up with a plan for how best to transfer my data from my old smartphone. For that, I’m going to take a closer look at Seedvault…
I’ll let you know if the next update has fixed my bootloader issue.
So, see you in a month… :wink:

1 Like

Please make sure to disable auto-updates of FairphoneOS or you may just keep jumping yourself 1 commit newer than the new iodéOS release next month :slight_smile:

Hey there, I have been trying to relock the bootloader on my FP6 unsuccessfully for a while now and the message “Your device is corrupt, it can’t be trusted and will not boot” you received while you were trying to relock the bootloader is an indication that the FRP was triggered. I got mine triggered when I attempted to flash iodeOS 7.4 on a device running /e/OS. waiting a month and flashing iodeOS 7.5 on it did not solve the problem either. So using an LLM, I ran a troubleshooting session and received following diagnosis and recommendation:

Based on your details, this is very likely an Android rollback protection / security patch level problem, not a bad flash.

The key clues are:

  • fastboot flashing lock fails immediately

  • the phone returns to fastboot with “device is corrupt”

  • you can still unlock and boot iodéOS again

  • you came from /e/OS

  • FP6 has strict rollback protection

  • this exact pattern has already happened to other FP6 users on iodéOS and /e/OS (Fairphone Support)

What is probably happening:

  • Your previous /e/OS installation had a newer rollback index / security patch level than the iodéOS build you flashed.

  • When the bootloader is unlocked, Android allows booting anyway.

  • The moment you try to relock, Android Verified Boot (AVB) enforces rollback protection and rejects the installed system as “corrupt”.

The important thing is:
you are NOT hard-bricked because get_unlock_ability: 1 still works.

The most likely fix

You need to first install a firmware/base system with a security patch level equal to or newer than the one your phone previously saw.

Because you do not remember the /e/OS patch level, the safest approach is:

  1. Flash the newest official Fairphone OS available for FP6

  2. Boot it once completely

  3. Update it fully through OTA

  4. Unlock again

  5. Reflash the newest iodéOS build

  6. Then relock

This usually resets the rollback mismatch chain safely.

Recommended recovery sequence

Step 1 — Return to latest stock Fairphone OS

Download the newest FP6 factory image from Fairphone Support

Then flash it completely.

VERY important:

  • do NOT skip any partitions

  • do NOT keep userdata

  • let the official flashing script handle both slots

Step 2 — Fully boot stock OS

After flashing:

  • boot into Android normally

  • complete setup

  • connect to Wi-Fi

  • install ALL available OTA updates

  • reboot until no more updates remain

You want the newest possible:

  • Android security patch

  • vendor patch

  • bootloader firmware

This matters because FP6 rollback protection appears tied to vendor SPL too. (/e/OS community)

Step 3 — Verify patch level

In Android:
Settings → About phone

Check:

  • Android security update

Make note of it.

Step 4 — Unlock again

Enable:

  • OEM unlocking

  • USB debugging

Then:

adb reboot bootloader

fastboot flashing unlock

fastboot flashing unlock_critical

Step 5 — Reflash iodéOS

Use your:
iode-7.5-20260506-FP6-fastboot

This is newer than the early problematic FP6 iodé builds. (iodé community)

Step 6 — BEFORE locking

Boot iodéOS fully once.

Then check:

adb shell getprop ro.build.version.security_patch

If it is older than the stock Fairphone patch you installed in Step 2, DO NOT LOCK.

Step 7 — Lock correctly

Then do:

adb reboot bootloader

fastboot flashing lock_critical

IMPORTANT:
When the phone reboots:

  • immediately hold Volume Down

  • return to fastboot

Then:

fastboot flashing lock

This order matters on FP6. (Fairphone Support)


One more important thing

Your output shows:

slot-successful:b:no

slot-successful:a:yes

That is not automatically bad, but it suggests slot B may never have been fully booted after flashing.

If the problem persists after the stock-update procedure, the next thing I would investigate is whether the iodé installer only populated slot A correctly and left slot B inconsistent for AVB verification during relock.

If you get to that point, I can walk you through checking:

  • active/inactive slot contents

  • AVB metadata

  • vbmeta signatures

  • rollback indexes

  • slot synchronization

without risking a hard brick.

*At this point, though, the rollback/SPL mismatch explanation is by far the most probable cause.
*
On my FP6 I have paused at Step 4 in the above Recovery Sequence because FairphoneOS latest build for FP6 (FP6.QREL.16.61.0) has an Android Security Update dated April 5, 2026 which is newer than the April 1, 2026 Android Security Update for iodeOS 7.5.

So, I will wait another month and give it another try again once more with iodeOS 7.6. If that attempt triggers the FRP again then I will look to install some other OS on my FP6 frankly as my current phone is barely holding charge to get me a through an entire day. Hope this helps as in the above proposed solution by @rik, he is not expressly asking you to go back to Fairphone OS to unroll the FRP back. If you remain on iodeOS after the FRP is trigerred, you may not be able lock the bootloader even with a newer version of iodeOS, at least that was my experience…*
*

Thanks for all the input. I still have a few questions, though:

  1. Is it really important to go back and flash FairphoneOS?
    To “clean up the system,” so to speak?
  2. Or should it be enough to flash a newer version of iodéOS with a higher security patch level?
    (I’m currently using iodéOS 7.5 with an unlocked bootloader for testing purposes until the next update.)
  3. Do I need to have a locked system before the next attempt? As a sort of reset before going through the iodéOS installation process again?
  4. If installing FairphoneOS is recommended, how important is it to install the latest (OTA) updates after installation?
    Couldn’t that result in an too high security patch level for iodéOS 7.6 again?

Thanks in advance!

  1. Yes, when I flashed the latest Fairphone OS, a confirmation message indicates that if you proceed with flashing FRP will be removed/reset.
  2. I already tried this method while updating via OAT from 7.4 to 7.5. Did not work for me. Flashing 7.5 via fastboot did not make a difference either.
  3. I do not think soI think the key is to break the cycle by installing the latest Fairphone OS build.I have yet to test this step my self though.
  4. My understanding is installing the latest build is the way to to undo/reset the FRP. I also tried installing the Feb build of Fairphone OS and that did not do the trick presumably because what had triggered the FRP had a later android security patch date.

I hope to break out of the FRP trigger cycle with my next attempt I will have to wait for May android security patch come through first. Hope this helps…

The reason the FP 4,5,6 were removed from the graphical installer was specifically to reset FRP since before that FPOS users were getting in trouble that way. But FRP is triggered by not removing a Google Account before reflashing, it is NOT the same as ARB (“Anti-RollBack Protection”) which is what I think you are dealing with (this is what “prevents” rolling back to an older vendor security patch).

The newest Fairphone OS now includes a May 2026 “vendor security update” that is not yet released for their LineageOS port, so yet again you will need to wait another month if you put that newest FPOS on your device before the iodéOS version catches up and will not trigger ARB. Sorry.

To be honest, I’m a little uncertain right now about what to do when iodéOS 7.6 comes out in June.
I never had a Google account logged in on my FP6 (FPOS with Android 15 dated February, if I remember correctly).
When I first started it up, I actually skipped everything and just checked the general device functions.
After that, I tried installing iodéOS 7.5. And that’s still the current status: iodéOS 7.5 with an unlocked bootloader.

In your opinion, what steps should I take when iodéOS 7.6 comes out?

Thanks in advance!

FYI: Fairphone currently offers these releases for download on their support page:

Android 15

Version: FP6.QREL.15.178.0
Release Date: 05 March 2026
Security Patch: 05 February 2026

Android 16

Version: FP6.QREL.16.48.0
Release Date: 16 March 2026
Security Patch: 05 February 2026

Version: FP6.QREL.16.61.0
Release Date: 28 April 2026
Security Patch: 05 April 2026

@rik thanks for correcting my understanding. It should be the trigger of ARB not FRP causing my issues. But, I think I am still going to stick with following the recovery sequence as it states “The moment you try to relock, Android Verified Boot (AVB) enforces rollback protection and rejects the installed system as “corrupt”.”

As for the May FPOS, I will not install it. FP6 is not my daily driver yet. So it is turned off and tucked away in a drawer. Besides, I do not have any other idea to try now…

Has anyone already tried flashing iodeOS 7.6 onto their Fairphone 6?

I’ve tried it, and it’s not quite working/good yet - at least the boot phase isn’t right.
Current status: The Fairphone boots up but and gets stuck for minutes while loading the OS without anything happening. And sometimes I do get into the OS…
I’m not an impatient person, but after 10 minutes of the boot screen (iodé - www.iode.tech), I do end up giving up…
The only thing that helps then is a hard shutdown by holding down the power button for a long time.
Can anyone confirm that the boot phase takes an unexpectedly long time? To the point where you start to worry a little about the very white boot screen burning into the OLED display?

By the way, with iodeOS 7.6 you can lock the bootloader without getting a corrupt device.

For now, the FP6 is booted into iodeOS, I can use it but I do not dare to perform a reboot or power it off…

I’m thankful for any insights here.

PS: I was playing around with 7.6 (without rebooting :wink:) and I noticed that the cameras aren’t working. In the default Camera app, none of the cameras (normal, wide, front) display an image. Other apps, such as QR code scanners, also don’t display an image.
Now I can’t even launch the camera app anymore because, according to a toast notification, a “critical error” is preventing it.
Either 7.6 isn’t quite ready yet, or I messed up while flashing it…

And I noted that the phone’s speakers are not working either. Bluetooth audio is working well.
So, cameras and speakers not working on MY FP6 with iodeOS 7.6.
With iodeOS 7.5 I had no issues with the phone - just the bootloader locking problem.

Where should I put a bug report?
Or does anyone have an idea what I could check first?

This time around it worked for me after following the 6 Step Fix above combined with the iode-7.6 and I was able to lock the boot loader, yay! Camera seems to work and seed vault back up seems to have worked for the most part. (pictures transferred but not the audio files)

Hi @dyedbird
that sounds really good.
Would you do me a favor and provide more details for the first 3 of the 6 steps?
Which version of the stock OS did you flash (link)?
Did you actually install all the OTA updates?
And with this setup - stock OS and iodeOS - did the security patch level work out okay?

That would really help me out.
Thanks in advance

Hi @knefl , here is the link to the official fairphone OS installation site:

https://support.fairphone.com/hc/en-us/articles/18896094650513-How-to-manually-install-Android-on-your-Fairphone

You just need to install the latest version from here. In my case, I checked and there were no OTA updates for me. But as a reminder this was about a month ago. So you just need to follow the steps and only flash iode OS WHEN SPL date of iodeOS is newer than what you have installed in Fairphone OS. Also it is important to follow the two step locking procedure as outlined in the fix.

Hope this helps…

All those issues seem a bit surprising. Possibly doing a “factory reset” will clear up any residual issues? If you haven’t migrated back all your data yet this is the easiest thing to try at least…

Hi @rik
You’re right - the easiest thing to do is just try out the factory reset.
So that’s what I did.
But the strange behavior persists:

  • Takes 10+ minutes to boot
  • Cameras are broken
  • Speakers don’t work

However, I’m afraid that by installing iodéOS 7.6 and locking the bootloader, I may have raised the security patch level above that of the stock Fairphone OS… :worried:

You mean making it impossible to lock when going back to stock?

I use iodeOS since months on the FP6, the problems you describe never occured to me. Maybe try installing iodeOS justmall over again, nothing to lose I guess after the locking and erasing all the data

I wanted to share a bit about my weekend.
It went well. :smiling_face_with_sunglasses:
Basically, I followed @dyedbird’s 7-step plan:

  • I downloaded this version of the Fairphone stock OS: https://android-builds.fairphone.com/FP6/A16/FP6.QREL.16.61.0.20260401182351_WS19-factory.zip
  • And flashed it according to Fairphone’s instructions.
  • Booting was no problem, and everything else went smoothly as well (the cameras and speakers were working again).
  • However, I didn’t dare to unlock the bootloader (it wasn’t necessary in the end anyway)
    • The previously flashed iodeOS 7.6 theoretically has a higher security patch level than the stock OS
    • fastboot flashing get_unlock_ability returned 0, and reportedly that’s also bad for locking…
  • Then I flashed iodeOS 7.6 again
  • Booting was fast, and everything else was fine as well
  • Then, as in Step 7, I unlocked the bootloader and successfully booted the OS.
  • After setting it up again, I rebooted (just to be safe :wink:) and then disabled OEM unlock (and rebooted again)

Everything is running smoothly now, and with the help of Seedvault Backup/Restore, I was able to transfer a large portion of my apps and data.
I’m happy, and that’s a good thing. :smiling_face:

Thanks again to everyone for standing by me with your advice and time.

I’ll mark the post with the 7 steps as the solution because it helped me the most.

Take care, and (hopefully not :face_with_tongue: ) until next time.
knefl

@mihi I downloaded & flashed iodeOS 7.6 a second time after it was this kind of broken after the first time. But at least in my case it didn’t change anything. But thanks for the advice anyway. You are right: There is nothing to lose by flashing it a second time.

2 Likes

Glad you arrived, but slightly confused: Do you mean you then locked the bootloader (after not locking as part of installer and while unlocked then checked all was working well you then locked the bootloader)? Meaning, are you locked now, with “allow OEM unlocking” disabled, and all is working well?

1 Like