Continuing the discussion from [UNOFFICIAL] Drafting a "Back to FP OS" HOWTO for people that tested the unofficial rom:
This is mostly for users that don’t care much about their data and just want to play with their phone
Let’s update this together (code, spelling …)
- Charge your phone to around ~80%
- Find a working SD card
- If you want to backup and restore your data: Make sure you really know how to backup the files you need and how to restore them. The backup & restore software on the Fairphone has limitations. Read about it. Don’t backup to the same SD card. Backup to your computer.
- Put the SD card in your phone (you can also save apps or your ‘temporary’ wlan password here so you don’t have to type it in again.)
- Install adb on your computer and make sure you can connect to your device
(if you cannot connect see the note “FP1’s USB port broken”)
- On your phone check: System Setting → Developer options → Stay awake [x] & USB debugging [x]
Check device availability with:
$ adb devices
Create a backup of all the things you need.
Okay, now get all the right files onto your computer somewhere. Keep in mind that files/links may change in the future. Carefully check the XDA thread if files are missing (files as of 2015-11-30). You wanted to do that anyway, right?
$ mkdir FP-4.4.4 $ cd FP-4.4.4/
Recovery 126.96.36.199 md5sum f5d1a4058b95414c51755aab037f80c8
$ wget https://basketbuild.com/uploads/devs/chrmhoffmann/fp1-kk-stock/recovery.img
Latest Rom (4.4.4/0.9.7 – don’t forget to check the xda thead for the checksum and the Changelog!)
$ wget https://basketbuild.com/uploads/devs/chrmhoffmann/fp1-kk-stock/fp1-kk444-CH-0.9.7.zip
Get the latest FP ROM (if you want to uninstall later again)
$ wget http://storage.googleapis.com/fairphone-updates/FP1-Fairphone_OS_v1_8_7_OTA_2015081400.zip
Move the recovery.img to your sd card that should be already in your phone
$ adb push recovery.img /sdcard/
Open a shell that runs on your phone (but is displayed inside the terminal on your computer)
$ adb shell
On your phone become root and replace the recovery.
Sometimes this does not work. Just try dd again and again. Ensure you are root on your phone!
$ su (root) # dd if=/sdcard/recovery.img of=/dev/recovery
Should return something like:
11376+0 records in
11376+0 records out
5824512 bytes transferred in 0.230 secs (25323965 bytes/sec)
Write it all to disk and reboot
(root) # sync
Use “exit” or “Ctrl-D” twice to leave the shells and to get back to your computer command line.
(Add a howto to check written /dev/recovery with comparing with dd and md5sum)
From your computers command line, reboot the phone into the recovery system
$ adb reboot recovery
The right recovery has a picture of a hat as background graphics (see a picture of it in the XDA thread here).
If you see something in yellow writing you still use Android’s recovery. The update will not work with this recovery.
dd'ing the other recovery again. Until you see the graphics with the hat as described above.
Once you’re in the recovery, activate sideloading
Choose: -> Install Zip -> install zip from sideloder
And sideload from your computer
Is the device around?
$ adb devices
Good, sideload the zip that you’ve download’ed before (check the file name!)
$ adb sideload fp1-kk444-CH-0.9.7.zip
After a while you should see the green
robot and something like
Sideload started …
Restarding adbd …
Finding update package …
Installing update …
Note: If you update from an older version (4.4.2) you need to choose “wipe data” from the recovery first. See: Errors/Issues below.
“Go back” and choose “reboot device now”
→ Reboot device
Rom may flash … Fix?
I always answer “No”
You will see an ANDROID logo instead of the
old Fairphone Logo
An the phone should boot up to Android nicely. Select the right launcher. There is also the possibility to install the old Fairphone launcher again.
If you like google apps, check opengapps.org for more information.
If the “Fairphone LOADING …” logo and the ANDROID logo come up again and again without any further progress and looks like the phone is stuck try to
- Reboot the phone into the recovery system by following this procedure:
Hold the Volume Up button, while at the same time press and hold
the Power button. Hold these two buttons at the same time for about 10
secs until the screen changes.
You will see something like:
Recovery [X] <-- Fastboot Default
Select “Recovery” with volume up and press volume down!
- Clean/wipe data/cache from the recovery
- Reboot again!
FP1’s USB port broken
If you cannot connect the FP1 to a PC even trying different cables and different PC maybe the FP1’s USB port is partly broken. It occurs…
Fortunately you can use adb over wifi if your PC and your FP1 are connected to the same wifi LAN. You just need to install an app on the FP1. There are some on Google store, among them “ADB wireless by Henry” is very simple to use. Just launch it and you will see the command to run: "adb connect ip-address, where ip-address may probably vary according to your network configuration.
From here you can follow the HOWTO as if you where connected by cable stopping just before “$ adb reboot recovery”.
As soon I you will reboot the FP1 in recovery mode you will lost your adb connection. So, you need to uploadfp1-kk444-CH-0.9.7.zip somewhere in your SD card. By example: “$adb push fp1-kk444-CH-0.9.7.zip /sdcard/”.
Now you can reboot in recovery mode: “$ adb reboot recovery”.
Then, instead of choosing the sideloader option you have to choose " Install Zip → install zip from sdcard" and point to fp1-kk444-CH-0.9.7.zip where you put it.
From here you can follow again the HOWTO at “Note: If you update from an older version (4.4.2) you need to choose “wipe data” from the recovery first. See: Errors/Issues below.”
Reboot into recovery again!
$ adb reboot recovery
-> install zip -> install zip from sideload
On your computer
$ adb sideload FP1-Fairphone_OS_v1_8_7_OTA_2015081400.zip
And reboot the phone after it’s all finished (check the phone for messages).
If needed or the system hangs with the fairphone logo:
- Shutdown the phone and reboot into recovery
- Clean/wipe data/cache in the recovery
- And reboot again!