justbuchanan / waveshare-epaper-213v3-circuitpython

Circuitpython displayio driver for Waveshare 2.13 V3 ePaper display

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CircuitPython driver for Waveshare 2.13" V3 Pico ePaper display

This project is a driver for a small (122px X 250px) eInk/ePaper display for the Raspberry Pi Pico. See the product page for more details and pictures.

This driver implementation is based on code from https://github.com/waveshare/Pico_ePaper_Code, but ported to CircuitPython, using the displayio library.

There are multiple ways to interface with this display using a raspberry pi. The manufacturer provides code samples in C and python (based on micropython). I am currently using CircuitPython for a project, so I ported the supplied micropython code to CircuitPython.

Running the example

Limitations

  • Doesn't support rotation of the display. The defaults work, but setting the display's rotation to something other than 0 causes problems.
  • The display blinks on and off twice on startup. I understand some blinking is a necessary thing with ePaper, but this feels excessive...
  • The initialization sequence is missing some busy-waits that the manufacturer-supplied code contained. I don't see a way to add them using the displayio.EPaperDisplay interface, so I left them out. So far I haven't had any issues, but this makes me uneasy...

About

Circuitpython displayio driver for Waveshare 2.13 V3 ePaper display


Languages

Language:Python 100.0%