Skip to main content

e-Paper Essentials

Inkplate 7SPECTRA's screen is a 7.3-inch E Ink Spectra 6 panel: 800 × 480 pixels, each one of six colors. This page explains how your drawing gets from code to the panel.

How does this e-paper display work?​

You never draw on the panel directly. The library keeps a frame buffer, a copy of the whole screen in the board's PSRAM, with one 4-bit color index per pixel. Drawing functions such as print() or fillRect() only change that buffer. When you call display(), the library powers the panel, sends it the whole buffer over SPI, refreshes it, and, unless you ask it to leave the panel on, powers it down again.

The panel is mounted rotated by 180 degrees on the board. The libraries' default rotation (0) makes up for that, so (0, 0) is the top-left corner as you look at the screen.

Display modes​

There is one mode: six colors. Each pixel takes one of these color indexes.

IndexArduinoMicroPythonColor
0INKPLATE_BLACKInkplate.BLACKBlack
1INKPLATE_WHITEInkplate.WHITEWhite
2INKPLATE_YELLOWInkplate.YELLOWYellow
3INKPLATE_REDInkplate.REDRed
4INKPLATE_BLUEInkplate.BLUEBlue
5INKPLATE_GREENInkplate.GREENGreen

The drawing functions ignore a color value above 5. MicroPython text is the exception: a text color above 5 is drawn in green (index 5). Photos are dithered to these six colors: the image functions take a dither option that mixes them to approximate the colors in between.

Full and partial updates​

The panel takes full-screen updates only; there is no partial update on this board. Every display() call refreshes the whole screen. To change part of it, redraw that part in the frame buffer and call display() again, as the RTC example does.