gdeh0154d67 200x200 - martinberlin/cale-idf GitHub Wiki

  • Size: 200 * 200, 1.54 inches
  • Controller: SSD1681
  • Status: Working
  • Partial update: Working - Needs more testing
  • Requested in Issue 31
  • Similar model to gped015OC1 (OC1 is older and with IL3829 controller)
  • Red/Black version: gdeh0154z90

The 1.54 inches epaper is nice to make a digital wristwatch

Stats

Full update - non SPI optimized

STATS (ms)
190 _wakeUp settings+send Buffer
2671 update 
2862 total time in millis

Partial update box width:180 height:60

231 _wakeUp settings+send Buffer
645 update 
clean_buffer:88
965 total time in millis

Same partial update after optimizing SPI data transmission

211 _wakeUp settings+send Buffer
645 update 
clean_buffer:13
871 total time in millis

It was hard to get working correctly the partial update. We noticed that a bug triggers on the second partial update unless you do a full buffer update. That we execute with the following code:

  // Clean buffer: 0x01 is essential
  _setRamDataEntryMode(0x01);
  IO.cmd(0x24);
  for (int16_t x1 = xs_d8; x1 <= GDEH0154D67_BUFFER_SIZE; x1++)
  {
    IO.data(0xFF);
  }

Without doing that the second partial update black color comes as Black with small white dots (Kind of reads of the raw RAM or has a non-clean buffer)

Demos

Bouncing ball partial refresh example