PiClock

How I created PiClock: When looking for a new Hifi-DAC I came across many with a tiny display for the current album cover. While I found the size lackluster. I liked the Idea of displaying the current album artwork when streaming music. I was also interested in e-Ink displays for a while so I recognized the technology as a natural fit and created a Raspberry Pi Zero 2 W and Pimoroni Inky 7.3″ based Clock and Album Cover viewer.

PiClock Finished Project

Physical Design:

I used a 7.3″ Inky Impression display by Pimoroni. This display comes with an e-Ink controller and is easy to use. There is also a larger 13.3″ Panel available.

For a frame I extended the design by SeamsBear by removing the Back plate for cooling and adding two mounting screws to a wooden Base. The Model can be found here.

Coding of PiClock:

Pimoroni helpfully provides a python library for printing images to the e-Ink display. That is based on the popular Pillow library. One caveat to mention is that the saturation function is somewhat broken. It works by using less saturated color targets in the dithering stage as a means of increasing saturation, however it ends up in clipping! The Saturation function of PIL gives better results.

Reference Image

Saturation 0.0

Saturation 1.0

While no rendition above is perfect and a lot more dithering is present, as can be expected from a 6 color display, we can clearly see that the Saturation setting introduces large white “burnt out” areas. The pastel colored bar on the left is almost incomprehensibly white with saturation=1.0. Thus, the setting should be avoided and left at 0!

Wiim Audio Integration

Wiim music streamers have a straightforward publicly documented RESTish API that allows us to Fetch Album Cover and Song information. The API was manually implemented as we only need a few if its calls.

Home Assistant integration

When no music is playing we can display the current time and some basic Weather information from Home assistant. To fetch general data from Home Assistant to display alongside a clock we can us the public Home assistant API

STATE TRANSITIONS

As with all e-Ink displays the transition from one image to another flickers and takes 20-30s. Sadly partial refresh is not possible with the Pimoroni display.

For example here the transition from Seven Nation Army – The White Stripes to Nightcall – London Grammar.

Clock Displays

I coded multiple clock visualizers to make the clock more varied:

Bill of Materials for PiClock

AmountNameCost
1Raspberry Pi Zero 2 W19,40 €
17.3″ 6 Color e-Ink Display78,84 €
1Raspberry micro USB Power Supply9,50 €
1micro SD Card > 8GB
13D Printed Frame with buttons

To check out my other works