Epaper full vs partial update - martinberlin/cale-idf GitHub Wiki
Full update
When the electronic paper is refreshed in full screen, the picture flicker is a normal phenomenon, and the main function is to clear the display after the image in the previous picture. (from Good Display docs) In most displays this is accomplished using the following sequence of commands / data:
IO.cmd(0x13);
// Loop and send IO.data(byte)
IO.cmd(0x12);
// Refresh with 0x12 and wait for busy before sending any other commands
_waitBusy("update");
Partial update
Is done differently, and when it works good, it should update only a partial area of the display in a single refresh leaving the rest untouched. When the partial refresh is performed, the screen does not flash and the box defined is updated.
IO.cmd(0x91); // partial in
_setPartialRamArea(x, y, xe, ye);
IO.cmd(0x13);
// Loop and send IO.data(byte)
IO.cmd(0x12); // display refresh
_waitBusy("updateWindow");
IO.cmd(0x92); // partial out
For more details check the updateWindow() method in the CalEPD classes