mirror of
https://github.com/airgradienthq/arduino.git
synced 2025-07-26 06:57:17 +02:00
Added config menu item to switch off LED bar
This commit is contained in:
@ -173,7 +173,7 @@ void setup() {
|
|||||||
pinMode(9, INPUT_PULLUP);
|
pinMode(9, INPUT_PULLUP);
|
||||||
|
|
||||||
buttonConfig = String(EEPROM.read(addr)).toInt();
|
buttonConfig = String(EEPROM.read(addr)).toInt();
|
||||||
if (buttonConfig > 3) buttonConfig = 0;
|
if (buttonConfig > 7) buttonConfig = 0;
|
||||||
delay(400);
|
delay(400);
|
||||||
setConfig();
|
setConfig();
|
||||||
Serial.println("buttonConfig: " + String(buttonConfig));
|
Serial.println("buttonConfig: " + String(buttonConfig));
|
||||||
@ -217,21 +217,6 @@ void loop() {
|
|||||||
sendToServer();
|
sendToServer();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ledTest() {
|
|
||||||
updateOLED2("LED Test", "running", ".....");
|
|
||||||
setRGBledColor('r');
|
|
||||||
delay(1000);
|
|
||||||
setRGBledColor('g');
|
|
||||||
delay(1000);
|
|
||||||
setRGBledColor('b');
|
|
||||||
delay(1000);
|
|
||||||
setRGBledColor('w');
|
|
||||||
delay(1000);
|
|
||||||
setRGBledColor('n');
|
|
||||||
delay(1000);
|
|
||||||
//LED Test
|
|
||||||
}
|
|
||||||
|
|
||||||
void updateTVOC() {
|
void updateTVOC() {
|
||||||
uint16_t error;
|
uint16_t error;
|
||||||
char errorMessage[256];
|
char errorMessage[256];
|
||||||
@ -355,7 +340,7 @@ void inConf() {
|
|||||||
long pressDuration = releasedTime - pressedTime;
|
long pressDuration = releasedTime - pressedTime;
|
||||||
if (pressDuration < 1000) {
|
if (pressDuration < 1000) {
|
||||||
buttonConfig = buttonConfig + 1;
|
buttonConfig = buttonConfig + 1;
|
||||||
if (buttonConfig > 3) buttonConfig = 0;
|
if (buttonConfig > 7) buttonConfig = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -381,26 +366,52 @@ void inConf() {
|
|||||||
void setConfig() {
|
void setConfig() {
|
||||||
Serial.println("in setConfig");
|
Serial.println("in setConfig");
|
||||||
if (buttonConfig == 0) {
|
if (buttonConfig == 0) {
|
||||||
updateOLED2("Temp. in C", "PM in ug/m3", "Long Press Saves");
|
|
||||||
u8g2.setDisplayRotation(U8G2_R0);
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:C, PM:ug/m3", "LED Bar: on", "Long Press Saves");
|
||||||
inF = false;
|
inF = false;
|
||||||
inUSAQI = false;
|
inUSAQI = false;
|
||||||
}
|
useRGBledBar = true;
|
||||||
if (buttonConfig == 1) {
|
} else if (buttonConfig == 1) {
|
||||||
updateOLED2("Temp. in C", "PM in US AQI", "Long Press Saves");
|
|
||||||
u8g2.setDisplayRotation(U8G2_R0);
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:C, PM:US AQI", "LED Bar: on", "Long Press Saves");
|
||||||
inF = false;
|
inF = false;
|
||||||
inUSAQI = true;
|
inUSAQI = true;
|
||||||
|
useRGBledBar = true;
|
||||||
} else if (buttonConfig == 2) {
|
} else if (buttonConfig == 2) {
|
||||||
updateOLED2("Temp. in F", "PM in ug/m3", "Long Press Saves");
|
|
||||||
u8g2.setDisplayRotation(U8G2_R0);
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:F PM:ug/m3", "LED Bar: on", "Long Press Saves");
|
||||||
inF = true;
|
inF = true;
|
||||||
inUSAQI = false;
|
inUSAQI = false;
|
||||||
|
useRGBledBar = true;
|
||||||
} else if (buttonConfig == 3) {
|
} else if (buttonConfig == 3) {
|
||||||
updateOLED2("Temp. in F", "PM in US AQI", "Long Press Saves");
|
|
||||||
u8g2.setDisplayRotation(U8G2_R0);
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:F PM:US AQI", "LED Bar: on", "Long Press Saves");
|
||||||
inF = true;
|
inF = true;
|
||||||
inUSAQI = true;
|
inUSAQI = true;
|
||||||
|
useRGBledBar = true;
|
||||||
|
} else if (buttonConfig == 4) {
|
||||||
|
updateOLED2("T:C, PM:ug/m3", "LED Bar: off", "Long Press Saves");
|
||||||
|
inF = false;
|
||||||
|
inUSAQI = false;
|
||||||
|
useRGBledBar = false;
|
||||||
|
} else if (buttonConfig == 5) {
|
||||||
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:C, PM:US AQI", "LED Bar: off", "Long Press Saves");
|
||||||
|
inF = false;
|
||||||
|
inUSAQI = true;
|
||||||
|
useRGBledBar = false;
|
||||||
|
} else if (buttonConfig == 6) {
|
||||||
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:F PM:ug/m3", "LED Bar: off", "Long Press Saves");
|
||||||
|
inF = true;
|
||||||
|
inUSAQI = false;
|
||||||
|
useRGBledBar = false;
|
||||||
|
} else if (buttonConfig == 7) {
|
||||||
|
u8g2.setDisplayRotation(U8G2_R0);
|
||||||
|
updateOLED2("T:F PM:US AQI", "LED Bar: off", "Long Press Saves");
|
||||||
|
inF = true;
|
||||||
|
inUSAQI = true;
|
||||||
|
useRGBledBar = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -627,63 +638,63 @@ void setRGBledColor(char color) {
|
|||||||
case 'g':
|
case 'g':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(0, 255, 0));
|
pixels.setPixelColor(i, pixels.Color(0, 255, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'y':
|
case 'y':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(255, 255, 0));
|
pixels.setPixelColor(i, pixels.Color(255, 255, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'o':
|
case 'o':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(255, 128, 0));
|
pixels.setPixelColor(i, pixels.Color(255, 128, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'r':
|
case 'r':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(255, 0, 0));
|
pixels.setPixelColor(i, pixels.Color(255, 0, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'b':
|
case 'b':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
|
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'w':
|
case 'w':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(255, 255, 255));
|
pixels.setPixelColor(i, pixels.Color(255, 255, 255));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'p':
|
case 'p':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(153, 0, 153));
|
pixels.setPixelColor(i, pixels.Color(153, 0, 153));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'z':
|
case 'z':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(102, 0, 0));
|
pixels.setPixelColor(i, pixels.Color(102, 0, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'n':
|
case 'n':
|
||||||
for (int i = 0; i < 11; i++) {
|
for (int i = 0; i < 11; i++) {
|
||||||
pixels.setPixelColor(i, pixels.Color(0, 0, 0));
|
pixels.setPixelColor(i, pixels.Color(0, 0, 0));
|
||||||
delay(100);
|
delay(30);
|
||||||
pixels.show();
|
pixels.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -695,6 +706,40 @@ void setRGBledColor(char color) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ledTest() {
|
||||||
|
updateOLED2("LED Test", "running", ".....");
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
pixels.setPixelColor(i, pixels.Color(255, 0, 0));
|
||||||
|
delay(30);
|
||||||
|
pixels.show();
|
||||||
|
}
|
||||||
|
delay(500);
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
pixels.setPixelColor(i, pixels.Color(0, 255, 0));
|
||||||
|
delay(30);
|
||||||
|
pixels.show();
|
||||||
|
}
|
||||||
|
delay(500);
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
|
||||||
|
delay(30);
|
||||||
|
pixels.show();
|
||||||
|
}
|
||||||
|
delay(500);
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
pixels.setPixelColor(i, pixels.Color(255, 255, 255));
|
||||||
|
delay(30);
|
||||||
|
pixels.show();
|
||||||
|
}
|
||||||
|
delay(500);
|
||||||
|
for (int i = 0; i < 11; i++) {
|
||||||
|
pixels.setPixelColor(i, pixels.Color(0, 0, 0));
|
||||||
|
delay(30);
|
||||||
|
pixels.show();
|
||||||
|
}
|
||||||
|
delay(500);
|
||||||
|
}
|
||||||
|
|
||||||
// Calculate PM2.5 US AQI
|
// Calculate PM2.5 US AQI
|
||||||
int PM_TO_AQI_US(int pm02) {
|
int PM_TO_AQI_US(int pm02) {
|
||||||
if (pm02 <= 12.0) return ((50 - 0) / (12.0 - .0) * (pm02 - .0) + 0);
|
if (pm02 <= 12.0) return ((50 - 0) / (12.0 - .0) * (pm02 - .0) + 0);
|
||||||
|
Reference in New Issue
Block a user