initial commit
[fireflies.git] / Firefly-Eagle / sketch_jul26b / sketch_jul26b.ino
1 //neopixel flame effect from https://github.com/schnoggo/jack-o-candle
2 //everything else, do as you wish at your own risk
3
4 #define PWM11 11
5 #define PWM10 10
6 #define PWM9 9
7 #define PWM3 3
8 #define PWM5 5
9 #define PWM6 6
10
11 int fade = 0;
12 unsigned long ledstringtimer;
13 unsigned long previousMillis = 0;
14
15
16 int new_brightness = 0;
17
18 void setup() {
19   Serial.begin(9600);
20   ledstringtimer = millis() + 5000;
21   randomSeed(analogRead(0));
22 }
23
24 void loop() {
25   if (((signed long)(millis() - ledstringtimer)) > 0) {
26     long dice = random(1400);
27     if (dice > 1200) {
28       ledstring11();
29     } else if (dice<1200 && dice > 1000) {
30       ledstring10();
31     } else if (dice<1000 && dice > 800) {
32       ledstring9();
33     } else if (dice<800 && dice > 600) {
34       ledstring3();
35     } else if (dice<600 && dice > 200) {
36       ledstring5();
37     } else if (dice<200) {
38       ledstring6();
39     }
40     ledstringtimer = millis() + random(500,3000);
41   }
42 }
43
44 void ledstring11() {
45   fade=random(10, 50);
46   int fadeValue=0;
47   unsigned long currentMillis = millis();
48   while (fadeValue <= fade) {
49     currentMillis = millis();
50     if (currentMillis - previousMillis >= 30) {
51       previousMillis = currentMillis;
52       fadeValue += 5;
53       analogWrite(PWM11, fadeValue);
54     }
55   }
56   while (fadeValue > 0) {
57     currentMillis = millis();
58     if (currentMillis - previousMillis >= 30) {
59       previousMillis = currentMillis;
60       fadeValue -= 5;
61       analogWrite(PWM11, fadeValue);
62     }
63   }
64 }
65
66 void ledstring10() {
67   fade=random(10, 50);
68   int fadeValue=0;
69   unsigned long currentMillis = millis();
70   while (fadeValue <= fade) {
71     currentMillis = millis();
72     if (currentMillis - previousMillis >= 30) {
73       previousMillis = currentMillis;
74       fadeValue += 5;
75       analogWrite(PWM10, fadeValue);
76     }
77   }
78   while (fadeValue > 0) {
79     currentMillis = millis();
80     if (currentMillis - previousMillis >= 30) {
81       previousMillis = currentMillis;
82       fadeValue -= 5;
83       analogWrite(PWM10, fadeValue);
84     }
85   }
86 }
87
88 void ledstring9() {
89   fade=random(10, 50);
90   int fadeValue=0;
91   unsigned long currentMillis = millis();
92   while (fadeValue <= fade) {
93     currentMillis = millis();
94     if (currentMillis - previousMillis >= 30) {
95       previousMillis = currentMillis;
96       fadeValue += 5;
97       analogWrite(PWM9, fadeValue);
98     }
99   }
100   while (fadeValue > 0) {
101     currentMillis = millis();
102     if (currentMillis - previousMillis >= 30) {
103       previousMillis = currentMillis;
104       fadeValue -= 5;
105       analogWrite(PWM9, fadeValue);
106     }
107   }
108 }
109
110 void ledstring3() {
111   fade=random(10, 50);
112   int fadeValue=0;
113   unsigned long currentMillis = millis();
114   while (fadeValue <= fade) {
115     currentMillis = millis();
116     if (currentMillis - previousMillis >= 30) {
117       previousMillis = currentMillis;
118       fadeValue += 5;
119       analogWrite(PWM3, fadeValue);
120     }
121   }
122   while (fadeValue > 0) {
123     currentMillis = millis();
124     if (currentMillis - previousMillis >= 30) {
125       previousMillis = currentMillis;
126       fadeValue -= 5;
127       analogWrite(PWM3, fadeValue);
128     }
129   }
130 }
131
132 void ledstring5() {
133   fade=random(10, 50);
134   int fadeValue=0;
135   unsigned long currentMillis = millis();
136   while (fadeValue <= fade) {
137     currentMillis = millis();
138     if (currentMillis - previousMillis >= 30) {
139       previousMillis = currentMillis;
140       fadeValue += 5;
141       analogWrite(PWM5, fadeValue);
142     }
143   }
144   while (fadeValue > 0) {
145     currentMillis = millis();
146     if (currentMillis - previousMillis >= 30) {
147       previousMillis = currentMillis;
148       fadeValue -= 5;
149       analogWrite(PWM5, fadeValue);
150     }
151   }
152 }
153
154 void ledstring6() {
155   fade=random(10, 50);
156   int fadeValue=0;
157   unsigned long currentMillis = millis();
158   while (fadeValue <= fade) {
159     currentMillis = millis();
160     if (currentMillis - previousMillis >= 30) {
161       previousMillis = currentMillis;
162       fadeValue += 5;
163       analogWrite(PWM6, fadeValue);
164     }
165   }
166   while (fadeValue > 0) {
167     currentMillis = millis();
168     if (currentMillis - previousMillis >= 30) {
169       previousMillis = currentMillis;
170       fadeValue -= 5;
171       analogWrite(PWM6, fadeValue);
172     }
173   }
174 }