Disclaimer: This post is for informational purposes only.
Such is the temptation of Prime Day, I ended up with a bottom of the line Amazon Fire 7”, 5th edition. For the specs they are JUST. SO. CHEAP. I also recently lost my pre-Samsung 2013 Barnes & Noble Nook to a silly design flaw where, if it runs out of battery entirely, there may be a chance that you won’t be able to turn it back on again ever. The prevailing “fix” for this is to replace the charging cable which, being proprietary, cost as much as buying a new Fire tablet anyway.
Most unfortunately, though completely expected, the Fire OS that comes with this nifty little tablet is total trash. And by all accounts, Amazon has pulled out the stops to prevent people from replacing it. As OS versions and firmware change, it’s challenging for Android “modders” to keep with the times, and seeing as Amazon must make most of their money with this version of Fire through serving advertisements and DRM content, only the bravest have been able to navigate a solution for installing a custom ROM on this particular device.
Thar Be Magick Here
Please be advised that I can only attest that this process works for Fire OS 5.3.1 or below. Before you get started, you can check your OS version under “Settings > Device Options > System Updates.” I am not responsible for you bricking your device, although I feel you can fare pretty easily if you play stupid with Amazon customer service and try to get an exchange. Even if you don’t get the answer that you want on the first try, try again. I have it on good authority , i.e. my many years of experience working with Amazon, that their customer service agents just don’t care. If you do happen upon this post with a later version of the software, I would still check with RootJunky’s treasure trove of tools. Mr. or Ms. RootJunky seems to be on top of these kinds of things at the time of this writing and there may be updated versions of the tools I talk about here. With some additional guidance from the XDA boards, you might be able to figure out the rest yourself.
Gather Your Tools
The reason I mentioned RootJunky specifically is that a majority of the tools I used were available through his (or her) site. Before getting started, though, be sure to download and install Android SDK Tools and be sure ADB is added to your PATH. This will take some time (i.e. over an hour), but it will allow you a lot of flexibility in the future as well as ensure that all of the other tools involved in this tutorial function properly.
Once you have that in place, go ahead and download these:
You will then need to get the latest version of CyanogenMod for Amazon Fire (or whatever you want; your funeral) and its corresponding GApps. I can not emphasize enough: make sure you have the right version of GApps for your chosen ROM version. I have made this mistake TWICE and it will only cause heartache and time lost. You will probably also need an external SD card. I honestly don’t know what the consequences would be for trying this from internal memory and discourage most from risking it. But, again, your funeral.
The Treasure Map
You will be told, tempted even, to attempt this with TWRP. As I mentioned before, though, Amazon has been all kinds of crafty to dissuade you from altering this device and I could not for the life of me get TWRP working. In fact, as of this writing, recovery mode is still Amazon’s default, though I haven’t put much work into it since my initial success. So instead of TWRP, I followed a method I found on Stack Exchange and it worked like a charm.
First: Prep your Fire tablet by turning on USB debugging.
You will need to enable USB debugging on your tablet and possibly install a USB driver for your device on your computer before proceeding. This is probably the easiest step and Amazon will even help you do it. Developer options for your tablet are hidden by default; to turn on debugging from your tablet, you will first need to enable these options by going to “Settings > Device Options” and tapping the serial number 7 times. A button for “Developer Options” should appear, and under these options you should be able to enable USB debugging and/or ADB (which many of the aforementioned tools use to make modifications).
If, at any point, this specific set of directions does not seem to make sense after trying to follow them, you’re in luck as Amazon doesn’t really have any issues with letting your computer talk to your device. You can find their most up to date instructions here.
Second: Downgrade your OS to version 5.1.2.
Now we will use, and you probably guessed it, the Downgrade Tool. As of the writing of this post, the last vulnerable version of Fire OS that we can take advantage of is version 5.1.2. If you skip this step, you will brick your device. Simply open up the Downgrade Tool, follow the instructions on the screen, and you will be fine.
Third: Root your device.
Warning! After this point, you will have effectively voided the warranty and are at the mercy of Amazon customer service’s apathy. Proceed with caution. We will now use the Supertool, which will give you a few options once it boots because it’s so super. You will want to choose to root your device; the next screen will then ask you for the version you are rooting. Be sure to pick the option that includes 5.1.2, because remember we did that?
The first stage will install KingRoot on your tablet and will ask you to root your device through the app before proceeding. The three times (yes, thrice) that I’ve gone through this whole procedure, this part never worked on the first attempt. If KingRoot is not installed on your tablet, close Supertool and start again. If it’s there, but fails to root the device, just try again. After a few attempts, if it’s still not working you might want to uninstall the app, power cycle the device and start again. It will work eventually.
Be sure to pay attention to the prompts on both the Supertool command line terminal and your tablet. Your tablet does not want you to do the things you are doing to it and may try to stop you. Do not listen to its warnings. Once you are done rooting your device and the Supertool has installed SuperSU on your tablet, you might want to block OTA updates, but that’s entirely up to you.
Fourth: FlashFire that beast.
I would recommend getting FlashFire from the Google Play store. You can install the Play store from Supertool; Supertool’s FlashFire install is pretty buggy. After you’ve installed FlashFire, you will need to grant the app root access to proceed further. Then, load your CyanogenMod and, still can not emphasize this enough, the correct version of GApps onto your SD card from your computer. Old Badman Grey on Stack Exchange did such a good job at describing what to do next, I’m just going to copy-paste this part here:
Use FlashFire to prepare your device. In the bottom right corner is a red “+” to add actions. The defaults for the commands are fine. You may swipe away the hints in the command queue.
Add “Flash ZIP/OTA” and select the CyanogenMod zip.
Add “Flash ZIP/OTA” and select the Open Gapps zip.
Move “Wipe” to the top of the command list.
Press the “Flash” button.
You should reboot into the CyanogenMod setup.
At this point, you should have a nice, definitely-not-Fire CyanogenMod tablet! If, for any reason, your install does not work or you can’t find Google Play store, there is still hope. As I briefly mentioned earlier, I ended up going through this process three times. The first time, I had the wrong version of GApps and none of the very handy Google features installed on my tablet. The second time, I thought I did something wrong again, because I was having trouble downloading Inbox and Eventbrite, but after the third and verifiably correct install, I figured out it more had to do with the version of the CyanogenMod that’s currently available for Fire. So, if for any reason you run into any of these problems and need to start from scratch, enable debugging and use the Downgrade Tool, and you can start over from that step.
If you found this useful or have anything you’d like to add, feel free to comment below or drop me a line!