Installing KOReader in the Kindle

A few years ago my trusty Kindle Paperwhite, which I had since its launch in 2012, decided that the battery had had enough. I bought a new one, and since then, the old one has been relegated to gathering dust on the bookshelf.

More recently, I was investigating alternative e-reader devices, preferably open source, to stop using Amazon products. It was at that time that I stumbled upon KOReader, an e-reader application that can be installed on various e-ink readers, with lots of customization options.

Before risking bricking my new Kindle, I set on trying KOReader on my old device. This document has a few notes on what I had to do to achieve it. It mainly links to Mobile Read threads, so please go there for the proper documentation.

Please, keep in mind that this only works for the first Kindle Paperwhite (2012 version), but some of the pages I link below have pointers on how to do it for other models. In case of doubt, refer to this thread on Mobile Read.

Caution: this can render your device unusable.

Downgrading the firmware

I always kept my old Kindle connected to the Internet, so it had the latest firmware version that Amazon released for it. In my case, the version 5.6.1.1. The jailbreak method that I found only works for versions 5.0.x to 5.4.2.2, so I had to install an older version of the firmware on my Kindle before I could proceed.

I found this guide that explains how to downgrade from version 5.6.1.1 to 5.3.3.

Jailbreaking the Kindle

Now that the Kindle has the old breakable version, we can use the jailbreak explained here.

Installing KUAL (the launcher)

To be able to install other applications in the Kindle, first we need to install a “launcher”, that will enable us to find and execute our programs. I chose KUAL, as the documentation I found was accessible and easy to understand.

The installation instructions are here.

Installing KOReader

Now we're ready to install KOReader (or any other application / KUAL extension that you desire).

Disabling OTA updates

By this point, the Kindle is still in “airplane mode”, so the only way to transfer books is via USB, copying the ebook to the documents/ folder.

You can disable the airplane mode at any time to use any of the transfer options offered by KOReader, but there will be a risk of Amazon sending an OTA update to your device and erasing the jailbreak.

To enable Internet connectivity on the Kindle without suffering this risk, we have to do cheat the device into not installing the updates.

Lastly, for safe measure, I've also blocked some domains in the Pi-hole, using regex: amazon, cloudfront.net, and kindle.com. This last one is only used for DNS (dns.kindle.com), as far as I've seen, but I blocked it anyway.

Curiously, blocking these domains has completely broken the “experimental browser”, even for non-blocked domains. This also blocks the Kindle store.

After these changes, I tested the Internet connectivity from KOReader, and it works fine. It can connect to Wikipedia, download dictionaries, etc.

[^1]: On Mobile Read, the Kindle Paperwhite from 2012 is referred to as PW, PW1, or sometimes K5, depending on the hacks' compatibilities. To check the nomenclature of your device, check this page. [^2]: USBMS means USB Mass Storage. This is the mode that allows data transfer. To avoid using this mode while keeping the Kindle plugged into the computer for charging, “eject” the Kindle as you would do with any USB device before unplugging it.

#tech