Skip to content
Richard Hendricks edited this page Nov 27, 2023 · 1 revision

Welcome to the BeReader wiki!

The purpose of this project is to create a very basic e-Reader that does not use a touchscreen or backlight. Why? Well, some users don't like touchscreens when reading, because they can be sorta flaky for some people's fingers, and because they may want to use their finger to follow along on the page and don't want to accidentally cause the UI to activate. Backlight can cause eyestrain, so for this simple design, we will target not using an e-Ink panel with backlight.

Here are the primary usage models:

  1. Ideally it would be nice to support a wifi interface, but without a touchscreen interacting will be very limited. Perhaps a ssh daemon will allow for remote login and downloading new book files. Will need some kind of on-screen keyboard controlled by buttons to set WiFi password? No wifi interface will make the IO carrier board much cheaper.
  2. Primary download mechanism will be via micro-SD card. So you'll need to eject the card and put it into a host PC and copy your files.
  3. Target longer battery life over quick start. Ideally at least 1 week if possible, more preferable. Target 24 hours of "reading" time. That's time while the device is active, and pages can be quickly turned. Startup time to enter this mode from a lower power state to be as fast as possible. Ideally less than 15 seconds.

Currently exploring various compute boards:

  1. Raspberry Pi CM4
  2. Raspberry Pi CM3
  3. Other Options - Compulab? Etc?

Problems:

  1. Most of these modules target high-performance computing, not low power.
  2. The chips for these devices do not have public documentation, like at all.
  3. Much of the startup time is tied up in HW and bootloader time.
  4. Low power mode is an afterthought, at best. Many cases the only way out of the low power mode is essentially a full reset.

Ideas:

  • Could an additional low power CPU be useful? IE, a simple EFM8SB or similar to provide a basic UI while the primary CPU is kept off/low power? How would that work? Could the e-ink display be shared between the simple CPU and the e-reader CPU? Could this "hide" the boot time somehow? Show a simple progress bar for the boot?
  • How adaptable is the open source e reader software? Could it be easily ported to a more controllable/open CPU? Are there compute modules available for them?
  • This design doesn't really need a high-perf CPU, so instead of a Pi what about something around an i.MX processor? Compute modules are available from various vendors, need to investigate cost, Linux support, e-reader support, community, and low power support.
  • What if we utilize the LPDDR partial-array self refresh to conserve power? While idle or in low power state, keep just enough of the arrays on to keep the e-reader software alive. Maybe just set the memory size lower? Or use the excess memory just for caching while "alive" and dump the caches before entering low power modes.

Clone this wiki locally