Асинхронное управление сервоприводом и шаговым двигателем

Делаю машинку на bluetooth управлении, не могу разобраться как управлять положением сервопривода независимо от моторов (движение моторов происходит в зависимости от incomingByte = Serial.read(), но как мне лучше сделать ввод другой переменной, которая будет управлять положением сервопривода? Управление сервоприводом через библиотеку Servo
Код:

byte ena = 3;
byte in1 = 5;
byte in2 = 4;
byte enb = 9;
byte in3 = 6;
byte in4 = 7;
byte incomingByte = 0;
void setup() {
pinMode( ena, OUTPUT );
pinMode( in1, OUTPUT );
pinMode( in2, OUTPUT );
pinMode( in3, OUTPUT );
pinMode( in4, OUTPUT );
pinMode( enb, OUTPUT );
Serial.begin(9600);
}

void loop() {
  analogWrite (ena, 255);
  analogWrite (enb, 255);
  incomingByte = Serial.read();

  if (incomingByte == '1') {
    //clockwise
    digitalWrite (in1, HIGH);
    digitalWrite (in2, LOW);
    digitalWrite (in3, HIGH);
    digitalWrite (in4, LOW);
  } else if(incomingByte == '2'){
    //counterclockwise
    digitalWrite (in1, LOW);
    digitalWrite (in2, HIGH);
    digitalWrite (in3, LOW);
    digitalWrite (in4, HIGH);
  } else if(incomingByte == '0') {
    
    digitalWrite (in1, LOW);
    digitalWrite (in2, LOW);
    digitalWrite (in3, LOW);
    digitalWrite (in4, LOW);  
   
  }
}

Не вижу в коде сервопривода

Например: первые два бита отдать под мотор, остальные шесть - под серву.

По-хорошему - разработать набор команд.
Например, команды, начинающиеся на “М” относятся к мотору, а на “S” - к сервоприводу.

PS. И с Serial так работать нельзя.

И вставьте в программу комментарии чего куда Вы подключаете.
Неплохо также увидеть схему.
И, кстати, сервы я тоже не увидел.

А эта … про строку №21 … откуда сведения, что байт уже пришёл?