const int DG_LED = 2; // Diesel Generator status indicator
const int BESS_LED = 3; // BESS status indicator
void setup() {
Serial.begin(115200); // UART communication
pinMode(DG_LED, OUTPUT);
pinMode(BESS_LED, OUTPUT);
Serial.println("Type DG, BESS, ON, OFF, DG+BESS, BESS+DG etc.");
}
void loop() {
if (Serial.available()) {
String input = Serial.readStringUntil('\n');
input.trim(); // Remove whitespace
if (input == "DG") {
digitalWrite(DG_LED, HIGH);
digitalWrite(BESS_LED, LOW);
Serial.println("DG ON, BESS OFF");
} else if (input == "BESS") {
digitalWrite(DG_LED, LOW);
digitalWrite(BESS_LED, HIGH);
Serial.println("BESS ON, DG OFF");
} else if (input == "DG+BESS" || input == "BESS+DG") {
digitalWrite(DG_LED, HIGH);
digitalWrite(BESS_LED, HIGH);
Serial.println("DG and BESS ON");
} else if (input == "OFF") {
digitalWrite(DG_LED, LOW);
digitalWrite(BESS_LED, LOW);
Serial.println("DG and BESS OFF");
} else {
Serial.println("Unknown command. Try DG, BESS, DG+BESS, OFF");
}
}
}