import time import board import displayio #import fourwire import adafruit_ssd1680 import busio import terminalio from adafruit_display_text import label BLACK = 0x000000 WHITE = 0xFFFFFF RED = 0xFF0000 FOREGROUND_COLOR = BLACK BACKGROUND_COLOR = WHITE # Create the display object - the third color is red (0xff0000) DISPLAY_WIDTH = 296 DISPLAY_HEIGHT = 127 # 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() # Pin order defined based on WeAct Header order edp_busy = board.IO0 epd_reset = board.IO1 epd_dc = board.IO2 epd_cs = board.IO3 edp_clk = board.IO4 edp_mosi = board.IO5 #edp_miso = spi = busio.SPI(clock=edp_clk, MOSI=edp_mosi) display_bus = FourWire( spi, command=epd_dc, chip_select=epd_cs, reset=epd_reset, baudrate=1000000 ) time.sleep(1) display = adafruit_ssd1680.SSD1680( display_bus, colstart=1, width=DISPLAY_WIDTH, height=DISPLAY_HEIGHT, busy_pin=edp_busy, highlight_color=FOREGROUND_COLOR, rotation=270, ) # Create a display group for our screen objects g = displayio.Group() # Set a background background_bitmap = displayio.Bitmap(DISPLAY_WIDTH, DISPLAY_HEIGHT, 1) # Map colors in a palette palette = displayio.Palette(1) palette[0] = BACKGROUND_COLOR # Create a Tilegrid with the background and put in the displayio group t = displayio.TileGrid(background_bitmap, pixel_shader=palette) g.append(t) # Draw simple text using the built-in font into a displayio group text_group = displayio.Group(scale=3, x=20, y=80) text = "Hello World2!" text_area = label.Label(terminalio.FONT, text=text, color=FOREGROUND_COLOR) text_group.append(text_area) # Add this text to the text group g.append(text_group) # Place the display group on the screen display.root_group = g # Refresh the display to have everything show on the display # NOTE: Do not refresh eInk displays more often than 180 seconds! display.refresh() time.sleep(120) while True: pass