GitXplorerGitXplorer
g

epaper-circuitpython

public
20 stars
5 forks
2 issues

Commits

List of commits on branch master.
Unverified
29555dccd8dde5c592d6c9974423158358b53e34

Add CircuitPython 4.1 timings.

ggpshead committed 6 years ago
Unverified
53c3627db8555933b4d75cafecfa400760703da1

Stay in range when getting random bytes.

ggpshead committed 6 years ago
Unverified
e6a47d5fcc69c592075ea20fccaf16d9a131bf9e

1.54" square 152x152 color epd.

ggpshead committed 6 years ago
Unverified
107f5c236d4a132717051ea6fae7f6e2e60cdc79

Add code for a demo of tri-color displays.

ggpshead committed 6 years ago
Unverified
2056d49c0429cc9d4d88b9567a8d4c41adeb3b1f

Work with either bitbangio or busio.

ggpshead committed 6 years ago
Unverified
683ca2c0687d7cf4fd5985333122f44fd58dc35d

Support other size color EPDs via subclassing.

ggpshead committed 6 years ago

README

The README file for this repository.

e-Paper Display driver code for CircuitPython with a fractal demo

An e-Paper display library for CircuitPython, a MicroPython variant, with a demo that draws a Julia or Mandlebrot fractal on the display.

Photo of an m4 displaying a Julia fractal as tweeted

Hardware and Software Requirements

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.

Supported e-Paper Displays

  • 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.

Connections

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.

  1. Digital input for Busy.
  2. Digital output for Reset.
  3. Digital output for Chip Select.
  4. Digital output for SPI MOSI.
  5. Digital output for SPI CLK
  6. Digital output for Data / Command.

By default the epdif code uses the hardware SPI bus for SPI MOSI and SPI CLK.

Licenses

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.

Disclaimer

This is not an official Google product.