Code:
/* Keeps track of Incoming Data */
boolean wsStringComplete;
String wsInputString;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
handleIncommingOutgoingSerial();
}
void handleIncommingOutgoingSerial()
{
/* This doesn't happen so often, but maybe we should handle serial input one byte at a time */
while (Serial.available()) {
char inChar = (char)Serial.read();
if (inChar == '\n') {
wsStringComplete = true;
int equalsign = wsInputString.indexOf('=');
String variable = wsInputString.substring(0, equalsign);
String value = wsInputString.substring(equalsign + 1);
trigger(variable, value);
wsInputString = "";
wsStringComplete = false;
} else {
wsInputString += inChar;
}
}
}
void trigger(String VARIABLE, String VALUE)
{
if (VARIABLE == "ssqHello")
{
Serial.println("ssrHello");
}
else if (VARIABLE == "ssqLED")
{
if (VALUE == "on") {
digitalWrite(LED_BUILTIN, HIGH);
Serial.println("ssrLED=on");
}
else {
digitalWrite(LED_BUILTIN, LOW);
Serial.println("ssrLED=off");
}
}
else
{
Serial.println("ssrUnknown");
}
}
boolean wsStringComplete;
String wsInputString;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
handleIncommingOutgoingSerial();
}
void handleIncommingOutgoingSerial()
{
/* This doesn't happen so often, but maybe we should handle serial input one byte at a time */
while (Serial.available()) {
char inChar = (char)Serial.read();
if (inChar == '\n') {
wsStringComplete = true;
int equalsign = wsInputString.indexOf('=');
String variable = wsInputString.substring(0, equalsign);
String value = wsInputString.substring(equalsign + 1);
trigger(variable, value);
wsInputString = "";
wsStringComplete = false;
} else {
wsInputString += inChar;
}
}
}
void trigger(String VARIABLE, String VALUE)
{
if (VARIABLE == "ssqHello")
{
Serial.println("ssrHello");
}
else if (VARIABLE == "ssqLED")
{
if (VALUE == "on") {
digitalWrite(LED_BUILTIN, HIGH);
Serial.println("ssrLED=on");
}
else {
digitalWrite(LED_BUILTIN, LOW);
Serial.println("ssrLED=off");
}
}
else
{
Serial.println("ssrUnknown");
}
}