adafruit / Adafruit_CircuitPython_ST7565

A display control library for ST7565 graphic displays
MIT License
6 stars 3 forks source link

TypeError: 'ST7565' object does not support 'protocol_framebuffer' #7

Closed bit-13 closed 1 year ago

bit-13 commented 1 year ago

The framebufferio module doesn't work with this display class, and yet somehow the very similar SharpMemoryDisplay does…

import framebufferio

f = framebufferio.FramebufferDisplay(mydisplay)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'ST7565' object does not support 'protocol_framebuffer'
tannewt commented 1 year ago

This display doesn't use an underlying framebuffer. Instead, it uses displayio. This driver won't support a framebuffer.

What are you trying to accomplish?

bit-13 commented 1 year ago

I was trying to get all the fancy displayio stuff like groups and tilegrids to work with a display that has this chipset, and based on what I've been able to do with the Sharp Displays and their deceptively similar driver code I wound up here… It's not make-or-break for my project to have framebufferio, but looking at this code versus the Sharp Display driver I don't see how one is using a framebuffer and the other isn't since they both subclass adafruit_framebuf.FrameBuffer

ladyada commented 1 year ago

@tannewt other way around - its framebuf derivative not displayio - we don't stock anything with this chipset anymore so we havent ported it to displayio!

tannewt commented 1 year ago

Ah! My mistake.

@bit-13 It should be possible to create a displayio driver for the ST7565. It is mostly a function of getting the correct init sequence. One of the other ST drivers would be where to start.

bit-13 commented 1 year ago

Awesome, thank you!