A couple of months ago, I got a new phone from work, a Samsung Galaxy S5 G901F (also known as Samsung Galaxy S5 Plus). Ever since there are several points which greatly annoy me:
- Samsung's Touchwiz interface is just a pain in the ass, it's bloody slow and looks ugly (trying to look iPhone-alike)
- Already came across several bugs (Wifi tethering doesnt work, mail sync issues, ...)
- Seen no updates so far - the phone is still on 4.4.4 but Android 5.1 is meanwhile out
- Bloody customizations from the phone provider (Swisscom)
- Other bloatware
Whenever such annoyances bugged me, I ditched the stock ROM and replaced it by CyanogenMod (successfully installed Cyanogenmod 7 on Motorola Milestone and later Cyanogenmod 9 on a Samsung Galaxy S2). So I decided to finally do it on the Samsung Galaxy S 5, too.
But that's easier said than done.
Spoiler: The reason for all this is because the Samsung Galaxy S5 Plus G901F is not a klte device, but rather a kccat6 device.
1. Cyanogenmod's install instructions for the Samsung Galaxy S5 don't work
The official documentation how to install CyanogenMod on the Samsung Galaxy S5 simply didn't work. When I tried to flash the custom recovery with heimdall, I got the following errors:
heimdall.exe flash --RECOVERY "C:\Program Files\Heimdall\recovery.img" --no-reboot
Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna
This software is provided free of charge. Copying and redistribution is
If you appreciate this software and you would like to support future
development please consider donating:
Setting up interface...
Protocol initialisation successful.
Some devices may take up to 2 minutes to respond.
Please be patient!
Downloading device's PIT file...
ERROR: Failed to send request to end PIT file transfer!
ERROR: Failed to download PIT file!
ERROR: Failed to send end session packet!
Releasing device interface...
2. Manual installation of a custom recovery is tricky
In order to install Cyanogenmod I first need to have a custom recovery on the phone. I tried different versions of TWRP, CWM but almost all of them showed an error message ("Could not do normal boot") when I tried to boot into the Recovery mode and it went straight to the Download Mode.
The issue here is, as I found out later (see Spoiler above), that the phone is not a klte device. And almost all firmwares, roms and root instructions are made for the klte type of the Samsung Galaxy S5. But the G901F is a kccat6 device.
I was finally able to find a working CWM file which I could flash with odin.
3. How to manually flash a custom recovery (CWM) on your G901F
Eventually I came across the following post in the XDA Developers forums: SM - G901F Rooted at last ! CWM Recovery in English !
Halleluja! With the downloadedable file (g901f-cwm-recovery-126.96.36.199(1130).tar) I was finally able to put CWM on the phone (and it staid there after a reboot, too).
Here's a step by step instruction:
3.1 Download odin3 v3.09 (or newer) from http://odindownload.com/.
3.2 Download and install the Samsung USB drivers (SAMSUNG_USB_Driver_for_Mobile_Phones.zip) from http://developer.samsung.com/technical-doc/view.do?v=T000000117. You should probably reboot your computer afterwards just to make sure.
3.3 Unpack the odin zip file and launch the odin3 exe (Odin3 v3.09.exe).
3.4 Power off your Samsung Galaxy S5 G901F phone.
3.5 Boot your phone into the Download Mode by pressing the following buttons altogether: Volume Down + Home + Power until you see a warning triangle. Accept the warning by pressing the Volume Up button.
3.6 Plug your phone with the USB cable to your computer. In Odin the device should now be detected by showing the communication port in ID:COM. In my case this was "0:[COM8]".
3.7 In Odin, disable the "Auto Reboot" option. On the right side (Files [Download]) click on the "PDA" or "AP" button and select the previously downloaded g901f-cwm-recovery-188.8.131.52(1130).tar file. Then click on the Start button.
Odin will then display several log entries in the "Message" box. Wait until there is a green box "PASS" displayed above the communication port.
On your phone a blue bar should have appeared.
3.8 Disconnect your USB cable from the phone. Open your phone and take the battery out (yes, the phone is still running). Wait a few seconds and place your battery back in, close your phone.
3.9 Boot your phone into the Recovery Mode by pressing the following button combination: Volume Up + Home + Power. Keep it pressed until you see a small blue text appearing on top of the screen.
3.10 Congratz! You are now in CWM, a custom recovery.
4. Installation of CyanogenMod - fail
Now that the custom recovery/CWM is installed and working on the phone, I proceeded to (finally) install CyanogenMod. I booted the phone normally and copied the current CM12.1 nightly (cm-12.1-20150702-NIGHTLY-klte.zip) and the Google Apps package (gapps-5.1-2015-06-02-15-19.zip) to the phone's internal storage.
Afterwards I powered off the phone and booted into the Recovery Mode.
In CWM, I wanted to install CyanogenMod by using "install zip" -> "choose zip from /sdcard" -> select cm-12.1-20150702-NIGHTLY-klte.zip.
The following error message then appeared on the phone:
This package is for device: kltexx, ltelra, kltetmo, kltecan, klteatt, klteub, klteacg, klte, kltekor, klteskt, kltektt; this device is kccat6
This is when I (finally!) found out that I have a Samsung Galaxy S5 Plus which isn't a klte device. Hence I could finally explain myself why so many trials to install a custom recovery failed.
Unfortunately to this day, there is no CyanogenMod version for this device (kccat6) available. A forum thread exists where you can add your demand: http://forum.cyanogenmod.org/topic/104658-samsung-galaxy-s5-plus-sm-g901f/
But at least now I'm prepared with CWM if CM ever comes to this device.
Additional notes: A working tutorial how to root your G901F can be found here: http://androidxda.com/root-samsung-galaxy-s5-lte-sm-g901f
Update July 15th 2015: I was able to install CyanogenMod 12.1 on my G-901F today. I wrote a step-by-step guide how to install CyanogenMod 12.1 on Samsung Galaxy S5+ G-901F.