An e-Paper display library for CircuitPython, a MicroPython variant, with a demo that draws a Julia or Mandlebrot fractal on the display.
This code was written and tested on an Adafruit Metro M4 running CircuitPython 3.0. The e-Paper display code should work on anything capable of running CircuitPython. The fractal demo requires floating point; it'll be extremely slow if you get it running on an M0.
The e-Paper displays are the monochrome SPI varities from Waveshare. Six digital I/O pins are required.
- The monochrome 2.7" Waveshare e-Paper display module (no hardware partial update support, ~6 seconds to update).
- The monochrome 2.13" and 2.9" Waveshare e-Paper display modules (these have partial update support and take ~1-2 seconds to update).
- The duochrome 2.13" color Waveshare e-Paper display modules (these take ~20 seconds to update; sorting microscopic pigmented balls is not a fast).
Based on my reading I suspect the interfaces for the above cover all of the SPI connected Waveshare display types but others have not yet been tested.
This library assumes the jumper on the displays remains in 8-bit mode with a dedicated data/command (DC) pin which is how the ones I purchased were shipped.
- Digital input for Busy.
- Digital output for Reset.
- Digital output for Chip Select.
- Digital output for SPI MOSI.
- Digital output for SPI CLK
- Digital output for Data / Command.
By default the epdif
code uses the hardware SPI bus for SPI MOSI and SPI CLK.
Apache 2.0 for top level code. The third_party/
tree contains code from
other sources which carries its own licenses. In particular the Waveshare code
has a MIT style license on it so the ported code retains that license.
This is not an official Google product.