Installing LineageOS on the Amazon Kindle Fire HD
Posted on by Bob Matyas
A few years back I purchased an Amazon Fire HD in order to have a tablet sized device to test websites on. Iâve always found it easier to test on a physical device, so the Fire HD was a cheap way to do that. Given the low price and the hardware, I wasnât entirely surprised to learn that it was pretty slow, making me wonder how people are able to use such a device for daily browsing.
Outside of the speed, I had a lot of privacy concerns. When purchased, the Amazon Fire HD low cost is subsidized by its total integration into the Amazon ecosystem. Everything about the interface and operating system (a modified version of Android called FireOS) is design to get you to purchase products from Amazon. Amazon also syphons as much data as it can from you and your device, encouraging you to login with an Amazon account and using a default web browser called Silk that relies on cloud integration to try to offset the slow on tablet performance. They also sell a cheaper version with ads that appear on the lock screen and while they happily remove them if you just chat with support and say that you were offended by an ad, the whole package is a rather creepy.
At the time I did what I could to mitigate the data collection. I registered the tablet with a new Amazon account tied to a new email. While it meant trading Amazon for Google in some ways, I installed the Google Play Store on the Fire in order to add apps outside of Amazonâs very limited app store. I replaced Amazonâs Silk browser with Firefox Focus. Most importantly, I installed a firewall called NetGuard and turned off network access to everything but the apps I needed to use. After this it became a good enough device for testing the occasional website, but I never really did much else with it.
Third Party Android ROMs for the Kindle Fire HD
I didnât really use the Kindle Fire for much, but I kept an eye out on the XDA Forums hoping for a day when someone would figure out how to replace Amazonâs FireOS with a different version of Android. There were some early attempts that involved physically modifying the hardware which was a bit more than I wanted to try.
In early 2020 I came across a process for unlocking the bootloader and installing a custom recovery on the Kindle Fire HD. The process worked on my hardware (an Amazon Kindle Fire HD 2017 - codename âDouglasâ) and promised that in the end I would be able to install a custom version of Android. Looking at the options, there were two version of Android I could install, both of which were based on v5.1 of Android (which is the same as what FireOS was built on). The options were an unofficial build of LineageOS and SlimLP. I have had positive experiences in the past with LineageOS, so I went that route and downloaded the ROM.
Unlocking the Kindle Fire HD Bootloader and Installing Android
After downloading the LineageOS 12.1 ROM for the Kindle Fire HD, the next step is to unlock the bootloader. This involves temporarily âbrickingâ (rendering it unusable) the tablet, so it is possible that you could make your tablet unusable. At the time I did this, the Kindle Fire HD was running FireOS v5.6.3.x. In order to do this, you will need a micro-USB cable to connect the tablet to your computer and a Linux environment. I used a computer that had an install of Ubuntu, but you could also use an Ubuntu live installation via a USB stick.
Once you boot into Linux, you will need to open a terminal and run the following commands to install the required software:
sudo apt update
sudo add-apt-repository universe
sudo apt install python3 python3-serial adb fastboot dos2unix
You will also need to download the files amonet-douglas-v1.2.zip, brick-douglas.zip, and MTK-su.zip from the XDA post announcing the method. The instructions from the post are:
Reboot FireHD8 to Recovery (Power Off device, then hold VolUp + Power)
1. Select Factory Reset then Wipe Cache
2. Reboot to Bootloader
3. You will see the black screen with âFastbootâ in the lower corner.
4. Open Terminal from âbrick-douglasâ folder and type `sudo ./brick.sh`
5. Check Display output for the âDisconnect USB and Powerdownâ Message and do so when prompted
6. Open Terminal from âamonet-douglas-v1.2â folder.
7. Enter âsudo ./bootrom-step.sh"
8. Reconnect USB
9. Wait until the bootrom step is finished
10. Enter `sudo ./fastboot-step.sh`
11. You will end up in TWRP
Once this process is completed and you are in TWRP (an alternative bootloader for Android devices), you can install LineageOS. I copied it over to a microSD card on the Kindle Fire HD and then selected âFormat Data and Wipeâ within TWRP and ran that on /data, /system, and /cache. Once that was done you install LineageOS by selecting the zip file containing the ROM and then reboot.
Configuring LineageOS
After the successful reboot into LineageOS 12.1, it is time to configure the system. I wanted to stay away from the kind of spyware and junk that made me nervous about FireOS initially, so I decided against installing any Google Services. Instead, I decided to use F-Droid as my primary app source.
To install F-Droid you can download the APK from their site and install it. You will need to go to âSettings > Securityâ and select âUnknown Sourcesâ to allow the installation of apps from unknown sources. After installing F-Droid I installed the following apps:
- Aurora Store â This app spoofs the Google Play Store and allows you to download apps from the Google Play Store. This is useful for getting apps that arenât on F-Droid.
- Handy News Reader â A nice RSS reader
- Librera Reader â Allows you to read books and PDFs
Using the newly installed Aurora Store, I installed Brave Browser. I have found that Brave seems to run the best on the tablet (I havenât done any tests, this is purely a subjective assessment). It has built-in ad and tracker blocking which probably helps with the speed.
I also wanted support for âdark modeâ which unfortunately isnât a native part of LineageOS v12.1 since it is based on the older Android v5.1 system. To do this you can install a custom theme. I went with âPitchblack | DarkRed CM13/12 Themeâ installed via Aurora. This gives the Kindle Fire HD a usable dark theme. It unfortunately changes some of the system icons into less familiar icons, but I think itâs a worthwhile trade-off.
Conclusion
Following this process has left me with a Kindle Fire HD that is much faster than the stock version. It takes a device full of Amazon spyware and strips out all of the Amazon bloat and gives you a basically stock Android experience. It has made using the tablet for testing websites considerably better and also has allowed me to use it as an e-reader device that isnât as creepy as a stock Kindle. I still wouldnât trust the Kindle Fire for anything sensitive â unfortunately one of the limitations of this route is that it doesnât support encryption â but I think it is useful process.
Note: There is a newer version of LineageOS for the Kindle Fire HD. It is LineageOS v14.1 (based on Android v7.1.2). I havenât upgraded yet due to some limitations in that ROM, but it is another option.