Fairphone - FP5 - FP5 - Documentation Suggestions

thanks a lot for testing @Manoj ! but please do not ignore the other thread. it actually did not work for other people and was fixed by using fastbootD mode. also we needed to run the script twice. once in the fastbootD where it only fails in the very end and once more in the fastboot mode accessed via the freshly flashed e recovery.

this could actuallyb be the difference — did your people test this on a new phone as delivered by Fairphone or did they already start with an e recovery on the phone?

These were the steps the team member took :

Steps :

  • Bootloader was unlocked
  • Installed FP OS
  • Reboot the device from bootloader to FP OS
  • Initialized the device with FP OS
  • Installed FP OS update
  • Reboot the device to FP OS
  • Enableed Developer options
  • Reboot the device to bootloader
  • Ran the flash script to install /e/OS

Observation :

  • /e/OS installation was successful…

Hello !
A little suggestions to improve tests in script ‘flash_FP5_factory.sh’.

In Windows environnement (I think is the same for Linux environnements), if $PATH is not correctly setted ‘adb’ and ‘fastboot’ commands dosen’t work.

When check_unlock_status function is called it return :
Error: Your phone is still locked.
Did you execute ‘fastboot flashing unlock’?”

It’s beacause “no” is catched in the ‘if’ test of the function. But this “no” commes from the the response of fastboot getvar unlocked command.
Result of the command fastboot getvar unlocked (if PATH not set) :
bash: fastboot: command not found

So the “no” is in the not word between 'bash: fastboot: command ’ and the ‘t’ .


What I suggest :
Add a little function to test if adb and fastboot commands are correcty working before to test unlock staus.

Something ike that ? :

check_adb_and_fastboot_commands(){
  if (adb help 2>&1 | grep -q "command not found"); then
    echo "Error: adb command dosen't work."
    echo "Did you set correctly the PATH system variable ?"
    PHONE_IS_READY=false
  else
    if (fastboot help 2>&1 | grep -q "command not found"); then
      echo "Error: fastboot command dosen't work."
      echo "Did you set correctly the PATH system variable ?"
      PHONE_IS_READY=false
    fi
  fi
}

And of course to call check_adb_and_fastboot_commands before check_unlock_status function.

I hope my english was more and less understandable…
Let me know if I can be more clear.

Thank for all !

@Manoj Pease let me know if this post is at place here :wink:

Adb and fastboot are embeded into the “IMG-e-xxxxxx.zip”

the script have to be launched by a terminal opened from the extracted “/IMG-e-xxxxx” folder so no need for fastboot to be installed on the system.

But you are right, there is an error into the script… that have to be corrected !

1 Like

Yes, the script don’t go in subfolder where adb and fastboot are stored.

Hi,
in the section “Downloads for FP5” of the Doc you can choose:
-community
-stable

It says:

To understand the difference between /e/OS builds check this guide

But when you click on the guide there is no explanation for “stable”.
Could you fix that? I want to be sure what I’m flashing and that it’s the right version… Thx.

It is there. Search the page for

  • Earlier referred to as stable builds

There was a change in naming designation, official=stable, community=dev.

Hello,
You can install the Official release on a non-Murena bought Fairphone 5.
Tested, working really fine.

(It was not really clear for me before flash)

1 Like

Hi,
is the device page (Install /e/OS on a Fairphone FP5 - “FP5”) outdated? Is the 6G RAM / 128G Storage FF5 also supported?

I have 6 GB RAM/128 GB storage. Installation works okay.
Why it shouldn’t work?

It is not listed. The device page needs an update …

1 Like

Happy FP5 + /e/OS user here :heart:

Overall I loved the guide: Detailed, working links and CLI commands.

There are a few sections, that could use clarification:

  • "Android Security Patch Level" is "Android security update" on stock FP5 with Android 14
  • The many reboots during installation can be a little confusing. Clarification on what “get into bootloader means” and, if possible, just one way to get there would be helpful. Other users’ comments in this thread have been very helpful (thanks especially to @AnotherElk and @va1der )
  • More info on when to connect/disconnect the USB cable would be helpful too to avoid the insta-reboots by the phone also mentioned by other commentors in this thread
  • This one’s totally on me, but worth mentioning anyway: The installation guide refers to this release page for FP5: /e/OS official FP5 download. There I downloaded the latest version and went to the release notes site via the link: Releases · e / os / 🚀 Releases · GitLab. At the time of writing this, the latest version on the gitlab is v2.6.4-t. I thought: “Yay, Android 14 for me!”. Only after installing and seeing that Android 13 was the current version, I noticed that the latest version I had downloaded was 2.6.3-t, lower than the latest version on gitlab. Luckily the security patch version was compatible - so the phone didn’t turn into a brick. Again - I should have been paying better attention to the difference in the version number. But maybe a way to help other users avoid this kind of human-error could be to place links to the matching version-specific release notes of each IMG- file next to the download links.

Thanks to the /e/OS team for this awesome guide. I am ecstatic to be able to use my Fairphone 5 de-googled and choose exactly where I want to use something non-FOSS.

1 Like

Hello,
it was the first time i tried to install a new OS on my Smartphone, so i am a total beginner.
The guide did not work for me, but i managed to install Fairphone OS again and will try a second time later.

Here are some points i would like to mention:

  • is the feedback and the improvements from this discussion here already implemented in the documentation?
  • It may sound awkward, but i could not find the “Details”. It does not look like a clickable element to me. There is the triangle, but the word itself has the same style as the text. This accordeon-Element is also the only one used in the documentation, so i did not expect it. A stronger indication would have helped me, like unterlining it or simply showing the contents of the box without hiding it.
  • i found it hard to identify the security patch Level of the /e/OS Version. In the documentation it says “/e/OS build : U community (Security patch: 2024-11-01)”. When following the link, the download Name was “IMG-e-2.7-u-20250110460550-community-FP5.zip [MD5 | SHA256]” which i interpreted as 2025-01-11, so another date. In the release notes it says at the very Bottom of every release “This /e/OS v2.7 version includes the Android security patches available as of December 2024.”. And following this link the android documentation mentions two different dates in December. Those different dates really confused me (but every date written was past the Security Patch Date of my phone, so i thought i could proceed safely).
  • the red box beneath “locking the Bootloader” talks about reading the Caution-Section before installing /e/OS. But at this thime in the Guide you already have installed /e/OS, so the red box should read “(…)before locking the Bootloader” instead of “(…) before you proceed to install /e/OS on FP5.”
  • “* Rollback protection errors are FATAL when the bootloader is LOCKED.” are those two commands - lock and lock_critcal - building on each other, and i must “lock_critical” before i “lock”, or can i just lock critical and leave the other one unlocked to prevent bricking the phone?
  • it says “plug it into your computer” only at step 2 in “Locking the Bootloader”. Is it critical to have it unplugged before? if yes, when should i unplug it?
  • After the script flashed the files, the smartphone started automatically into /e/OS which really confused me. Do i have to click though the wizard and then enable DEV Mode and OEM unlock again before locking the Bootloader?
3 Likes

Hi @rendersnack welcome to the /e/ forum.

These are all good comments about the difficulties of one’s first install of fp5, perhaps we can help for your next attempt. However we are asked in this category

Perhaps you would like to start a new topic for specific help.

On linux, you should be able to issue “fastboot oem allow-flashing” command if you only made it through the “fastboot flashing unlock_critical” step and then run the flash_fp5_factory.command with all the checks commented out. The main program starts at line 365 and I commented out the integrity_check and is_unlocked and was able to run the script and get Fairphone OS back on the phone. (THIS IS DANGEROUS - YOU ARE REMOVING THE SAFETY CHECKS FROM THE INSTALL FILE)

That being said, I wanted e/OS on the Fairphone 5 with a locked bootloader, so I started over, installed Fairphone OS (Android 13) and then laid down Murena e/OS 2.7 for Android 13. (I had this combination installed previously on this Fairphone 5 so I know it works, I still had the same install files and the security patch levels are all ok) I commented out the “reboot_device” at the end of the flash_FP5_factory.sh install script in the eOS image (IMG-e-2.7-t-20250111460957-official-FP5) since the instructions say to issue the “fastboot flashing lock_critical” BEFORE the phone reboots.

prod:~/Downloads/eOS/IMG-e-2.7-t-20250111460957-official-FP5$ fastboot flashing lock_critical
OKAY [ 0.027s]
Finished. Total time: 0.027s

I get the screen on the phone with the warning that locking the bootloader will erase all data. I accept and the phone reboots. Next, upon reboot I go through all the steps to set up the phone so I can enable USB debugging and connect the phone via USB. (The same one I’ve used for this multiple times.)

Back out to a command prompt and check the device status:

prod:~/Downloads/eOS/IMG-e-2.7-t-20250111460957-official-FP5$ fastboot oem device-info
(bootloader) Verity mode: true
(bootloader) Device unlocked: true
(bootloader) Device critical unlocked: false
(bootloader) Charger screen enabled: true
OKAY [ 0.001s]
Finished. Total time: 0.001s

Good, looks like I’m halfway there…critical is locked now I just have to issue the second lock command and I’m all good, my bootloader is locked and my data is secure, right?

bpp@prod:~/Downloads/eOS/IMG-e-2.7-t-20250111460957-official-FP5$ fastboot flashing lock
OKAY [ 0.027s]
Finished. Total time: 0.027s

The phone reboots and I get the message, “Your device is corrupt. It can’t be trusted and will not boot”.

Now when I issue the “fastboot oem allow-flashing” command, I get the following response…

prod:~/Downloads/FPOS/FP5-TT4H-factory$ fastboot oem allow-flashing
FAILED (remote: ‘unknown command’)
fastboot: error: Command failed
bpp@prod:~/Downloads/FPOS/FP5-TT4H-factory$

And the fastboot version…

prod:~/Downloads/eOS/IMG-e-2.7-t-20250111460957-official-FP5$ fastboot --version
fastboot version 34.0.4-debian
Installed as /usr/lib/android-sdk/platform-tools/fastboot

It appears I might not be able to get around the bricking this time. Any thoughts? I followed the locking procedure and yet it still bricked the device. Also of note, I was never able to get into fastboot mode using the buttons on the device - I alwasy had to issue the “adb reboot bootloader” or “fastboot reboot bootloader” command.

Why is downloading IMG-e-2.8-a14-20250221470208-community-FP5.zip taking so long? The downloading stopped at 170 MB, still downloaden about 4 GB extra? How big is that file, 1,8 GB… Why not mention that?

Hi.

As mentioned in this topic Bug: It not possible to lock the Fairphone 5 with the community eOS 2.7 img , it would be great if there were a notice that locking the bootloader with the community version does not work.

1 Like

Thank you so much for your help (you and all people here ^^)

Personnally, I just have to do one more step at the end so that everything runs smoothly :
I have to run again adb reboot bootloader just before fastboot flashing lock

1 Like

Hi my 2 cents: this is for linux users (maybe there is an assumption that all linux users are very tech savvy, that maybe true for some, but maybe not plebs like me, even though i am professionally using linux since 2008 ish…)

  1. The directory where you place your unzipped files to flash, and where you put your android-sdk-tools is very important, if you have not added in the path to the config to run adb commands from anywhere…(Installing adb and fastboot on a Linux PC)
  2. For the life of me, i could not run chmod with or without sudo. i did not see where it is written in the command line guide here (Install /e/OS on a Fairphone FP5 - “FP5”) on the fair phone 5 install documentation. but finally what what worked after half day of tinkering was simply “sudo su” and then run the chmod flashing script as root. Sudo just did not work. (perhaps distribution specific and user specific but good to know if there was a one line there saying something to think about with a disclaimer…)
  3. And for new people who have no idea, (and i can not even remember it, because it had been 10 years since i flashed any custom rom) so botloader, fastbootd, and recovery screen are 3 different places in fair phone 5, and i somehow got into the issue of which mode i need to be in to flash becasue of #2 the flash was not working. So perhaps 1 small para explaining all 3 screens and then re-iterating which screen you should be on when flashing might be super helpful.
  4. “Under locking the bootloader…” heading on the Fp5 commadn line doc, it says, “Once you have completed the above steps and before rebooting you can lock your Bootloader…” but the phone auto boots into OS, this should be clarified, to get back into which screen fastbootd, recovery, bootloader ? just one sentence would do.

regards.

I just installed /e/os on a Fairphone 5, using the community build and manual installation steps.

I too was puzzled on how to perform the last step (chmod…) as the command left me waiting to find the device and nothing happend.

I luckily found your remark about sudo and root permissions and indeed, after first getting root access with sudo su, it was a breeze. Thanks!

@Manoj : this definitely needs to be added to the guide. For the record, I am using the latest Fedora.