adafruit / Adafruit_CircuitPython_seesaw

seesaw helper IC driver for circuitPython
MIT License
64 stars 36 forks source link

seesaw.neopixel is incompatible with regular neopixel protocol #105

Closed MauiJerry closed 2 years ago

MauiJerry commented 2 years ago

There is a fundamental incompatibility between regular Neopixel(and Dotstar) protocol and the seesaw version. The common protocol is derived from PixelBuf which keeps an array of values and transmits on show(). The seesaw version does not keep the pixel values local. It transmits them individually on each setitem(). This has two issues:

Some Possible Solutions:

ladyada commented 2 years ago

we do want to tweak neopixel support but may not get to it ASAP - any optimizaiton code to this library is appreciated as a PR

MauiJerry commented 2 years ago

Neradoc shared (on discord) a prototype PixelBuf derived seesaw.neopixel replacement. it is also in the use-pixelbuf branch

dhalbert commented 2 years ago

@MauiJerry would you like to test #106, or have you already done so? If it's fine, we'll make a major release. Thanks!

MauiJerry commented 2 years ago

i used Neradoc's branch in our project on rPi Pico feather with no problems. not an exhaustive test but it ran at an event for 6-7hr.

sent from my phone, which may have added its own interpretation of what i typed or dictated. I apologize for any auto correct errors introduced by our robotic under lord.

On Fri, Jul 22, 2022, 1:44 PM Dan Halbert @.***> wrote:

@MauiJerry https://github.com/MauiJerry would you like to test #106 https://github.com/adafruit/Adafruit_CircuitPython_seesaw/pull/106, or have you already done so? If it's fine, we'll make a major release. Thanks!

— Reply to this email directly, view it on GitHub https://github.com/adafruit/Adafruit_CircuitPython_seesaw/issues/105#issuecomment-1193007801, or unsubscribe https://github.com/notifications/unsubscribe-auth/AALMU2LZTMXQM3IWLDQAVS3VVMW4HANCNFSM53CNXB2Q . You are receiving this because you were mentioned.Message ID: @.***>