Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "Arduino.h"
- #include "PUMPS.h"
- #include <DFPlayerMini_Fast.h>
- #include <SoftwareSerial.h>
- #include <FastLED.h>
- #define NUM_LEDS 80
- #define DATA_PIN 6
- CRGBArray<NUM_LEDS> leds;
- CRGBSet ring1(leds(0,7)); // Defining Ring 1 as pixel range
- CRGBSet ring2(leds(8,15)); // Defining Ring 2 as pixel range
- CRGBSet ring3(leds(16,23)); // Defining Ring 3 as pixel range
- CRGBSet ring4(leds(24,31)); // Defining Ring 4 as pixel range
- CRGBSet ring5(leds(32,39)); // Defining Ring 5 as pixel range
- CRGBSet ring6(leds(40,47)); // Defining Ring 6 as pixel range
- CRGBSet ring7(leds(48,55)); // Defining Ring 7 as pixel range
- CRGBSet ring8(leds(56,63)); // Defining Ring 8 as pixel range
- CRGBSet ring9(leds(64,71)); // Defining Ring 9 as pixel range
- CRGBSet ring10(leds(72,79)); // Defining Ring 10 as pixel range
- CRGBSet allring(leds(0,79)); // Defining all rings as one array
- // Assigning Pumps to pins
- PUMPS pump1(2);
- PUMPS pump2(3);
- PUMPS pump3(4);
- PUMPS pump4(5);
- SoftwareSerial mySerial(10,11); //RX, TX
- DFPlayerMini_Fast myMP3;
- // the setup function runs once when you press reset or power the board
- void setup() {
- Serial.begin(115200);
- mySerial.begin(9600);
- delay(2000); // SANITY SAVER
- FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS);
- FastLED.setBrightness(30);
- myMP3.begin(mySerial);
- Serial.println("Setting volume to 50%");
- myMP3.volume(12); // Setting MP3 Volume
- delay(50);
- }
- void ALL_OFF() {
- pump1.OFF();
- pump2.OFF();
- pump3.OFF();
- pump4.OFF();
- }
- void ALL_ON() {
- pump1.ON();
- pump2.ON();
- pump3.ON();
- pump4.ON();
- }
- void ringsOFF(){
- ring1 = CRGB::Black;
- ring2 = CRGB::Black;
- ring3 = CRGB::Black;
- ring4 = CRGB::Black;
- ring5 = CRGB::Black;
- ring6 = CRGB::Black;
- ring7 = CRGB::Black;
- ring8 = CRGB::Black;
- }
- void ringsWhite(){
- ring1 = CRGB::White;
- ring2 = CRGB::White;
- ring3 = CRGB::White;
- ring4 = CRGB::White;
- ring5 = CRGB::White;
- ring6 = CRGB::White;
- ring7 = CRGB::White;
- ring8 = CRGB::White;
- }
- // the loop function runs over and over again forever
- void loop() {
- delay(10); //turn off MP3 at start
- myMP3.stop(); //TURN OFF MP3
- delay(10);
- Serial.println("MP3 Player is off");
- delay(5000); // FIRST WAIT FOR STARTUP AFTER POWER 5 seconds
- myMP3.playNext(); // START DFPLAYER
- Serial.println("1st MP3 is playing!");
- delay(50);
- //SHOWCODE HERE!
- // 1
- ALL_ON();
- ringsWhite();
- FastLED.show();
- delay(2104);
- //2
- delay(2104);
- ALL_OFF();
- ringsOFF();
- FastLED.show();
- //3
- delay(2104);
- //4
- delay(2104);
- //5
- delay(2104);
- pump1.ON();
- ring4 = CRGB::Red;
- FastLED.show();
- //6
- delay(2104);
- //7
- delay(2104);
- //8
- delay(2104);
- pump4.ON();
- pump1.OFF();
- ring4 = CRGB::Black;
- ring1 = CRGB::Red;
- FastLED.show();
- //9
- delay(2104);
- //10
- delay(2104);
- ALL_OFF();
- ring1 = CRGB::Black;
- FastLED.show();
- //11
- delay(526);
- pump1.ON();
- ring1 = CRGB::Red;
- FastLED.show();
- delay(263);
- pump2.ON();
- ring2 = CRGB::Red;
- FastLED.show();
- delay(263);
- pump3.ON();
- ring3 = CRGB::Red;
- delay(263);
- pump4.ON();
- ring4 = CRGB::Red;
- delay(263);
- delay(263);
- ALL_OFF();
- ringsOFF();
- delay(263);
- pump2.ON();
- pump3.ON();
- ring2 = CRGB::Purple;
- ring3 = CRGB::Purple;
- FastLED.show();
- delay(526);
- //12
- pump1.ON();
- pump4.ON();
- ring1 = CRGB::Blue;
- ring4 = CRGB::Blue;
- FastLED.show();
- delay(2104);
- //13
- pump2.OFF();
- pump3.OFF();
- pump4.OFF();
- ring2 = CRGB::Black;
- ring3 = CRGB::Black;
- ring4 = CRGB::Black;
- FastLED.show();
- //start 14 (melody)
- delay(1052);
- pump1.OFF();
- pump4.ON();
- ring1 = CRGB::Black;
- ring4 = CRGB::Purple;
- FastLED.show();
- delay(526);
- pump4.OFF();
- pump3.ON();
- ring4 = CRGB::Black;
- ring3 = CRGB::Red;
- FastLED.show();
- delay(526);
- //14
- pump3.OFF();
- pump2.ON();
- ring3 = CRGB::Black;
- ring2 = CRGB::Purple;
- FastLED.show();
- delay(1052);
- pump2.OFF();
- pump1.ON();
- ring2 = CRGB::Black;
- ring1 = CRGB::Red;
- FastLED.show();
- delay(526);
- pump1.OFF();
- pump2.ON();
- ring1 = CRGB::Black;
- ring2 = CRGB::Purple;
- FastLED.show();
- delay(526);
- //15
- pump2.OFF();
- pump3.ON();
- ring2 = CRGB::Black;
- ring3 = CRGB::Red;
- FastLED.show();
- delay(2104);
- //16
- pump3.OFF();
- pump1.ON();
- ring3 = CRGB::Black;
- ring1 = CRGB::Purple;
- FastLED.show();
- delay(1052);
- pump1.OFF();
- pump4.ON();
- ring1 = CRGB::Black;
- ring4 = CRGB::Yellow;
- FastLED.show();
- delay(526);
- pump4.OFF();
- pump3.ON();
- ring4 = CRGB::Black;
- ring3 = CRGB::Purple;
- FastLED.show();
- delay(526);
- //17
- pump3.OFF();
- pump2.ON();
- ring3 = CRGB::Black;
- ring2 = CRGB::Yellow;
- FastLED.show();
- delay(1052);
- pump2.OFF();
- pump1.ON();
- ring2 = CRGB::Black;
- ring1 = CRGB::Purple;
- FastLED.show();
- delay(526);
- pump1.OFF();
- pump2.ON();
- ring1 = CRGB::Black;
- ring2 = CRGB::Yellow;
- FastLED.show();
- delay(526);
- //18
- pump2.OFF();
- pump3.ON();
- ring2 = CRGB::Black;
- ring3 = CRGB::Purple;
- FastLED.show();
- delay(2104);
- pump3.OFF();
- pump1.ON();
- ring3 = CRGB::Black;
- ring1 = CRGB::Purple;
- FastLED.show();
- delay(1052);
- pump1.OFF();
- pump4.ON();
- ring1 = CRGB::Black;
- ring4 = CRGB::White;
- FastLED.show();
- delay(526);
- pump4.OFF();
- pump3.ON();
- ring4 = CRGB::Black;
- ring3 = CRGB::White;
- FastLED.show();
- delay(526);
- //19
- pump3.OFF();
- pump2.ON();
- ring3 = CRGB::Black;
- ring2 = CRGB::White;
- FastLED.show();
- delay(1052);
- pump2.OFF();
- pump1.ON();
- ring2 = CRGB::Black;
- ring1 = CRGB::White;
- FastLED.show();
- delay(526);
- pump1.OFF();
- pump2.ON();
- ring1 = CRGB::Black;
- ring2 = CRGB::White;
- FastLED.show();
- delay(526);
- //20
- pump2.OFF();
- pump3.ON();
- ring2 = CRGB::Black;
- ring3 = CRGB::White;
- FastLED.show();
- delay(1052);
- pump3.OFF();
- pump2.ON();
- ring3 = CRGB::Black;
- ring2 = CRGB::White;
- FastLED.show();
- delay(1052);
- pump2.OFF();
- pump4.ON();
- ring2 = CRGB::Black;
- ring4 = CRGB::Green;
- FastLED.show();
- //21
- delay(1052);
- pump1.ON();
- pump4.OFF();
- ring1 = CRGB::Red;
- ring4 = CRGB::Black;
- FastLED.show();
- delay(1052);
- //22
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- ring1 = CRGB::Black;
- ring2 = CRGB::Green;
- ring3 = CRGB::Green;
- FastLED.show();
- delay(2104);
- //23
- pump2.OFF();
- pump3.OFF();
- pump1.ON();
- ringsOFF(); //LEDS TILL HERE
- FastLED.show();
- delay(526);
- pump1.OFF();
- pump2.ON();
- delay(132);
- pump2.OFF();
- pump1.ON();
- delay(263);
- pump1.OFF();
- pump2.ON();
- delay(132);
- pump2.OFF();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //24
- ALL_OFF();
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(132);
- pump3.OFF();
- pump2.OFF();
- pump1.ON();
- delay(263);
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(132);
- pump3.OFF();
- pump2.OFF();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //25
- ALL_OFF();
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(132);
- pump3.OFF();
- pump2.OFF();
- pump1.ON();
- delay(263);
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(132);
- pump3.OFF();
- pump2.OFF();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //26
- pump1.ON();
- delay(132);
- pump2.ON();
- delay(263);
- pump3.ON();
- pump4.ON();
- delay(132);
- pump1.OFF();
- delay(263);
- pump2.OFF();
- delay(263);
- ALL_OFF();
- delay(526);
- pump1.ON();
- pump2.ON();
- delay(263);
- pump3.ON();
- pump4.ON();
- delay(132);
- ALL_OFF();
- delay(132);
- //27
- pump1.ON();
- pump2.ON();
- delay(1052);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //28
- pump2.ON();
- delay(1052);
- pump3.OFF();
- delay(526);
- pump2.OFF();
- pump1.ON();
- delay(526);
- //29
- pump4.ON();
- delay(526);
- pump1.OFF();
- delay(526);
- pump2.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- pump2.OFF();
- //30
- pump1.ON();
- pump3.ON();
- delay(1052);
- pump1.OFF();
- pump3.OFF();
- pump2.ON();
- pump4.ON();
- delay(526);
- delay(263);
- ALL_OFF();
- delay(263);
- //31 (2)
- pump1.ON();
- pump2.ON();
- delay(1052);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //32
- pump2.ON();
- delay(1052);
- pump3.OFF();
- delay(526);
- pump2.OFF();
- pump1.ON();
- delay(526);
- //33
- pump4.ON();
- delay(526);
- pump1.OFF();
- delay(526);
- pump2.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- pump2.OFF();
- //34
- pump1.ON();
- pump3.ON();
- delay(1052);
- pump2.ON();
- pump4.ON();
- delay(526);
- delay(263);
- ALL_OFF();
- delay(263);
- //35 (maat na het tweetje)
- pump2.ON();
- delay(1052);
- pump3.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //36
- pump3.OFF();
- pump1.ON();
- delay(1052);
- ALL_OFF();
- delay(263);
- pump3.ON();
- pump2.ON();
- delay(263);
- pump1.ON();
- delay(526);
- pump2.OFF();
- pump3.OFF();
- pump1.OFF();
- //37
- pump4.ON();
- delay(526);
- pump1.ON();
- delay(526);
- pump4.OFF();
- pump3.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- delay(526);
- //38
- pump3.ON();
- delay(1052);
- pump2.OFF();
- pump3.OFF();
- pump1.ON();
- pump4.ON();
- delay(1052);
- //39 *
- pump1.OFF();
- pump4.OFF();
- pump2.ON();
- delay(1052);
- pump3.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //40
- pump3.OFF();
- pump1.ON();
- delay(1052);
- ALL_OFF();
- delay(263);
- pump3.ON();
- pump2.ON();
- delay(263);
- pump1.ON();
- delay(526);
- pump2.OFF();
- pump3.OFF();
- pump1.OFF();
- //40
- pump4.ON();
- delay(526);
- pump1.ON();
- delay(526);
- pump4.OFF();
- pump3.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- delay(263);
- ALL_OFF();
- delay(263);
- //40
- ALL_ON();
- delay(1052);
- pump1.OFF();
- delay(263);
- pump2.OFF();
- delay(263);
- pump3.OFF();
- delay(263);
- pump4.OFF();
- delay(263);
- //41
- pump1.ON();
- pump3.ON();
- delay(1052);
- pump2.ON();
- pump4.ON();
- delay(1052);
- //42
- pump1.OFF();
- pump3.OFF();
- delay(1052);
- pump2.OFF();
- pump4.OFF();
- delay(1052);
- //43
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump3.ON();
- delay(526);
- pump3.OFF();
- pump2.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //44
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(1052);
- pump1.ON();
- pump4.ON();
- delay(526);
- pump2.OFF();
- pump3.OFF();
- delay(526);
- ALL_OFF();
- //45
- pump1.ON();
- pump3.ON();
- delay(1052);
- pump2.ON();
- pump4.ON();
- delay(1052);
- //46
- pump1.OFF();
- pump3.OFF();
- delay(1052);
- pump2.OFF();
- pump4.OFF();
- delay(1052);
- //47
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump3.ON();
- delay(526);
- pump3.OFF();
- pump2.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //48
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(1052);
- pump1.ON();
- pump4.ON();
- delay(526);
- pump2.OFF();
- pump3.OFF();
- delay(526);
- ALL_OFF();
- //49
- //42 op YT score!
- pump1.ON();
- pump4.ON();
- pump2.ON();
- pump3.ON();
- delay(263);
- pump3.OFF();
- delay(263);
- pump2.OFF();
- delay(526);
- pump1.OFF();
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- pump1.ON();
- pump4.ON();
- pump2.OFF();
- pump3.OFF();
- delay(526);
- //50
- pump2.ON();
- pump4.OFF();
- pump1.OFF();
- delay(1052);
- pump3.ON();
- pump1.ON();
- delay(526);
- pump2.OFF();
- pump1.OFF();
- delay(526);
- //51
- pump3.OFF();
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- delay(526);
- pump2.OFF();
- pump3.ON();
- delay(526);
- pump3.OFF();
- pump4.ON();
- delay(526);
- //52
- pump1.ON();
- delay(1052);
- pump4.OFF();
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- delay(263);
- ALL_OFF();
- delay(263);
- //53
- pump1.ON();
- pump4.ON();
- pump2.ON();
- pump3.ON();
- delay(263);
- pump3.OFF();
- delay(263);
- pump2.OFF();
- delay(526);
- pump1.OFF();
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- pump1.ON();
- pump4.ON();
- pump2.OFF();
- pump3.OFF();
- delay(526);
- //54
- pump2.ON();
- pump4.OFF();
- pump1.OFF();
- delay(1052);
- pump3.ON();
- pump1.ON();
- delay(526);
- pump2.OFF();
- pump1.OFF();
- delay(526);
- //55
- pump3.OFF();
- pump1.ON();
- delay(526);
- pump1.OFF();
- pump2.ON();
- delay(526);
- pump2.OFF();
- pump3.ON();
- delay(526);
- pump3.OFF();
- pump4.ON();
- delay(526);
- //56
- pump1.ON();
- delay(1052);
- pump4.OFF();
- pump1.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- delay(263);
- ALL_OFF();
- delay(263);
- //57
- //47 op YT
- pump1.ON();
- delay(526);
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump3.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //48
- pump3.OFF();
- pump1.ON();
- delay(526);
- pump4.OFF();
- pump2.ON();
- delay(526);
- pump3.ON();
- pump1.OFF();
- delay(526);
- pump4.ON();
- pump2.OFF();
- delay(526);
- //49
- pump4.OFF();
- pump1.ON();
- pump3.ON();
- delay(526);
- pump1.OFF();
- delay(526);
- pump3.OFF();
- pump2.ON();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //50
- pump1.ON();
- pump4.ON();
- delay(526);
- pump2.ON();
- delay(132);
- pump3.ON();
- delay(263);
- pump2.OFF();
- delay(132);
- pump1.OFF();
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- pump1.ON();
- delay(132);
- pump4.ON();
- delay(263);
- pump1.OFF();
- pump1.OFF();
- pump4.OFF();
- delay(132);
- //51
- pump1.ON();
- delay(526);
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump3.ON();
- delay(526);
- pump2.OFF();
- pump4.ON();
- delay(526);
- //52 (herhaald)
- pump3.OFF();
- pump1.ON();
- delay(526);
- pump4.OFF();
- pump2.ON();
- delay(526);
- pump3.ON();
- pump1.OFF();
- delay(526);
- pump4.ON();
- pump2.OFF();
- delay(526);
- //53
- pump4.OFF();
- pump1.ON();
- pump3.ON();
- delay(526);
- pump1.OFF();
- delay(526);
- pump3.OFF();
- pump2.ON();
- pump4.ON();
- delay(526);
- pump4.OFF();
- delay(526);
- //54
- pump1.ON();
- pump4.ON();
- delay(526);
- pump2.ON();
- delay(132);
- pump3.ON();
- delay(263);
- pump2.OFF();
- delay(132);
- pump1.OFF();
- pump4.OFF();
- pump2.ON();
- pump3.ON();
- delay(526);
- pump1.ON();
- delay(132);
- pump4.ON();
- delay(263);
- ALL_OFF();
- delay(132);
- //55
- //52 op YT
- pump1.ON();
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- pump3.OFF();
- pump4.OFF();
- pump1.ON();
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- //56
- pump3.OFF();
- pump4.OFF();
- pump1.ON();
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- pump3.OFF();
- pump4.OFF();
- pump1.ON();
- pump2.ON();
- delay(526);
- pump1.OFF();
- pump2.OFF();
- pump3.ON();
- pump4.ON();
- delay(526);
- //57
- pump3.OFF();
- pump4.OFF();
- pump2.ON();
- delay(1052);
- pump1.ON();
- delay(1052);
- //58
- pump3.ON();
- delay(1052);
- pump4.ON();
- delay(526);
- delay(263);
- ALL_OFF();
- delay(263);
- //59
- pump1.ON();
- delay(263);
- pump4.ON();
- delay(263);
- pump2.ON();
- delay(263);
- pump3.ON();
- delay(263);
- delay(526);
- delay(526);
- delay(526);
- delay(2104);
- delay(1052);
- ALL_OFF();
- //safety all_off
- delay(2000);
- ALL_OFF();
- delay(10);
- //TURN OFF MP3
- myMP3.stop();
- delay(10);
- Serial.println("MP3 Player is off");
- delay(5000);
- }
Advertisement
Add Comment
Please, Sign In to add comment