|
| 1 | +#+title: KOReader on Kobo |
| 2 | +#+author: mbrignall |
| 3 | +#+date: 2026-02-08 |
| 4 | + |
| 5 | +* Another e-cycled device Martin? |
| 6 | + |
| 7 | +So I found an old Kobo Glo in a charity shop for 10 recently and was not too sure what to do with it. The intention was to read |
| 8 | +more, but... |
| 9 | + |
| 10 | +- How does the e-reader ecosystem work? |
| 11 | +- How does it work for me? |
| 12 | +- What fun things can I do with it? |
| 13 | + |
| 14 | +I was aware of Calibre and ebook management software already. I planned to utilise this and manage my personal |
| 15 | +library but this project quickly became so much more than just obtaining a tablet with an eInk screen! |
| 16 | + |
| 17 | +* Getting to a usable state |
| 18 | + |
| 19 | +Unfortunately the device appeared to be locked to the account of the previous owner. This wasn't an issue, but there was no |
| 20 | +books I wanted to read and I didn't want their personal details. I factory reset the device which left me at the setup screen. |
| 21 | + |
| 22 | +As with all devices like this, the online set up requires an account. Unfortunately, which took some time to debug, |
| 23 | +I realised that the software version I was on was causing the WiFi connection to fail. There was no error |
| 24 | +as such just a timeout when connecting to WiFi. I tried hot-spotting and also setup a 2.5g guest network in the case this device |
| 25 | +needed it. |
| 26 | + |
| 27 | +*Nothing was working* |
| 28 | + |
| 29 | +From some research online I realised this had a lot to do with the version software that was on the Kobo. It was around 2.5 version |
| 30 | +whereas the latest is 4.38 (at time of writing). See the [[https://pgaskin.net/KoboStuff/kobofirmware.html][link]] for available software updates. |
| 31 | + |
| 32 | +The steps for upgrading: |
| 33 | + |
| 34 | +** How to sideload an upgrade onto a Kobo eReader: |
| 35 | + |
| 36 | +- Download ~Kobo-update-<release number>-.zip~ from one of the links below for your specific Kobo eReader model. |
| 37 | + |
| 38 | + - *Important:* If there are multiple names listed, double check your Kobo and match the serial number. X means the character can be different. |
| 39 | + |
| 40 | +- Connect your Kobo eReader device to your computer using its USB cable and your computer will recognise its as a new drive. |
| 41 | + |
| 42 | +- Locate the Kobo#-update.zip file on your computer, then right click and Extract all ( Windows ) or double click (Mac) to unzip its contents, |
| 43 | + revealing an "upgrade" folder, ~KoboRoots.tgz~ file, and ~manifest.md5sum~ file. |
| 44 | + |
| 45 | +- Drag and drop the unzipped contents into the device's ~.Kobo~ directory (you will need to set show hidden "folders" on your computer) |
| 46 | + |
| 47 | +- Safely eject your Kobo eReader device from your computer. |
| 48 | + |
| 49 | +** Bypassing user login |
| 50 | + |
| 51 | +Just to be clear the only reason this was necessary was to fix the connect to WiFi option. I don't condone jailbreaking/hacking devices |
| 52 | +unless absolutely necessary but it is a lot of fun and you will /always/ learn new things. |
| 53 | + |
| 54 | +What we're going to do in this instance is remove the user/id entry in the sqlite database that is stopping us from using the device. |
| 55 | +The steps below are what worked for me, the end result was to get the device into a usable state, update the software/firmware, and get KOReader |
| 56 | +on there. |
| 57 | + |
| 58 | + - Choose 'computer setup' option |
| 59 | + - Attach to computer and the device should auto mount to ~/mnt/$USER/KOBOReader~ or something like that. A good way to check is using |
| 60 | + a file browser and find the device location, right click, and choose the 'open in Terminal' option. |
| 61 | + |
| 62 | + #+begin_src bash |
| 63 | + cd /mnt/$USER/KOBOReader/.kobo/ |
| 64 | + sqlite3 KoboReader.sqlite |
| 65 | + #+end_src |
| 66 | + |
| 67 | +You'll then be on the sqlite command prompt. From here you can do the following: |
| 68 | + |
| 69 | + #+begin_src sql |
| 70 | + INSERT INTO user(UserID,UserKey,___DeviceID) VALUES('1','','N905C'); |
| 71 | + #+end_src |
| 72 | + |
| 73 | +Eject and restart ereader. |
| 74 | + |
| 75 | +After this when you should be able to bypass the setup steps and see the home screen. |
| 76 | + |
| 77 | +* KOReader Software |
| 78 | + |
| 79 | +So having the device back to factory settings and loading pdf's and ebooks via Calibre felt /ok/ but... |
| 80 | + |
| 81 | +- Where is the customisation and user control I knew from using Linux? |
| 82 | + |
| 83 | +I distro hopped continuously until finding Nixos, and that became my go to, but I still flit around trying new |
| 84 | +desktop environments when interesting ones pop up in sub-reddits, or are recommended by friends. What draws me to |
| 85 | +Linux is the strong community and focus on customisation. My curiosity is what powers me day-to-day and if I have |
| 86 | +a device, regardless of the architecture, I always think: *'how can I make this more my own'*, *'how can I imprint myself on this device'*. |
| 87 | + |
| 88 | +[[https://koreader.rocks/][KOReader]] scratches this itch. |
| 89 | + |
| 90 | +From the homepage: |
| 91 | + |
| 92 | +#+begin_quote |
| 93 | + KOReader is a document viewer for E Ink devices. |
| 94 | +#+end_quote |
| 95 | + |
| 96 | +This description is a painful understatement of the capabilities and powerful extras (plugins and patches) that the software provides. |
| 97 | + |
| 98 | +I used the install [[https://github.com/koreader/koreader/wiki/Installation-on-Kobo-devices][instructions]] to get KOReader, KFMon and Nickelmenu on the device. The instructions are straight forward for the shell scripted |
| 99 | +install. Within a few seconds the script was finished and the device rebooted. A new option on the settings bar appeared for Nickelmenu and I chose |
| 100 | +'launch KOReader' and I was in. |
| 101 | + |
| 102 | +The first thing I noticed was the interface was really clean, intuitive and easy on the eyes. No adverts, no book suggestions, this is what |
| 103 | +I needed. |
| 104 | + |
| 105 | +From here I went through my smallish library of books checking out the different file formats (according to the KOReader homepage: |
| 106 | +supported fileformats include EPUB, PDF, DjVu, XPS, CBT, CBZ, FB2, PDB, TXT, HTML, RTF, CHM, DOC, MOBI and ZIP files). |
| 107 | + |
| 108 | +* Where next? |
| 109 | + |
| 110 | +With my new found love for ereaders and KOReader I plan to read more books. I have a collection of books I've been trying to finish, |
| 111 | +also plenty of technical books on the back burner that, with this new format, should enable me to read more regularly and efficiently. |
| 112 | + |
| 113 | +On top of the ereader features KOReader also provides a RSS/Atom feed manager, ssh session and a TERMINAL EMULATOR! |
| 114 | + |
| 115 | +I would also like to explore the community maintained plugins and patches for added customisation. Some people have made their |
| 116 | +UX look so fancy. One of the top results on search is [[https://github.com/sebdelsol/KOReader.patches][this one]] from ~sebdelsol~ for rounded corners, badges and progress status |
| 117 | +icons on the home screen and other tweaks and visual improvements that are always appreciated. |
| 118 | + |
| 119 | +All the magic appears to be a combination of shell scripts and lua, both of which I have a bit of experience with. |
| 120 | + |
| 121 | +So who knows, maybe I'll be putting together a neat plugin shortly? |
0 commit comments