I have a set of WS2811 lights controlled using neopixels. The light data line is connected to GPIO18.
for i in range (N):
pixels[i] = colour
pixels.show()
I expected this to be the equivalent of pixels.fill(colour) but when it runs I can see the lights change iteratively and progressively. It takes a couple of seconds to change all the lights.
I want to fill the pixel buffer with all the colours per pixel and have them all change at once. How can I do this? Why is the above demo so slow?