Si incluyo Serial.read() en el loop va leyendo a cada momento nulos, con la consecuente perdida de tiempos ademas de que va llenando el buffer
int incomingByte = 0; // for incoming serial data
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
}
void loop() {
// send data only when you receive data:
-------->>>>>if (Serial.available() > 0) <<<<-------------Usa esto para leer solo cuando se reciba algo
// read the incoming byte:
incomingByte = Serial.read();
// y luego switch (incomingByte)
}
}