Skip to main content

Inkplate 5V2 – Display modes

As mentioned on the previous page, Inkplate 5V2 has two display modes: black and white (1-bit) and grayscale (3-bit). Here's a closer look at both.


Black and white mode

1-bit or black and white mode is the simpler and faster display mode. In this mode, pixels are either black or white. You can use shorthand defines BLACK and WHITE when selecting colors in this mode. For example, to draw and display a single black pixel and a single white pixel:

#include "Inkplate.h"
Inkplate inkplate(INKPLATE_1BIT);
void setup() {
inkplate.begin();
// Clear the display
inkplate.clearDisplay();
inkplate.display();
// Draw a black pixel at x=100, y=100
inkplate.drawPixel(100,100,BLACK);
// Draw a white pixel at x=200, y=200
inkplate.drawPixel(200,200,WHITE);
inkplate.display(); // Show on the display
}
void loop() {
}
ℹ️
The clear e-Paper, the blank canvas, is WHITE in this context. The white pixel in the above code snippet will not be visible when drawn on an already clear screen.

Grayscale mode

3-bit or grayscale mode lets you draw in 8 levels of brightness instead of only black and white. Below is an approximate visualization of the black levels and the numerical value each one has in code:

3bit grayscale
Black levels in 3-bit mode

Let's draw a couple of pixels of different brightness levels:

#include "Inkplate.h"
Inkplate inkplate(INKPLATE_3BIT);
void setup() {
inkplate.begin();
// Clear the display
inkplate.clearDisplay();
inkplate.display();
// Draw a black pixel at x=100, y=100
inkplate.drawPixel(100,100,0);
// Draw a white pixel at x=200, y=200
inkplate.drawPixel(200,200,7);
inkplate.drawPixel(200,250,3);
inkplate.drawPixel(250,200,2);
inkplate.display(); // Show on the display
}
void loop() {
}

Full example

Inkplate5V2_Black_And_White.ino

Full example using black and white display mode on Inkplate 5V2.

Inkplate5V2_Grayscale.ino

Full example using grayscale display mode on Inkplate 5V2.