When using these single data line led strips a problem arises when using hundreds (or more) leds off a single data line. The 800kHz signal is too slow to update all the leds at a high framerate. The way to get around this is driving strips in parallel which is what products like the Fadecandy or the software OctoWS2811 for Teensy solve.
However, both of these solutions are currently only compatible with rgb strips (24 bits per pixel) so I had to modify OctoWS2811 to work with rgbw (32 bits per pixel). It was a pretty simple modification of using a variable to set the bits per pixel instead of a hard coded value of 24, as well as adding a way to convert from RGBW to GRBW which my strips were wired as. I renamed the library to OctoSK6812 since I took out the compatibility with 400kHz strips, and to differentiate from the official release of OctoWS2811 since my additions might break things since it hasn't been fully tested. It's OctoSK6812 since that is the driver chip inside these new rgbw leds, and this chip is also found in the mini rgb single data line leds.
Here's the code:
And a slightly modified test example also from OctoWS2811:
This test lights up the first 4 pixels to help identify the arrangement of the colours for a particular strip. If the leds show as: RGBWW then the correct configuration is set.
This modified version should also still work with the rgb variants of the SK6812 driver chip.