[r.rayns]

Inky Dash v3

Recently, I’ve been updating an old project of mine, Inky Dash, which I originally built back in 2020. Inky Dash is a management interface for Pimoroni’s line of ePaper displays. It is intended to be self-hosted on the device connected to the display and accessed from a browser over a local network.

For this complete rewrite, I used the Flask framework to build a backend that exposes an API, interacts with the display’s library and serves a static frontend built with Next.js.

Version 3 of Inky Dash comes with the following new features:

Support for more display types

Inky Dash v1 originally supported a single display type, the Inky pHAT. Inky Dash v3 now supports a number of different display types:

The display type is automatically detected when Inky Dash is started, or can be set manually in the settings.

Slideshow mode

A sequence of images can now be uploaded and displayed as a slideshow. When uploading an image a cropping tool allows the user to easily crop the image to the correct size. Once cropped it is dithered by the server, using the display’s compatible palette.

A demonstration of the slideshow feature

Image feed mode

The new image feed mode allows the display to automatically update with images from a specified web location. When enabled, the display periodically checks a URL that points to a PNG or JPEG image, downloading and displaying the latest version at a chosen interval.

Image feed mode provides an easy way to extend the functionality of the display by allowing independent services to control what is displayed. For example, I created a service that queries the UK’s carbon intensity API to get the current energy generation mix and output it as an image. That image is hosted locally, the URL for which can then be set as the source for the image feed, allowing the display to automatically show current energy generation data for the UK.

A demonstration of the image feed feature