My Iliad (electronic book by Irex)

I've got an E-book, or digital reader as they call it. It is an “Iliad, 2nd edition”. I develop software for it…

Compiling for Iliad

My prefered way to build software for the Iliad is Cross compiling with the Irex SDK on my Ubuntu laptop. It is easy to install.

NOTE: I tried (and abandoned) several other ways:

  • Cross compiling with Scratchbox
  • Native compiling with QEMU

Package management with ipkg

The ipkg command can be used to install, update or remove packages ont the Iliad. It can also be used to get information about installed packages, files and dependencies. The full list of commands and options for details

A safe startup script for the Iliad

When experimenting with essential Iliad programs, a small mistake can be fatal: unbootable device, re-flash required.

I solved this with the following set-up:

  • A small and simple program without bugs checks if a sd-card is inserted
  • The startup script (/home/root/start.sh) checks if the sd-card is inserted
  • If so: 'jump' to my_start.sh
  • If not: proceed normal start

This is a long article, but it's really quite simple ;-)

→ Read more...

NewLister, an improved ContentLister.

I have modified the Iliad's ContenLister to show more items on a page. I called it NewLister so it can coexist with the existing one. It can display anything between 4 and 20 items on a page. I also increased the number of remembered 'recent documents' to 12…

An installer and the sources for this software have been published on the Mobileread forum

Lua-Iliad: Lua5.1 scripting for the Iliad

Lua is a scripting language. It is embeddable in a C-program, and can be extended to call functions written in C. It has a small memory footprint. It can do xml and network stuff. It is great to have it running on the Iliad :-)

Lua-Iliad is Lua5.1 compiled for the Iliad. It includes several additional packages for networking and xml processing. An ipkg package is provided for easy installation on the Iliad.

I moved this project to Mobileread at https://dev.mobileread.com/trac/luailiad/

Lgob-Iliad: a Gui toolkit for the Iliad

The Iliad's native GUI is based on (fairly old) gtk+ libraries. I found a great Lua binding for these libraries: Lgob. Basically, it gives full access to GTK+ from Lua. Much easier coding than C, much faster development (no need to compile).

More can be found on the Lgob home page

I assembled an installable Lgob package for the Iliad, which can be downloaded from the LuaIliad project. This 380KB Package includes bindings (more than 2000 functions) for gobject-2.6.6, gdk-2.6.7, pango-1.8.1. and gtk+-2.6.7.

I believe that the combination of Lua and Lgob can be trusted to build stable apps for the Iliad. An example can be found on Mobileread:Multicalc

NEW: Glade4Lua, it can get even easier

  1. Design the GUI with glade (visual basic like designer)
  2. Convert design to Lua code
  3. Write the callbacks for the buttons, etc
  4. Run it on the Iliad

The cool step is [2]: glade4Lua, a Lua script I wrote to convert Glade's xml output to Lua. I'll continue working on it when I have some spare time.

Text -> Html -> Pdf

These are the steps I take to convert 'HTML books' to PDF files with nice (clickable) tables of contents.

The used softwares (ruby wget tidy iconv and htmldoc) are all opensource.

Note: this recipe works well for large text documents. The layout of pages with images is spoiled.

→ Read more...

The Iliad's source code

Irex has open-sourced the Iliad's software. I've run these sources through Doxygen to get nice syntax-colored and cross-referenced html files.

Libraries

See list of libraries for an overview of the libraries that are available on an untouched Iliad.

Screen dumps

The easiest way to do screen dumps is remotely from a Linux pc:

import -window root -display ereader:0.0 dump.png

In order for this to work the Iliad start script has to be changed:

/usr/bin/Xfbdev -screen 768x1024x8 -3button -dpi 160 -br -ac &
   
Last modified: 2009/11/05 23:24 Mijn Fijne Site hosting en design