|
@@ -20,6 +20,46 @@ String getSubstring(String dataString, char separator, int index)
|
|
|
|
|
|
|
|
|
|
|
|
+bool readSDconfig(){
|
|
|
+ File configFile = SD.open("config.txt");
|
|
|
+ while (configFile.available()) { //as long as there is data available
|
|
|
+ String buf = configFile.readStringUntil('\n'); // read a line
|
|
|
+ String keyword = getSubstring(buf, ' ', 0); // update variable according to keyword
|
|
|
+ if (keyword == "LOW") { dimmer_low = getSubstring(buf, ' ', 1).toInt() ; }
|
|
|
+ if (keyword == "HIGH") { dimmer_high = getSubstring(buf, ' ', 1).toInt() ; }
|
|
|
+ if (keyword == "MID") { dimmer_mid = getSubstring(buf, ' ', 1).toInt() ; }
|
|
|
+
|
|
|
+ if (keyword == "MER") { fill_solid( palette_MER, 16, CRGB(getSubstring(buf, ' ', 1).toInt(), getSubstring(buf, ' ', 2).toInt(), getSubstring(buf, ' ', 3).toInt()) ) ; }
|
|
|
+ if (keyword == "SOLEIL") { fill_solid( palette_SOLEIL, 16, CRGB(getSubstring(buf, ' ', 1).toInt(), getSubstring(buf, ' ', 2).toInt(), getSubstring(buf, ' ', 3).toInt()) ) ; }
|
|
|
+ if (keyword == "CREPUSCULE") { fill_solid( palette_CREPUSCULE, 16, CRGB(getSubstring(buf, ' ', 1).toInt(), getSubstring(buf, ' ', 2).toInt(), getSubstring(buf, ' ', 3).toInt()) ) ; }
|
|
|
+ if (keyword == "FLAMINGO") { fill_solid( palette_FLAMINGO, 16, CRGB(getSubstring(buf, ' ', 1).toInt(), getSubstring(buf, ' ', 2).toInt(), getSubstring(buf, ' ', 3).toInt()) ) ; }
|
|
|
+ }
|
|
|
+
|
|
|
+ Serial.println("Configuration : ");
|
|
|
+ Serial.print("Niveaux dimmer (LOW / MID / HIGH) : ");
|
|
|
+ Serial.print(dimmer_low);
|
|
|
+ Serial.print(" ");
|
|
|
+ Serial.print(dimmer_mid);
|
|
|
+ Serial.print(" ");
|
|
|
+ Serial.print(dimmer_high);
|
|
|
+ Serial.println("");
|
|
|
+ Serial.print("Palette MER : ");
|
|
|
+ Serial.print(ColorFromPalette(palette_MER, 0));
|
|
|
+ Serial.print("Palette SOLEIL : ");
|
|
|
+ Serial.print(ColorFromPalette(palette_SOLEIL, 0));
|
|
|
+ Serial.print("Palette CREPUSCULE : ");
|
|
|
+ Serial.print(ColorFromPalette(palette_CREPUSCULE, 0));
|
|
|
+ Serial.print("Palette FLAMINGO : ");
|
|
|
+ Serial.print(ColorFromPalette(palette_FLAMINGO, 0));
|
|
|
+// Serial.print(" ");
|
|
|
+// Serial.print(dimmer_mid);
|
|
|
+// Serial.print(" ");
|
|
|
+// Serial.print(dimmer_high);
|
|
|
+ Serial.println("");
|
|
|
+ configFile.close();
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
bool readSDFile() {
|
|
|
|
|
|
if (!inibSDreading) { // if currently delaying, don't read a line
|
|
@@ -38,6 +78,7 @@ bool readSDFile() {
|
|
|
}
|
|
|
|
|
|
else if (selector == "led") {
|
|
|
+ Serial.println("led");
|
|
|
// String mode = getSubstring(buf, ' ', 1);
|
|
|
// if (mode == "L"){
|
|
|
// int R = getSubstring(buf, ' ', 2).toInt();
|
|
@@ -59,12 +100,18 @@ bool readSDFile() {
|
|
|
}
|
|
|
|
|
|
else if (selector == "dimmer") {
|
|
|
- Serial.println("Dimmer fade à " + getSubstring(buf, ' ', 1) + " en " + getSubstring(buf, ' ', 2) + "ms");
|
|
|
- int dimmer_value = getSubstring(buf, ' ', 1).toInt();
|
|
|
+ String dim_val = getSubstring(buf, ' ', 1);
|
|
|
+ int dimmer_value;
|
|
|
int dimmer_fade = getSubstring(buf, ' ', 2).toInt();
|
|
|
+ Serial.println("Dimmer fade à " + dim_val + " en " + dimmer_fade + "ms");
|
|
|
+ if (dim_val == "LOW") {dimmer_value = dimmer_low ;}
|
|
|
+ else if (dim_val == "MID") {dimmer_value = dimmer_mid ;}
|
|
|
+ else if (dim_val == "HIGH") {dimmer_value = dimmer_high ;}
|
|
|
+ else if (dim_val == "OFF") {dimmer_value = 0 ;}
|
|
|
+ else { dimmer_value = dim_val.toInt();} //value%
|
|
|
dimmer.setTime(dimmer_fade);
|
|
|
- dimmer.set(dimmer_value);
|
|
|
- // Serial.println(dimmer_delta);
|
|
|
+ dimmer.set(percent2PWM(dimmer_value));
|
|
|
+// Serial.println(dimmer_delta);
|
|
|
|
|
|
}
|
|
|
|
|
@@ -92,13 +139,16 @@ bool readSDFile() {
|
|
|
|
|
|
else {
|
|
|
Serial.println("EOF");
|
|
|
-
|
|
|
- btnFile.close();
|
|
|
inibSDreading = true;
|
|
|
+// btnFile.close();
|
|
|
EvtResetButtonContext();
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
-// else{Serial.println("not reading");}
|
|
|
+// else{
|
|
|
+// Serial.println("not reading");
|
|
|
+// }
|
|
|
return false ;
|
|
|
|
|
|
}
|