I updated my 4 year old Samsung Galaxy S3 ATT phone with CyanogenMod.
The original Android version was sluggish, boring and insecure. The new Android version is lively, fresh and more secure.
CyanogenMod is an open source Android operating system for Android smartphones.
I am very happy with the end result.
Note that the process to update an Android phone is very specific to the phone model and my experience is with the Samsung Galaxy S3 sold by ATT USA model SGH-I747 with the original Android 4.4.2 (Jelly Bean).
Pros and cons to upgrading an Android phone to CyanogenMod
- New life for an old phone
- New clean user interface
- New features
- No vendor crapware
- Faster performance
- Open source
- The Internet is filled with multiple ways to update, some outdated, some inaccurate
- Complicated project that requires a level of technical knowledge
- Time consuming project – research, backups, file copies, installing Android SDK, first boot are all time consuming
- Possible to brick the phone (render it broken)
I always wanted to try CyanogenMod being a big fan of open source software and clean user interfaces.
But I was afraid to experiment with my one phone, fearing the worst, bricking it then be suddenly without a phone.
Then I bought a new mobile phone and that left me free to experiment.
After a lot of research on the Internet and watching YouTube videos I realized that I could do it but wanted to find the easiest and most reliable path to CyanogenMod.
There is a confusing variety of methods for
- carrier unlocking (if needed)
- rooting (if needed)
- boot unlocking (if needed)
- flashing a bootloader
- selecting the CyanogenMod ROM
- backing up the original ROM
- transferring files to the phone’s SD storage
- flashing the CyanogenMod ROM
- flashing Google Apps
- and other details
I chose going to the origin, CyanogenMod, for the instructions and links to required software. CyanogenMod is abbreviated CM and the website is cyanogenmod.org.
I found the CM instructions for my phone good but not detailed and I did have some glitches.
If you are going to follow my path, I recommend using the CM instructions and reading my notes below.
I am very pleased with the results! My 4 year old Samsung Galaxy S3 is a joy with the new clean interface, lively performance, new features and security updates. Well done CyanogenMod people.
CM 12.1 (the ROM I chose) is based on Android 5.1 Lollipop. The new features I have discovered so far include Task Switcher, photo editing features, tethering, Encrypt phone and File Manager Secure storage.
I do not miss the crapware installed by ATT and Samsung on the original issue carrier locked phone.
When my 2 year contract with ATT completed I asked for the carrier unlock code which they supplied. I carrier unlocked my phone so that I could transfer my service to a less expensive pay as you go carrier and I kept my same phone number.
Google has discontinued support for Android KitKat. Plenty of security vulnerabilities have been found and exploited for this OS. No security updates is inexcusable and an ugly industry dirty secret.
I made sure my phone information was synced to my Google account so I did not mind wiping it. If your phone has important data (apps, SMS, contacts, photos, whatever) please backup.
Here are the notes on my path to update. I used a Windows 7 PC in the process. This worked for me Nov 26, 2016. I do not guarantee this process or the results.
How to install CyanogenMod on this phone.
Heimdall is a cross-platform, open source tool for interfacing with Download Mode on Samsung devices. The preferred method of installing a custom recovery is through this boot mode.
Rooting the stock firmware is neither recommended nor necessary.
The Heimdall Suite requires a SPECIFIC version of Microsoft Visual C++ 2012 Redistributable Package (x86/32bit) make sure you grab the right one.
How to install the new bootloader.
I used TWRP (Team Win Recovery Project, I was curious about the acronym) https://dl.twrp.me/d2att/twrp-184.108.40.206-d2att.img
I did not see a “blue transfer bar” as described in the instructions.
After installing this bootloader is is a good idea to backup your present ROM to the SD card (careful, the default is to internal storage)
For CM I used “Download Latest Release” from
For Google Apps (required if you will use Google Store) I downloaded CyanogenMod 12.1 OpenGApps from https://wiki.cyanogenmod.org/w/Google_Apps
Later you can flash them both at the same time.
How to install Android Studio. This will give you the adb utility and full app development if you want to play with that. Note installing this software takes a long time.
How to make adb command work from any folder with a Windows path edit
Add to Windows path
In the string above, modify username to match your path. Also, your path may be different.
Then reopen Windows terminal for the path to be in effect.
Adb issues and a workaround
Adb utility did not work for me so I could not issue the “adb reboot nvbackup” command or adb push commands. Maybe something to do with enabling Developer options and USB debugging https://wiki.cyanogenmod.org/w/Doc:_developer_options but this step is not in the instructions. Maybe Windows USB driver issues.
I ended up copying the CM ROM and Google Apps ROM manually to my SD card and flashing them from SD.
In retrospect is Google Studio with adb even necessary if it is only used to push files from the PC to the phone? There are other ways to put the files that you need on the phone’s SD card. Put the SD card in your PC SD card slot or use a SD card adapter and copy files. Or before the update, plug a USB cable into the PC and phone and copy files. Copy files to the SD card root folder. The two files that you need are the CyanogenMod and OpenGApps, both .zip files in my case.
The terms used for installing and updating Android are confusing. The memory on the phone where Android is installed is interchangeably called ROM, firmware, flash memory and memory. Android is called a mobile operating system, Operating System and OS. The Android file is called software, image, package or zip file. The process of installing and updating Android is also called flashing.
People often say “flashing the ROM” meaning installing the software, ie CyanogenMod, to the phone.
Yes ROM means Read Only Memory and is a historical term still used but not accurate.
First boot of CM takes forever! Do not panic!
How to Reset the phone to factory, not required but here for reference http://www.wikihow.com/Reset-a-Samsung-Galaxy-S3