Most of you who have owned an Android phone will have, at some point, heard the term ‘Custom ROM’. This is just one of many terms that relate to a sub-section of community driven software/firmware revisions known as ROMs that can fundamentally change the way a device looks, acts and functions. They are normally not supported by the OEMs themselves and any kind of support is purely down to the discretion of the developer. So, are Custom ROMs a good thing? Are there any downsides at all? Let’s dig into this in more detail.
First and foremost, Custom ROMs have been around in some form or other for a long time. Prior to Android itself, ROMs were being developed for Windows Mobile devices. The first Custom ROM I ever used was for the O2 XDA Orbit (Codenamed: Artemis). The Custom ROM deployed Windows Mobile 6.1 to the device and introduced a software skin previously unseen on the device named TouchFlo 3D. This would later be changed by HTC to be called HTC Sense, and we all know how that has grown since.
This illustrates the power of the Custom ROM developer community. Bringing bleeding edge software to current devices, and delivering older devices new leases of life by providing backwards compatibility with current software.
Stock & Improved Experiences
One of the main advantages in recent years has been the ability to deliver Stock software experiences, as Google intended, to devices that previously had been blighted by carrier bloatware or that simply had poor software experiences. These ROMs are usually created using the AOSP (Android Open Source Project) builds to deliver stock functionality. In the US, AT&T, Sprint and Verizon, and in the UK, Vodafone and O2, often have exclusive devices that are emblazoned with applications that are badly coded and utterly useless to many but are deployed for marketing purposes with the device’s software. AOSP ROMs are most useful for these types of devices and can improve the experience and performance of a device immeasurably.
Then, there are ROMs that deliver platforms to change, and usually improve on, functionality that is within the Stock software as well as carrier specific software. For example, there are numerous HTC M8 ROMs available Some of these use standard HTC M8 ROM builds with HTC Sense, and deliver performance enhancements, tweaks to certain files, and visual improvements to give a better-than-out-of-the-box software interface.
Additionally CyanogenMod is an aftermarket ROM for the delivery of performance and software enhancements on a grand scale. It delivers the ability to customise areas of the system that were previously off-limits, provides application tweaks and gives an all-round improvement on most devices to which it is installed.
All of these ROMs are available in community forums which alone are worth their weight in gold. Whether you’re looking for performance tips, troubleshooting, or simply the latest application from a specific ROM build, forums such as XDA Developers, and RootzWiki will give you access to the people required to answer your questions. Often users will frequent these forums to ascertain if there is an issue with an existing out-of-the-box software deployment for their device, before getting assistance on which Custom ROM fixes this issue.
These forums can also deliver general tips and tricks to enhance your experience with your device.
Updates & Support
Deploying new software revisions to devices for carriers/manufacturers can be a long drawn out process. Usually there are numerous stages to testing and phased roll outs meaning it can be several months before a device receives a critical bug fix or, more importantly, a fix for a security loop-hole. Carrying on with CyanogenMod as an example, it receives regular stable updates and development nightly updates to its software to give the best that is available in terms of security (amongst other metrics) more quickly than many manufacturers can deliver.
Custom ROMs also give the ability to continue receiving software updates and device support long after the manufacturer ceases support for them. As previously mentioned, CyanogenMod update their software very regularly, but that’s not something that manufacturers are usually famed for. The community looks to plug that gap by delivering updates and software innovations to devices long after their end of life.
A legendary example of this is HTC’s HD2. This device was released in November 2009, which in smartphone years, makes this device extremely old. This device originally ran a Windows Mobile 6.5 (Note: not Windows Phone) operating system. Since then however, the XDA Developer community have created ROMs to deliver Windows Phone 7, Ubuntu, MeeGo, and Android operating systems to a device that is no longer supported officially by HTC. Not only has this helped the device stay present and still a viable device, it, in turn, has helped maintain its resell value also.
Don’t let the above fool you. It’s not all rosy in the Custom ROM kitchen. There can be some major downsides.
Device Risk & Security
Firstly, in order to deploy new software to your device, you will no doubt have to extend accessibility for your device, by ‘rooting’ it; a method of providing administrator access over all device functions. Not all devices currently have a method for achieving root access however the vast majority do. Delivering root access to your device will almost certainly require a bootloader unlock. Again, without getting into the technical whys and wherefores, a bootloader is a specific piece of software written to load the operating system for a device.
Unlocking your devices’ bootloader and rooting the device can a) void manufacturers warranty, and b) more importantly perhaps, can cause a device to stop working entirely, or ‘brick’ the device. Whilst It is true that there are many ways in which users can revive their ‘bricked’ devices, it is by no means guaranteed, hence why most Custom ROM developers embolden their instructions with caveats and disclaimers.
Not only can working through the above provide a headache and potential instability with the device itself, if rooting and unlocking all goes according to plan, it can still deliver security implications due to the elevated level of access the device now has. Malware, or malicious applications, can exploit this new level of access and cause some pretty nasty results and users need to take extra care to mitigate this additional risk.
Whilst support generally can be enhanced by delving into the world of Custom ROMs, it’s also entirely possible that you;ll need to use it a lot more because of your choice. Whilst there are some notable developers and some tried and tested methodologies around deploying Custom ROMs there are, invariably forum threads with hundreds of thousands of questions regarding fixes for applications, issues with the deployed ROM, and much more aimed at the developer. For the most part, developers will be present and will try to deliver fixed for issues that the community at large encounter. This isn’t a given however and needs to be remembered when engaging in these activities.
Your mileage may well vary and within those hundreds of thousands of posts will be many, many unhappy individuals suggesting that “on their device” such and such no longer functions. It’s worth bearing in mind that in order to test the software to a good level, access to these devices are needed. It’s rare that more than a dozen development teams have access to devices and can make ‘stable’ software deployments first time. The issues that users might find could be as minor as Wi-Fi dropping periodically, and poor battery performance to instability in the software itself and random boot loops occurring. It can be a minefield.
The simplest way to put this is as follows: If you want to install a Custom ROM on your device, do so, but ensure that you are fully aware of the potential ramifications, as there might well be no help out there to right the wrongs it creates. CyanogenMod, to use them as an example again, pride themselves on testing, deploying and supporting their software for a significant period of time, across many devices. That’s the sort of clout you want behind your chosen Custom ROM as it could be the difference between a pleasurable and painful user experience.
By far the most risky aspect of installing Custom ROMs is the unlocking and rooting procedure. This can, and has (to me specifically) rendered a device nothing more than an expensive paperweight when attempting to start along the road to Custom ROM-ville. Most developers do go into much more depth around the instructions that the early days however and should provide sufficient information to ensure this won’t happen.
Scaremongering aside, Custom ROMs do offer the devices’ owner the prospect of getting updates sooner, fixing stock software related issues, and providing much improved performance over the out-of-the-box experience in many cases. If you’re game, it’s well worth the effort and many users have a successful and eventful life with their devices because of it.