LED Strip Pattern Collection
Jump to navigation
Jump to search
Note: Some of these may be written specifically for octows2811, neopixel or fastSPI, but it's usually easy to port between them (change the show and set color functions).
Random Twinkle
// number, twinkle color, background color, delay // twinkleRand(5,strip.Color(255,255,255),strip.Color(255, 0, 100),90); // twinkle random number of pixels void twinkleRand(int num,uint32_t c,uint32_t bg,int wait) { // set background stripSet(bg,0); // for each num for (int i=0; i<num; i++) { strip.setPixelColor(random(strip.numPixels()),c); } strip.show(); delay(wait); }
Set All Pixels Quickly
// quickly set the entire strip a color void stripSet(uint32_t c, uint8_t wait) { for(uint16_t i=0; i<strip.numPixels(); i++) { strip.setPixelColor(i, c); } // move the show outside the loop strip.show(); delay(wait); }
Simple Wave
// very simple wave: velocity, cycles,delay between frames // simpleWave(0.03,5,10); void simpleWave(float rate,int cycles, int wait) { float pos=0.0; // cycle through x times for(int x=0; x<(strip.numPixels()*cycles); x++) { pos = pos+rate; for(int i=0; i<strip.numPixels(); i++) { // sine wave, 3 offset waves make a rainbow! float level = sin(i+pos) * 127 + 128; // set color level strip.setPixelColor(i,(int)level,0,0); } strip.show(); delay(wait); } }