Hi all, I’m a fairly new owner of a Fairphone 4, and while I bought the phone mostly for reasons to do with how ethically it’s produced, I’m quite intrigued by the comments and the discussions around the freedom users have to make changes to the Fairphone’s software. There’s lots of interesting conversations about OS and rooting the phone (a term I don’t yet fully understand).
Most of the comments I’ve seen seem to assume a fairly advanced (well, advanced to me at least) technical knowledge around this area, so I was wondering if anyone could recommend any sources as a starting point for someone like me to start making my phone truly my own?
I know I could Google this, but with so many discussions about people ‘bricking’ their phone I am worried about following the wrong instructions!
To get an idea of my level of understanding, I have some basic understanding of coding (JS) and have a Raspberry Pi that I occasionally make to do dumb stuff.
A Raspberry Pi is actually a great starting point, the knowledge you already have with that in regards to using the command line will definitely come in handy when messing with an Android phone.
When it comes to where to start with your hacking journey, I’d first ask what you are planning to accomplish.
I always find it really helpfully to set some loosely defined first goals when tackling new (and vast) technologies.
A Pi is nice, but if someone needs ADB, then installing that doesn’t require a Pi. And since we advocate sustainability, doing things with less would make sense. Windows has a Linux Subsystem nowadays. But you can also install ADB on Windows itself.
Playing with Linux can also be done in a VM where you can also use USB passthrough to connect the virtual environment to your phone. A Pi makes more sense when you will tinker with the hats and breadboards and do programming. Or when you use it as a cheap server. But to just install ADB, it’s a bit overkill. Just my opinion of course.
These few steps should get you there:
Flashing a custom ROM is best to do on a phone you could miss. Then it’s okay and less painful if and when you make mistakes. First read the docs from top to bottom to know any prerequisites and warnings. Then read it again, but then step by step.
I wouldn’t necessarily recommend using a Pi to run ADB either.
If it is already set up with Raspberry Pi OS it still might be a great starting point though. Why spin up a VM (or maybe learn how to do that) when there’s a working Linux system in a drawer desperately waiting to be used
But yeah, there are easier ways to get ADB up and running on any OS.
I would add: If you aren’t sure about what to do at any given point, don’t be afraid to ask other people. The documentation can sometimes be extremely lacking or it may be outdated, better to check before doing something potentially damaging to your devices.
As hirnsushi says, it’s important to set goals and work progressively. I take it that you mean “enable the phone to do what I need it to do” and (just as important) “understand what my phone is doing and how and why”. That’s a pretty broad agenda and the subject is vast.
I don’t want to sound discouraging, but I think it’s important to stress one or two points.
The first is that, especially when manipulating a device that you need to maintain in a working state, don’t undertake any operation unless A) you know why you need to do it and the consequences and possible risks, B) you’re sure you understand what you’re going to do at each step, and why, and C) you know how to reverse the process (in one way or another).
My second point has just been made above while I was writing this, but I’ll repeat it anyway: documentation, even professionally written, is sometimes difficult to follow because it may assume you will know what to do at certain moments and as a result may not provide enough detail for a beginner. Also a main procedure will often refer to other procedures that need to be done and that are documented elsewhere. Just like in code. This is mostly because writing thoroughly detailed “how-tos” that are easy to follow, is quite exhausting. So don’t hesitate to ask for advice if you’re not sure you understand some point.
Third and lastly, keep a detailed record. Why? What objective? How? Documentation used. Details of everything you do, operation by operation, command line by line (and the machine’s responses). That way you’ll always be able to check back that you did what you intended to do, it will be easier to get help and you’ll learn much more easily from your mistakes.
First using a spare phone if you have one I think is one of the best pieces of advice.
And I also think that OldRoutard’s “keep a record of what you’ve done and which guide(s) you followed/which command you’ve taken from where” is a good idea.
What I would like to add are two things.
While I know it’s not true for everyone, my experience often was that people trying “techie” things for the first time tend to ignore/dismiss error messages and just go on (with everyday consumer stuff that usually doesn’t end in desaster).
I would advice against that when flashing a custom ROM.
If things go wrong, it’s rather vital you can quote the exact messages you got and not just “there has been an error but I clicked it away”. And as the steps depend on each other, in the best case the steps after an error just run into an error as well. Worst case they brick your phone or at least make it very hard to recover.
And the second point is more of a “bonus task”.
If things go very sideways it’s usually a good idea to install the stock ROM again to have a known good state as the starting point for another try.
So if you’re not too impatient you could first try to manually install the stock ROM before the custom ROM. That way you can at least get a feel for the process and the risk of problems IMHO is somewhat lower than directly trying to install a custom ROM. The learnings are smaller, sure, but some of the “stupid” error sources can either be ruled out or fixed early (like incompatible USB cables/ports on the computer, missing drivers on the computer, basic command line problems, etc.).
To add something “practical” FP related: in my eyes the FP2 is the perfect device to start before using FP3 or FP4. The bootloader is unlocked and its not a A/B device and I think makes it less vulnerable to hard brick. You might find one second hand for a few bucks, you need a more or less working code module, display and Bottom module (you could add a search topic in the Forums market section)
I’m one of the Person who tend to not follow instructions word by word (therfore I managed to flash TWRP recovery to boot instead of recovery partition, the very first time I flashed something), not read pop up message properly before clicking away and I have never really written down steps and the FP2 forgave a lot of such deficiencies.
In the meantime and with the FP3 I’m more careful with this ,as it seems more things can go wrong, still I would advide to be not too careful/anxious you cannot plan everything that could go wrong.
That def saved me many times already.
My advice for the FP4 would be, dont tinker around with flashing, as long as the issue that bricked many phones already (also when manually inatllibg FPOS) is not fixed by FP.
You mean “bucks” I’m sure but yes I entirely agree, and with Ingo. I purchased a FP2 in full working order in order to be able to experiment and prepare moving my main FP3 to a custom ROM. FP2 is ideal for beginning to discover the ins and outs of Android (not just figuratively but I/O too!!)
Your advice on FP4 is very sound especially for a beginner.
I do agree it’s better to wait for Fairphone to resolve this…
…but if you really really need to tinker with your devices (as some of us do ) as long as you keep the bootloader unlocked, and I wouldn’t recommend anything else at this point, it’s generally pretty safe to play with the FP4. Just make sure you have a working backup strategy in place.
If you depend on it for any important task, practicing on an older device, like the others have suggested, is still the better (safer) option.
where are you located? I received a FP2 core module that seems to be working after I manually flashed FPOS (before that it would only start into recovery or fastboot mode). I have all other spare parts so I could send you a FP2 for 15€+ shipping costs. I would send it with a broken microphone bottom module, however you dont need a mic for tinkering with flashing. When you are instered send me a PM
Question: What do you mean be “truly your own”? A lot of people here would like to de-google their phone one way or the other. If you would like to do that, you will have to install an alternative OS aka custom ROM. And you will have to dig deeper into how flashing ROMs and other related stuff works.
I personally never understood why somebody who is basically against Google would buy an Android phone. An iPhone would be the clear choice here. Too bad of you want to avoid „Big Tech“ in general
I have gone all-in with Android, which means that I have a Pixel 6 Pro. My Google account is configured so that I share as little data as possible (e.g., no histories). And I use a number of alternative apps like FairEmail instead of Google’s, and I have my email, appointments and contacts at Mailbox.org.
A project like Fairphone is only feasible because Google invests heavily in Android and the Android ecosystem (not purely altruistically, of course). So I try to enjoy the benefits of Android while giving Google as little data as possible. But that’s something you have to decide for yourself.