Partial Updates
Instead of inkplate.update(), you can use inkplate.partialUpdate() for a faster display refresh. This method prevents full-screen flickering by updating only the pixels that have changed in the frame buffer.
Partial Update
Partial updates in black-and-white (1-bit) mode offer the fastest e-Paper update available on Inkplate.
⚠️
It is recommended to perform a full update after a certain number of partial updates to maintain both the lifespan and the image quality of the e-Paper display. Approximately 50 partial updates should still look good, depending on the content being displayed. Use
inkplate.setFullUpdateThreshold() to automate this process.ℹ️
Partial updates are also supported in grayscale (3-bit) mode; however, they are significantly faster and more effective in black-and-white mode. In grayscale mode, their primary benefit is reducing full-screen flickering.
#include "Inkplate.h"
Inkplate inkplate(INKPLATE_1BIT);
void setup(){
inkplate.begin();
inkplate.setTextSize(3);
inkplate.setTextColor(BLACK);
inkplate.setFullUpdateThreshold(40);
}
void loop(){
int x = -500; // Start from the left of the screen border
while (x < 1024)
{
inkplate.clearDisplay();
inkplate.setCursor(x, 300); // Set cursor position
inkplate.print("Partial updates!"); // Print scrolling text
inkplate.partialUpdate(true); // Perform a partial update
x += 15; // Move 15 pixels to the right
}
inkplate.display(); // Perform a full update
delay(1000); // Pause before next update
}
inkplate.partialUpdate()
Performs a partial (fast) update on Inkplate, refreshing only changed pixels to prevent full-screen flickering.
Returns value: None
Function parameters:
| Type | Name | Description |
|---|---|---|
uint8_t | _leaveOn | Optional. If set to 1, the e-Paper power supply remains on after the update. This speeds up consecutive partial updates but requires a full refresh afterward to prevent prolonged power draw. |
inkplate.setFullUpdateThreshold()
Sets the number of partial updates after which a full update is automatically performed.
Returns value: None
Function parameters:
| Type | Name | Description |
|---|---|---|
uint16_t | _numberOfPartialUpdates | The number of partial updates before a full update (inkplate.display()) is triggered automatically. |
Full Examples
Inkplate4TEMPERA_Partial_Update.ino
Example demonstrating the use of partialUpdate for fast display refreshes.