Open Book Touch: An Open-Source, Pocketable E-Reader

Open Book Touch: An Open-Source, Pocketable E-Reader

Open Book Touch is a fully open-source e-reader designed for distraction-free reading

Open Book Touch is a pocketable, front-lit e-reader that prioritizes open hardware and software over multi-functionality. Unlike modern tablets, it is a dedicated reading device that avoids notifications, browsers, and feeds, focusing exclusively on rendering EPUB and plain text files from a microSD card.

Hardware Architecture and Specifications

Open Book Touch is built around a microcontroller rather than a full Linux distribution to ensure fast boot times and extreme power efficiency. The device boots directly into the current book and consumes less than one milliampere during active use.

Core Technical Specifications

  • Processor: ESP32-S3 dual-core MCU with Wi-Fi and Bluetooth LE.
  • Memory: 16 MB quad SPI flash and 8 MB octal SPI PSRAM.
  • Display: 4.26-inch e-paper screen with a resolution of 480 × 800 pixels (~220 ppi).
  • Lighting: Integrated frontlight with independently dimmable warm and cool LEDs.
  • Storage: microSD card slot for library expansion.
  • Battery: Minimum 800 mAh user-replaceable LiPo battery.
  • Connectivity: USB Type-C for charging and data; local Wi-Fi for browser-based book transfers without requiring an account.
  • Physical Dimensions: 78 × 120 × 10 mm; weight approximately 85 grams.

Software and Typography Engine

The device runs C++ firmware built on ESP-IDF and FreeRTOS, using SQLite to manage library metadata. A key focus of the project is its bespoke typesetting engine, which provides professional typography features usually absent in minimalist readers.

Typography and Language Support

  • Typesetting: The engine supports justified lines with even word spacing, proper hyphenation (for English, Spanish, French, and Italian), and clean page breaks.
  • Fonts: It utilizes carefully drawn bitmap versions of Lucida Bright and Lucida Sans in three sizes, each with bold and italic variants.
  • Global Language Support: To support the widest possible range of writing systems, the device includes GNU Unifont as a universal fallback, covering approximately 70,000 glyphs. It implements the Unicode bidirectional algorithm and letter shaping for Perso-Arabic languages.
  • Localization: The user interface is localized into English, Spanish, French, German, Japanese, Arabic, and Hebrew.

The Focus Application Framework

To power the device, the creator developed Focus, a platform-agnostic C++ application framework inspired by NeXTSTEP's AppKit and Apple's UIKit. Focus provides view controllers, a touch-and-gesture system, and a library of on-screen widgets.

Because Focus is designed to be platform-agnostic, the same UI logic and interactions can be ported to different screens or input methods (such as joysticks or buttons) by swapping the underlying driver. The Focus framework has been open-sourced independently of the hardware.

Open Source Philosophy and Customization

Open Book Touch is designed for total user ownership. The hardware is open source (schematics, board files, and enclosure CAD), and the firmware is MIT-licensed.

  • User-Replaceable Parts: The battery is easily swappable by the user.
  • Custom Enclosures: The shipping enclosure is 3D-printed and snap-fit. The CAD files are provided so users can print their own shells in different colors or materials.
  • Privacy: The device does not "phone home," ensuring that no external entity can track reading habits or remotely delete content.

Community Perspectives and Trade-offs

While the project has been praised for its commitment to openness and its pocketable form factor, community discussion highlights several technical and ergonomic trade-offs:

  • Input Methods: Some users expressed a strong preference for physical page-turning buttons, noting that swipe gestures on e-ink screens can be frustrating.
  • Screen Size: A segment of the community considers 4.26 inches too small for a primary e-reader, suggesting that 6 inches is the industry minimum for a comfortable reading experience.
  • Typography Quality: While the Latin scripts are highly polished, some users noted that relying on GNU Unifont for Cyrillic and other scripts may result in a less pleasurable reading experience compared to professional typography.
  • Alternative Ecosystems: Some users suggested that installing KOreader on a Kobo device is a more feature-rich alternative for those seeking an open-source reading experience on larger, higher-resolution hardware.

Sources