Jump to: navigation, search



This project aims to interface an E-Ink display directly with a beagleboard. This is done by creating an interface board that is connected to the Beagleboard expansion header and converts the relevant gpio signals into the levels appropriate for interfacing with the E-Ink display controller. The second part is to write a driver which is a port of am300epd.c from mach-pxa to mach-omap in order to support the E-Ink broadsheet framebuffer driver directly on beagleboard. All of this results in making it possible to connect any E-Ink display controller to a Beagleboard (via the expansion header) and to then treat any E-Ink display as another framebuffer.

The target display controller is the Broadsheet E-Ink controller that supports interfacing with all the current E-Ink display panels from various vendors. These are the same panels used in products like the Kindle and PRS-505/700 ebook reader devices.

Current Status

Known bugs

  • None

Next steps

  • complete interface board schematic and layout
  • complete mach-omap/beagleepd.c

Getting the source code

Currently, am300epd.c and broadsheetfb.c have been merged into the Arm tree. See the patch info.

Code for BeagleEPD will be under the same GPL license as am300epd and will be posted to the arm mailing list during development as was done for am300epd.c. Links will be added here as it progresses. The design for the interface board will be under a creative commons license that will be determined. The schematic is currently being designed using Protel but will be published in PDF format only.

Some videos that may be of interest to readers:

Android on E-Ink using am300epd/broadsheetfb

Midori-webkit-gtk on E-Ink using OE Angstrom as the base

Fennec on E-Ink using OE Angstrom as the base

and some blog articles on this are here.

Note, there is a different effort done by a company called Moto Labs Android Beyond the Phone . That development is not related and is not similar at all. That design does not talk to E-Ink directly, instead it uses a USB connection to an XScale CPU. In contrast, BeagleEPD is intended for direct interfacing so that only the BeagleBoard and the E-Ink display controller are needed.