Computer Science Capstone Design
Capstone Project Description

eBook Device Application - Project Gutenberg
Astak - Team Research

Sponsor Information:

Brent Gorda, Systems Architect

Lawrence Livermore National Laboratory
L-555, 7000 East Avenue, Livermore CA 94550
(925)422-5753 bgorda@{llnl.gov,gmail.com}


Project Overview:

Background:

Electronic books (eBooks) such as the Amazon Kindle and Sony Reader, are on the precipice of popularity at the moment. Widely assumed to be the next wave of technology, electronic ink (eInk) is unique in that the eInk display only consumes power when changing state. Thus the eInk display can maintain a visual image virtually indefinately. Battery live in devices based on eInk are measured in tems of page changes/refresh and typically number in the range of 8,000-10,000. So, on the surface, the device makes a great stand-in for a book as you can carry all of your books in the size of a paperback, and not have to continually charge the device as one does a laptop.

The down sides of eInk today are that they are 4-bit grayscale. Researchers are pushing color in the labs, but grayscale will be with us for a few years. Luckily the basic application (of reading materials/maps) on the device works well sans color.

The Project:

The state of open development for eBooks is nascent and there is great opportunity to innovate, add value, and launch software technologies for eBooks. This project is aimed at enabling technology on the Astak eBook (www.astak.com/6Ebook_EZ_Reader.html) by providing access to the popular open book site Project Gutenberg (www.gutenberg.org). The software created in this project will provide an interface to the books available at Project Gutenberg, allowing a user to browse, download and store any of the offerings on that site (some conversion may be necessary, which is not in scope for this effort:: books that are not available in a good format may safely be ignored). Note that mp3's are in scope (books on tape), as the device supports mp3 playback.

Details on the desired deliverables are given below, in the DELIVERABLES section.

In the next few years, eBooks have an opportunity to have a serious impact on the printing industy. An open source, open content application that is well written could serve as the bedrock upon which many activities are launched. Working on this project is likely to result in high-profile for the team and open doors to many opportunities.


Knowledge, skills, and expertise required for this project:

Familiarity with the Linux OS from a development point of view is necessary. The vendor SDK and simulator are Linux based and the eBook of interest runs a Linux OS. Standard C-based (makefiles, debugger, etc.) tools will be used.

It is likely the dev environment is nascent (buggy), and support is thin from the vendor. So - it is important for the developers to be resourceful and skilled at debugging/troubleshooting. The sponsor of the project is an intermediary - not closely affiliated with the vendor, but with a strong interest in the project and support from the vendor/reseller.


Equipment Requirements:

Development Tools: the sdk for the astak ebook is provided by the hardware manufacturer Jinke (http://www.jinke.com.cn/Compagesql/English/). The link with an old copy of the sdk on it is : http://www.jinke.com.cn/Compagesql/English/develop/index.asp (I am working on access to the newest version).

Developers will need i386-based Linux desktop systems to run the development environment, and USB support to transfer application binary to eBook device. The software stack is open source and the team is assumed to be knowledgeable in its aquisition/installation and have appropriate authority to do the install. Sponsor will arrange for loan of at least 1 (preferrably 2) hardware units for development purposes. Sponsor will not provide desktop systems.


Deliverables:

Briefly describe the deliverables that will be required for the project. A general description is sufficient at this point; specific deliverables would be developed/negotiated between the team and sponsor during the opening project phases.

Deliverables can be divided into three phases of functionality ranging from Phase 1 ("client will be marginally satisfied") to Phase 3 ("client will be completely impressed and amazed):

Phase 1 - UI design:
The starting phase of the project is to design the UI appropriate to the device. Given that page refreshes are the costly (power-wise) activity, the UI must not over-use animation. The developers must work with the SDK to understand any limitations and write-up a proposed UI based on this knowledge. The UI must be general and flexible to be extended beyond the current scope of books. Based on review of the proposal, the UI should be implemented. The Amazon Kindle might be a good starting point for ideas, as may UI choices for displaying content on the iPhone by Apple.
Phase 2 - wireless access:
current (as of 12/18/08) eBooks from Astak have WiFi connectivity. Write a software layer that can use a local SD card as a cache for Project Gutenberg materials. The software must be robust in the face of stupid users (ejecting memory card while in use, etc.), intuitive to use with the UI developed in Phase 1, and flexible in design to be extended to other materials appropriate for the device.
Phase 3 - flesh out other free eBook content.
As can be seen at http://www.mobiebook.com/freebooks.asp there are other free eBook sites in addition to Project Gutenberg. It is useful to prove the flexibility of the system design by adding these other content providers to the eBook.