Arduino - Cmd Parsing

////////////////////////////////////////////////////////////////////////////////////////////
//Individua dei token da una stringa ricevuta da seriale che rappresentano comandi on/off per i led (R=160Ohm).
//Es 11:1 (accende il LED sul pin 11 mentre 11:0 lo spegne)
int led11 = 11;
int led10 = 10;
int led9 = 9;
String incoming = "",cmd,arg;
int pos1=0;
int pos2=0;
char dlm=':';
void setup() {
 Serial.begin(9600);
 pinMode(led11, OUTPUT);
 pinMode(led10, OUTPUT);
 pinMode(led9, OUTPUT);
}
void loop()
{
 if( Serial.available())
 {
 incoming = Serial.readString();
 Serial.println(incoming);
incoming.trim();//rimuove il '\n'
 pos1=0;
 pos2 = incoming.indexOf(dlm);
 if(pos2>=0){
 cmd = incoming.substring(pos1,pos2);
 Serial.println("cmd:"+cmd);
 if (cmd.equals("11")){ //equalsIgnoreCase
 arg = incoming.substring(pos2+1,incoming.length());
 arg=="0"?digitalWrite(led11, LOW):digitalWrite(led11, HIGH);
 } 
 else if (cmd.equals("10"))
 Serial.println("completare cmd 10...");
 else if (cmd.equals("9"))
 Serial.println("completare cmd 9...");
 else 
 Serial.println("Unknown cmd");
 }
 }
}
