// DotStarTest // This example will cycle between showing four pixels as Red, Green, Blue, White // and then showing those pixels as Black. // // There is serial output of the current state so you can confirm and follow along // #include #include #include #include #include "defaults.h" char* filename = "/Blink_center_getAngry.c"; RgbColor *c[16]; RgbColor black(0); const uint16_t PixelCount = 128; // Currently we have a 2x 8x8 matrix connected // make sure to set this to the correct pins // SPI Hardware Pins: CLK=GPIO14=Pin12=D5 (orange), MOSI=GPIO13=Pin13=D7 (yellow) NeoPixelBrightnessBus strip(PixelCount); //NeoPixelBus strip(PixelCount); void setup() { Serial.begin(115200); while (!Serial); // wait for serial attach Serial.println(); Serial.println("Initializing everything..."); Serial.flush(); // this resets all the neopixels to an off state Serial.println("Switching off all LEDs"); strip.Begin(); strip.SetBrightness(brightness); strip.ClearTo(black); strip.Show(); //Initialize File System if(SPIFFS.begin()) { Serial.println("SPIFFS Initialisierung....OK"); } else { Serial.println("SPIFFS Initialisierung...Fehler!"); } Serial.println(); Serial.println("Loading default color map"); loadColorMap(colorMap); Serial.println("\nSwitch to running..."); } // loading ColorMap into color objects void loadColorMap(uint8_t cmap[]) { for(int n=0; n<16; n++) { c[n] = new RgbColor(cmap[n*3], cmap[n*3+1], cmap[n*3+2]); } } // play a given sub-animation void playBwAnimation(int animDelay, uint8_t anim[][8]) { for(int frame=0; frame<7; frame++) { for(int n=0; n>4 )] ); strip.SetPixelColor( 2*n+1, *c[(anim[frame][n]&0x0F)] ); strip.SetPixelColor( 64+2*n , *c[(anim[frame][n]>>4 )] ); strip.SetPixelColor( 64+2*n+1, *c[(anim[frame][n]&0x0F)] ); } strip.Show(); delay(animDelay); } } void loop() { int aniSpeed=110; Serial.println("Entering loop ..."); // turn off the pixels Serial.println("All off ..."); strip.ClearTo(black); playFile("/Center.c",2000); playFile("/Blink_center.c", aniSpeed); playFile("/Move_left.c", aniSpeed); playFile("/Blink_left.c", aniSpeed); playFile("/Move_left_center.c", aniSpeed); playFile("/Center.c",2000); playFile("/Blink_LSD_start.c", aniSpeed); playFile("/LSD.c", aniSpeed); playFile("/LSD.c", aniSpeed-40); playFile("/LSD.c", aniSpeed-80); playFile("/LSD.c", aniSpeed-80); playFile("/LSD.c", aniSpeed-40); playFile("/LSD.c", aniSpeed); playFile("/Blink_LSD_end.c", aniSpeed); playFile("/Center.c",1000); playFile("/Blink_center.c", aniSpeed); playFile("/Move_right.c", aniSpeed); playFile("/Blink_right.c", aniSpeed); playFile("/Move_right_center.c", aniSpeed); playWideFile("/Blink_center_getAngry_wide2.c", aniSpeed); /*Serial.println("Animation test ..."); playBwAnimation(50, eye_move_cr); delay(3000); playBwAnimation(50, eye_blink_r); delay(5000); playBwAnimation(50, eye_blink_r); delay(3000); playBwAnimation(50, eye_move_rc); delay(3000); playBwAnimation(50, eye_blink_c); delay(3000); playBwAnimation(50, eye_blink_c); delay(4000); playBwAnimation(50, eye_blink_c); delay(3000); playBwAnimation(50, eye_move_cl); delay(3000); playBwAnimation(50, eye_blink_l); delay(2000); playBwAnimation(50, eye_move_lc); delay(3000); playMapAnimation(150, terminator);delay(3000);*/ Serial.println("Loop end ..."); }