innovetron All projects

NookPanel / Embedded software

E-ink weather display.

A Nook e-reader repurposed as a weather display, with a custom Android application, Raspberry Pi server, and scheduled device updates.

Independent project · Working demonstrator

Working with existing hardware

The Nook’s e-ink display remained useful, but its Android 2.1 software and limited resources restricted the applications it could run. The project required a compatible client, a repeatable build process, and scheduled updates that allowed the device to sleep.

Application and server

The Raspberry Pi retrieves weather data and renders the display image. A custom Android application downloads that image, updates the screen, and sleeps between refreshes. A browser dashboard controls the schedule and refresh intervals.

Keeping rendering on the server reduces the work performed by the reader and allows the display content to change independently of the Android application.

Implementation and testing

A fixed-version Android toolchain in Docker builds an application compatible with the device. Coding agents were used during implementation, with builds, deployment, and device checks used to review the resulting changes.

Testing addressed suspend/resume behaviour, scheduled refreshes, and failed downloads. Persistent server caching and bounded retries retain the last valid display image when a new one cannot be delivered.

Current result

The demonstrator runs on the Nook with configurable refresh schedules and automatic sleep/wake cycles. Device logs confirm suspend/resume operation, and failure tests check image preservation. Multi-day battery runtime has not yet been measured.

The weather renderer uses inkplate10-weather-cal with project-specific changes. The system operates on a trusted local network.

Source and development notes

Discuss your engineering requirements.

Get in touch