E-ink dashboards: build a low-power family display with a Raspberry Pi
A sheet of e-ink on the kitchen wall showing today's calendar, the weather and whose turn it is to take the bins out — no glow, no notifications, no screen that sleeps five seconds after you walk past. It's one of the most satisfying Raspberry Pi builds there is, and it's mostly assembly rather than engineering. Here's the whole thing: which panel to buy, the header gotcha that catches everyone, the software that gets you there in an evening, and the limits that decide whether you should build this at all.
Why e-ink is the right screen for a wall
The obvious way to put a dashboard on a wall is an old tablet, and it's fine for about a week. Then the screen keeps sleeping, or it glows at you through dinner, or the battery swells from a year at 100%. A wall dashboard wants to behave like a poster that occasionally changes its mind — which is precisely what electronic paper is.
E Ink panels work by moving charged pigment particles inside microcapsules: apply a voltage and the corresponding particles rise to the top of the capsule where you see them, and "only the regions of the screen that are changing require updating"[1]. Nothing is being lit or continuously redrawn. The image sits there, on paper-like matte plastic, readable at a wide angle and in bright light, drawing nothing to hold itself in place.
The price is speed, and it isn't subtle. Pimoroni's colour panels advertise a core refresh of about 12 seconds, with a complete real-world cycle "between 20 and 35 seconds" depending on your Pi and which panel variant you have; 7.3" units made from April 2026 onward use a newer waveform with a 28-second core refresh[2][3]. During that time the screen visibly flashes through its colours. For a clock with a second hand this would be fatal; for a display that changes once an hour it's a rounding error — and it's the same physics that buys you the paper look.
The parts, and the one that catches everyone
Two boards and a power supply. Prices below are as of September 2026 and will drift.
The computer — a Raspberry Pi Zero 2 W. A 1 GHz quad-core 64-bit Arm Cortex-A53 with 512 MB of RAM, 2.4 GHz Wi-Fi, Bluetooth 4.2 and micro-USB power[4]. Adafruit lists it at $19.05[5]. You also need a microSD card of at least 8 GB[6].
The gotcha: the Zero 2 W ships with a "HAT-compatible 40-pin header footprint (unpopulated)"[4] — meaning no pins. The display is a HAT that pushes onto those pins. Buy the pre-soldered header version, stocked as a separate SKU[5], unless you want to solder 40 joints as your first move. It's the most common way this build stalls on a Friday night.
The panel — a Pimoroni Inky Impression. Six-colour (red, green, blue, yellow, black, white) E Ink Spectra 6, sold in three sizes: 4.0" at 600 × 400 for £41.25, 7.3" at 800 × 480 for £66.25, and 13.3" at 1600 × 1200 for £191.25[2]. In the US the 7.3" runs $89.95[3]. It arrives fully assembled, needs no soldering, works with every 40-pin Raspberry Pi including the Zeros, and has four buttons on the back plus M2 mounting holes[2].
Sizing, opinionated: the 7.3" is the family-calendar sweet spot — a day's events and a weather strip stay legible across a room. The 4" is a desk widget. The 13.3" is lovely and costs more than every other part combined.
If colour isn't the point, the Inky wHAT is a 4.2" 400 × 300 panel in red, yellow, black and white for £30, refreshing in about 20 seconds[7]. Waveshare's e-Paper HATs are the other common route and cost less, at the price of picking the right model-specific driver yourself.
First light: box to picture on the panel
Flash Raspberry Pi OS Bookworm or later with Raspberry Pi Imager, and use the Imager's settings screen to enable SSH and enter your Wi-Fi credentials so the Pi comes up headless — you will never plug a monitor into this thing[8].
Handle the panel like the glass it is. Pimoroni's own instruction is blunt: "The E Ink panel is delicate (it's made of a super thin sheet of glass) so you should make sure not to put any pressure on the screen when fitting it," and you should power off and unplug the Pi before attaching or removing the HAT[8].
On the software side, the panel talks over SPI and I²C, so both need to be on — sudo raspi-config → Interfacing Options if autodetection fails[8]. Then install Pimoroni's library, which wants Python 3.7 or newer on Bookworm or later[9]:
git clone https://github.com/pimoroni/inky
cd inky
./install.sh
source ~/.virtualenvs/pimoroni/bin/activate
The installer builds a virtual environment and drops examples into ~/Pimoroni/inky/examples[8]. Putting an image on the wall is then three lines[9]:
from inky.auto import auto
from PIL import Image
display = auto()
display.set_image(Image.open("dashboard.png"))
display.show()
Two practical notes. Auto-detection reads the board's EEPROM, so older panels need to be initialised by model instead, and some setups need dtoverlay=spi0-0cs added to /boot/firmware/config.txt to get the SPI chip-select right[9]. And your image must be exactly the panel's resolution — 800 × 480 on the 7.3" — or you'll spend an evening debugging a smear.
Handy here: before you copy artwork or a family photo onto the Pi, get it to the panel's exact pixel size with our image resizer, or trim it to the right aspect ratio first with the image cropper. Both run entirely in your browser, so the photos never leave your machine.
The software: take the shortcut, or write your own
The shortcut is InkyPi, an open-source (GPL-3.0) e-ink dashboard project that gives you a web interface for configuring what the screen shows, from any device on your network[6]. Its plugins cover almost exactly the wall-display brief: calendar (Google, Outlook or Apple), weather with forecasts, a clock, image upload, a daily newspaper or comic, and AI-generated image and text[6]. Installation is one script — sudo bash install/install.sh, or with -W [model] for Waveshare panels[6].
Check its hardware notes before you buy, because they're specific: Pi 4, 3 or Zero 2 W with a pre-soldered header; Inky Impression (13.3", 7.3", 5.7", 4"), Inky wHAT and various Waveshare panels; IT8951-based Waveshare displays are not supported, screens under 4" aren't recommended, and the original Pi Zero W has known installation problems[6]. That last one is another reason to buy the Zero 2 W rather than whatever Zero is in the drawer.
The other route is to render the image yourself, which is more work and much more yours. The pattern most builds converge on is the one MagInkDash uses: a script pulls calendar events and a weather forecast, composes them into a single image, and pushes that image to the panel on a schedule[10]. You can compose with PIL directly, or — usually nicer — lay the dashboard out in HTML and CSS and screenshot it headlessly to a PNG at the panel's resolution. Designing in CSS beats hand-placing pixels the moment you want a second font size.
Making it update itself
The last piece is a scheduler, and on a Pi that means cron. MagInkDash refreshes hourly via a cron job[10], which is a sensible default: a line like 0 * * * * /home/pi/dash/refresh.sh in crontab -e is the entire automation layer. Half-hourly is fine too. Every minute is not: a full refresh takes 20–35 seconds[2], so a minutely job would leave the screen mid-flash for a third of its life, and the flashing is the one thing housemates complain about.
What goes on the screen decides whether the build gets kept or quietly unplugged. The rule that holds up is things you would otherwise unlock a phone to check: today's and tomorrow's calendar, the forecast, bin day, a chore rota, a countdown to the next trip. What doesn't belong is anything you must act on within a minute — the panel is structurally incapable of being urgent, and pretending otherwise makes it worse than a phone.
For mounting, the Impression's M2 holes[2] let you screw it to a backing board inside a box frame, with the mount cut to the panel's active area — it reads as a framed print and hides the Pi entirely. Leave a route for the USB cable and hang it near a socket; that cable is permanent.
The honest limits, and when to buy instead
Colour first: six of them, dithered[2]. Photographs come out looking like risograph prints, which is charming; charts relying on subtle colour distinctions don't survive at all. Design for the palette — heavy type, flat blocks, high contrast.
Then the phrase "low power," which deserves care. It's the panel that's nearly free to run: the image holds with no power because only changing regions need updating[1]. The Raspberry Pi behind it is a full Linux computer that runs 24 hours a day on mains power, and it is the thing in your wall drawing electricity. That's still small, but "e-ink so it uses no power" is only true of the glass. Builds that genuinely run on a battery for months usually drop the always-on Pi for a device that sleeps between updates — MagInkDash pairs its Pi-side renderer with a battery-powered Inkplate display and reports "around 3-4 months" on a 1500 mAh cell at hourly refreshes[10]. A mains-powered Pi build trades that for simplicity.
Also worth knowing before you commit: the panel is thin glass and unforgiving of pressure[8], so a hallway at toddler height is a bad posting. And this is a display, not an interface — four buttons on the back[2] is the whole input story. If what you actually want is to tap things, buy a tablet.
Finally, the fair comparison: you can just buy this. TRMNL sells a finished ePaper dashboard device that shows calendars, weather and plugin content, claims you "charge every 3 months," and is open source with the option to self-host the server[11]. If the goal is a dashboard on the wall by Sunday, that's a legitimate answer. Build it yourself when you want to decide exactly what's on the screen, run it entirely on your own network, and be able to change the layout at 11pm because it's been bothering you. That, not the cost, is what this project is for.
Sources
- E Ink — How it works (microcapsules, changing regions), accessed September 2026
- Pimoroni — Inky Impression (sizes, resolutions, prices, refresh times, mounting), accessed September 2026
- Adafruit — Pimoroni Inky Impression 7.3" (PIM773), US price and specs, accessed September 2026
- Raspberry Pi — Zero 2 W product page (CPU, RAM, wireless, unpopulated header), accessed September 2026
- Adafruit — Raspberry Pi Zero 2 W (price; with/without pre-soldered header), accessed September 2026
- InkyPi on GitHub — supported hardware, plugins, install, licence, limitations, accessed September 2026
- Pimoroni — Inky wHAT (4.2", 400×300, four colour, refresh time), accessed September 2026
- Pimoroni Learn — Getting started with Inky Impression (OS, SPI/I²C, install, handling), accessed September 2026
- Pimoroni inky library on GitHub (supported panels, Python version, auto(), SPI overlay), accessed September 2026
- MagInkDash on GitHub — hourly cron refresh, battery display, stated battery life, accessed September 2026
- TRMNL — ePaper dashboard device (battery claim, open source, self-hosting), accessed September 2026
Related: Weekend build: an ESP32 temperature and humidity monitor with a web dashboard · Weekend project: block ads on your whole network with a Raspberry Pi · Self-hosting 101: what's worth running on your own hardware in 2026