Lolin ePaper shield for esp8266

Share on:

ePaper 2.13 shield for Lolin Wemos D1 mini

Just picked up one of these neat ePaper displays from AliExpress for $9.90 for the esp8266. It’s 2.13" in diagonal, has a resolution of 250x122 and is made by Lolin.

Lolin produce a whole bunch of quality esp8266 items - including the ubiquitous Wemos D1 Mini and various I2C sensors. It’s not a shield in that you can sit it on top of an ESP - you need a couple of cables to use the lcd with the esp, you’ll want to get the TFT I2C Connector Shield ($0.70) and TFT e-Paper Cable ($0.80).

Software side, the product comes as-is with no instructions - so it’s off to Github to find potential projects.

I started using Micropython initially but quickly hit a dead-end with a seeming lack of support for this specific ePaper display - you might have some luck with this issue.

However for PlatformIO/Arduino there’s library published in 2019 by Wemos themselves: LOLIN_EPD_Library.

You can use this in your PlatformIO projects by adding these lines to platformio.ini:

lib_deps = 
  Adafruit GFX Library@1.6.1
  LOLIN_EPD

The Adafruit dependency is incompatible in newer versions, 1.6.1 is the newest version I found that compiles.

There’s a good example program here.

This demonstrates how to render text (from fonts!) onto the display as a full update - where you’ll see the display blank black, white, then update. It also demonstrates selective partial updates of parts of the display by rendering a bitmap there. Herein lies a bit of a limitation - you can’t render text as partial updates, only bitmaps. There may be solution to this point issue #3.

Another ‘feature’ of ePaper is the display will accumulate noise on every partial update, so you’ll need to do a full update every so often anyway.

I’m planning to use this alongside light and environmental (gas) I2C sensors to show a status dashboard for the room, and also publish the values to MQTT for integration into my home automation.