char buffer[9]; int counter = 0; void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { char thisByte = Serial.read(); buffer[counter] = thisByte; counter++; if (thisByte == '\n') { //Serial.println(); parseBuffer(); counter = 0; } //Serial.write(thisByte); } } void parseBuffer() { if (buffer[0] == 'R') { analogWrite(9, buffer[1]); } if (buffer[2] == 'G') { analogWrite(6, buffer[3]); } if (buffer[4] == 'B') { analogWrite(5, buffer[5]); } if (buffer[6] == 'Q') { analogWrite(3, buffer[7]); } }