From 50deff315a2172404e059920dcd2cae9c4e7789c Mon Sep 17 00:00:00 2001 From: Paul Cutler Date: Fri, 3 Nov 2023 10:02:00 -0500 Subject: [PATCH 1/3] Update to use fourwire and root_group for CP 9 compatibility --- README.rst | 5 +++-- examples/acep7in_simpletest.py | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index f151415..2cadf7a 100644 --- a/README.rst +++ b/README.rst @@ -105,6 +105,7 @@ Usage Example import time import board import displayio + import fourwire import adafruit_acep7in displayio.release_displays() @@ -116,7 +117,7 @@ Usage Example epd_reset = board.D11 epd_busy = board.D12 - display_bus = displayio.FourWire( + display_bus = fourwire.FourWire( spi, command=epd_dc, chip_select=epd_cs, reset=epd_reset, baudrate=1000000 ) @@ -133,7 +134,7 @@ Usage Example t = displayio.TileGrid(pic, pixel_shader=pic.pixel_shader) g.append(t) - display.show(g) + display.root_group = g display.refresh() diff --git a/examples/acep7in_simpletest.py b/examples/acep7in_simpletest.py index 5fdb982..d7e31c4 100644 --- a/examples/acep7in_simpletest.py +++ b/examples/acep7in_simpletest.py @@ -11,6 +11,7 @@ import time import board import displayio +import fourwire import adafruit_acep7in displayio.release_displays() @@ -22,7 +23,7 @@ epd_reset = board.D11 epd_busy = board.D12 -display_bus = displayio.FourWire( +display_bus = fourwire.FourWire( spi, command=epd_dc, chip_select=epd_cs, reset=epd_reset, baudrate=1000000 ) @@ -39,7 +40,7 @@ t = displayio.TileGrid(pic, pixel_shader=pic.pixel_shader) g.append(t) - display.show(g) + display.root_group = g display.refresh() From f97a07736aa4b286a01f47221837347b74b770cd Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 18 Dec 2023 16:00:57 -0600 Subject: [PATCH 2/3] fallback for Fourwire and EPaperDisplay. add displayio to mock docs --- adafruit_acep7in.py | 12 +++++++++--- docs/conf.py | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/adafruit_acep7in.py b/adafruit_acep7in.py index 7f3fe95..ea4cb5a 100644 --- a/adafruit_acep7in.py +++ b/adafruit_acep7in.py @@ -21,7 +21,13 @@ """ -import displayio +# For 8.x.x and 9.x.x. When 8.x.x is discontinued as a stable release, change this. +try: + from fourwire import FourWire + from epaperdisplay import EPaperDisplay +except ImportError: + from displayio import FourWire + from displayio import EPaperDisplay __version__ = "0.0.0+auto.0" __repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_ACeP7In.git" @@ -53,7 +59,7 @@ # pylint: disable=too-few-public-methods -class ACeP7In(displayio.EPaperDisplay): +class ACeP7In(EPaperDisplay): r"""Display driver for 7" ACeP epaper display. Driver IC name is unknown. :param bus: The data bus the display is on @@ -69,7 +75,7 @@ class ACeP7In(displayio.EPaperDisplay): Display rotation """ - def __init__(self, bus, **kwargs): + def __init__(self, bus: FourWire, **kwargs): width = kwargs["width"] height = kwargs["height"] if "rotation" in kwargs and kwargs["rotation"] % 180 != 0: diff --git a/docs/conf.py b/docs/conf.py index c22f629..4f741e4 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -27,7 +27,7 @@ # Uncomment the below if you use native CircuitPython modules such as # digitalio, micropython and busio. List the modules you use. Without it, the # autodoc module docs will fail to generate with a warning. -# autodoc_mock_imports = ["digitalio", "busio"] +autodoc_mock_imports = ["displayio"] autodoc_preserve_defaults = True From 3bf34cc423e0464511b253fa84b05a43b178074f Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 18 Dec 2023 16:11:56 -0600 Subject: [PATCH 3/3] update example and readme --- README.rst | 9 +++++++-- examples/acep7in_simpletest.py | 10 ++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 2cadf7a..25a180b 100644 --- a/README.rst +++ b/README.rst @@ -105,9 +105,14 @@ Usage Example import time import board import displayio - import fourwire import adafruit_acep7in + # For 8.x.x and 9.x.x. When 8.x.x is discontinued as a stable release, change this. + try: + from fourwire import FourWire + except ImportError: + from displayio import FourWire + displayio.release_displays() # This pinout works on a Feather RP2040 and may need to be altered for other boards. @@ -117,7 +122,7 @@ Usage Example epd_reset = board.D11 epd_busy = board.D12 - display_bus = fourwire.FourWire( + display_bus = FourWire( spi, command=epd_dc, chip_select=epd_cs, reset=epd_reset, baudrate=1000000 ) diff --git a/examples/acep7in_simpletest.py b/examples/acep7in_simpletest.py index d7e31c4..0e6d371 100644 --- a/examples/acep7in_simpletest.py +++ b/examples/acep7in_simpletest.py @@ -11,9 +11,15 @@ import time import board import displayio -import fourwire import adafruit_acep7in +# For 8.x.x and 9.x.x. When 8.x.x is discontinued as a stable release, change this. +try: + from fourwire import FourWire +except ImportError: + from displayio import FourWire + + displayio.release_displays() # This pinout works on a Feather RP2040 and may need to be altered for other boards. @@ -23,7 +29,7 @@ epd_reset = board.D11 epd_busy = board.D12 -display_bus = fourwire.FourWire( +display_bus = FourWire( spi, command=epd_dc, chip_select=epd_cs, reset=epd_reset, baudrate=1000000 )