Related topics

How to hack a Sony Reader

Inside the Linux-based e-book viewer

Sony Reader unlocked

Amazon’s Kindle receives plenty of publicity, but it’s only available in the US. Book buffs elsewhere have to content themselves with other e-book readers, of which one of the most popular is the Sony Reader. The PRS-505 is available from High Street stores like John Lewis and Waterstones, making it one of the more visible devices at the moment.

Sony_reader_red

Sony's PRS-505: eminently hackable, thanks to its Linux foundations

It’s also comparatively easy to tweak and hack, thanks to the way it’s designed. The core operating system is MontaVista Linux, and though the speed of response of the e-ink screen and the lack of a full keyboard means that you can’t really use it as a general purpose computer, there is a fair bit that you can do with it.

Some is simple customisation: you can change the fonts, icons and logos, or add your name and contact details to the About screen, for example. Buttons can be reassigned, or disabled too, so if you prefer to shut the Reader down rather then send it to sleep, then you can add that function to an easily accessible key, instead of having to work through a few menus to find it.

It’s actually possible to go a lot further than that. The reader is controlled using JavaScript and XML, and there are even applications such as dictionaries and Sudoku that can be run from an SD card.

When a memory card is inserted in the reader, it’s scanned by the operating system. As well as looking for books, the folder /Sony Reader/software is checked for an autorun.xml file.

Sony PRS-505 Reader electronic book

Activated with XML and JavaScript

This file defines functions for things like button presses and controls the skin elements that will appear on the display, all through JavaScript. It can also launch applications. According to the service manual, it can be used to load a diagnostic test too – and it’s by using this mechanism that you can start to customise your reader.

Sponsored: Designing and building an open ITOA architecture